Neuigkeiten:

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

Mobiles Hauptmenü

DB nach Länderumstellung disfunktional

Begonnen von Doming, September 22, 2025, 07:52:00

⏪ vorheriges - nächstes ⏩

Doming

Hallo,

vor einigen Tagen wurde bei einigen unserer Firmenrechner ein Update aufgespielt, bei dem die Regionseinstellungen auf China umgestellt wurden. Die Oberfläche er meisten Programme war weiterhin deutsch, aber gerade bei den Access-Datenbanken gab es Ärger, nach jetzigem Kenntnisstand, weil Sonderzeichen im Code verwendet wurden.
Diese habe ich jetzt meines Wissens alle raus. Leider sieht Access das anders, ich bekomme diese Fehlermeldung:Sie dürfen in diesem Board keine Dateianhänge sehen.

 Private Sub Form_Load()
    DoCmd.Echo False
    DoCmd.Maximize
    Me!Datum = Date
    DoCmd.GoToRecord acForm, "Lieferschein", acLast
    DoCmd.Echo True
End Sub

Private Sub Form_Open(Cancel As Integer)
    Call Druck_verbieten
End Sub

Private Sub Form_Current()
    If Me!DSgesperrt = True Then
        Me.AllowEdits = False
    Else
        Me.AllowEdits = True
    End If
    If Me!DSgesperrt = True Then
        Me!BtnSperrOff.Visible = True
    Else
        Me!BtnSperrOff.Visible = False
    End If
    If Me!KzRueck = True And (Me!Ruecklieferung <> "" Or Not IsNull(Me!Ruecklieferung)) Then
        Forms!Lieferschein!RueckBez.Visible = True
        Forms!Lieferschein!Ruecklieferung.Visible = True
        Forms!Lieferschein!RueckWeg.Visible = True
    Else
        Forms!Lieferschein!RueckBez.Visible = False
        Forms!Lieferschein!Ruecklieferung.Visible = False
        Forms!Lieferschein!RueckWeg.Visible = False
    End If
    If Me!LAusd = "" Or IsNull(Me!LAusd) Then
        Me!LAusd = 2
    End If
    Me.Refresh
End Sub

Ich habe versucht, den Debugger durch setzen eines Haltepunkts in jeder Sub zum Stoppen zu bewegen, aber die obige Fehlermeldung kommt trotzdem, der Code wird nicht angesprochen.

Was geschieht zwischen DoCmd.OpenForm und den Unterprozeduren?

Auf meinem nicht betroffenen Rechner läuft alles wie gewohnt
Bitte keine Diskussionen über ,,Updates zurückfahren", das läuft alles schon auf einer anderen Ebene. Mich würde nur interessieren, wie ich die obige Fehlermeldung wegbekomme. Was läuft da zwischen den Zeilen im VBA-Code ab?

Gruß
 Doming

PhilS

Zitat von: Doming am September 22, 2025, 07:52:00Diese habe ich jetzt meines Wissens alle raus. Leider sieht Access das anders, ich bekomme diese Fehlermeldung:
Es geht nicht nur um Steuerelemente, die auch im VBA-Code eine Ereignisprozedur haben, sondern um *alle* Steuerelemente. Dabei bitte im Hinterkopf behalten, dass auch der Formularfuß ein Steuerelement ist, und von einem auf Deutsch eingestellten Access automatisch genau so benannt wird. (Analog: Berichtsfuß)

Zitat von: Doming am September 22, 2025, 07:52:00Was geschieht zwischen DoCmd.OpenForm und den Unterprozeduren?
Das Klassenmodul des jeweiligen Formular muss erst mal kompiliert werden. Dabei werden Steuerelemente zu Properties des aus der Klasse erstellten Objektes. Genau dort dürfte dann das ß-Problem zuschlagen.

 
Neue Videoserie: Windows API in VBA

Klassische CommandBars visuell bearbeiten: Access DevTools CommandBar Editor

Doming

Hallo und danke für die Antwort.

Das mit den Füßen war mir bekannt und der Formularfuß wurde auch einige Male im Code angesprochen. Diese Stellen habe ich mit .Section(Footer) zu korrigieren gehofft. Dass die Controls aber auch angesprochen werden, wenn sie nicht im Code stehen, war mir unbekannt.
Okay, dann bin ich immerhin aus der Fehlerbehebung raus  ;D

Bitsqueezer

Hallo,

schon mal mit Total Deep Search von V-Tools versucht? Das durchsucht alle Arten von Objekten:
https://www.skrol29.com/us/vtools.php

Ob es hierbei erfolgreicher ist als Find/Replace, kann ich nicht sagen.

Gruß

Christian