Thema Datum  Von Nutzer Rating
Antwort
24.08.2020 15:41:16 Bernd
NotSolved
24.08.2020 16:08:32 Werner
NotSolved
25.08.2020 10:43:37 Bernd
NotSolved
25.08.2020 11:25:25 Werner
NotSolved
25.08.2020 11:52:17 Bernd
NotSolved
25.08.2020 12:37:48 Mase
NotSolved
25.08.2020 16:35:32 Bernd
NotSolved
25.08.2020 21:23:14 Mase
NotSolved
26.08.2020 08:13:29 Bernd
NotSolved
26.08.2020 08:37:08 Mase
NotSolved
26.08.2020 11:32:34 Bernd
NotSolved
Blau Oder wie kann ich(außer in VBA auf die Variable den Mauszeiger stehen lasen?) die Variable
26.08.2020 12:02:45 Mase
Solved
26.08.2020 13:14:56 Bernd
Solved

Ansicht des Beitrags:
Von:
Mase
Datum:
26.08.2020 12:02:45
Views:
584
Rating: Antwort:
 Nein
Thema:
Oder wie kann ich(außer in VBA auf die Variable den Mauszeiger stehen lasen?) die Variable

Das bedeutet, dass Du den Code aus einem allgemeinen Modul in Deiner Personal.xlsb aus ausführst.

ThisWorkbook ist quasi der Punkt im Projekt Explorer woraus der Code ausgeführt wird:

Würde der Code aus dem Bereich VBAProject(Mappe1).Module aus ausgeführt, liefert Dir ThisWorkbook.Name -> Mappe1.

 

ThisWorkbook = da wo der Code gespeichert ist.

ActiveWorkbook = im Moment aktive Arbeitsmappe. Also die Arbeitsmappe, welche Excel direkt anzeigt (sich also nicht im Hintergrund befindet).

 

Grund genug eine ordentliche Refernzierung über eine (Objekt)Variable dem ActiveWorkbook/ThisWorkbook vorzuziehen.

 

Jenes geschieht über das Schlüsselwort SET.

 

SET kombiniert mit Application.Workbooks("geöffnete_Mappe_ohne_Pfad.xlsx") liefert DIr also eine Referenz auf ein Workbook. Das funktioniert selbst dann, wenn Dein Code in der Personal.xlsb (oder sonst wo) gespeichert ist.

[ GetObject() könntest auch verwenden, funktioniert selbst dann, wenn mehrer Instanzen offen, aber dazu kannst ja mal in der Onlinehilfe recherchieren. ]

 

Sub SetObjectBernd()
    
    Dim wkb As Excel.Workbook
    Set wkb = Application.Workbooks("Mappe1.xlsx")

End Sub

 

 

 

 

 


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen