Neuigkeiten:

Wenn ihr euch für eine gute Antwort bedanken möchtet, im entsprechenden Posting einfach den Knopf "sag Danke" drücken!

Mobiles Hauptmenü

wo sind die Daten

Begonnen von PeterW, August 02, 2020, 11:14:03

⏪ vorheriges - nächstes ⏩

PeterW

ich rufe die folgende Procedure auf und erhalte bei der ersten MsgBox die korrekten Werte angezeigt.
bei der 2. MsgBox ist die Anzeige leer und dem entsprechend wird "Keine GPS-Daten..." signalisiert obwohl die Daten in der Tabelle vorhanden sind.
Was ist hier los?

Private Sub btnGPS_Click()
MsgBox "1 " & [Lat] & "  " & [Lon]
'Exit Sub
    If fncGetShift = 1 Then '<Shift> Google
        mGPS = IIf(Lat <> "", Lat & "/" & Lon, "")
        mPrg = DLookup("[KText]", "StblKonfig", "key = 37")  'Programm Google Earth
        Call Shell(mBrowser & " http://maps.google.com/?q=" + mGPS, 1)
       
    ElseIf fncGetShift = 2 Then  '<Strg> Bild OSM
        Call fncGPSBild
        Call Shell(mBrowser & " http://www.openstreetmap.org/?mlat=" & mGPSLat & "&mlon=" & mGPSLon & _
        "#map=" & Me!fldGPSZoom & "/" & mGPSLat & "/" & mGPSLon, 1)
   
    ElseIf fncGetShift = 4 Then  '<Alt> Bild Google
         mGPS = IIf([Lat] <> "", [Lat] & "/" & [Lon], "")
        mPrg = DLookup("[KText]", "StblKonfig", "key = 37")  'Programm Google Earth
        'Call Shell(mPrg & " " & mGPS, 1)
        Call Shell(mBrowser & " http://maps.google.com/?q=" + mGPS, 1)
   
    Else 'OSM
 '   DoCmd.OpenQuery "frmgeoadrfilter"
MsgBox "2 " & [Lat] & "  " & [Lon]
        If [Lat] = "" Then MsgBox "Keine GPS Daten": Exit Sub
        mGPS = [Lat] & "/" & [Lon]
        Call Shell(mBrowser & " http://www.openstreetmap.org/?mlat=" & [Lat] & "&mlon=" & [Lon] & _
        "#map=" & Me!fldGPSZoom & "/" & mGPS, 1)
    End If

End Sub
Viele Grüße aus Berlin
Peter

DF6GL

Hallo,

was für Felder sind denn [Lat] und [Lon] überhaupt?

Wenn das Form-Textfelder sind, dann gewöhne Dir doch an, "Me!" davor zu setzen:  Me!Lat  oder auch Me![Lat]

und bleibe dabei konsequent in der Benamsung.  (Einmal nutzt Du Eckklammern, anders Mal nicht)


Bei den "mXXX" Variablen tippe ich auf global deklarierte Variablen...

Am Besten durchläufst Du den Code mit Einzelschritt und prüfst, ob nicht eine Function oder Sub den Inhalt der Textfelder ändert. Ich tippe da auf "Call fncGPSBild".  Auch "fncGetShift" könnte in Frage kommen.

Viele Grüße vom Bodensee
Franz, DF6GL

Hilfestellung:  http://www.access-o-mania.de/forum/index.php?topic=6969.msg118738#msg118738

Links und Tipps:
1.   http://v.hdm-stuttgart.de/~riekert/lehre/db-kelz/
1a. http://www.tinohempel.de/info/info/datenbank/normalisierung.htm
1b. https://support.office.com/de-de/article/Grundlagen-des-Datenbankentwurfs-eb2159cf-1e30-401a-8084-bd4f9c9ca1f5#bmterms
2.   http://www.donkarl.com
3.   https://web.archive.org/web/20201201233522/http://www.dbwiki.net/
4.   http://www.access-tutorial.de/
5.   http://www.tty1.net/smart-questions_de.htm
6.   http://access.joposol.com/accept

Last but not least:   < F1 > für Hilfe
;) Learning by doing not by spoon-feed ;)

Tipp: Find and Replace for Access

PeterW

#2
Lat und Lon sind Tabellenfelder mit GPS-Koordinaten
Die Funktion getShift ist 0, somit wird zwischen den beiden Mailboxen nichts ausgeführt
Viele Grüße aus Berlin
Peter

DF6GL

Hallo,

mhmm,  ::)  ja.... und die gibt es nicht auch im Formular als gebundene Textfelder?

Hast Du "Option Explicit" in jedem Modulkopf (auch in den Formular-Modulen) stehen?

Wenn nicht, hol das nach und kompiliere den Code im VBA-Editor.

Viele Grüße vom Bodensee
Franz, DF6GL

Hilfestellung:  http://www.access-o-mania.de/forum/index.php?topic=6969.msg118738#msg118738

Links und Tipps:
1.   http://v.hdm-stuttgart.de/~riekert/lehre/db-kelz/
1a. http://www.tinohempel.de/info/info/datenbank/normalisierung.htm
1b. https://support.office.com/de-de/article/Grundlagen-des-Datenbankentwurfs-eb2159cf-1e30-401a-8084-bd4f9c9ca1f5#bmterms
2.   http://www.donkarl.com
3.   https://web.archive.org/web/20201201233522/http://www.dbwiki.net/
4.   http://www.access-tutorial.de/
5.   http://www.tty1.net/smart-questions_de.htm
6.   http://access.joposol.com/accept

Last but not least:   < F1 > für Hilfe
;) Learning by doing not by spoon-feed ;)

Tipp: Find and Replace for Access

PeterW

ich habe biher "Option Explicit" nicht verwendet. jetzt habe ich das Modul damit ausgestattet und musste somit alle Variablen "Explicit" im Modulkopf deklarieren. Ich habe damit den Fehler beseitigt ohne zu verstehen, wo die vermutliche Kollision stattgefunden hat.
Also Erfolg ohne zu wissen wie und warum.
Aber Hauptsache es funtioniert.
Danke Franz

PS: ich suche immer noch den DANKE-Knopf
Viele Grüße aus Berlin
Peter