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

Dateinamen über Variablen zusammenbauen

Dateinamen über Variablen zusammenbauen
Mann
Guten Abend, liebe Kollegen,
leider ist mein Problem noch nicht gelöst. Ich versuche es noch einmal anders zu erklären:
Auf meinem Excel-Blatt stehen folgende Variablen:
in A1 = 2010
in B1 = 08
Daraufhin soll folgendes passieren:
Im Verzeichnis "D:\DATEN\TEST" stehen folgende Dateien:
2010-06, 2010-07, 2010-08, 2010-09, usw. jeweils mit .xls-Endung
Diese Dateien sind bisher noch nicht geöffnet.
Durch Eingabe der Variablen in A1 und B1 = 2010-08 soll nun diese Datei geöffnet werden.
Aus dieser Datei benötige ich dann den Wert der Zelle K66.
Hier benötige ich bitte den genauen Syntax, da ich mit Versuch und Irrtum schon sehr viel Zeit beansprucht habe.
Danke im Voraus für Eure Hilfe.

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

Betreff
Benutzer
Anzeige
AW: Dateinamen über Variablen zusammenbauen
08.09.2010 22:56:51
Josef

Hallo ?
der Code gehört in das Modul der Tabelle. (Rechtsklick auf das Blattregister > Code anzeigen)
Beachte die Kommentare im Code.

' **********************************************************************
' Modul: Tabelle1 Typ: Element der Mappe(Sheet, Workbook, ...)
' **********************************************************************

Option Explicit

Private Const cstrPath As String = "E:\Forum" 'Verzeichnis - Anpassen!
Private Const cstrSheet As String = "Tabelle1" 'Tabellenname - Anpassen!
Private Const cstrRef As String = "K66" 'Zelladresse - Anpassen!

Private Sub Worksheet_Change(ByVal Target As Range)
  Dim strFile As String
  
  If Not Intersect(Target, Range("A1:B1")) Is Nothing Then
    strFile = Range("A1") & "-" & Range("B1") & ".xls"
    Range("C1") = GetValue(cstrPath, strFile, cstrSheet, cstrRef)
  End If
End Sub

Private Function GetValue(path As String, file As String, sheet As String, ref As String)
  Dim arg As String
  
  If Right(path, 1) <> "\" Then path = path & "\"
  
  If Dir(path & file) = "" Then
    GetValue = "File Not Found"
    Exit Function
  End If
  
  arg = "'" & path & "[" & file & "]" & sheet & "'!" & _
    Range(ref).Range("A1").Address(, , xlR1C1)
  
  GetValue = ExecuteExcel4Macro(arg)
End Function

Gruß Sepp

Anzeige
AW: Dateinamen über Variablen zusammenbauen
09.09.2010 00:12:58
Gerd
Hallo Sepp,
ich schlage für die Eingabezellen eine weitere Prüfung vor.
Private Sub Worksheet_Change(ByVal Target As Range)
Dim strFile As String
If Not Intersect(Target, Range("A1:B1")) Is Nothing Then
If Len(Range("A1")) > 0 And Len(Range("B1")) > 0 Then
strFile = Range("A1") & "-" & Range("B1") & ".xls"
Range("C1") = GetValue(cstrPath, strFile, cstrSheet, cstrRef)
End If
End If
End Sub
Gruß Gerd

299 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige