Vile Makros zu einem zusammenfassen

Hallo,
da mir hier so schnell profimäßig mit dem Makro geholfen wurde und ich bisher zu folgender Frage nichts gefunden habe:

Ich habe jetzt hübsche Makros für einzelne Arbeitsschritte, auch nette Buttons mit Verknüpfung (funktioniert) auf dem Arbeitsblatt. Es wäre aber noch schöner, wenn ich die MAkros alle möglichst vereinen könnte, also die Module zusammenfassen.
Wie tut man/frau das??
Wenn das Projekt fertig ist (ist noch einiges zu tun!), sollen monatlich wiederkehrend auf einem vorbereiteten Tabellenblatt Daten eingefügt, mit vorhandenen Formeln verknüpft, korrigiert (bis hier Makro 5c) und ausgewertet werden und am Ende das Blatt unter dem Namen des laufenden Monats (MM-JJJJ) abgespeichert werden.

hier die Makros 1-5:
Sub KLR_1_alle_öffnen()

’ KLR_1_alle_öffnen Makro
’ Makro am 04.06.2010 von Silke aufgezeichnet

Workbooks.Open Filename:= _
„P:\Dienst\KLR\KLR_Listen laufender Monat erstellen\Zahlliste lfd Monat.xls“
Workbooks.Open Filename:= _
„P:\Dienst\KLR\KLR_Listen laufender Monat erstellen\PERIS lfd Monat.xls“
Windows(„KLR-Berechnung lfd Monat.xls“).Activate
End Sub
Sub KLR_2_PERIS_lfd_Monat_einfügen()

’ KLR_2_PERIS_lfd_Monat_einfügen Makro
’ Makro am 04.06.2010 von Silke aufgezeichnet

Windows(„PERIS lfd Monat.xls“).Activate
Columns(„A:B“).Select
Selection.Copy
Windows(„KLR-Berechnung lfd Monat.xls“).Activate
Range(„B1“).Select
ActiveSheet.Paste
Range(„D1“).Select
Windows(„PERIS lfd Monat.xls“).Activate
Columns(„D:stuck_out_tongue:“).Select
Selection.EntireColumn.Hidden = False
Columns(„H:J“).Select
Application.CutCopyMode = False
Selection.Copy
Windows(„KLR-Berechnung lfd Monat.xls“).Activate
ActiveSheet.Paste
Range(„G1“).Select
Windows(„PERIS lfd Monat.xls“).Activate
Columns(„P:stuck_out_tongue:“).Select
Application.CutCopyMode = False
Selection.Copy
Windows(„KLR-Berechnung lfd Monat.xls“).Activate
ActiveSheet.Paste
Range(„H1“).Select
Windows(„PERIS lfd Monat.xls“).Activate
Columns(„T:U“).Select
Application.CutCopyMode = False
Selection.Copy
Windows(„KLR-Berechnung lfd Monat.xls“).Activate
Range(„H1“).Select
ActiveSheet.Paste
Range(„J1“).Select
Windows(„PERIS lfd Monat.xls“).Activate
Columns(„Y:Y“).Select
Application.CutCopyMode = False
Selection.Copy
Windows(„KLR-Berechnung lfd Monat.xls“).Activate
ActiveSheet.Paste
Range(„A1“).Select
End Sub
Sub KLR_3_Zahllisten_lfd_Monat_einfügen()

’ KLR_3_Zahllisten_lfd_Monat_einfügen Makro
’ Makro am 04.06.2010 von Silke aufgezeichnet

Sheets(„JJJJ-MM Zahlfall“).Select
Range(„D2“).Select
Windows(„Zahlliste lfd Monat.xls“).Activate
Range(„A2:BF1053“).Select
Selection.Copy
Windows(„KLR-Berechnung lfd Monat.xls“).Activate
ActiveWindow.SmallScroll Down:=-6
Range(„D2“).Select
ActiveSheet.Paste
Sheets(„laufender Monat“).Select
Range(„C998“).Select
End Sub
Sub KLR_4_bereinigen_überflüssige_Zeilen()

’ KLR_4_bereinigen_überflüssige_Zeilen Makro
’ Makro am 04.06.2010 von Silke aufgezeichnet

Range(„D930“).Select
Dim Zei As Long
For Zei = 999 To 2 Step -1
If Cells(Zei, 1).Value = ", " Then Rows(Zei).Delete
Next Zei
End Sub
Sub KLR_5a_Loeschen_Pool()
Dim Zei As Long, Spa As Long
For Zei = 2 To Cells(Rows.Count, 7).End(xlUp).Row
If Cells(Zei, 7).Value = „Pool 10105“ Then
For Spa = 22 To 26
If Cells(Zei, Spa).Text „#NV“ Then
Cells(Zei, Spa).Value = Format(0, „0.00“)
End If
Next Spa
End If
Next Zei
End Sub
Sub KLR_5b_Loeschen_EZ()
Dim Zei As Long, Spa As Long
For Zei = 2 To Cells(Rows.Count, 7).End(xlUp).Row
If Cells(Zei, 7).Value = „EZ“ Then
For Spa = 22 To 26
If Cells(Zei, Spa).Text „#NV“ Then
Cells(Zei, Spa).Value = Format(0, „0.00“)
End If
Next Spa
End If
Next Zei
End Sub
Sub KLR_5c_Loeschen_SU()
Dim Zei As Long, Spa As Long
For Zei = 2 To Cells(Rows.Count, 7).End(xlUp).Row
If Cells(Zei, 7).Value = „SU“ Then
For Spa = 22 To 26
If Cells(Zei, Spa).Text „#NV“ Then
Cells(Zei, Spa).Value = Format(0, „0.00“)
End If
Next Spa
End If
Next Zei
End Sub

Vielen Dank, petsch

Hallo Silke,

ich weiger mich da erstmal irgendwas zusammenzufassen :smile:

Bring bitte erstmal die Einzelmakros in Schuß. Ich habs an
„Sub KLR_2_PERIS_lfd_Monat_einfügen“ probiert es zu verbessern, kam dann aber schnell durcheinander mit dem Mist-Select.

Probiers mal bitte nach diesem Schema:

Sub KLR\_2\_PERIS\_lfd\_Monat\_einfügen()
'
' KLR\_2\_PERIS\_lfd\_Monat\_einfügen Makro
' Makro am 04.06.2010 von Silke aufgezeichnet
'
Dim wksP As Worksheet, wksK As Worksheet
Set wksP = Workbooks("PERIS lfd Monat.xls").Worksheets("Tabelle1")
Set wksK = Workbooks("KLR-Berechnung lfd Monat.xls").Worksheets("Tabelle1")
With wksP
 .Range("A:B").Copy Destination:=wksK.Range("B1")
 '...
 '...
End With
End Sub

Du siehst man kommt ohne Activate und Select aus.
Und „Windows“ benutze ich fast nie.

Und, wenn du hier Code postest, benutze bitte den pre-Tag, wird unterhalb des Eingabefensters erkäutert, dann werden deine Codeeinrückungen angezeigt.

So, jetzt hoffe ich mal weiter daß der treffsichere Özil schwächelt und mal NEBEN den Torwart schießt *kicher*

Gruß
Reinhard

Ui, Özil hat ja prompt gehorcht :smile:) o.w.T.

1 „Gefällt mir“

Guten Tag,

?? ich zitiere aus der Netiquette:
Vorsicht mit Ironie, Sarkasmus und Humor

petsch

1 „Gefällt mir“

?? ich zitiere aus der Netiquette:
Vorsicht mit Ironie, Sarkasmus und Humor

Hallo Silke,

das versteh ich nun absolut überhaupt garnicht.
Ich hatte gerade dir fachlich geantwortet und dabei erwähnt daß Özil mal was anderes machen sollte, und siehe da, 2 Minuten schießt er gleich ein Tor durch meinen Tipp.
Sehr erfreut darüber habe ich das hier vermeldet.

Ich bin mir keinerlei Ironie-, Sarkasmus-, Humor-Schuld in diesem Fall bewußt.

Gruß
Reinhard

hallo zurück:
wies im Leben so ist: ich habe es nicht so verstanden, sondern mich angemacht gefühlt (wegen mail anstelle Brett), sorry…

hallo Reinhard,
ich danke für die Hilfestellung. Mein Wissen ist -bezogen auf Makros-extrem begrenzt, ich bastle im Wesentlichen auf der Grundlage von Einzelschritten, die ich mit Makrorekorder aufzeichne. Für meien Zwecke geeignete Lernhilfen habe ich nicht gefunden.
Ich werde gern auf der Basis Deiner Hilfe zu Makro 2 weiterlernen, muss aber erst lauter unbekannte Begriffe (wksP, wksK, dim) nachschlagen. Vielleicht bin ich ja irgendwann mal fit auf der Strecke, kurzfristig muss ich aber mein Vorhaben schultern (=automatisieren) oder weiter von Hand einzelne Schritte abarbeiten.
Danke aber für Deine Mühe und Unterstützung
petsch

wies im Leben so ist: ich habe es nicht so verstanden, sondern
mich angemacht gefühlt (wegen mail anstelle Brett), sorry…

Hallo Silke,

ich hoffe sehr du glaubst mir.
Es war ja eine Zitterpartie, als ich an dich schrieb hatte ich den Fernseher mit im Auge und sah da mehrmals daß Özil direkt dem Torwart in die Arme schoß.
Dies mißfiel mir und erwähnte in der Antwort an dich, mannomann könnte Özil mal ausnahmsweise neben den Torwart zielen.

Und prompt, 2 min später machte er das. Das hat mich erfreut und ich habe das hier verkündigt.

Mit dir hat das Ganze absolut garnix zu tun. Reines OT.

Ohne mir jetzt das Geringste selbst vorzuwerfen entschuldige ich mich dafür daß du das was in den falschen Hals bekommen hast.
Ich hoffe das Thema ist jetzt endgültig geklärt. Wenn nicht, mail mich an. Bin auch zum Test am Lügendedektor bereit :smile:

Gruß
Reinhard

Hallo Silke,

Mein Wissen ist -bezogen auf Makros-extrem begrenzt,

na und, so haben alle hier angefangen :smile:

ich bastle im Wesentlichen auf der
Grundlage von Einzelschritten, die ich mit Makrorekorder
aufzeichne.

Ja, das sieht man, ich weiß schon woher die ganze Selectierei stammt.
Auch nix Schlimmes. So hab ich auch angefangen.

Für meien Zwecke geeignete Lernhilfen habe ich
nicht gefunden.

Es gibt da noch mehr aber schau mal auf die Homepage der Fernuni Hagen, da gibt es irgendwo unter „Broschüren“ Vba-Anleitungen.

Ich werde gern auf der Basis Deiner Hilfe zu Makro 2
weiterlernen, muss aber erst lauter unbekannte Begriffe (wksP,
wksK, dim) nachschlagen.

Das sind nur von mir vergebene Variablennamen, das P bzw. K soll andeuten für welche Mappe sie stehen.

Vielleicht bin ich ja irgendwann mal
fit auf der Strecke, kurzfristig muss ich aber mein Vorhaben
schultern (=automatisieren) oder weiter von Hand einzelne
Schritte abarbeiten.

Du bist frei in deinen Entscheidungen. Aber versuche bitte daß was ich als Code schrieb zu verstehen, nachfragen kannste logo.
Oder aber, jetzt nur bezogen auf dein makro2 oder wie das hieß, schreib hier Pseudocode was das Makro machen soll, dann setze ich das in Vba-Code um.

Pseudocode wäre sowas
Datei1-Blatt1.D:F kopieren nach Datei2.Blatt1.G7

Danke aber für Deine Mühe und Unterstützung

Gerne.
Gruß
Reinhard

[MOD] Abgeschlossen, da OT - o.w.T.
.

1 „Gefällt mir“