Office: Zwischen Datenbanken hin- und herwechseln (nur Runtime installiert) Virenmeldung

Helfe beim Thema Zwischen Datenbanken hin- und herwechseln (nur Runtime installiert) Virenmeldung in Microsoft Access Hilfe um das Problem gemeinsam zu lösen; Ich habe eine Masterdatenbank (ACCDB), die sämtliche Tabellen enthält. Es gibt nun mehrere ACCDRs deren Tabellen auf die ACCDB verknüpft sind. Die... Dieses Thema im Forum "Microsoft Access Hilfe" wurde erstellt von Helge Schneider, 27. Juli 2012.

  1. Zwischen Datenbanken hin- und herwechseln (nur Runtime installiert) Virenmeldung


    Ich habe eine Masterdatenbank (ACCDB), die sämtliche Tabellen enthält. Es gibt nun mehrere ACCDRs deren Tabellen auf die ACCDB verknüpft sind. Die Anwender besitzen lediglich die Runtime-Software (Es ist kein Office installiert!)

    Wie ist es nun möglich zwischen den Datenbanken hin- und herzuwechseln? Ich komme mit Shell und Application.Quit zur ACCDR, jedoch nur mit Followhyperlink wieder zurück, was mir jedoch eine lästige Virenmeldung beschert:

    "Einige Daten können Viren enthalten oder ihren Computer in anderer Weise beschädigen...."

    Hat jemand eine Idee, wie hier die optimale Lösung wäre?

    Es soll zur Zeit nur eine (!) Datenbank offen sein. Die Startdatenbank (ACCDB) ist die Startmaske von der aus man in jede Runtime (ACCDR) gelangt. Anschließend möchte man wieder zurück (ACCDR --> ACCDB).

    Nebenbei möchte ich generell die Virenmeldung unterdrücken.
     
    Helge Schneider, 27. Juli 2012
    #1
  2. miriki Erfahrener User
    Mir ist noch nicht ganz klar, wie Du das mit dem hin und her realisiert hast. Wodurch wird der Wechsel denn ausgelöst? Drückt der Anwender auf einen Button? Ist es abhängig von einem berechneten Ergebnis?

    Aber mal allgemein, weil's die vielleicht etwas elegantere Lösung ist, eine andere Datei zu öffnen:
    Code:
    Option Compare DatabasePrivate Const SE_ERR_NOASSOC As Long = 31&
    Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" ( _
        ByVal hWnd As Long, _
        ByVal Operation As String, _
        ByVal Filename As String, _
        Optional ByVal Parameters As String, _
        Optional ByVal Directory As String, _
        Optional ByVal WindowsStyle As Long = vbMaximizedFocus _
        ) As Long
        
    Public Function LaunchDocument( _
        ByRef Filename As String, _
        Optional ByVal ParentForm As Form, _
        Optional ByVal ShowOpenWithDialog As Boolean = False, _
        Optional ByVal WindowStyle As VBA.VbAppWinStyle = vbMaximizedFocus _
        ) As Boolean
        Dim lSuccess As Long
        Dim hWndParent As Long
        If Not ParentForm Is Nothing Then
            hWndParent = ParentForm.hWnd
        End If
        lSuccess = ShellExecute(hWndParent, "Open", Filename, vbNullString, vbNullString, WindowStyle)
        Select Case lSuccess
            Case Is > 32
                LaunchDocument = True
            Case SE_ERR_NOASSOC
                If ShowOpenWithDialog Then
                    Shell "rundll32 shell32.dll,openas_rundll " & Filename
                    LaunchDocument = True
                End If
            Case Else
                LaunchDocument = False
        End Select
    End Function
    Damit solltest Du per "LaunchDocument \pfad\zu\anderer.mdb" eigentlich problemlos umschalten können.

    Du wirst aber weiterhin, je nach Sicherheitseinstellung auf dem jeweiligen Rechner, die "soll ich das wirklich öffnen? könnte ja gefährlich sein, Makros, Inflation, Weltuntergang usw." Meldung bekommen.

    Aber wie gesagt: Erzähl mal, wodurch Du von A nach B und zurück von B nach A kommst bzw. kommen willst.

    Gruß, Michael
     
    miriki, 2. August 2012
    #2
  3. Hallo Micha. Danke erstmal für die Antwort! Bin mit dem Code nur leider überfordert (ich weiß nicht, wo der Datenbankpfad zu hinterlegen ist).

    Mein Ziel: Es gibt 5 Datenbanken. Die Startdatenbank fungiert als Hauptmenü. Über Buttons gelangt der Anwender nun jeweils zur gewünschten "Unterdatenbank" (eine von 4). Möchte der Anwender von einer Unterdatenbank wieder zurück zur Startdatenbank, so drückt er auf den Zurückbutton. Es soll jedoch nur die jeweils gewünschte Datenbank offen sein.

    Ich habe es bisher so gelöst, dass ich von der Startdatenbank per Shell-Funktion und Docmd.Quit zur Unterdatenbank gelange:

    Dim WshShell As Object
    Set WshShell = CreateObject("Wscript.Shell")
    WshShell.Run "Z:\Datenbanken\Unterdatenbank.accdr"
    DoCmd.Quit

    Von der Unterdatenbank zurück zur Startdatenbank gelang ich per FollowHyperlink und Docmd.Quit (Nervig weil Virenmeldung):

    Application.FollowHyperlink "Z:\Datenbanken\Startdatenbank.accdb"
    DoCmd.Quit

    Accdr verwende ich nur deshalb, weil sonst die ganze Sitzung geschlossen wird. Für den Anwender kann es auch Accdb sein.
     
    Helge Schneider, 2. August 2012
    #3
  4. miriki Erfahrener User

    Zwischen Datenbanken hin- und herwechseln (nur Runtime installiert) Virenmeldung

    Ähm... Genau dort, wo er jetzt auch schon steht... *verwirrtbin* Du schreibst ja:

    Genau das würde sich dann in
    Code:
    LauchDocument "Z:\Datenbanken\Unterdatenbank.accdr"
    ändern. Hat eben den Vorteil, daß dieser Aufruf recht universell ist: Windows entscheidet selbständig auf dem jeweiligen Rechner, ob und wie das Dokument (also die Datenbank in diesem Fall) zu öffnen ist. Das Ding macht eigentlich genau das, was Du manuell im Explorer mit einem Doppelklick auf eine beliebige Datei machen würdest, inklusive der Nachfrage, wenn ein unbekannter Dateityp gestartet wird.

    Warum? Also, ich meine: Warum hier ein anderer Weg, als vorher? Auch der Weg zurück kann doch ohne Probleme (oder übersehe ich was?) mit entweder Deinem WshShell.Run oder eben dann auch mit dem LaunchDocument gemacht werden.

    Gruß, Michael
     
    miriki, 8. August 2012
    #4
Thema:

Zwischen Datenbanken hin- und herwechseln (nur Runtime installiert) Virenmeldung

Die Seite wird geladen...
  1. Zwischen Datenbanken hin- und herwechseln (nur Runtime installiert) Virenmeldung - Similar Threads - Datenbanken herwechseln Runtime

  2. Werte aktualisieren in Passwortgeschützer Datenbank

    in Microsoft Access Hilfe
    Werte aktualisieren in Passwortgeschützer Datenbank: Hallo zusammen! bis jetzt konnte ich zu sämtlichen Problemen, die ich in VBA hatte irgendwo im Netz Hilfe finden, aber zu dieses mal verzweifle ich langsam. Problem: Ich greife aus Excel über...
  3. Microsoft Access 97 Datenbanken zusammenführen

    in Microsoft Access Hilfe
    Microsoft Access 97 Datenbanken zusammenführen: Hallo ich habe die Aufgabe bekommen mehrere Access 97 Dateien zu einer großen zusammenzuführen. Diese Datenbanken werden alle mithilfe dem Program "EBF-Sport" geöffnet und bearbeitet. Ich habe...
  4. Access 2007 Datenbanken lassen sich nicht mehr öffnen

    in Microsoft Access Hilfe
    Access 2007 Datenbanken lassen sich nicht mehr öffnen: Hallo zuammen, das kumulative Update von Windows 10 jetzt im November hat auf meinen PC einen Fehler bei den Farben verursacht, der in verschiedenen Programmen auftrat. So auch bei meinen...
  5. Datenbanken zusammenführen

    in Microsoft Access Hilfe
    Datenbanken zusammenführen: Hallo, bitte eine einfache Erklärung für einen unerfahrenen Nutzer: Ich musste meine Datenbank zweimal schon aufteilen, da sie größer als 2MB wurde. Die Struktur der Tabelle ist in allen drei...
  6. Datenbank mit Leerzeichen per ini verknüpfen

    in Microsoft Access Hilfe
    Datenbank mit Leerzeichen per ini verknüpfen: Liebes Forum, um für eine neue Version die Datenbankstruktur ändern zu können, muss vom User der Datenbankpfad ausgewählt werden. Dies möchte ich zukünftig über eine ini-Datei erledigen, um es...
  7. offene Datenbank speichern

    in Microsoft Access Hilfe
    offene Datenbank speichern: Hallo, ich habe eine Datenbank, die möchte ich gern hier unter User = "Dokumente" speichern: anschließen bestätigen: MsgBox "Datenbank wurde hier gespeichert > " & Environ$("USERPROFILE") &...
  8. Erstellung kommunizierender Datenbanken

    in Microsoft Access Hilfe
    Erstellung kommunizierender Datenbanken: Hallo Zusammen, ich habt mithilfe des Excel-Forums eine Datenbank zum Suchen und Filtern verschiedener Bauteile in Testständen in Excel erstellt. Nun soll das ganze in Access umgewandelt werden....