Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1568to1572
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

Werte verschiedener Worksheets zusammenführen

Werte verschiedener Worksheets zusammenführen
21.07.2017 15:29:10
Kiki
Hallo zusammen,
nach langem tüfteln läuft mein Makro für einen Report endlich. Nur der letzte Schritt fehlt:
Insgesamt sind 22 Arbeitsblätter mit Daten bestückt und haben verschiedene Berechnungen durchgeführt (die Beispieldatei beschränkt sich auf 4 Arbeitsblätter). Die Ergebnisse sollen in der Tabelle1 zusammengeführt werden, sodass man alle Ergebnisse auf einen Blick sieht.
https://www.herber.de/bbs/user/114995.xlsx
Wie bekomme ich hin, dass Excel automatisch die Zellen H-N, abhängig von der jeweiligen Tabelle befüllt? Ideen?
Vielen Dank schonmal.
Grüße,
Kiki

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Werte verschiedener Worksheets zusammenführen
21.07.2017 15:52:03
KlausF
Hallo Kiki,
Sub Zusammenfuehren()
Application.ScreenUpdating = False
Dim i As Integer
Dim a As Integer
Dim strTabelle As String
For i = 5 To 25
a = i - 3
strTabelle = "Tabelle" & a
Worksheets(strTabelle).Range("C4:C10").Copy
Worksheets("Tabelle1").Range("H" & i).PasteSpecial Paste:=xlValues, _
Operation:=xlNone, SkipBlanks:=False, Transpose:=True
Next i
End Sub
Gruß
Klaus
AW: Werte verschiedener Worksheets zusammenführen
21.07.2017 16:31:35
Kiki
Hallo Klaus,
das sieht schon vielversprechend aus. Allerdings haben die einzelnen Tabellenblätter kryptische Namen (was ich zur Vereinfachung weggelassen hatte). Die Bezeichnungen der Tabellenblätter sind aber der Spalte Q zu entnehmen.
Ich benötige also eine Abhängigkeit zur Spalte Q, die generell formuliert ist.
Habe das Beispiel nochmal angepasst:
https://www.herber.de/bbs/user/114997.xlsx
Grüße,
Kiki
Anzeige
dann so:
21.07.2017 20:29:20
KlausF
Hallo Kiki,
dann so:
Sub Zusammenfuehren()
Application.ScreenUpdating = False
Dim i As Integer
Dim strTabelle As String
With Worksheets("Übersicht")
For i = 5 To .Cells(Rows.Count, "Q").End(xlUp).Row
strTabelle = .Range("Q" & i)
If SheetExist(strTabelle) Then
Worksheets(strTabelle).Range("C4:C10").Copy
.Range("H" & i).PasteSpecial Paste:=xlValues, _
Operation:=xlNone, SkipBlanks:=False, Transpose:=True
End If
Next i
End With
Application.CutCopyMode = False
End Sub
Private Function SheetExist(ByVal sheetName As String, Optional Wb As Workbook) As Boolean
Dim wks As Worksheet
On Error GoTo ERRORHANDLER
If Wb Is Nothing Then Set Wb = ThisWorkbook
For Each wks In Wb.Worksheets
If LCase(wks.Name) = LCase(sheetName) Then SheetExist = True: Exit Function
Next
ERRORHANDLER:
SheetExist = False
End Function
Gruß
Klaus
Anzeige
AW: dann so:
24.07.2017 12:03:29
Kiki
Hallo Klaus,
hat mir sehr geholfen. Vielen Dank!
Habe das ganze nochmal anpassen müssen, da die Funktion bei mir nicht laufen wollte:

Sub Uebertrag_Ergebnisse ()
Application.ScreenUpdating = False
Dim i As Integer
With Worksheets("Übersicht")
For i = 5 To .Cells(Rows.Count, "Q").End(xlUp).Row
On Error Resume Next
Worksheets(.Cells(i, "Q").Value).Range("C4:C10").Copy
.Range("H" & i).PasteSpecial Paste:=xlValues, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=True
If Err.Number = 9 Then
MsgBox "Tabellenblatt   " & "'" & .Cells(i, 4).Value & " '" & _
"   existiert nicht oder der Name" & vbLf & _
"in Blatt Hilfstabelle weicht vom tatsächlichen Blattnamen ab."
On Error GoTo 0
End If
Next i
End With
Application.CutCopyMode = False
End Sub
Grüße,
Kiki
Anzeige
Danke für die Rückmeldung
24.07.2017 18:37:53
KlausF
Hi Kiki,
danke für Deine Rückmeldung!
Merkwürdig, dass die Funktion bei Dir nicht läuft.
Bei mir meckert er Worksheets(.Cells(i, "Q").Value) in Deiner angepassten Version an.
Tja ... Billieboys Excelwege sind manchmal unergründlich ...
Gruß
Klaus
AW: Werte verschiedener Worksheets zusammenführen
21.07.2017 15:55:43
UweD
Hallo
so...

Tabelle1
 HIJKLMNOPQ
3Ergebnisse   
4ITF/EAITF/EBITF/EGITF/EMITF/EOITF/ESITF/E   
5AB CDEFG  Tabelle2
6klhawhlslunwlnlwvmowoa  Tabelle3
71234567896543562468654  Tabelle4
8klwnranölalnanmwkoaje  Tabelle5
9         Tabelle6
10         Tabelle7
11         Tabelle8
12         Tabelle9
13         Tabelle10
14         Tabelle11
15         Tabelle12
16         Tabelle13
17         Tabelle14
18         Tabelle15
19         Tabelle16
20         Tabelle17
21         Tabelle18
22         Tabelle19
23         Tabelle20
24         Tabelle21
25         Tabelle22

 verbundene Zellen 
H3:N3

verwendete Formeln
Zelle Formel Bereich N/A
H5:N25=WENNFEHLER(SVERWEIS(H$4;INDIREKT($Q5&"!$A:$C");3;0);"")  
http://excel-inn.de/dateien/vba_beispiele/tabellenanzeige_in_html_addin.zip
http://Hajo-Excel.de/tools.htm
XHTML-Tabelle zur Darstellung in Foren, einschl. der neuen Funktionen ab Version 2007
Add-In-Version 21.10 einschl. 64 Bit


LG UweD
Anzeige
AW: Werte verschiedener Worksheets zusammenführen
21.07.2017 16:00:40
UweD
um es in VBA einzubauen.

With Sheets("Tabelle1").Range("H5:N25")
.FormulaR1C1 = "=IFERROR(VLOOKUP(R4C,INDIRECT(RC17&""!$A:$C""),3,0),"""")"
.Value = .Value
End With
LG UweD
AW: Werte verschiedener Worksheets zusammenführen
21.07.2017 17:08:52
Kiki
Hallo UweD,
das funktioniert leider nicht, da die einzelnen Tabellenblätter kryptische Namen (was ich zur Vereinfachung weggelassen hatte)haben. Die Bezeichnungen der Tabellenblätter sind aber der Spalte Q zu entnehmen.
Ich benötige also eine Abhängigkeit zur Spalte Q, die generell formuliert ist.
Habe das Beispiel nochmal angepasst:
https://www.herber.de/bbs/user/114997.xlsx
Grüße,
Kiki
Anzeige
Da hat Uwe wohl Einiges vergessen, ...
21.07.2017 17:32:38
Luc:-?
…Kiki;
evtl fktioniert's dann so:
.FormulaR1C1 = "=IFERROR(VLOOKUP(R4C,INDIRECT(""'""&RC17&""'!RC1:RC3"",0),3,0),"""")"
RC17 ist Spalte Q, R4C immer Zeile 4!
Gruß, Luc :-?
Besser informiert mit …

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige