Backupen in VBA Nederlandse versie Access lukt niet

Status
Niet open voor verdere reacties.

Stefan van Aals

Gebruiker
Lid geworden
11 aug 2010
Berichten
5
Ik heb 2 buttons gemaakt in Access, één om de Compact & Repair uit te voeren, de ander de back-up obv Access standaard functionaliteit.

In de Engelse versie werken beiden prima. In de Nederlandse versie doet de back-up het niet. Iemand een idee waar het aan ligt? De gebruikte code staat hieronder, onderaan in rood staat wat niet werkt.

Met vriendelijke groet

Stefan

Code:
Private Sub Command7_Click()
    'compact & repair database ...standaard functionaliteit van Access
    antwoord = MsgBox("Wilt u deze database COMPACTEREN en REPAREREN middels de standaard MS Access Functionaliteit?", vbYesNo)
    If antwoord = vbYes Then
        On Error Resume Next
            'engelse versie Access <-- W E R K T
            CommandBars("Menu Bar"). _
            Controls("Tools"). _
            Controls("Database utilities"). _
            Controls("Compact and repair database..."). _
            accDoDefaultAction
            'nederlandse versie Access <-- W E R K T
            CommandBars("Menu Bar"). _
            Controls("Extra").Controls("Databasehulpprogramma's"). _
            Controls("Database comprimeren en herstellen..."). _
            accDoDefaultAction
        On Error GoTo 0
    End If
End Sub
Private Sub Command14_Click()
    'back-up database ...standaard functionaliteit van Access
    antwoord = MsgBox("Wilt u deze database BACK-UPen middels de standaard MS Access Functionaliteit?", vbYesNo)
    If antwoord = vbYes Then
        On Error Resume Next
            'engelse versie Access <-- W E R K T
            CommandBars("Menu Bar"). _
            Controls("Tools"). _
            Controls("Database utilities"). _
            Controls("Back Up Database..."). _
            accDoDefaultAction
[COLOR="red"]            'nederlandse versie Access   <-- W E R K T   N I E T
            CommandBars("Menu Bar"). _
            Controls("Extra").Controls("Databasehulpprogramma's"). _
            Controls("Back-up maken van de database..."). _
            accDoDefaultAction[/COLOR]
        On Error GoTo 0
    End If
End Sub
 
Code:
CommandBars("Menu Bar"). _
Controls("Extra").Controls("Databasehulpprogramma's"). _
Controls("Back-up maken van de database..."). _
accDoDefaultAction

Moet "Menu Bar" geen "Menubalk" zijn?
Code 2e regel: Wat heb je in menu "Extra" ---> "Databasehulpprogramma's" te zoeken als je gaat Backuppen
 
Code:
CommandBars("Menu Bar"). _
Controls("Extra").Controls("Databasehulpprogramma's"). _
Controls("Back-up maken van de database..."). _
accDoDefaultAction

Moet "Menu Bar" geen "Menubalk" zijn?
Code 2e regel: Wat heb je in menu "Extra" ---> "Databasehulpprogramma's" te zoeken als je gaat Backuppen

Ik ga "Menu Bar" vervangen door "Menubalk". Je weet het maar nooit, wel zou het vreemd zijn dat het bij het Compact & Repair wel werkt (zowel Engels als Nederlandse versie van Access 2003).

Betreffende je tweede opmerking, onder Extra --> Databasehulpprogramma's staat zowel Database comprimeren en herstellen, en, Back-up maken van de database .... De Engels talige versie van Access 2003 doet het prima met de Engelstalige equivalent. Dat maakt het 'verwarrend'.
 
Betreffende je tweede opmerking, onder Extra........

Ja je hebt gelijk ik zat te pitten. Je kunt ook een backup maken via menu "Bestand" ---> "Back-up maken van de database...". Daar was ik mee in de war.
 
Ja je hebt gelijk ik zat te pitten. Je kunt ook een backup maken via menu "Bestand" ---> "Back-up maken van de database...". Daar was ik mee in de war.

Ik heb geen Nederlandse Access nu tot mijn beschikking. Wordt het dan:

Code:
CommandBars("Menu Bar"). _
Controls("Bestand"). _
Controls("Back-up maken van de database..."). _
accDoDefaultAction

Zou je dit voor mij kunnen verifiëren? :thumb:
 
Dit moet werken...

Code:
CommandBars("Menu Bar").Controls("Bestand").Controls("Back-up maken van de database...").accDoDefaultAction
 
CommandBars("Menu Bar"). _
Controls("Bestand"). _
Controls("Back-up maken van de database..."). _
accDoDefaultAction

en

CommandBars("Menu Bar").Controls("Bestand").Controls("Back-up maken van de database...").accDoDefaultAction

werken allebei niet. Onderstaande foutmelding verschijnt:

Fout 5 tijdens uitvoering:

Ongeldige procedure-aanroep of ongeldig argument
 
Vreemd, want bij mij doet-ie het dus gewoon. Ik heb wel de Microsoft Office Object Library # aangezet. Helpt misschien wel.... En ik werk (uiteraard...) met 2003. Kan zijn dat 2007 en hoger 't anders aanpakt, want je hebt dan uiteraard Ribbon codes nodig.
 
In 1e instantie heb ik de code gekopieerd. Type ik de code

CommandBars("Menubalk").Controls("Bestand").

dan kom ik tot dit punt. Na de punt krijg ik geen mogelijkheid om weer voor controls te kiezen.

De verwijzing naar de "Microsoft Office 12.0 Object Libary" heb ik ook aan staan. Access versie 2003.
 
Dit is wat ik gebruik:
Code:
Private Sub Knop86_Click()
Dim cbarMenu As CommandBar
Dim cmd As CommandBarControl
    Set cbarMenu = CommandBars("Menu Bar")
    cbarMenu.Controls("Bestand").Controls("Back-up maken van de database...").accDoDefaultAction
End Sub
Deze code heb ik net in een andere db geplakt, waar geen verwijzing was naar de bibliotheek. Hij liep, zoals te verwachten, vast op de eerste de beste regel. Daarna de Object Library toegevoegd, en hij deed het meteen prima. Kan er niet veel meer van maken ;)
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan