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

Fehler 91 Objektvariable oder With-Blockvariable

Fehler 91 Objektvariable oder With-Blockvariable
03.10.2018 15:58:17
Dirk1966
Guten Tag zusammen,
ich habe nach 18 Monaten wieder ein Problem mit einer Excel-Datei in der mit VBA die Entfernung zwischen 2 PLZ ermittelt wird.
Seit dem 03.10.2018 bekomme ich die Fehlermeldung
Fehler 91 Objektvariable oder With-Blockvariable nicht festgelegt.
Am 02.10.18 lief die Datei noch ohne Probleme. Ich habe auch ältere Datei-Versionen und die ursprüngliche Datei getestet alle mit der gleichen Meldung.
Zudem habe ich die Datei in 2 Netzwerken getestet Büro und Zuhause der Fehler ist der gleiche.
Meine VBA Kenntnisse sind nicht die besten, vielleicht kann mir jemand von Euch weiterhelfen.
Ich habe die Datei auf dem Server geladen.
https://www.herber.de/bbs/user/124388.xlsm
Vielen Dank schon zum jetzigem Zeitung.
Gruss D.Beranek

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Fehler 91 Objektvariable oder With-Blockvariable
03.10.2018 16:01:15
Hajo_Zi
sollte man nicht schreiben, welches Makro. Ich investiere keine Zeit um das fehlerhafte Makro zu finden.

Beiträge von Werner, Luc, robert, J.O.Maximo und folgende lese ich nicht.
AW: Fehler 91 Objektvariable oder With-Blockvariable
03.10.2018 16:05:14
Dirk1966
Sorry Hajo_Zi,
der Name vom Makro lt. GoogleTest1000().
Gruss Dirk
AW: Fehler 91 Objektvariable oder With-Blockvariable
03.10.2018 16:10:38
Hajo_Zi
Hallo Dirk,
bei mir läuft es ohne Fehler.
Gruß Hajo
AW: Fehler 91 Objektvariable oder With-Blockvariable
03.10.2018 16:18:33
Dirk1966
Hallo Hajo,
vielen Dank für die Rückinfo.
Ich habe auch nochmals getest, leider immer noch der gleiche Fehler.
Gruss Dirk
Anzeige
AW: Fehler 91 Objektvariable oder With-Blockvariable
03.10.2018 19:59:15
Karl-heinz
Hallo Dirk,
bei mir läuft es teilweise, aber hier ein Tipp.
Du solltest zunächst mal einen ordentlichen Fehlerabfang einbauen. Wie ich beim Rumprobieren bemerkte, liefert die Seite evtl. kein Ergebnis, dann wird die Objektvariable xmlNod nicht gesetzt und der Errorhandler gibt die besagte Fehlermeldung 91 raus. Im responseText muss "</status>OK"<status> stehen.
Z.B. so...
If Not objXML.responseText Like "*OVER_QUERY_LIMIT*" Then
xmlDoc.LoadXML objXML.responseText
'Zeit auslesen /Value=Sekunden /Text = Minuten mit Angabe "Minuten"
Set xmlNod = xmlDoc.SelectSingleNode("//row/element/duration/value")
If Not xmlNod Is Nothing Then
'Zeit in Stundenzelle eintragen, Rueckgabewert / 86400
Cells(lCnt, iCnt2 + 1) = CDate(xmlNod.Text / 86400)
'Entfernung auslesen /Value=Meter /Text = Kilometer mit Angabe "km"
Set xmlNod = xmlDoc.SelectSingleNode("//row/element/distance/value")
'Entfernung in km zelle eintragen, Rueckgabewert / 1000
Cells(lCnt, iCnt2) = xmlNod.Text / 1000
'Ende Schleife ueber alle DestinationAddress anhand Eintraegen in Spalte A
End If
End If
Warum ggf. keine Daten kommen, kann ich Dir nicht sagen, evtl. Zeitprobleme.
viele Grüße Karl-Heinz
Anzeige
AW: Fehler 91 Objektvariable oder With-Blockvariable
03.10.2018 21:08:22
Dirk1966
Hallo Karl-Heinz,
vielen Dank für deine Info.
Ich habe versucht den Code entsprechend abzuändern. Bekomme dann aber nur eine Ergebnis und nicht beide berechnet.
Vielleicht kannst Du mir den geändert Code senden oder mir aufzeigen wo ich die Abfrage einbauen muss.
Mit dem Zeitproblem stimme ich dir zu. Ich gehe von aus das zwischen den Abfragen bzw den Rückmeldungen aus Maps eine Pause eingebaut werden muss. Leider übersteigt dies meine VBA Kenntnisse.
Gruss Dirk
AW: Fehler 91 Objektvariable oder With-Blockvariable
04.10.2018 12:46:29
Karl-heinz
Hallo Dirk,
ich hatte Dir ja nur eine Ergänzung gezeigt, wie der Fehler abgefangen werden kann. Hier noch mal etwas abgewandelt:

'Abfrage senden
objXML.send
If objXML.responsetext Like "*<status>OK</Status>*" Then
'Abfrageergebnis (Text) aufnehmen
  xmlDoc.LoadXML objXML.responsetext
'Zeit auslesen /Value=Sekunden /Text = Minuten mit Angabe "Minuten"
  Set xmlNod = xmlDoc.SelectSingleNode("//row/element/duration/value")
'Zeit in Stundenzelle eintragen, Rueckgabewert / 86400
  If Not xmlNod Is Nothing Then Cells(lCnt, iCnt2 + 1) = CDate(xmlNod.Text / 86400)
'Entfernung auslesen /Value=Meter /Text = Kilometer mit Angabe "km"
  Set xmlNod = xmlDoc.SelectSingleNode("//row/element/distance/value")
'Entfernung in km zelle eintragen, Rueckgabewert / 1000
  If Not xmlNod Is Nothing Then Cells(lCnt, iCnt2) = xmlNod.Text / 1000
'Ende Schleife ueber alle DestinationAddress anhand Eintraegen in Spalte A
Else
  Debug.Print "Abfrage origins=" & strOAddr & "&destinations=" & strDAddr & " hat nicht geklappt"
  Debug.Print objXML.responsetext
End If

Mal funktioniert es, mal nicht. An ein Zeitproblem glaube ich jetzt nicht mehr.
Jetzt kannst Du bei Fehlfunktionen den responstext im Direktbereich nachlesen. Da taucht ggf. der Hinweis auf, dass die Abfrageform ohne einen API-Key veraltet sei. Google hat da wohl im Juni diesen Jahres etwas verändert. Dazu solltest Du mal googlen, wie man den bekommen kann und den an Deine Abfrage hängen. Leider weiß ich auch nicht mehr darüber und habe ZZt auch keine Zeit, mich damit zu beschäftigen.
Mögliche Fehlermeldung:
<status>OVER_QUERY_LIMIT</status>
<error_message>Keyless access to Google Maps Platform is deprecated. Please use an API key with all your API calls to avoid service interruption. For further details please refer to http://g.co/dev/maps-no-account</error_message>

Hoffe Du bekommst es hin, viel Glück.
VG KH
Anzeige
warum ein zweiter Thread?
03.10.2018 22:33:00
EtoPHG
Dirk
Dein Code wird ohne die Beschaffung eine Google-API-Schlüssels nicht mehr lange (ab und zu) Laufen.
Da du offensichtlich Code aus Foren zusammenkopiert hast, den du nicht verstehst, beschäftigst du jetzt Helfer, die ebenso offensichtlich ebensowenig über die Preis- und Modellanpassungen von Google bezüglich Maps, Routen und Distanzberechnungen vorgenommen hat.
Webservice Aufrufe liefern nur noch zufällig eine richtige Antwort mit den in diversen Foren kursierende Codes. Neu müssen sie diese Form aufweisen:
https://maps.googleapis.com/maps/api/distancematrix/json?origins=Seattle&destinations=San+Francisco&key=YOUR_API_KEY
Das wichtigste der YOUR_API_KEY, dieser muss individuell bei Google angefordert werden unter
Get API Key dazu muss du ein registriertes Google-Account haben, das Verrechnung und Zahlungen zulässt.
Das was bis jetzt hier im Forum als Antworten auf deine und ähnliche Anfrage bis jetzt geliefert wurde, nützt alles nix, wenn nicht obige Voraussetzungen geschaffen sind!
...und im Übrigen finde ich es nicht schön von Dir einfach einen neuen Thread zu eröffnen, und damit Helfer für nichts zu beschäftigen. -> siehe: hier und hier und hier und hier
Also bitte: Zuerst recherchieren-dann posten-dann antworten...
Gruess Hansueli
Anzeige
AW: warum ein zweiter Thread?
06.10.2018 09:47:03
Dirk1966
Hallo Hansueli,
vielen Dank für deine Nachricht.
Bei bei meinen Recherchen nicht auf die aufgezeigten Thread gestossen.
Gruss Dirk

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige