Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

vba Alle Datenverbindungen aktivieren

Forumthread: vba Alle Datenverbindungen aktivieren

vba Alle Datenverbindungen aktivieren
19.12.2014 08:05:25
Michael
Moin Allerseits!
In unserer Firma greifen wir über ein Makro auf Webseiten zu. Bei manchen Kollegen klappt das nicht. Wir haben herausgefundne, dass der Schalter unter
Sicherheitscenter - Externer Inhalt - Sicherheitseinstellungen für Datenverbindungen
deaktiviert ist.
Kann ich das per vba abfragen? Dann kann ich eine Meldung mit dem Hinweis "Bitte aktivieren" ausgeben.
Danke für Eure Hilfe
Michael H

Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: vba Alle Datenverbindungen aktivieren
19.12.2014 10:05:23
ransi
Hallo Michael
Da brauchst du Zugriff auf die Registry.
Versuch mal sowas:
Option Explicit

Public Sub machs()
    Const Pfad = "HKEY_CURRENT_USER\Software\Microsoft\Office\14.0\Excel\Security\DataConnectionWarnings"
    Dim objWSH As Object
    Dim sText As String
    Set objWSH = CreateObject("WScript.Shell")
    Select Case objWSH.RegRead(Pfad)
        Case 0:
            sText = """Alle Datenverbindungen aktivieren."""
        Case 1:
            sText = """Benutzer zu Datenverbindung auffordern."""
        Case 2:
            sText = """Alle Datenverbindungen deaktivieren."""
    End Select
    MsgBox "Option: " & sText & " ist ausgewählt"
End Sub


ransi

Anzeige
AW: vba Alle Datenverbindungen aktivieren
19.12.2014 10:36:23
Michael
Hallo ransi!
Vielen Dank. Ich probiere das aus.
VG
Michael H
;
Anzeige
Anzeige

Infobox / Tutorial

Alle Datenverbindungen in Excel aktivieren


Schritt-für-Schritt-Anleitung

  1. Öffne den Visual Basic for Applications (VBA) Editor:

    • Drücke ALT + F11 in Excel.
  2. Füge ein neues Modul hinzu:

    • Rechtsklicke im Projektfenster auf "VBAProject (deine Datei)" und wähle „Einfügen“ > „Modul“.
  3. Kopiere den folgenden Code in das Modul:

    Option Explicit
    
    Public Sub machs()
       Const Pfad = "HKEY_CURRENT_USER\Software\Microsoft\Office\14.0\Excel\Security\DataConnectionWarnings"
       Dim objWSH As Object
       Dim sText As String
    
       Set objWSH = CreateObject("WScript.Shell")
       Select Case objWSH.RegRead(Pfad)
           Case 0:
               sText = "Alle Datenverbindungen aktivieren."
           Case 1:
               sText = "Benutzer zu Datenverbindung auffordern."
           Case 2:
               sText = "Alle Datenverbindungen deaktivieren."
       End Select
       MsgBox "Option: " & sText & " ist ausgewählt"
    End Sub
  4. Führe das Makro aus:

    • Drücke F5 oder gehe im Menü auf „Ausführen“ > „Sub/UserForm ausführen“ und wähle machs.
  5. Überprüfe die Meldung:

    • Achte auf die Ausgabe, um festzustellen, welche Einstellung für die Datenverbindungen aktiv ist.

Häufige Fehler und Lösungen

  • Fehler: "Externe Datenverbindungen wurden deaktiviert."

    • Lösung: Stelle sicher, dass die entsprechenden Sicherheitseinstellungen im Excel-Sicherheitscenter angepasst werden. Gehe zu „Datei“ > „Optionen“ > „Sicherheitscenter“ > „Einstellungen für das Sicherheitscenter“ > „Externer Inhalt“ und aktiviere die erforderlichen Optionen.
  • Problem: Das Makro kann nicht auf die Registry zugreifen.

    • Lösung: Stelle sicher, dass Du die erforderlichen Berechtigungen hast oder führe Excel als Administrator aus.

Alternative Methoden

  1. Manuelles Aktivieren der Datenverbindungen:

    • Gehe zu „Datei“ > „Optionen“ > „Sicherheitscenter“ > „Einstellungen für das Sicherheitscenter“ und aktiviere die Option für externe Datenverbindungen.
  2. VBA für das Löschen von Datenverbindungen:

    • Du kannst auch externe Datenverbindungen löschen, indem Du den folgenden Code verwendest:
    Sub ExcelExterneDatenverbindungLoeschen()
       Dim Verbindung As WorkbookConnection
       For Each Verbindung In ThisWorkbook.Connections
           Verbindung.Delete
       Next Verbindung
    End Sub

Praktische Beispiele

  • Beispiel 1: Wenn Du ein Makro hast, das Daten von einer externen Quelle abruft, stelle sicher, dass die Datenverbindungen aktiviert sind, um Fehler zu vermeiden.

  • Beispiel 2: Verwende die oben genannten VBA-Codes in Kombination, um die Datenverbindungen zu aktivieren und bei Bedarf zu löschen.


Tipps für Profis

  • Sicherung der Registry: Vor Änderungen an der Registry ist es ratsam, eine Sicherung zu erstellen, um Probleme zu vermeiden.
  • Automatisierung: Überlege, ob Du die Option zur Aktivierung der Datenverbindungen automatisieren kannst, um den Workflow zu optimieren.
  • Dokumentation: Halte eine Dokumentation über Änderungen an den Sicherheitseinstellungen und Datenverbindungen, um zukünftige Probleme zu vermeiden.

FAQ: Häufige Fragen

1. Warum sind meine externen Datenverbindungen deaktiviert?
Die externen Datenverbindungen wurden möglicherweise aus Sicherheitsgründen deaktiviert. Überprüfe die Einstellungen im Sicherheitscenter von Excel.

2. Kann ich alle Datenverbindungen gleichzeitig aktivieren?
Ja, Du kannst ein Makro verwenden, um die Datenverbindungen zu überprüfen und eine Meldung auszugeben, wenn sie nicht aktiviert sind.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige