Live-Forum - Die aktuellen Beiträge
Datum
Titel
17.10.2025 10:28:49
16.10.2025 17:40:39
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Hilfe! Makro-Erweiterung

Forumthread: Hilfe! Makro-Erweiterung

Hilfe! Makro-Erweiterung
25.10.2004 09:05:06
Eleni
Hi Forum,
Habe folgendes Makro und möchte es erweitern, klappt aber nicht. Das Makro sucht in allen Tabellenblättern nach Einträgen in der Spalte F und trägt dann diese + zugehörige Daten in ein anderes Tabellenblatt. Nun soll zusätzlich überprüft werden, ob in der Zelle Q2 ein Wert steht. Ist dies der Fall, soll dieser Wert in das andere Tabellenblatt("Übersicht") in die letzte freie Zelle der Spalte A eingetragen werden. Wer kann helfen?
Danke, Eleni
If ThisWorkbook.Sheets("Übersicht").Protect Then ThisWorkbook.Sheets_("Übersicht").Unprotect
ThisWorkbook.Sheets("Übersicht").Activate
Dim myWs As Worksheet
Dim fAddr As String
Dim lng As Long, zei As Long
Dim n
Set ws = Worksheets("Übersicht")
With ws
zei = 3
For Each myWs In ThisWorkbook.Worksheets
If myWs.Name ws.Name Then
lng = myWs.[f65536].End(xlUp).Row
For n = 3 To lng Step 10
myWs.Range("A" & n & ":A" & n).Copy
.Range("A" & zei).PasteSpecial Paste:=xlValues,_
Operation:=xlNone, SkipBlanks:=False, Transpose:=True
.Cells(zei, 2) = myWs.Cells(n, 6)
myWs.Range("P" & n & ":P" & n + 9).Copy
.Range("C" & zei & ":L" & zei).PasteSpecial_ Paste:=xlValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=True
myWs.Range("R" & n & ":R" & n).Copy
.Range("M" & zei).PasteSpecial Paste:=xlValues,_ Operation:=xlNone, SkipBlanks:=False, Transpose:=True
If myWs.Cells(Rows.Count, 11).End(xlUp).Value = "SUMME" Then
.Range("O" & zei).Font.ColorIndex = 1
.Range("O" & zei).Interior.ColorIndex = 4
.Range("O" & zei) = "JA"
Else: .Range("O" & zei).Font.ColorIndex = 1
.Range("O" & zei).Interior.ColorIndex = 3
.Range("O" & zei) = "NEIN"
End If
zei = zei + 1
Next n
End If
Next myWs
.Columns(2).NumberFormatLocal = "TT.MM.JJ"
For Each myWs In ThisWorkbook.Worksheets
If myWs.Name ws.Name Then
Do While myWs.Cells(2, 17).Value = True
myWs.Cells(2, 17).Copy
ThisWorkbook.Sheets("Übersicht").Cells(Rows.Count, 1).End_(xlUp).Offset(1, 0).Paste
Loop
End If
Next myWs
End With
Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Hilfe! Makro-Erweiterung
WernerB.
Hallo Eleni,
ergänze Dein Makro um diese (ungetestete) Sequenz:
Dim laR As Long
For Each myWs In ThisWorkbook.Worksheets
If myWs.Name ws.Name Then
If myWs.Range("Q2").Text "" Then
laR = ws.Cells(Rows.Count, 1).End(xlUp).Row
ws.Cells(laR + 1).Value = myWs.Range("Q2").Value
End If
End If
Next myWs
Viel Erfolg wünscht
WernerB.
P.S.: Dieses Forum lebt auch von den Rückmeldungen der Fragesteller an die Antworter !
Anzeige
AW: Hilfe! Makro-Erweiterung
25.10.2004 09:35:10
Eleni
Hi Werner,
Danke, für die schnelle Antwort, klappt leider nicht. Hab es auch mit Value statt Text probiert, geht nicht. Noch ´ne Idee?
Eleni
Lösung gefunden. Geschlossen, o.T.
25.10.2004 09:42:38
Eleni
Hi Werner,
Hab es hingekriegt mit:
Dim laR As Long
For Each myWs In ThisWorkbook.Worksheets
If myWs.Name ws.Name Then
If myWs.Range("Q2").Value "" Then
ws.Cells(Rows.Count, 2).End(xlUp).Offset(1, -1) = myWs.Range("Q2").Value
End If
End If
Next myWs
Vielen Dank für deinen Anstoß.
Ciao, Eleni
Anzeige
;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige