Live-Forum - Die aktuellen Beiträge
Datum
Titel
17.04.2024 18:57:33
17.04.2024 16:56:58
Anzeige
Archiv - Navigation
1668to1672
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

FOR Schleife ....

FOR Schleife ....
23.01.2019 07:39:03
Mike
Hallo zusammen,
ich benötige mal Hilfe bei der Erstellung einer Schleife.
Im nachfolgenden Code möchte ich in mehreren Dateien Makros durchlaufen lassen. Da ich nicht für jede Maschine einen eigenen Code schreiben möchte, möchte ich das über eine Schleife lösen.
Sicher kann ich auch die Maschinen in einer Spalte auflisten und diese nacheinander auslesen aber ich möchte die Daten nicht nochmal extra auf einem Tabellenblatt hinterlegen sondern sie nur im Code stehen haben.
Ich glaube der Ansatz wie im Code geht schon mal in die richtige Richtung aber ich bin mir nicht sicher wie ich das in die Schleife bekomme. So wie ich es geschrieben habe wird l nicht gefüllt.
Also entweder habe ich nur einen kleinen Fehler gemacht oder die Umsetzung ist völlig daneben.
Wie wäre es richtig?

Sub Test()
Call EventsOff
Dim Jahr As String
Dim KWaktuell As String
Dim Maschine(12) As String
Dim l As Integer
Maschine(0) = "M21"
Maschine(1) = "M22"
Maschine(2) = "M23"
Maschine(3) = "M24"
Maschine(4) = "M25"
Maschine(5) = "M28"
Maschine(6) = "M29"
Maschine(7) = "M30"
Maschine(8) = "M33"
Maschine(9) = "M35"
Maschine(10) = "M36"
Maschine(11) = "M40"
Jahr = ("\" & Year(Now) & "\")
KWaktuell = Format(Format(Date, "ww"), "00")
For l = Maschine(0) To Maschine(12)
Application.Run "'F:\Pfad ....\" & l & "\2019\KW" & KWaktuell & ".xlsm'!Aktualisierung"
Application.Run "'F:\Pfad ....\" & l & "\2019\KW" & KWaktuell & ".xlsm'!DiagrammOEE"
ActiveWorkbook.Close savechanges:=True
Next l
End Sub
Anfangs habe habe ich gedacht ich könnte es eventuell irgendwie so schreiben
For l = Maschine (M21, M22, M23,.....)
Vielleicht lässt sich das ja auch so umsetzen aber dazu habe ich noch weniger im Netz finden können.
Wäre schön wenn mir jemand dazu Hilfestellung geben würde oder eventuell alternative Vorschläge hat. Gerne auch ein Link zu einem Beispiel wo ich mich dran langhangeln kann.
Gruß
Mike

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

Betreff
Datum
Anwender
Anzeige
AW: FOR Schleife ....
23.01.2019 07:47:49
Sepp
Hallo Mike,
  For l = 0 To Ubound(Maschine)
    
    Application.Run "'F:\Pfad ....\" & Maschine(l) & "\2019\KW" & KWaktuell & ".xlsm'!Aktualisierung"
    Application.Run "'F:\Pfad ....\" & Maschine(l) & "\2019\KW" & KWaktuell & ".xlsm'!DiagrammOEE"
    ActiveWorkbook.Close savechanges:=True
    
  Next l

VBA/HTML-CodeConverter, AddIn für Office 2002-2016 - in VBA geschrieben von Lukas Mosimann. Projektbetreuung:RMH Software & Media

Code erstellt und getestet in Office 16 - mit VBAHTML 12.6.0


 ABCDEF
1Gruß Sepp
2
3

Anzeige
AW: FOR Schleife ....
23.01.2019 08:05:14
Mike
Hallo Sepp,
funktioniert einwandfrei. Vielen Dank dafür.
Nur aus Interesse, gibt es auch einen Ansatz der in diese Richtung geht?
Maschine (M21, M22, M23,.....)
Also das quasi die Werte in der Klammer nacheinander gesetzt werden?
Gruß
Mike
AW: FOR Schleife ....
23.01.2019 08:17:27
Sepp
Hallo Mike,
Dim varItem As Variant

For Each varItem In Array("M21", "M22", "M23")
  Debug.Print varItem
Next

VBA/HTML-CodeConverter, AddIn für Office 2002-2016 - in VBA geschrieben von Lukas Mosimann. Projektbetreuung:RMH Software & Media

Code erstellt und getestet in Office 16 - mit VBAHTML 12.6.0


 ABCDEF
1Gruß Sepp
2
3

Anzeige
AW: FOR Schleife ....
23.01.2019 08:20:02
Mike
Hallo Sepp,
auch dafür besten Dank. Das bringt mich weiter.
Gruß
Mike

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige