AW: mehrere sheets in ein neus kopieren...
21.08.2003 20:06:51
Andre
hallo udo,
im prinzip so:
Public wobinich$, letzteSpalte$
Sub Makro_Zusammenfassen()
' Zusammenfassen
' Makro am 12.07.2003 von wanderer aufgezeichnet
letzteSpalte = "B"
wobinich = ActiveSheet.Name
Sheets(wobinich).Activate
Application.ScreenUpdating = False
For Each blaetter In Sheets()
If blaetter.Name <> wobinich Then zusammenfassen (blaetter.Name)
Next
Sheets(wobinich).Activate
Application.ScreenUpdating = True
End Sub
Private Function zusammenfassen(blaetter As Variant)
Dim letztezelleBl&, letztezelleSt%, letzteZelleImport As Double
letzteZelleImport = Sheets(wobinich).Cells(Rows.Count, 1).End(xlUp).Row
Sheets(blaetter).Activate
letztezelleBl = Cells(Rows.Count, 1).End(xlUp).Row
Range("A1:" & letzteSpalte & letztezelleBl).Copy
Sheets(wobinich).Activate
'Daten auf Sammelblatt übertragen, wenn a1 und folgezellen leer
'dann nach a1
If letzteZelleImport = 1 And [a1] = "" Then letzteZelleImport = 0
Range("A" & letzteZelleImport + 1).Select
'nur Werte einfügen
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
[a1].Activate
End Function
die variable letztespalte kannst du anhand der letzten gewünschten spalte setzen, oder du nimms IV für die letzte mögliche. wenn du mehr als nur die werte brauchst musst du das bei Paste: berücksichtigen.
gruss andre