Schreiben in andere Excel-Datei macht Worksheet unsichtbar
Guten Tag!
Ich möchte von einem Makro aus in eine andere Excel-Datei schreiben. Nach dem schreiben und speichern der Daten, öffne ich die Datei manuell und muss dann sehen das die Tabellenblätter in der Datei ausgeblendet sind.
Habe mein Problem aus dem Projekt in zwei Dateien übertragen.
main.xlsm:
Schreibe in die Datei part.xlsm in das Tabellenblatt Daten an der Stelle A1 den Wert 12345 und speichere das Worbook nach Schließen der GUI.
Eine weitere Datei namens part.xlsm, wo das Tabellenblatt Tabelle1 in Daten umbenannt ist.
Ich habe im Internet nach verschiedenen Möglichkeiten gesucht das Tabellenblatt wieder sichtbar zu machen.
Bisher das hier gefunden, was leider nicht klappt.
Diesen oberen Code habe ich in part.xlsm eingebaut, damit der beim Öffnen ausgeführt wird.
Anhand von der Ausgabe "Workbook_Open" sehe ich auch das der Code ausgeführt wird.
Einzige Lösung die ich bisher habe ist das hier: Ansicht -> Einblenden -> Arbeitsmappe auswählen und auf OK klicken. Diese Lösung hätte ich gerne als Code.
Hoffe das jemand von euch eine Lösung für mein Problem hat.
Viele Grüße,
Lukas
Ich möchte von einem Makro aus in eine andere Excel-Datei schreiben. Nach dem schreiben und speichern der Daten, öffne ich die Datei manuell und muss dann sehen das die Tabellenblätter in der Datei ausgeblendet sind.
Habe mein Problem aus dem Projekt in zwei Dateien übertragen.
main.xlsm:
Schreibe in die Datei part.xlsm in das Tabellenblatt Daten an der Stelle A1 den Wert 12345 und speichere das Worbook nach Schließen der GUI.
Public wb
Public sheet
Private Sub CommandButton1_Click()
Set wb = GetObject(ActiveWorkbook.Path & "\part.xlsm")
Set sheet = wb.Sheets("Daten")
sheet.Range("A1") = "12345"
End Sub
Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
wb.Close SaveChanges:=True
End Sub
Eine weitere Datei namens part.xlsm, wo das Tabellenblatt Tabelle1 in Daten umbenannt ist.
Ich habe im Internet nach verschiedenen Möglichkeiten gesucht das Tabellenblatt wieder sichtbar zu machen.
Bisher das hier gefunden, was leider nicht klappt.
sh.Visible = True
sh.Cells.EntireRow.Hidden = False
sh.Cells.EntireColumn.Hidden = False
Diesen oberen Code habe ich in part.xlsm eingebaut, damit der beim Öffnen ausgeführt wird.
Private Sub Workbook_Open()
Debug.Print ("Workbook_Open")
ThisWorkbook.Sheets("Daten").Visible = True
ThisWorkbook.Sheets("Daten").Cells.EntireRow.Hidden = False
ThisWorkbook.Sheets("Daten").Cells.EntireColumn.Hidden = False
End Sub
Einzige Lösung die ich bisher habe ist das hier: Ansicht -> Einblenden -> Arbeitsmappe auswählen und auf OK klicken. Diese Lösung hätte ich gerne als Code.
Hoffe das jemand von euch eine Lösung für mein Problem hat.
Viele Grüße,
Lukas
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 308490
Url: https://administrator.de/forum/schreiben-in-andere-excel-datei-macht-worksheet-unsichtbar-308490.html
Ausgedruckt am: 18.05.2025 um 04:05 Uhr
5 Kommentare
Neuester Kommentar
Hallo
Hiermit wird die Arbeitsmappe eingeblendet.
Also sollte doch irgendwo in deinem Code ein Schnipsel Windows("Arbeitsmappe.xlsx").Visible = False sein.
Ansonsten vielleicht mal die Arbeitsmappe zum Download bereitstellen
Gruss
Einzige Lösung die ich bisher habe ist das hier: Ansicht -> Einblenden -> Arbeitsmappe auswählen und auf OK klicken. Diese Lösung hätte ich gerne als Code.
Sub Makro1()
Windows("Arbeitsmappe.xlsx").Visible = True
End Sub
Hiermit wird die Arbeitsmappe eingeblendet.
Also sollte doch irgendwo in deinem Code ein Schnipsel Windows("Arbeitsmappe.xlsx").Visible = False sein.
Ansonsten vielleicht mal die Arbeitsmappe zum Download bereitstellen
Gruss

Hallo!

Gruß Dieter
Nach dem schreiben und speichern der Daten, öffne ich die Datei manuell und muss dann sehen das die Tabellenblätter in der Datei ausgeblendet sind.
Yepp, GetObject ist nur zum Lesen von Excel-Dateien geeignet. Zum Schreiben musst Du die Datei per Workbooks.Open öffnenGruß Dieter

Hallo Lukas!
Wenn Du die Datei unsichtbar bearbeiten willst, dann kannst Du dies per neuer Excel-Instanz bewerkstelligen:
Gruß Dieter
Wenn Du die Datei unsichtbar bearbeiten willst, dann kannst Du dies per neuer Excel-Instanz bewerkstelligen:
Set objExcelApp = CreateObject("Excel.Application") 'Standard Visible = False
'Öffnen
Set objWks = objExcelApp.Workbooks.Open(....).Sheets(1)
'Speichern/Schließen
objWks.Parent.Close True
objExcelApp.Quit