Clever-Excel-Forum

Normale Version: Verknüpfung Dateiname- Inhalt
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo
Gibt es eine Möglichkeit in einer Zelle einen Dateinamen (incl. Pfad) anzugeben und den Inhalt der Datei(i.a. eine Textdatei) automatisch in einer anderen Zelle einzutragen?
Ich habe in einer Spalte mehrere Dateinamen und möchte rechts davon die Inhalte der Dateien eintragen um die Inhalte der Dateien auszudrucken.
Hat jemand eine Idee.
Hi,

mit Bordmitteln geht das nicht. Ob ein Makro zielführend ist, müssen dir aber die VBA-Spezialisten sagen. Da kann ich dir nicht helfen.
Es hängt davon ab, ob der Inhalt der Datei in eine Zelle passt, falls ja, ist es mit VBA kein Problem.
In der Datei befinden sich nur kurze Texte. 3 bis 6 Zeilen. Von Hand kann man sie ohne Probleme einfügen.
Hallöchen,

zuerst einmal frage ich mich, warum Du nicht einfach im Explorer die Dateien anklickst und ausdruckst.

Ansonsten, das geht mit VBA und eventuell auch mit Powerquery. Für letzteres ist hier z.B. GMG-CC ein Spezi.
In VBA könnte man so vorgehen:

'Zeilenzähler auf 1 setzen
'Spaltennumer auf erste Eintragsspalte setzen
'Schleife solange in Axx etwas steht
'TXT-Dateiname = Inhalt von Axx
'Freefile-Nummer zuweisen
'TXT-Datei zum lesen öffnen
'Schleife solange nicht EOF erreicht ist
'Zeile in Zelle Schleifenzähler,Spaltennummer übernehmen
'Spaltennummer 1 hochsetzen
'Ende Schleife solange nicht EOF erreicht ist
'TXT-Datei schliessen
'Zeilenzähler 1 hochsetzen
'Ende Schleife solange in Axx etwas steht

Wie siehst Du das?
Hallo schauan
Wir haben Artikelnummern denen ein Text hinterlegt ist. Unser Ziel ist es aus einer Liste von Artikelnummern ein Dokument für z.B. Lieferscheine zu erstellen. Ich habe zwar Erfahrung mit QBasic Programmierung aber den Zugang zur VBA Programmierung muß ich mir erst erarbeiten. Für eine  Hilfestellung wäre ich dankbar.
Gruß von Waage99
Hallöchen,

das könnte so aussehen. Voraussetzung dabei ist, dass in der Zelle der Dateiname einschl. Pfad steht. Angefangen wird in A1

Code:
Sub Einlesen()
'Variablendeklarationen
'Integer
Dim iCnt1%, iCnt2%, iFNr%, strtmp$
'Zeilenzähler auf 1 setzen
iCnt1 = 1
'Spaltennumer auf erste Eintragsspalte setzen
iCnt2 = 2
'Schleife solange in Axx etwas steht
Do While Cells(iCnt1, 1) <> ""
  'TXT-Dateiname = Inhalt von Axx, prüfen, ob vorhanden
  If Dir(Cells(iCnt1, 1)) <> "" Then
    'Freefile-Nummer zuweisen
    iFNr = FreeFile
    'TXT-Datei zum lesen öffnen
    Open Cells(iCnt1, 1).Value For Input As #iFNr
    'Schleife solange nicht EOF erreicht ist
    Do While Not EOF(iFNr)
      'Zeile in Zelle Schleifenzähler,Spaltennummer übernehmen
      Line Input #iFNr, strtmp
      Cells(iCnt1, iCnt2).Value = strtmp
      'Spaltennummer 1 hochsetzen
      iCnt2 = iCnt2 + 1
    'Ende Schleife solange nicht EOF erreicht ist
    Loop
    'TXT-Datei schliessen
    Close #iFNr
  'Ende TXT-Dateiname = Inhalt von Axx, prüfen, ob vorhanden
  End If
  'Zeilenzähler 1 hochsetzen
  iCnt1 = iCnt1 + 1
'Ende Schleife solange in Axx etwas steht
Loop