Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema MsgBox
BildScreenshot zu MsgBox MsgBox-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema Userform
BildScreenshot zu Userform Userform-Seite mit Beispielarbeitsmappe aufrufen

xla einbinden

Betrifft: xla einbinden von: Marlon
Geschrieben am: 28.08.2014 15:33:10

Hallo,

ich habe eine xla-Datei, die ich immer extra aufrufen muß, damit ich sie in meiner Haupt-Excel-Tabelle einbinden kann. Wie kann ich diese xla-Datei direkt in meine HauptTabelle einbinden? (Sie enthält zwei Formulare und ein Modul mit dem Script.

Gruß und Dank,

Marlon

  

Betrifft: AW: xla einbinden von: fcs
Geschrieben am: 28.08.2014 16:49:33

Hallo Marlon,

Wie kann ich diese xla-Datei direkt in meine HauptTabelle einbinden?
Was meinst du damit?

Grundsätzlich gibt es 2 Möglichkeiten:
A) Die aktivierst deine XLAM-Datei permanent via Optionen als AddInn.
Dann stehen dir die Funktionen das AddInns nach jedem Start von Excel zur Verfügung.

B) Soll das AddInn nur im Zusammenhang mit der Hauptdatei aktiviert werden, dann muss beim Öffnen der Hauptdatei im entsprechenden Ereignismakro "Workbook_Open" das AddInn installiert/aktiviert werden.
Vor dem Schließen der Hauptdatei muss das Workbook_BeforeClose-Ereignismakro das AddInn wieder deaktivieren.

Wird die Hauptdatei nur von dir auf deinem Rechner mit dem AddInn bearbeitte oder sollen auch andere Anwender mit Datei und AddInn arbeiten?

Gruß
Franz


  

Betrifft: Outlook Kalender-Import von: Marlon
Geschrieben am: 28.08.2014 16:58:35

Hallo Franz,

das Problem ist, dass es zwei Dateien sind. Das eine ist meine eigene (A) - und das andere eine von Herrn Althaus (B). eDe xla-Datei ist eine extra Datei, die ich jedes Mal extra aufrufen muß. Ich würde sie gerne irgendwie in die Hauptdatei einbinden, zu einer einzigen Datei. Also nicht als Event extern öffnen und auch nicht jedesmal mittles Anklicken extern öffnen.

Wie kriege ich nun B in A, den Nippel in die Lasche?

Gruß,

Marlon


  

Betrifft: AW: Outlook Kalender-Import von: fcs
Geschrieben am: 29.08.2014 10:23:12

Hallo Marlon,

grundsätzlich kann man natürlich die in einer xla/xlam-Datei ausgelagerten VBA-Module wieder in eine Datei integrieren.
Dazu müsstest du alle VBA-Elemente unter Module, Formulare und evtl. noch Klassenmodule per Drag&Drop von der xls/xlam-Datei in deine Hauptdatei kopieren.
Zusätzlich noch -falls vorhanden- die Codezeilen unter "DieseArbeitsmappe" von xla/xlam-Datei nach Hauptdatei kopieren.
Als letzten Schritt muss dann noch die Schaltflächen/Makros der Hauptdatei anpassen, die die Userformen zur Anzeige bringen.

Ich würde an deiner Stelle aber nicht das xla/xlam in die Hauptdatei integrieren, sondern "nur" gemäß Luschis Vorschlag die xla/xlam-Datei beim Öffnen der Hauptdatei automatisch mit öffnen und vor dem Schließen der Hauptdatei wieder schließen. Dann gibt es auch eine Komplikationen mit den bereits vorhandenen Makros.

Gruß
Franz

'Code unter "DieseArbeitsmappe" der Hauptdatei
Private Const strNameXLAM As String = "XLAM_Muster.xlam" 'Name der xla/xlam-Datei - anpassen!!!

Private Sub Workbook_BeforeClose(Cancel As Boolean)
  On Error Resume Next
  Workbooks(strNameXLAM).Close savechanges:=False
End Sub

Private Sub Workbook_Open()
  Dim strVerzXLAM As String
  strVerzXLAM = Application.UserLibraryPath     'Ordner mit xla/xlam-Datei - ggf. anpassen
  strVerzXLAM = strVerzXLAM & Application.PathSeparator & strNameXLAM
  If Dir(strVerzXLAM) = "" Then
    MsgBox "Datei """ & strVerzXLAM & """ nicht gefunden", vbOKOnly, "XLA-/XLAM-Datei öffnen"
  Else
    Workbooks.Open strVerzXLAM
  End If
End Sub



  

Betrifft: Outlook Kalender-Import von: Marlon
Geschrieben am: 29.08.2014 10:51:48

Hallo Franz,

das mit dem Konflikt mit vorhandenen Scripten war mir nicht klar. Dann mache ich es, wie Du es vorgeschlagen hast.

Danke,

Marlon


  

Betrifft: AW: xla einbinden von: Luschi
Geschrieben am: 28.08.2014 18:58:25

Hallo Franz,

wenn man schon die Varianate B) nimmt, dann muß man die entsprechende *.xla., *.xlam nicht mehr installierten sondern nur noch wie ein Workbook öffnen.
Es verhält sich dann wie ein AddIn, man kann es aber beim Schließen der eigentlichen Arbeitsmappe gleich mit Schließen und es ist nicht mehr benutzbar - was ja beim Installieren von AddIn's nicht so funktioniert.
Dies ist übrigens meine Hauptvariante. Ich schreibe also keine AIO-Addins, die alles abdecken, was nur so vorstellbar ist.

Gruß von Luschi
aus klein-Paris

Vorteil von Variante B: Die *.xls/*.xlam-Datei läßt sich so leicht austauschen!


 

Beiträge aus den Excel-Beispielen zum Thema "xla einbinden"