Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Daten aus Text-File in bestimmte Zellen in Excel importieren

Frage Entwicklung VB for Applications

Mitglied: lena123

lena123 (Level 1) - Jetzt verbinden

12.10.2007, aktualisiert 14.10.2007, 10637 Aufrufe, 2 Kommentare

Hallo!

Mein Problem ist folgendes:

Ich habe ein Textfile: "Beispiel.txt" mit nur einer Spalte mit folgendem Inhalt, wobei die Zahlen mit tabs getrennt sind:

Zahl1 Zahl2 Zahl3 ...

Diese Zahlen möchte ich nun in Excel importieren, und zwar soll Zahl1 in [B4], Zahl2 in [C4] usw.
(Bis jetzt habe ich es nur geschafft alle Werte in eine oder zwei Zellen zu schreiben)
Wenn die Daten importiert sind, soll die Text-Datei gelöscht werden.
Mein Code sieht bis jetzt so aus:


01.
Sub importData() 
02.
 
03.
    Dim sTxt As String 
04.
     
05.
    Dim strVerzeichnis As String 
06.
    Dim strDatei As String 
07.
    Dim strTyp As String 
08.
    Dim strDateiname As String 
09.
         
10.
    strTyp = "*.txt" 
11.
    strVerzeichnis = ThisWorkbook.Worksheets("Tabelle2").Cells(25, 2) 
12.
    strDateiname = Dir(strVerzeichnis & strTyp) 
13.
   
14.
With ThisWorkbook.Worksheets("Tabelle1") 
15.
         Do While strDateiname <> "" 
16.
            Open strDateiname For Input As #1 
17.
            Do Until EOF(1) 
18.
            Line Input #1, sTxt 
19.
             
20.
        ... 
21.
      
22.
End Sub
Gruß + Danke
Mitglied: bastla
12.10.2007 um 16:11 Uhr
Hallo lena123!

Wenn die Daten tatsächlich nur in einer (der ersten) Zeile der Textdatei stehen, könntest Du etwa so vorgehen:
01.
Sub importData() 
02.
 
03.
Const iAbSpalte = 2 'B 
04.
Const iAbZeile = 4 
05.
 
06.
Dim sTxt As String 
07.
Dim vWert As Variant, iSpalte As Integer 
08.
 
09.
Dim strVerzeichnis As String 
10.
Dim strDatei As String 
11.
Dim strTyp As String 
12.
Dim strDateiname As String 
13.
 
14.
strTyp = "*.txt" 
15.
strVerzeichnis = ThisWorkbook.Worksheets("Tabelle2").Cells(25, 2) 
16.
strDateiname = Dir(strVerzeichnis & strTyp) 
17.
 
18.
With ThisWorkbook.Worksheets("Tabelle1") 
19.
    If strDateiname <> "" Then 'Datei gefunden 
20.
        Open strDateiname For Input As #1 
21.
        If Not EOF(1) Then 'Daten vorhanden 
22.
            Line Input #1, sTxt 'Nur erste Zeile lesen ... 
23.
            aDaten = Split(sTxt, vbTab) '... zerlegen, die Werte der einzelnen Felder in ein Array schreiben ... 
24.
            iSpalte = iAbSpalte 
25.
            For Each vWert In aDaten ... und diese Werte einzeln ... 
26.
                .Cells(iAbZeile, iSpalte).Value = CDbl(vWert) ... (nach Umwandlung in eine Zahl) eintragen. 
27.
                iSpalte = iSpalte + 1 
28.
            Next 
29.
        End If 'Daten vorhanden 
30.
        Close 1 
31.
    End If 'Datei gefunden 
32.
End With 
33.
End Sub
Die Adresse, ab welcher die Daten eingetragen werden sollen, habe ich (wegen der Übersichtlichkeit) in den "Const"-Zeilen am Anfang festgelegt.

Grüße
bastla
Bitte warten ..
Mitglied: lena123
14.10.2007 um 17:43 Uhr
Hallo bastla,

das hat funktioniert, vielen Dank!

Gruß
Bitte warten ..
Ähnliche Inhalte
Neue Wissensbeiträge
Batch & Shell

Batch - ein paar Basics die man kennen sollte

Tipp von Pedant zum Thema Batch & Shell ...

Microsoft

Restrictor: Profi-Schutz für jedes Window

(6)

Tipp von AlFalcone zum Thema Microsoft ...

Batch & Shell

Batch zum Zurücksetzen eines lokalen Profils

Tipp von Mr.Error zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Windows Server
gelöst Benutzer lässt sich nur an einem Clientcomputer anmelden (17)

Frage von Ammann zum Thema Windows Server ...

Vmware
gelöst Wie würdet Ihr eine ESXi Cluster Farm managen? (11)

Frage von AlFalcone zum Thema Vmware ...

Batch & Shell
gelöst Gruppenzugehörigkeit von AD Usern ermitteln - die Perfektion fehlt (11)

Frage von Stefan007 zum Thema Batch & Shell ...