Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1520to1524
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

In Endlosschleife gefangen

In Endlosschleife gefangen
05.11.2016 18:50:06
Hans
Hallo Leute, ich bin in einer Endlosschleife gefangen.
Zur Erklärung ..
Mehrere Rechner greifen auf im Netzwerk auf freigegbene Dateien zu.
Per Makro werden mehre Dateien gespeichert und damit die änderungen der Anderen übernommen.
Um Fehler bei gleichzeitigem Speichern zu verhindern habe ich diese Methode.
Solange der Satus auf 2 ist soll das Programm in der Schleife bleiben.
Sobald der Status wieder auf 1 ist ( passiert am Ende es Speicher Makros ) soll die Methode weiterlaufen.
Aber das Ändern des Status wird nicht übernommen. Also in der dritt letzen Zeile wird die Freigegebene Datei Status.xls nicht gespeichert.
Kann mir jemand weiterhelfen?
LG
Sub statusabfrage()
Dim i As Integer
Dim status As Integer
If wksStatus Is Nothing Then _
Set wksStatus = Workbooks("Status.xls").Worksheets("Status")
wksStatus.Activate
ActiveWorkbook.Save
status = wksStatus.Range("B2")
i = 1
Do While i  0 Then Exit Do
If status = 1 Then
Exit Sub
End If
wksStatus.Activate
ActiveWorkbook.Save
Loop
End Sub

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

Betreff
Datum
Anwender
Anzeige
AW: In Endlosschleife gefangen
05.11.2016 19:00:50
Hans
Also die Datei Status.xls wird innerhalb der Schleife gespeichert.
Aber auch wenn der Wert von status ändert sich nicht.
Das Szenario..
Nutzer A setzt den Wert von Status via Speicher-Makro auf 2.
Nutzer B startet auch das Speicher-Makro .. dort wird das Sub statusabfrage() durch einen Call aufgerufen.
Da der Status von Nutzer A auf 2 gesetzt wurde bleibt das Speicher-Makro von Nutzer B in der Schleife.
Bei Nutzer A wurde das Speicher Makro beendet und der Status wieder auf 1 gesetzt.
Nun sollte bei Nutzer B die Schleife weiterlaufen.
Aber bei Nutzer B bleibt der Status immer auf 2 obwohl der Stauts von Nutzer A wieder auf 1 gesetzt wurde und die Datei auch gespeichert wurde.
Anzeige
wksStatus
06.11.2016 12:55:14
KlausF
Moin Hans,
ich bin ja nicht so der große VBA-Crack aber nach kurzen Anlesen:
In Deinem Beispiel ist wksStatus gar nicht dimensioniert
Dim wksStatus As Worksheet
Gruß
Klaus
AW: wksStatus
06.11.2016 15:40:46
Hans
Hallo Klaus,
muss man gleich beleidigend sein?
Aber an deinem Vorschlag liegt es nicht. Hätte für mich auch keinen Sinn ergeben!
Gruß Hans
?
06.11.2016 16:34:32
KlausF
muss man gleich beleidigend sein?
Hallo Hans. Was war denn für Dich daran beleidigend?
Ich habe nach kurzem Lesen erst einmal auf etwas aufmerksam gemacht.
Wenn Du an die erste Stelle über den Code ein
Option Explicit
setzt würde Dein Code auch gar nicht laufen. Das sollte man übrigens
immer so machen. Hilft Fehler zu vermeiden.
Das das in diesem Falle nicht die Lösung war konnte ich ja nicht wissen.
Gruß
Klaus
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige