Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1772to1776
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

VBA _ Makro _ Excel Zusammenfügen Daten

VBA _ Makro _ Excel Zusammenfügen Daten
21.07.2020 12:06:54
Marco
Hallo Liebe Excel_VBA Freunde,
leider kann ich keine Daten hochladen was eure Hilfe / Aufgabe erschweren wird.
Mein Problem sieht wie folgt aus:
ich habe zwei Excel Dateien, die eine ist die ZielDatei und die andere die Quelle.
Quelle:
Ich habe eine Excel mit mehr als 250 tabs. diese tragen den Namen A01,A02,A03... W01,W02...usw.
Von jedem tab muss ich bestimmte Zellen auslesen bzw. kopieren (circa 10 Zellen). die Zellen beinhalten Zahlen oder Buchstaben. Die Zellen haben bei jedem tab die selbe Position.
Ziel:
In der Ziel Excel liste habe ich schon eine Tabelle aufgebaut wo ich nun die Informationen zusammen tragen möchte.
Beispiel:
In der Quelle steht in Zelle B3 ein Name; in der Zelle F13 steht eine Zahl.
nun will ich den Namen von B3 in die Ziel Datei in die Zelle B1 und die Zahl von F13 in die Zelle C1 einfügen.
Nun soll das selbe für die anderen 250 tabs gemacht werden, wobei sich die Position der Quelle (Zelle B1 und F13) nicht verändert. jedoch soll es in der Ziel Liste fortlaufend eingefügt werden (B2,B3 - BXX ; C2,C3....).
ob die (Quelle) Excel offen oder geschlossen ist wäre egal.
ich hab schonmal probiert ein bisschen rumzubauen und von vergleichbaren Problemfälle VBA makros einzubauen, aber ich komme leider alleine nicht mehr weiter.
Darum wäre es sehr lieb, wenn ihr mir helfen könntet.
Vielen Dank im Voraus.

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA _ Makro _ Excel Zusammenfügen Daten
21.07.2020 12:20:34
Werner
Hallo,
so:
Option Explicit
Public Sub Sammeln()
Dim loLetzte As Long, ws As Worksheet
Application.ScreenUpdating = False
'Blattname anpassen
With Worksheets("Sammelmappe")
For Each ws In ThisWorkbook.Worksheets
If ws.Name  "Sammelmappe" Then
loLetzte = .Cells(.Rows.Count, "B").End(xlUp).Offset(1).Row
If .Cells(1, "B") = "" Then loLetzte = 1
.Cells(loLetzte, "B") = ws.Range("B3")
.Cells(loLetzte, "C") = ws.Range("F13")
End If
Next ws
End With
End Sub
Gruß Werner
AW: VBA Pseudo-Code
21.07.2020 12:26:55
Fennek
Hallo,
das könnte der Kern des Codes werden:

dim WBQ as workbook ' Quelle
dim WBZ as workbook ' Ziel
with WBQ
for i = 1 to sheets.count
.sheets(i).range("B3, F13").copy WBZ.sheets(1).cells(rows.count,1).end(xlup).offset(1)
next i
end with
mfg
(ungeprüft, kann Tippfehler enthalten)
Anzeige
AW: es fehlte mindestens ein Punkt
21.07.2020 12:28:53
Fennek

dim WBQ as workbook ' Quelle
dim WBZ as workbook ' Ziel
with WBQ
for i = 1 to .sheets.count
.sheets(i).range("B3, F13").copy WBZ.sheets(1).cells(rows.count,1).end(xlup).offset(1)
next i
end with#

AW: es fehlt immer noch einer ! (owT)
21.07.2020 12:48:54
EtoPHG

vergiss meinen Code...
21.07.2020 12:55:40
Werner
Hallo,
...habe das mit den zwei Dateien übersehen, obwohl es deutlich ganz am Anfang steht.
Ich geh jetzt mal Brille putzen.
Gruß Werner
AW: Makro ohne Verweispunkte
22.07.2020 12:47:03
Gerd
Hallo Marco!
Sub Unit()
Dim Q As Workbook, L As Long, V As Variant, Z As Range
Set Q = Workbooks("Name_der_Quelldatei.xlsx")
Set Z = ThisWorkbook.Worksheets("Tabelle1").Range("B1")
If Z  "" Then Set Z = Z.Parent.Cells(Z.Parent.Rows.Count, 2).End(xlUp).Offset(1)
ReDim V(1 To Q.Worksheets.Count, 1 To 2)
For L = 1 To Q.Worksheets.Count
V(L, 1) = Q.Worksheets(L).Cells(3, 2).Value
V(L, 2) = Q.Worksheets(L).Cells(13, 6).Value
Next L
Z.Resize(UBound(V, 1), 2) = V
Erase V
Set Z = Nothing: Set Q = Nothing
End Sub

Gruß Gerd
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige