Hallo Zusammen,
ich habe ein auf Excel VBA basierendes Programm geschrieben, mit dem man Bestell-Listen (excel-dateien) für Kunden erstellen kann.
Leider komme ich mit einer Fehlermeldung nicht weiter.
Wenn ich eine Bestell-Liste ändere und Artikel bearbeite, öffnet sich per Doppelklick auf die Bestell-Liste ein Fenster. Nun kann ich den Artikeltext etc. ändern. Das funktioniert auch soweit gut, die Bestell-Liste wird nach der Änderung aktualisiert und so weiter. Möchte ich nun eine größere Anzahl an Artikeln ändern, so erfolgt nach ca. 80 aufrufen bei Klick auf "OK" ein "Automatisierungsfehler das aufgerufene objekt wurde von den clients getrennt". Habe zum Verständnis 2 Bilder mit drangehängt.
Bestell-Liste:
bilder-upload.eu/show.php?file=ce52b4-1528662360.jpg
Wird nach Doppelklick auf einen Artikel aufgerufen:
bilder-upload.eu/show.php?file=6c31bc-1528662468.jpg
Der Fehler tritt lt. Debug an folgender Stelle auf:
Hier ist der Code, wenn ich auf "OK" klicke:
Danke
Gruß
ich habe ein auf Excel VBA basierendes Programm geschrieben, mit dem man Bestell-Listen (excel-dateien) für Kunden erstellen kann.
Leider komme ich mit einer Fehlermeldung nicht weiter.
Wenn ich eine Bestell-Liste ändere und Artikel bearbeite, öffnet sich per Doppelklick auf die Bestell-Liste ein Fenster. Nun kann ich den Artikeltext etc. ändern. Das funktioniert auch soweit gut, die Bestell-Liste wird nach der Änderung aktualisiert und so weiter. Möchte ich nun eine größere Anzahl an Artikeln ändern, so erfolgt nach ca. 80 aufrufen bei Klick auf "OK" ein "Automatisierungsfehler das aufgerufene objekt wurde von den clients getrennt". Habe zum Verständnis 2 Bilder mit drangehängt.
Bestell-Liste:
bilder-upload.eu/show.php?file=ce52b4-1528662360.jpg
Wird nach Doppelklick auf einen Artikel aufgerufen:
bilder-upload.eu/show.php?file=6c31bc-1528662468.jpg
Der Fehler tritt lt. Debug an folgender Stelle auf:
Hier ist der Code, wenn ich auf "OK" klicke:
VB.NET-Quellcode
- Dim i As Integer
- Dim rng As Range
- Dim nummer2 As Long
- On Error GoTo fehler
- GoTo beginn
- fehler:
- MsgBox ("Fehlermeldung: " & Err.Description)
- GoTo zuende
- beginn:
- logtext = "Anwahl: OK"
- Call loggen
- If TextBox6 = "" Then MsgBox ("Bitte füllen Sie das Feld 'I-EK' aus!"): logtext = "Feld I-EK leer.": Call loggen: GoTo zuende
- If TextBox7 = "" Then MsgBox ("Bitte füllen Sie das Feld 'I-VK' aus!"): logtext = "Feld I-VK leer.": Call loggen: GoTo zuende
- If TextBox8 = "" Then MsgBox ("Bitte füllen Sie das Feld 'VA' aus!"): logtext = "Feld Verpackungsart leer.": Call loggen: GoTo zuende
- If TextBox9 = "" Then MsgBox ("Bitte füllen Sie das Feld 'Artikeltext' aus!"): logtext = "Feld Artikeltext leer.": Call loggen: GoTo zuende
- Worksheets("aendern").Range("c" & multi) = TextBox6
- Worksheets("aendern").Range("D" & multi) = TextBox7
- Worksheets("aendern").Range("E" & multi) = TextBox8
- Worksheets("aendern").Range("B" & multi) = TextBox9
- Worksheets("aendern").Range("m" & multi) = ""
- artikelnummer999 = CStr(Worksheets("aendern").Range("a" & multi))
- nummer2 = Worksheets("food").Range("a" & Rows.Count).End(xlUp).Row
- Set rng = Worksheets("food").Range("a1:a" & nummer2).Find(artikelnummer999, LookIn:=xlValues, LookAt:=xlWhole, MatchCase:=True)
- If rng Is Nothing Then VA = "": GoTo allesersetzt
- Worksheets("food").Range("C" & rng.Row) = TextBox6
- Worksheets("food").Range("d" & rng.Row) = TextBox7
- nummer2 = Worksheets("einheit").Range("b" & Rows.Count).End(xlUp).Row
- For i = 1 To nummer2
- If TextBox8 = Worksheets("Einheit").Range("b" & i) Then GoTo weiter
- Next i
- MsgBox ("Einheit nicht gefunden, konnte somit nicht ersetzt werden!"): GoTo weiter1
- weiter:
- Worksheets("food").Range("e" & rng.Row) = Worksheets("Einheit").Range("a" & i)
- weiter1:
- ww7 = ww7 + 1
- logtext = "Inhalt EK/VK bei Artikel " & Worksheets("aendern").Range("a" & multi) & " " & Worksheets("aendern").Range("b" & multi) & " geändert.": Call loggen
- allesersetzt:
- merke = 1
- merke1 = 0
- verschieben = 0
- Aendern2.Hide
- Aendern.Hide
- Load Aendern
- Aendern.Show
- zuende:
Danke
Gruß