Microsoft Excel

Herbers Excel/VBA-Archiv

anzahl Blätter externer Excel-Datei

Betrifft: anzahl Blätter externer Excel-Datei von: AlexH
Geschrieben am: 01.02.2008 11:17:09

Hallo liebe Leute.

Zum Beitrag von gestern (https://www.herber.de/forum/messages/947177.html),
habe ich vielleicht was gefunden und wollte eure Meinung dazu haben

Sub Test()
Dim i As Integer
Dim sDatei As String
Dim sPfad As String
Dim xlAnw As Excel.Application
Dim xlBuch As Excel.Workbook
Dim xlArbBlatt As Excel.Worksheet

sDatei = "datei.xls"
sPfad = "C:\Pfad\..."

Set xlAnw = CreateObject("Excel.Application")
Set xlBuch = xlAnw.Workbooks.Add(sPfad & sDatei)

i = xlBuch.Worksheets.Count
End Sub



danke und gruß
Alex

  

Betrifft: AW: anzahl Blätter externer Excel-Datei von: Rudi Maintaire
Geschrieben am: 01.02.2008 11:22:10

Hallo,
warum probierst du es nicht einfach aus?

Gruß
Rudi

Eine Kuh macht Muh, viele Kühe machen Mühe


  

Betrifft: AW: anzahl Blätter externer Excel-Datei von: AlexH
Geschrieben am: 01.02.2008 11:35:53

hallo Rudi,

ich hab es ja ausprobiert, es funktioniert ja auch
den Code habe ich hier reinstellen damit die Leute, die gestern gesagt haben dass es nicht geht, sehen können dass es doch geht und ihre Meinung dazu schreiben.

PS: der Link oben funz nicht so richtig hier noch mal:
https://www.herber.de/forum/messages/947177.html


  

Betrifft: AW: anzahl Blätter externer Excel-Datei von: Josef Ehrensberger
Geschrieben am: 01.02.2008 11:40:38

Hallo Alex,

die Ausagen das es bei einer geschlossenen Datei nicht geht, wird damit aber nicht wiederlegt. Auch wenn du nichts davon mitbekommst, wird die Datei mit diesem Code geöffnet.

Ausserdem wird die gestartete Excel Instanz nicht wieder geschlossen, ebenso wird die Datei selber offen gelassen!


Gruß Sepp





  

Betrifft: AW: anzahl Blätter externer Excel-Datei von: AlexH
Geschrieben am: 01.02.2008 11:50:40

Hallo Josef,

genau so etwas wolte ich lesen :-)

d.h. ich muss die Prozedur mit

Set xlBuch = Nothing
Set xlAnw = Nothing

beenden?


  

Betrifft: AW: anzahl Blätter externer Excel-Datei von: Rudi Maintaire
Geschrieben am: 01.02.2008 11:58:28

Hallo,
auch das beendet die im Hintergrund gestarteten Prozesse nicht.
Starte das Ding 10x und du kannst deine Kiste neu starten.

Gruß
Rudi

Eine Kuh macht Muh, viele Kühe machen Mühe


  

Betrifft: das alleine genügt nicht. von: Josef Ehrensberger
Geschrieben am: 01.02.2008 11:59:17

Hallo Alex,

nur die Variabeln zu entladen ist nicht genug.

Sub Test()
Dim i As Integer
Dim sDatei As String
Dim sPfad As String
Dim xlAnw As Excel.Application
Dim xlBuch As Excel.Workbook

On Error GoTo ErrExit

sDatei = "datei.xls"
sPfad = "C:\Pfad\..."

Set xlAnw = CreateObject("Excel.Application")
Set xlBuch = xlAnw.Workbooks.Open(sPfad & sDatei)

i = xlBuch.Worksheets.Count

ErrExit:

If Not xlBuch Is Nothing Then xlBuch.Close False
If Not xlAnw Is Nothing Then xlAnw.Quit

Set xlAnw = Nothing
Set xlBuch = Nothing

End Sub



Gruß Sepp





  

Betrifft: ahhh, jetzt ja... von: AlexH
Geschrieben am: 01.02.2008 13:50:10

hallo nochmal,

ich glaub ich hab's jetzt verstanden.
ich hab mal den Task-Manager aufgerufen und gleich ein Schrecken bekommen :-)

Danke euch

gruss
Alex


  

Betrifft: AW: ahhh, jetzt ja... von: Case
Geschrieben am: 01.02.2008 14:27:50

Hallo,

Du könntest es mal mit ADO versuchen. Ist bei vielen Dateien sicherlich etwas schneller. Bei einer Datei ist es wohl mit Kanonen auf Spatzen geschossen. :-)

ADO

In der Variablen "intAnzTab" sind die Anzahl der Tabellenblätter.

Servus
Case


 

Beiträge aus den Excel-Beispielen zum Thema "anzahl Blätter externer Excel-Datei"