Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Schleife für Änderungen

Forumthread: Schleife für Änderungen

Schleife für Änderungen
07.10.2016 10:31:06
Daniel
Hallo Zusammen
Habe ein Buchhaltungsprogramm für unsere Feuerwehr geschrieben, jetzt hat sich aber ein Fehler in denn 50 Personalblätter eingeschlichen.
Die Mappe besteht aus ca. 60 Blätter. 50 Blätter sind Personalblätter.
Bei Änderungen habe ich bisher alles von Hand korrigiert.
Jetzt möchte ich eine Schlaufe programmieren, die es mir ermöglicht schnell und einfach alle Personalblätter zu korrigieren. Mein Vorschlag:
Zwei Makros
Sub Korrektur()
'Korrekturen für Personalblätter P1-P50 hier eintragen!
End Sub

Sub Aenderungen_Personal()
'Änderungen an allen Personalblätter P1-P50
Application.ScreenUpdating = False 'Bildschirmaktualisierung ausschalten
Application.Calculation = xlCalculationManual 'automat.Berechnung ausschalten
Aufheben 'Entsperren
Sheets("P1").Select
Korrektur
Sheets("P2").Select
Korrektur
Sheets("P3").Select
Korrektur
Usw.
Könnte ich dieses auch in einer Schleife programmieren, damit mein Code übersichtlich bleibt?
Gruss Daniel


		
Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Schleife für Änderungen
07.10.2016 10:48:45
Fennek
Hallo,
im ersten Schriit sollte man eine Schleife über die 50 Personalblätter legen (ist es wirklich notwendig 50 Blätter anstelle von einem mit allen Daten anzulegen)
Z.B.:

for i = 1 to sheets.count
' Prüfung auf Personalblatt anhand des Namens
if sheets(i).name = ?
'hier die Korrektur; welche?
end if
next i
Bei dieser recht wenigen Angaben ist es m.E. nicht möglich, konkreter zu antworten.
mfg
Anzeige
AW: Schleife für Änderungen
07.10.2016 10:55:57
Daniel
Hi
in deinem Fall könnte die Schleife so aussen.
die Schleife läuft über alle Sheets und prüft den Namen.
die Korrektur wird ausgehführt, wenn der Blattname mit "P" beginnt und direkt danach eine Ziffer folgt:
Sub Änderungen_Personal
Wsh as WorkSheet
For Each Wsh in ActiveWorbook.Worksheets
if Wsh.Name Like "P#*" Then
Wsh.Select
Call Korrektur
end if
Next
End Sub
in der Like-funktion ist das # der Platzhalter für eine Ziffer und das * der Platzhalter für beliebige Zeichen..
Gruß Daniel
Anzeige
AW: Schleife für Änderungen
07.10.2016 10:56:26
Urmila
oder halt so...
Sub Aenderungen_Personal()
Dim Tbl
'Änderungen an allen Personalblätter P1-P50
Application.ScreenUpdating = False 'Bildschirmaktualisierung ausschalten
Application.Calculation = xlCalculationManual 'automat.Berechnung ausschalten
Aufheben 'Entsperren
For Tbl = 1 to 50
Sheets("P"&Tbl).Select
Korrektur
Next Tbl
End Sub
LG
Urmila
Anzeige
AW: Schleife für Änderungen
07.10.2016 15:05:31
Daniel
Danke an alle
Die Lösung von Urmila funktioniert super
Gruss Daniel
;

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