Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1028to1032
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

anstelle "ActiveWorkbook" anderes Objekt übergeben

anstelle "ActiveWorkbook" anderes Objekt übergeben
08.12.2008 22:26:00
Peter
Guten Abend
Ich versuche einen Code etwas umzubauen und habe da mit ein paar Codezeilen etwas Mühe.
Die urpsprüngliche Zeile ist:
'Set VBComps = ActiveWorkbook.VBProject.VBComponents
Nun will ich den Code nicht im ActiveWorkbook ausführen, sondern in einem Workbook, den mir die Funktion FuObFileToRefresh ermittelt.
mit msgbox = FuObFiletoRefresh erhalte ich den gewünschten Namen mit Leerzeichen, wie abc def.xls
Nun will ich anstelle von ActiveWorkbook den Namen des Objektes übergeben. Wegen der Leerzeichen habe ich vorne und hinten noch ein ' (Hochkomma) angefügt. Doch mit oder ohne Hochkomma, bei dieser Codezeile ist Schluss:
Set VBComps = Workbooks("'" & FuObFileToRefresh & "'").VBProject.VBComponents
Kann mir jemand helfen?
Danke, Peter

Sub DeleteVBAinOrherFile()
'notwendige Verweise:
'Microsoft Visual Basic for Application Extensibility 5.3
Dim VBComp As VBIDE.VBComponent
Dim VBComps As VBIDE.VBComponents
Dim objFileName As Object
Application.EnableEvents = False
'Set VBComps = ActiveWorkbook.VBProject.VBComponents
MsgBox FuObFileToRefresh.Name
?  Set VBComps = Workbooks("'" & FuObFileToRefresh & "'").VBProject.VBComponents ?
For Each VBComp In VBComps
Select Case VBComp.Type
Case vbext_ct_StdModule, vbext_ct_MSForm, _
vbext_ct_ClassModule
VBComps.Remove VBComp
Case Else
With VBComp.CodeModule
.DeleteLines 1, .CountOfLines
End With
End Select
Next VBComp
Application.EnableEvents = True
End Sub


2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: anstelle "ActiveWorkbook" anderes Objekt übergeben
08.12.2008 22:38:00
Uduuh
Hallo,
so wie ich das sehe, ist FuObFileToRefresh ein Workbook.-Objekt
Ergo:
Set VBComps = FuObFileToRefresh.VBProject.VBComponents
Gruß aus’m Pott
Udo

AW: anstelle "ActiveWorkbook" anderes Objekt übergeben
08.12.2008 22:45:34
Peter
Hallo Udo
Das wars!
Vielen Dank, Peter
Anzeige

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige