Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1104to1108
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Problem bei Dateiöffnung

Problem bei Dateiöffnung
wolfgang
Hallo Leute,
ich bin neu in Eurem Forum und habe folgendes Problem:
Wenn ich Datei "A" öffne, soll automatisch Datei "B" mit geöffnet werden; allerdings mit "minimierten Fenster"; wie kriege ich das hin?
Weiter sollen, wenn ich Datei "A" schließe, automatisch die Dateien "A" + "B" gespeichert werden.
Mit Dank und Gruß an Euch alle
Wolfgang
AW: Problem bei Dateiöffnung
06.10.2009 16:39:15
Rudi
Hallo,
in DieseArbeitsmappe von A:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
ThisWorkbook.Save
Workbooks("B.xls").Close True
End Sub

Private Sub Workbook_Open()
Workbooks.Open "B.xls"
ActiveWindow.WindowState = xlMinimized
End Sub

Gruß
Rudi
AW: Problem bei Dateiöffnung
06.10.2009 16:48:36
wolfgang
Rudi,
danke jetzt schon; ich probiere das jetzt aus und melde mich dann wieder.
Mit Gruß
Wolfgang
kannst mal so testen
06.10.2009 16:46:42
Tino
Hallo,
kannst ja mal testen ob es so funktioniert.
Diesen Code in deine Datei1 einbauen und den Pfad und den Dateinamen
zu Deiner Datei 2 anpassen.
kommt als Code in DieseArbeitsmappe
Option Explicit 
 
Const strDatei2 As String = "C:\Ordner\Datei2.xls" 
 
Private Sub Workbook_BeforeClose(Cancel As Boolean) 
Dim WB2 As Workbook 
 
    On Error Resume Next 
     Set WB2 = Workbooks(Right$(strDatei2, Len(strDatei2) - InStrRev(strDatei2, "\"))) 
    On Error GoTo 0 
     
    If Not WB2 Is Nothing Then 
     WB2.Close True 
     ThisWorkbook.Save 
    End If 
     
    If Worksheets.Count = 1 Then 
     Application.Quit 
    End If 
 
End Sub 
 
Private Sub Workbook_Open() 
Dim WB2 As Workbook 
 
    On Error Resume Next 
     Set WB2 = Workbooks(Right$(strDatei2, Len(strDatei2) - InStrRev(strDatei2, "\"))) 
    On Error GoTo 0 
     
    If WB2 Is Nothing Then 
     Set WB2 = Workbooks.Open(strDatei2) 
     ActiveWindow.WindowState = xlMinimized 
    End If 
 
End Sub 

Gruß Tino
Anzeige
Korrektur
06.10.2009 16:50:51
Tino
Hallo,
, ThisWorkbook.Save muss auserhalb der If stehen.
Const strDatei2 As String = "C:\Ordner\Datei2.xls"
 
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim WB2 As Workbook
 
    On Error Resume Next
     Set WB2 = Workbooks(Right$(strDatei2, Len(strDatei2) - InStrRev(strDatei2, "\")))
    On Error GoTo 0
     
    If Not WB2 Is Nothing Then
     WB2.Close True
    End If
    
    ThisWorkbook.Save
    
    If Worksheets.Count = 1 Then
     Application.Quit
    End If
 
End Sub
 
Private Sub Workbook_Open()
Dim WB2 As Workbook
 
    On Error Resume Next
     Set WB2 = Workbooks(Right$(strDatei2, Len(strDatei2) - InStrRev(strDatei2, "\")))
    On Error GoTo 0
     
    If WB2 Is Nothing Then
     Set WB2 = Workbooks.Open(strDatei2)
     ActiveWindow.WindowState = xlMinimized
    End If
 
End Sub
Gruß Tino
Anzeige
AW: Korrektur
07.10.2009 13:47:28
wolfgang
Hallo Tino,
kannst Du Dir den Code mal ansehen. Ich denke, dass ich den nicht vernünftig angepaßt habe.
Mit Dank
Wolfgang
Const strDatei2 As String = "C:\Desktop\B Vers.3"
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim WB2 As Workbook
On Error Resume Next
Set WB2 = Workbooks(Right$(strDatei2, Len(strDatei2) - InStrRev(strDatei2, "\")))
On Error GoTo 0
If Not WB2 Is Nothing Then
WB2.Close True
End If
ThisWorkbook.Save
If Worksheets.Count = 1 Then
Application.Quit
End If
End Sub

Private Sub Workbook_Open()
Dim WB2 As Workbook
On Error Resume Next
Set WB2 = Workbooks(Right$(strDatei2, Len(strDatei2) - InStrRev(strDatei2, "\")))
On Error GoTo 0
If WB2 Is Nothing Then
Set WB2 = Workbooks.Open(strDatei2)
ActiveWindow.WindowState = xlMinimized
End If
End Sub

Anzeige
AW: Korrektur
07.10.2009 15:39:05
Rudi
Hallo,
stimmt der Dateiname?
Const strDatei2 As String = "C:\Desktop\B Vers.3"

nicht so?
Const strDatei2 As String = "C:\Desktop\B Vers.3.xls"
Gruß
Rudi
einziges was ich sehe ist, ...
07.10.2009 15:43:02
Tino
Hallo,
beim Pfad Deiner zweiten Datei die Extension nicht wie bei mir.
"C:\Desktop\B Vers.3"
Bei mir enden normale Excel- Dateien mit .xls oder . xlsm usw…
Gruß Tino
AW: einziges was ich sehe ist, ...
07.10.2009 17:39:37
wolfgang
Hallo Rudi, hallo Tino,
erstmal danke für Eure Hilfe. Leider komme ich nicht weiter.
Habt Ihr noch eine Idee?
Mit Gruß
Wolfgang
legt mal alle Fakten auf den Tisch.
07.10.2009 17:45:03
Tino
Hallo,
wenn Du uns sagst wie Deine Umgebung aussieht, können wir bestimmt helfen.
Wo liegt die Datei1 von der aus Datei2 aufgerufen werden soll?
Wo liegt die Datei2? (Pfad)
Wie heißt Deine Datei2? (kompletter Name)
Ist Deine Datei2 überhaupt eine Excel- Datei?
Gruß Tino
Anzeige
AW: legt mal alle Fakten auf den Tisch.
07.10.2009 17:56:18
wolfgang
Hallo Tino,
1. Datei 1 befindet sich auf dem Desktop
2. Datei 2 befindet sich ebenfalls auf dem Desktop
3. Kompletter Name Datei 2: DTB.xls
4. Datei 2 ist eine Excel-Datei
Mit Gruß
Wolfgang
AW: legt mal alle Fakten auf den Tisch.
07.10.2009 18:27:24
Tino
Hallo,
also öffne Deine Datei1, gehe in den VBA- Editor und doppelklicke links in der
Explorerleiste bei Deiner Datei1 auf 'DieseArbeitsmappe' und füge diesen Code ein.
Da sich beide Dateien also im selben Ordner befinden,
brauchst Du nur den Namen Deiner Datei2 anpassen, nach Deinen Angaben müsster sogar stimmen.
kommt als Code in DieseArbeitsmappe
Option Explicit 
 
Private Const strDatei2 As String = "DTB.xls" 'Dateiname anpassen '<-------------------------- 
 
Private Sub Workbook_BeforeClose(Cancel As Boolean) 
Dim WB2 As Workbook 
        
    On Error Resume Next 
     Set WB2 = Workbooks(strDatei2) 
    On Error GoTo 0 
      
    If Not WB2 Is Nothing Then 
     WB2.Close True 
    End If 
     
    ThisWorkbook.Save 
     
    If Worksheets.Count = 1 Then 
     Application.Quit 
    End If 
     
End Sub 
 
 
Private Sub Workbook_Open() 
Dim WB2 As Workbook 
Dim strPath As String 
 
    On Error Resume Next 
     Set WB2 = Workbooks(strDatei2) 
    On Error GoTo 0 
         
    If WB2 Is Nothing Then 
     strPath = IIf(Right$(ThisWorkbook.Path, 1) <> "\", ThisWorkbook.Path, ThisWorkbook.Path & "\") 
     Set WB2 = Workbooks.Open(strPath & strDatei2) 
     ActiveWindow.WindowState = xlMinimized 
    End If 
     
End Sub 

Gruß Tino
Anzeige
AW: legt mal alle Fakten auf den Tisch.
09.10.2009 11:33:26
wolfgang
Hallo Tino, hallo Rudi,
Tino, mit Deinem Code bekomme ich keine Funktion. Ich denke aber das Problem ist nicht Dein Code,,,,,, sondern sitzt vielmehr vor meinem PC.
( Nur der Interesse wegen; hast Du noch eine Vermutung - was ich verkehrt mache?)
Rudi, Dein Code funktioniert bestens.
Hast Du noch eine Lösung für folgende Änderungen:
1. Wenn Datei 1 öffnet ist das Fenster minimiert; soll aber "groß" sein.
2. Kann man die Hinweise "Makrowarnung/Makros aktivieren" und "Verknüpfungen/aktualisieren" ausblenden und beide Funktionen automatisch erfolgen lassen?
Danke an Euch beide
Mit Gruß
Wolfgang
PS.: habe Anke eine Beispie-Datei posten wollen (zumindest hatte ich die Absicht), glaube aber, dass das nicht funktioniert hat; wie kriege ich das vernünftig hin?
Anzeige
weis nicht was bei Dir nicht stimmt, sorry. oT.
09.10.2009 16:38:47
Tino
AW: weis nicht was bei Dir nicht stimmt, sorry. oT.
09.10.2009 17:39:25
wolfgang
Hallo Tino,
saublöde Frage......aber ich brauche trotzdem Deine Hilfe:
wie Stelle ich eine Datei in's Netz, wenn ich auf einen Beitrag antworten möchte.
Mit Dank
Wolfgang
AW: weis nicht was bei Dir nicht stimmt, sorry. oT.
09.10.2009 18:05:05
Tino
Hallo,
wenn Du dich im Antwortformular befindest, findest Du einen Link 'Hier gehts zum File-Upload'.
Beachte aber auch was da steht.
Keinen langen Dateipfad.
Keine Sonderzeichen und kein ä,ö,ü oder ß im Dateinamen oder Pfad.
Datei nicht größer als 300kb.
Gruß Tino
AW: weis nicht was bei Dir nicht stimmt, sorry. oT.
09.10.2009 18:33:15
wolfgang
Hallo Tino,
hat bestens geklappt!
Danke
Mit Gruß
Wolfgang
Anzeige
AW: kannst mal so testen
06.10.2009 16:56:46
wolfgang
Hallo Tino,
bin von Eurem Forum begeistert; eine Frage...... und sofort 2 tolle Antworten; ich teste beides und melde mich dann wieder.
Mit Gruß
Wolfgang

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige