Thema Datum  Von Nutzer Rating
Antwort
20.01.2020 17:25:00 Franz
NotSolved
Blau Workbook.open Problem - Zellen von einem zu anderem Workbook kopieren
20.01.2020 18:47:45 Mase
NotSolved
20.01.2020 18:49:17 Mase
NotSolved
20.01.2020 20:20:56 Franz
NotSolved
20.01.2020 21:31:11 Mase
NotSolved
21.01.2020 07:39:48 Gast32632
NotSolved
21.01.2020 07:55:56 Mase
NotSolved
21.01.2020 09:21:04 Franz
NotSolved
21.01.2020 09:23:36 Gast18386
NotSolved
21.01.2020 09:32:14 Mase
NotSolved
21.01.2020 10:41:26 Franz
NotSolved
21.01.2020 10:59:20 Mase
NotSolved
21.01.2020 11:04:50 Franz
NotSolved
21.01.2020 11:33:46 Mase
Solved
23.01.2020 14:41:18 Franz
Solved
23.01.2020 14:45:53 Mase
NotSolved
23.01.2020 14:58:42 Franz
NotSolved
23.01.2020 15:01:49 Mase
Solved
23.01.2020 15:06:27 Mase
NotSolved

Ansicht des Beitrags:
Von:
Mase
Datum:
20.01.2020 18:47:45
Views:
557
Rating: Antwort:
  Ja
Thema:
Workbook.open Problem - Zellen von einem zu anderem Workbook kopieren

Hi Franz,

ich melde mich mit folgendem Code, da Du schreibst, Du bist erst seit 3Tagen+ mit VBA beschäftigt und Ich glaube, dass Dich das interessieren könnte:

 

2 verschiedene Technicken um zu prüfen, ob eine Mappe geöffnet ist.

Falls ja, Objektvariable zuweisen für weiteren Zugriff.

Falls nein, zuerst die Mappe öffnen und dann die Objektvariable zuweisen.

 

Sub Variante1()
    Dim wkbMaster As Workbook
    Dim wkbZiel As Workbook
    '
    On Error GoTo FinishErr
    Set wkbMaster = Workbooks("Masterliste.xlsm")
    
    'Weiterführender Code
    
    
FinishErr:
Select Case Err.Number
    Case 9 '#Laufzeitfehler: Workbook nicht offen
        setWkbMaster =l Workbooks.Open("C:\Test\Masterliste.xlsm")
        Resume Next
End Select
End Sub


Sub Variant2()
    Dim wkbMaster As Workbook
    Dim wkbZiel As Workbook
    Dim wkb As Workbook
    Dim bWorkbookOffen As Boolean: bWorkbookOffen = False 'False = 0;
    '
    For Each wkb In Application.Workbooks
        If wkb.Name = "Masterliste.xlsm" Then
            bWorkbookOffen = True 'Hinweis: in VBA  ist True = -1
        End If
    Next wkb
    '
    If bWorkbookOffen = False Then
        MsgBox "Workbook nicht offen"
        set wkbMasterliste = Workbooks.Open("C:\Test\Masterliste.xlsm")
    Else
        MsgBox "offen"
        Set wkbMasterliste = Workbooks("Masterliste.xlsm")
    End If
End Sub

 

Hinweis:

In beiden Varianten kann verkürzen, Variablen weglassen, konstanten einsetzen um den Code performanter zu gestalten.

Leserlicher wird er dadurch für ungeübte Augen allerdings nicht.

 

Hoffe es hilft Dir ein Stückchen weiter.

 

 

gruß

Marco


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

Thema Datum  Von Nutzer Rating
Antwort
20.01.2020 17:25:00 Franz
NotSolved
Blau Workbook.open Problem - Zellen von einem zu anderem Workbook kopieren
20.01.2020 18:47:45 Mase
NotSolved
20.01.2020 18:49:17 Mase
NotSolved
20.01.2020 20:20:56 Franz
NotSolved
20.01.2020 21:31:11 Mase
NotSolved
21.01.2020 07:39:48 Gast32632
NotSolved
21.01.2020 07:55:56 Mase
NotSolved
21.01.2020 09:21:04 Franz
NotSolved
21.01.2020 09:23:36 Gast18386
NotSolved
21.01.2020 09:32:14 Mase
NotSolved
21.01.2020 10:41:26 Franz
NotSolved
21.01.2020 10:59:20 Mase
NotSolved
21.01.2020 11:04:50 Franz
NotSolved
21.01.2020 11:33:46 Mase
Solved
23.01.2020 14:41:18 Franz
Solved
23.01.2020 14:45:53 Mase
NotSolved
23.01.2020 14:58:42 Franz
NotSolved
23.01.2020 15:01:49 Mase
Solved
23.01.2020 15:06:27 Mase
NotSolved