HERBERS
Excel-Forum
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Forumbeitrag
Excel-Version des Fragestellers:
365 Business
Erfahrungslevel des Fragestellers:
Excel gut - VBA bescheiden
Dieter
24.10.2025 11:22:05
AW: Da müsste aber...
Hi Case,

sorry das ich erst jetzt schreibe aber ich habe ewig rum probiert und weiß nicht wieso es bei mir nicht läuft. Wenn ich deinen Code hernehme erhalte ich immer diese Meldung "Methode rows für das globale Objekt ist fehlgeschlagen". "rows" verweißt auf den Code der bei mir zwischen "With xlBlatt...." steht (siehe unten).


With xlBlatt
intLastRow1 = .Cells(Rows.Count, 2).End(xlup).Row + 1
If intLastRow1 < 17 Then intLastRow1 = 17
.Range("C2").Value = "NurEinTest"
End With


Mit dem erhalte ich die Fehlermeldung:


Set xlMappe = GetObject(Folder)
Set xlBlatt = xlMappe.Sheets("Tabelle1")


und hiermit nicht:


Set xlApp = CreateObject("Excel.Application")
Set xlMappe = xlApp.Workbooks.Open(Folder)
Set xlBlatt = xlMappe.Sheets("Tabelle1")


Aber wenn ich meinen Code verwende kann ich nur in die Excel schreiben wenn diese nicht bereits offen ist. Mir kommt es so vor als würde die Excel Datei ohne Open nicht angesteuert oder gefunden.
Als Antwort auf diesen Beitrag
Case
23.10.2025 16:56:44
Da müsste aber...
Moin Dieter, :-)

... einiges angepasst werden. ;-)

Ich habe den Code in Word: ;-)

Option Explicit

Public Sub Main()
Dim xlApp As Object
Dim xlMappe As Object
Dim xlBlatt As Object
Set xlMappe = GetObject("C:\Temp\Arbeitsdokument.xlsx")
Set xlBlatt = xlMappe.Sheets("Tabelle1")
With xlBlatt
.Range("C2").Value = "NurEinTest"
'Daten die in die Excel geschrieben werden sollen
End With
With xlMappe
.Windows(1).Visible = True
.Save
.Parent.Quit
End With
Set xlBlatt = Nothing
Set xlMappe = Nothing
End Sub

Und er läuft - egal, ob die Datei offen ist oder nicht. ;-)

Funktioniert das bei dir, wenn du den Pfad- und Dateinamen (und gegebenenfalls den Tabellenblattnamen) auf deine Gegebenheiten anpasst? ;-=

Servus
Case
Folgenachrichten
Antwort auf Beitrag erstellen

Beispieldatei hochladen