ich habe ein Problem ein Makro zu schreiben, an dem bisher nicht nur ich verzweifelt bin.
Excel wird verwendet um ein Kassenbuch zu führen. Die Arbeitsmappe besteht aus mehreren Tabellenblättern. Unter anderem für jeden Kalendermonat eines. Dann weitere Tabellenblätter für verschiedene Auswertungen. Eines davon für den Splittbuchungsbeleg. Die Monatsblätter (Tabelle1 - Tabelle12) sind erst einmal identisch aufgebaut. In Spalte C, von Zeile 4 bis maximal 93 sind alle Buchungen durchlaufend nummeriert. Es existiert also für jede Buchung eine lfd. Nummer nur einmal. Außer bei Splittbuchungen, dort hat jede dazu gehörige Buchung die selbe lfd. Nummer.
Und das ist das Ziel: Im Splittbuchungsbeleg wird die zu suchende lfd. Nummer eingetragen. Nach dem Klick auf die Schaltfläche "Beleg aktualisieren", soll Excel NUR die Tabellen 1 bis 12 durchsuchen und die gefundenen Zeilen, mit der entsprechenden lfd. Nummer, ins Tabellenblatt "Splittbuchungsbeleg" kopieren.
Ich habe mit der Funktion "If" begonnen, um die einzelnen Stück für Stück zu durchsuchen, mit Angabe der Spalte ("C4:C93") und Find_(what....) mit Angabe der Zelle, in der der zu suchende Wert steht. Ergänzt durch LookAt:=xlWhole damit nur der eingetragene Wert gesucht wird.
Da kommt dann die erste Fehlermeldung: "Erwartet wird End If". Dieses ist aber im Sub eingetragen. Nun wissen wir nicht mehr weiter.
Bisher mussten wir diese Einträge von Hand ausführen, also alles doppelt schreiben. Übers Jahr gesehen ein ganz schöner Mehraufwand. Deswegen hätten wir das gerne automatisiert.
Können Sie uns da helfen?
Mit freundlichem Gruß
Ringberger