Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1520to1524
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

Excel via VBA schließen

Excel via VBA schließen
20.10.2016 13:34:16
Marcel
Hallo zusammen,
ich möchte eine zuvor geöffnete Excel-Datei, aus der ich Daten für PowerPoint auslese, wieder schließen.
Dazu habe ich folgenden Code im VBA-Editor in PowerPoint(!):
Dim objExcel As New Excel.Application
Dim objSheet As Object
objExcel.Workbooks.Open meinPfad
Set objSheet = objExcel.Sheets("meinSheet")
[...] 'Kram, der gemacht wird
objExcel.Application.Quit
Was mache ich falsch?
Versuche ich danach das Excel-Dokument zu öffnen kommt eine Fehlermeldung, dass bereits eine Datei mit gleichem Namen geöffnet ist! Ich vermute, es handelt sich hierbei um die zuvor innerhalb von PPT-VBA im Hintergrund geöffnete Excel-Datei.
Um was muss ich den Code ergänzen, wenn .quit nicht ausreichend ist?
Danke und VG

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Excel via VBA schließen
20.10.2016 13:54:46
Martin
Hallo Marcel,
nur mal als Idee, vielleicht klappt es ja so:
With objExcel
.ActiveWorkbook.Close SaveChanges:=False
.Quit
End With
Viele Grüße
Martin
AW: Excel via VBA schließen
20.10.2016 14:06:17
Nepumuk
Hallo,
teste mal:
Dim objExcel As Excel.Application
Dim objWorkbook As Excel.Workbook
Dim objSheet As Excel.Worksheet

Set objExcel = New Excel.Application


Set objWorkbook = objExcel.Workbooks.Open(meinPfad)
Set objSheet = objWorkbook.Sheets("meinSheet")

[...] 'Kram, der gemacht wird

Call objWorkbook.Close(False)
Call objExcel.Quit

Set objSheet = Nothing
Set objWorkbook = Nothing
Set objExcel = Nothing

Gruß
Nepumuk
Anzeige
AW: Excel via VBA schließen
20.10.2016 13:59:45
UweD
Hallo
so ?

Dim objExcel As New Excel.Application
Dim objSheet As Object, meinPfad As String
meinPfad = "C:\Temp\Mappe1.xlsx"
objExcel.Workbooks.Open meinPfad
Set objSheet = objExcel.Sheets("meinSheet")
'[...] 'Kram, der gemacht wird
objExcel.ActiveWorkbook.Close SaveChanges:=False
Application.Quit
LG UweD
und ist der Unterschied zu meiner Antwort? owT.
20.10.2016 14:03:11
Martin
.
AW: Uwe schließt PowerPont, nicht Excel :-) owT
20.10.2016 15:18:32
MatthiasG
nix
AW: Uwe schließt PowerPont, nicht Excel :-) owT
20.10.2016 15:23:50
UweD
Danke für den Hinweis.
Dazu habe ich folgenden Code im VBA-Editor in PowerPoint(!): hatte ich nicht gelesen
AW: Excel via VBA schließen
20.10.2016 14:20:54
Dieter(Drummer)
Hallo Marcel,
auch eine Möglichkeit:
'Herber: von Nepumuk am 10.05.2016 16:34:15
Sub ExcelEnde()
Dim objWorkbook As Workbook
If MsgBox("Excel schliessen OHNE Änderung?", vbYesNo, "Info") = vbYes Then
For Each objWorkbook In Application.Workbooks
objWorkbook.Saved = True
Next
Application.Quit
End If
End Sub

Gruß, Dieter(Drummer)
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige