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

Via VB best. Zeilen aus TXT-File in Excelsheet schreiben

Frage Entwicklung VB for Applications

Mitglied: CakeHead

CakeHead (Level 1) - Jetzt verbinden

08.12.2008, aktualisiert 10.12.2008, 5529 Aufrufe, 7 Kommentare

Guten Tag!

Habe lange wegen meinem Problem gegoogelt und hier einige Beiträge durchgelesen und mit den antworten/vorschlägen rumgetüftelt..
Hat aber leider nur teilweise geklappt..
Nach langem Überlegen hab ich mich jetz, da ich kurz vorm verzweifeln bin, dazu entschlossen mein Problem mit euch zu teilen ^^.
Und zwar:

Ich muss aus einer TXT.FILE die wie folgt aussieht (die Struktur wiederholt sich, da das File über 12000-Zeilen behinhaltet)
die Zeile zwischen den "-Zeichen(Anführungszeichen) rauskopieren und in Excel in eine bestimmte Spalte,z.B. A4, schreiben.
D.h. Ich gebe als Suchbegriff Description ein und alles was hinter Description zwischen den "-Zeichen steht, soll er rauskopieren und in Excel reinschreiben.

OPCMSG "BSH_APO"
DESCRIPTION "OVO/APO integration"
MSGGRP "APO"
MSGCONDITIONS
DESCRIPTION "MSG TYPE C/M/W SERVER blabla"
CONDITION_ID "0f58bla466-850d-71db-06fc-0a8blabla60000"
CONDITION
SEVERITY Warning Major Critical
NODE IP 10.blab.bla.91 "blabla.com"
TEXT "<*.txt>"
SET
APPLICATION "Automation Point"
MSGGRP "APblaO"
TEXT "NEW APO <txt>"
DESCRIPTION "MSG TYPE bla/lb/a SERVER blabla"
CONDITION_ID "00b91724-850d-71db-06fc-0a80809blabla"
CONDITION
SEVERITY Warning Major Critical
NODE IP 10.bla.blalba.92 "blalba.com"
TEXT "<*.txt>"




Das alles soll über VBA funktionieren.
Habe etwas ähnliches bereits gefunden:


Sub SuchenUndSchreiben()

On Error GoTo Fehler
Dim Datei As String
Dim Fnr As Long
Dim Trennzeichen As String
Dim Suchbegriff As String

Trennzeichen = ": "
Suchbegriff = "Description"
Datei = "C:\temp\Datei.txt"
Fnr = FreeFile
Open Datei For Input As #Fnr

While Not EOF(Fnr)
Line Input #Fnr, Zeile
tokens = Split(Zeile, Trennzeichen)
If tokens(0) = Suchbegriff Then Range("a3").Value = tokens(1)
Wend

Close #Fnr
Exit Sub

Fehler:
MsgBox "Es trat ein Fehler beim Öffnen der" & " Datei !", 16, "Problem"
Exit Sub
Resume Next


End Sub


Wäre wirklich Super, wenn mir jemand helfen könnte!
Vielen Dank das du dir mein Problem angeschaut hast!

Grüße CakeHead
Mitglied: Logan000
08.12.2008 um 12:53 Uhr
Moin Moin

Ohne Referenz auf Excel wird das nix.
Versuchs mal so (ungetestet):
01.
Set objFSO = CreateObject("Scripting.FileSystemObject") 
02.
Set objSourceFile = objFSO.OpenTextFile("c:\Source.txt", 1)	 
03.
Set objExcel = CreateObject("Excel.Application") 
04.
Set objWorkbook = objExcel.Workbooks.Add		 
05.
Set objWorkSheet = objWorkbook.Worksheets(1)		 
06.
				 
07.
Do Until objSourceFile.AtEndOfStream 				 
08.
     szNextLine = objSourceFile.Readline			 
09.
     tokens = Split(szNextLine, Chr(34)) 
10.
     If tokens(0) = Suchbegriff Then 
11.
          objWorkSheet.Range("A3").Value = tokens(1) 
12.
     end if 
13.
Loop 
14.
 
15.
objWorkbook.SaveAs "C:\MappeX.xls" 
16.
objExcel.Visible = True   
Gruß L.
Bitte warten ..
Mitglied: CakeHead
08.12.2008 um 13:18 Uhr
wow!

Vielen dank für die schnelle antwort @Logan000

hab bereits eine Tabelle und es auch schon geschafft dass er mir einen eingegebenen Suchbegriff aus der txt-file sucht und den dahinter stehenden text in meine bereits erstellte excel-tabelle einschreibt..

jedoch stoppt er nachdem er den suchbegriff gefunden hat.
er soll aber weiterlaufen bis er alle suchbegriffe,und somit die dahinterstehenen zeilen, gefunden und übertragen hat...
bin neu in dem gebiet... sorry

gruß


:::Edit:
habs ausprobiert, er macht mir mit dem code nur eine neue Excel-Map auf... sonst nichts.
Bitte warten ..
Mitglied: Logan000
09.12.2008 um 08:47 Uhr
Moin Moin

habs ausprobiert, er macht mir mit dem code nur eine neue Excel-Map auf... sonst nichts.

Nun Ja ich habe in der Zeile
01.
... 
02.
If tokens(0) = Suchbegriff Then  
03.
...
auch keinen Suchbegriff angegeben. Wenn Du das auch nicht gemacht hast wird nix gefunden worden sein.

jedoch stoppt er nachdem er den suchbegriff gefunden hat.
Sowohl dein code als auch mein Bsp. suchen nur einen Suchbegriff.
Endweder packst du die suche in eine eigene Funktion und rufst diese mit verschiedenen Suchbegriffen auf oder du abreitest eine Liste/Array mit suchbegriffen ab.

Gruß L.
Bitte warten ..
Mitglied: CakeHead
09.12.2008 um 15:37 Uhr
Habs jetz endlich hinbekommen!^^

würrde den code gerne hochladen. wie funktioniert das, damit der code richtig formatiert auf der seite dagestellt wird?
Bitte warten ..
Mitglied: Logan000
09.12.2008 um 16:13 Uhr
Moin Moin

Da schau mal in der Formatierungshilfe nach.

Gruß L.
Bitte warten ..
Mitglied: CakeHead
10.12.2008 um 11:17 Uhr
wen es interessiert, hier der Code:

01.
 
02.
Sub logfileLesenUndSuchen() 
03.
 
04.
    On Error GoTo Fehler 
05.
    Dim logfile As String 
06.
    Dim Suchbegriff As String 
07.
    Dim iCounter As Integer 
08.
    Dim objFSO 
09.
    Dim objFile 
10.
    Dim Zeile As String 
11.
   
12.
 'DESCRIPTION 2. 
13.
  
14.
    logfile = "C:\temp\logfile.txt" 
15.
    Suchbegriff = "DESCRIPTION " 
16.
   
17.
    iCounter = 4       'setzt den Ausgangspunkt in 4.Zeile 
18.
    Set objFSO = CreateObject("Scripting.FileSystemObject") 
19.
    Set objFile = objFSO.OpenTextFile(logfile, 1) 
20.
     
21.
    Do Until objFile.AtEndOfStream 
22.
        Zeile = objFile.ReadLine 
23.
        If InStr(1, Zeile, Suchbegriff) > 0 Then 
24.
            Cells(iCounter, 2).Value = Split(Zeile, Suchbegriff)(1)        'hier wird festgelegt in welcher Spalte gefundene Begriffe reingeschrieben werden 
25.
            Cells(iCounter, 2).Value = ZeichenEntf(Cells(iCounter, 2).Value, """") 
26.
            iCounter = iCounter + 1 
27.
        End If 
28.
    Loop 
29.
    objFile.Close 
30.
    Exit Sub 
31.
 
32.
Fehler: 
33.
    MsgBox "Es trat ein Fehler beim Öffnen der" & _ 
34.
           " logfile !", 16, "Problem" 
35.
    Exit Sub 
36.
    Resume Next 
37.
 
38.
     
39.
End Sub 
40.
 

grüße CakeHead
Bitte warten ..
Mitglied: Logan000
10.12.2008 um 14:09 Uhr
Moin

Sei doch so gut und setze den Beitrag auf erledigt.
Danke.

Gruß L.
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(8)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
Heiß diskutierte Inhalte
Microsoft
Ordner mit LW-Buchstaben versehen und benennen (20)

Frage von Xaero1982 zum Thema Microsoft ...

Outlook & Mail
gelöst Outlook 2010 findet ost datei nicht (19)

Frage von Floh21 zum Thema Outlook & Mail ...

Netzwerkmanagement
gelöst Anregungen, kleiner Betrieb, IT-Umgebung (18)

Frage von Unwichtig zum Thema Netzwerkmanagement ...

Festplatten, SSD, Raid
M.2 SSD wird nicht erkannt (14)

Frage von uridium69 zum Thema Festplatten, SSD, Raid ...