Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Inhalt ComboBox aus andere Datei

Inhalt ComboBox aus andere Datei
13.01.2016 15:02:51
Dirk
Hallo VBA-Profis,
vielleicht..., na eher wahrscheinlich, könnt ihr mir bei dem folgenden Problem helfen.
Ich habe zwei Dateien; einen Vordruck und eine Datendatei. Im Vordruck ist eine Combobox enthalten, in der ich die Zellinhalte aus der Spalte A der Datendatei einlese. Das klappt auch soweit. Problem an der Sache ist, dass sich der Dateiname der Datendatei, bis auf den Anfang jedes Jahr ändert (Jahreszahl).
Hier nun die Aufgaben:
1. Überprüfe, ob eine Datei geöffnet ist, die mit "Reklamationsübersicht" beginnt und die Dateiendung ".xlsx" hat.
2. Lese aus dieser Datei den Zellinhalt aus Spalte A in die Combobox des Vordrucks ein.
Vordruck und Datendatei befinden sich nicht im gleichen Verzeichnis.
Mein Ansatz:
Private Sub Worksheet_Activate()
Dim ReklNr As Long
ReklNr = Workbooks("Reklamationsübersicht_2016.xlsx").Sheets("Reklamationen").Range("A65536"). _
End(xlUp).Row
Me.cbbReklNr.List = Workbooks("Reklamationsübersicht_2016.xlsx").Sheets("Reklamationen").Range(" _
A4:A" & ReklNr).Value
End Sub
Danke euch im Voraus.
Gruß
Dirk

Anzeige

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Inhalt ComboBox aus andere Datei
16.01.2016 08:14:46
Sepp
Hallo Dirk,
so?
' **********************************************************************
' Modul: Tabelle1 Typ: Element der Mappe(Sheet, Workbook, ...)
' **********************************************************************

Option Explicit

Private Sub Worksheet_Activate()
Dim objWB As Workbook
Dim lngLast As Long, strFileName As String

strFileName = "Reklamationsübersicht_" & CStr(Year(Date)) & ".xlsx"

For Each objWB In Application.Workbooks
  If objWB.Name = strFileName Then
    With objWB.Sheets("Reklamationen")
      lngLast = Application.Max(4, .Cells(.Rows.Count, 1).End(xlUp).Row)
      Me.cbbReklNr.List = .Range("A4:A" & lngLast).Value
      Exit For
    End With
  End If
Next

If lngLast = 0 Then
  MsgBox "Datei '" & strFileName & "' ist nicht geöffnet!"
End If

End Sub

Gruß Sepp

Anzeige
AW: Inhalt ComboBox aus andere Datei
18.01.2016 07:58:31
Dirk
Hallo Sepp,
dass klappt super, so habe ich mir das gedacht.
Eine Frage habe ich noch; wenn ich den Inhalt der Combobox variabel halten möchte, also wenn ich z. B. die Combobox mit den Inhalten aus der geöffneten Reklamationsübersicht 2015 oder 2014 oder 2016 füllen möchte, wie sieht es dann mit dem Code aus?
Gruß
Dirk

Anzeige
AW: Inhalt ComboBox aus andere Datei
18.01.2016 08:03:07
Dirk
Kleiner Nachtrag zu meiner letzten Frage; kann man vielleicht mit Platzhalter arbeiten? z.B. "Reklamationsübersicht_*.xlsx"?
Danke
Gruß
Dirk

AW: Inhalt ComboBox aus andere Datei
18.01.2016 08:06:58
Sepp
Hallo Dirk,
mit Wildcard so.
Private Sub Worksheet_Activate()
Dim objWB As Workbook
Dim lngLast As Long, strFileName As String

strFileName = "Reklamationsübersicht_*.xlsx"

For Each objWB In Application.Workbooks
  If objWB.Name Like strFileName Then
    With objWB.Sheets("Reklamationen")
      lngLast = Application.Max(4, .Cells(.Rows.Count, 1).End(xlUp).Row)
      Me.cbbReklNr.List = .Range("A4:A" & lngLast).Value
      Exit For
    End With
  End If
Next

If lngLast = 0 Then
  MsgBox "Datei '" & strFileName & "' ist nicht geöffnet!"
End If

End Sub

Gruß Sepp

Anzeige
AW: Inhalt ComboBox aus andere Datei
18.01.2016 13:26:11
Dirk
Hallo Sepp,
vielen Dank für Deine Hilfe, klappt hervorragend.
Gruß
Dirk

AW: Inhalt ComboBox aus andere Datei
18.01.2016 08:04:04
Sepp
Hallo Dirk,
dazu gibst du das gewünschte Jahr z. B. per Inputbox ein und setzt die Eingabe statt 'CStr(Year(Date))' in den Code ein.
Gruß Sepp

Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige