Makroprobleme wenn bei geöffneter Userform eine andere Datei geöffnet wird

Diskutiere und helfe bei Makroprobleme wenn bei geöffneter Userform eine andere Datei geöffnet wird im Bereich Microsoft Office im Windows Info bei einer Lösung; Hallo allerseitsEs sind da zwei Dateien - Datei A enthält alle Daten und Datei B enthält alle Makros, die die Daten in Datei A behandeln. Das... Dieses Thema im Forum "Microsoft Office" wurde erstellt von JürgenBrändle, 12. Dezember 2022.

  1. Makroprobleme wenn bei geöffneter Userform eine andere Datei geöffnet wird


    Hallo allerseitsEs sind da zwei Dateien - Datei A enthält alle Daten und Datei B enthält alle Makros, die die Daten in Datei A behandeln. Das ProblemDatei A ist die aktive Datei, Userform X ist aktivUser öffnet Datei Y via DesktopUser kehrt zu Userform X zurück und gibt weitere Daten ein.In diesem Momment kommt es zu Errormeldungen bei Statements wie Range"abc"=1. Range"abc" ist in Datei A definiert.Wie kann das abgefangen werden? Bei jedem Statement wie Range"abc"= zuerst Datei A aktivieren ist zwar möglich, aber sehr umständlich.
     
  2. JürgenBrändle Win User

    Makroprobleme wenn bei geöffneter Userform eine andere Datei geöffnet wird

    Tach Claus
    Das habe ich ja mit Bei jedem Statement wie Range("abc")= zuerst Datei A aktivieren ist zwar möglich, aber sehr umständlich. auch gesagt. Das Problem damit: leider existiert bei VBA scheinbar eine Grenze für Modulen bei 64 k. Einige der vorhandenen Module kratzen aber an dieser Grenze. Es geht ja nicht nur um das Speichern von ein paar Werten, sondern um ein ganzes Sammelsurium von Daten in diversen Tabellenblättern der Datei A.
    Bei einer Funktion werden Daten aus 4 Tabellenblättern gleichzeitig verwendet. Es würde dann also so aussehen:
    With wshZiel
    .Sheets("Tabelle1").Range("dauer") = .Sheets("Tabelle2").Range("xyz")
    .Sheets("Tabelle3").Range("zeit") = .Sheets("Tabelle4").Range("abc")
    End With
    Mein Wunsch
    Range("dauer") = Range("xyz")
    Range("zeit") = Range("abc")
    Wobei dauer, xyz, zeit und abc benannte Zellen in den jeweiligen Tabellenblättern sind
    Meine Idee: wie kann ich verhindern, dass andere Dateien geöffnet werden, wenn eine Userform aktiv ist?
  3. JürgenBrändle Win User

    Makroprobleme wenn bei geöffneter Userform eine andere Datei geöffnet wird

    Hallo Andreas
    im Normalfall sind zwei Dateien offen - eine mit allen Makros und eine mit den Daten. Soweit wie möglich befinden sich in den Tabellenblättern der Datendatei keine Makros.
    Ich habe nun eine Holzhammermethode eingebaut, die Fehler verhindert.
    Eine Schaltfläche in der Datendatei ruft die primäre Userform in der Makrodatei auf. Über diese primäre Userform werden dann alle anderen Bearbeitungsschritte ausgelöst. (Stand der Dinge.)
    Neu wird nun in der Sub UserForm_Initialize ein Flag in der Datendatei auf True gesetzt. Wird die UserForm geschlossen, wird die Flag auf False gesetzt.
    In der Datendatei ist nun die folgende Sub
    Private Sub Workbook_Deactivate()

    If flag = True Then
    '
    ' eine Userform ist aktiv
    '
    x = MsgBox("Eine andere Datei wird geöffnet!" & vbLf & _
    "Die aktive Maske wird geschlossen, allfällige Dateneingaben gehen verloren.", _

    vbOKOnly + vbExclamation, "Wechsel")
    flag = False
    End
    End If

    End Sub
    Wie gesagt, nicht optimal, aber es funkioniert.

    zu a) versuche ich nicht zu verwenden
    zu b) leider sind es wesentlich mehr als nur 4 Variable. Grosse Module habe ich bereits gesplittet und weiteres Splitting wird dann etwas unübersichtlich.
    Gruss
    Jürgen
  4. Andreas Killer Win User

    Makroprobleme wenn bei geöffneter Userform eine andere Datei geöffnet wird

    Bei jedem Statement wie Range("abc")= zuerst Datei A aktivieren ist zwar möglich, aber sehr umständlich. auch gesagt. Das Problem damit: leider existiert bei VBA scheinbar eine Grenze für Modulen bei 64 k.
    a) Keine gute Idee, denn das funktioniert nicht wirklich / bei Dir nur per Zufall. Bitte benutze niemals SELECT, SELECTION, ACTIVECELL, es ist langsam und fehleranfällig. Referenziere immer die Objekte.
    b) Das betrifft nur das Codemodul und wenn wir 4 Variablen definieren und diese den Tabellenblättern zuweisen ist das Problem nicht vorhanden.
    Außerdem läßt sich ein großes Modul relativ leicht splitten, man definiert globale Variablen und verschiebt einen Codeteil in ein anderes Modul.
    BTW, ein Range in einem regulären Modul bezieht sich immer auf die aktuelle Datei und das aktuelle Blatt, in dem Codemodul eines Blattes bezieht sich das Range immer auf das Blatt. Wenn man also die Routinen zum Speichern / Lesen / Organisieren der Daten in das Blatt verschiebt (und am besten eine Property aus den Sub/Function macht), dann ist das Range-Problem schon mal weg. Der Speicherbedarf reduziert sich und wenn man eine Schleife mit Feldnamen ausführt, dann muss man noch nicht mal großartig was umschreiben.
    Andreas.
  5. Claus B. Win User

    Makroprobleme wenn bei geöffneter Userform eine andere Datei geöffnet wird

    Hallo Jürgen,
    es ist immer besser korrekt zu referenzieren, erst recht, wenn mehrere Mappe gleichzeitig geöffnet sind.
    Probiere es z.B. so:
    Dim wshZiel As Workbook
    Set wshZiel = Workbooks("Mappe1.xlsx")
    With wshZiel.Sheets("Tabelle1")
    .Range("A1") = 1
    .Range("B2") = 2
    End With
    Claus
  6. RudolfSc Win User

    EXCEL 2019 / WINDOWS 10

    Vielen Dank, Andreas, für Hinweis und Link

    Dann habe ich eine Nachfrage, die es mir eventuell ermöglicht, mein Problem zu lösen. Aus dem Link kann ich das leider nicht herauslesen.

    Situation:

    Zum und im ersten geöffneten Workbook ( e.g. WB0 ) in EXCEL 2019 wird eine Userform ( sie heisse UF0 ) gestartet. Diese Userform enthält eine Anzahl von Steuerelementen und Funktionen, die nicht nur im ersten geöffneten Workbook WB0 Lese- und Schreib-Aktionen
    ausführen sollen, sondern auch in weiteren geöffneten Workbooks ( e.g. WB1, WB2 etc. ) Lese- und Schreib-Aktionen ausführen sollen und workbooksübergreifend Zelleneinträge lesen und schreiben müssen.

    Problem ist nun, dass

    1. die Userform nur dann erreichbar/im Vordergrund/ aktiv ist, wenn WB0 aktiviert ist und

    2. diese Funktionen nur auf das WB0 zugreifen können bei Click, jedoch nicht auf WB1 oder WB2 etc.

    zu 1. löst ShowModal das Problem leider nicht - weder True noch False ändern dieses Verhalten. Gibt es dafür eine Lösung?

    zu 2. muss vermutlich jeder Lese/Schreibaktion eine Zuweisung zum jeweiligen Workbook mitgegeben werden - verflixt viel Arbeit.... oder gibt es dafür eine Lösung?

    Für jeden Tip dankbar...

    Rudolf
  7. User Advert


    Hi,

    willkommen im Windows Forum!
Thema:

Makroprobleme wenn bei geöffneter Userform eine andere Datei geöffnet wird - Microsoft Office

Die Seite wird geladen...

Makroprobleme wenn bei geöffneter Userform eine andere Datei geöffnet wird - Similar Threads - Makroprobleme geöffneter Userform

Forum Datum

Die datei kann nicht geöffnet werden

Die datei kann nicht geöffnet werden: Heute eine excel datei auf dem iphone erstellt und gespeichert. Beim erneuten öffnen kommt “Die datei kann nicht geöffnet werden microsoft excel kann die datei xxx.xlsm nicht öffnen, weil deren...
Microsoft Office 21. Februar 2024

"Diese Datei kann nicht geöffnet werden."

"Diese Datei kann nicht geöffnet werden.": "Stellen Sie sicher, dass Adrian - Persönlich auf Ihrem PC ausgeführt wird, und versuchen Sie es noch einmal"Es funktioniert nicht, wenn ich es noch einmal versuche.Das Thema, steht nach...
Microsoft Office 28. Juli 2023

"Diese Datei kann nicht geöffnet werden."

"Diese Datei kann nicht geöffnet werden.": "Stellen Sie sicher, dass Adrian - Persönlich auf Ihrem PC ausgeführt wird, und versuchen Sie es noch einmal"Es funktioniert nicht, wenn ich es noch einmal versuche.Das Thema, steht nach...
Apps 27. Juli 2023

"Diese Datei kann nicht geöffnet werden."

"Diese Datei kann nicht geöffnet werden.": "Stellen Sie sicher, dass Adrian - Persönlich auf Ihrem PC ausgeführt wird, und versuchen Sie es noch einmal"Es funktioniert nicht, wenn ich es noch einmal versuche.Das Thema, steht nach...
Games und Spiele 27. Juli 2023

Datei in Outlook kann nicht geöffnet werden, da bereits geöffnet. Datei ist aber nicht...

Datei in Outlook kann nicht geöffnet werden, da bereits geöffnet. Datei ist aber nicht...: Hallo Zusammen, Outlook spuckt bei mit und verschiedenen Kollegen seit Kurzem die Fehlermeldung aus:" Datei kann nicht gespeichert werden, Möglicherweise ist die Datei bereits geöffnet oder sie...
Outlook.com 19. Juli 2023

"Die Datei kann nicht geöffnet werden"

"Die Datei kann nicht geöffnet werden": Ich arbeite jetzt schon wahrscheinlich um die 2 Jahre mit Word, hatte bisher ich nur selten ein Problem(nie eines welches ich nicht beheben konnte). Ich habe in dieser Zeit an einem Projekt...
Microsoft Office 18. Januar 2017

Die Dateien können nicht geöffnet werden.

Die Dateien können nicht geöffnet werden.: Beim öffnen jedes Programms (Firefox, Internet Explorer, CCleaner, usw.) kommt die Fehlermeldung "Durch die Internetsicherheitseinstellungen wurde verhindert, dass eine oder mehrer Dateien...
Allgemeines 4. Oktober 2016
Makroprobleme wenn bei geöffneter Userform eine andere Datei geöffnet wird solved
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.