vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Top-Preis! AP-Access-Tools-CD Volume 1  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

Visual-Basic Einsteiger
*.csv Datei (Lesen/Schreiben) 
Autor: Lutz
Datum: 26.09.02 14:38

Erst einmal ein dickes Lob zu Eurer 2. VisualBasicArchiv CD.
Auch die nächste werde ich erwerben.
Könnte man nicht ein schönes CD-Inlet mit draufpacken?Sieht dann im
Regal besser aus.
====================================================================
'Hier der Code den ich geschrieben habe, klappt nicht richtig:
Private Sub CmdEinlesen_Click()

Zähler = 0
Zähler1 = 0
Zähler2 = 0
Datei = ""
Datei1 = ""
Datei2 = ""
Länge = 0
Länge1 = 0
Länge2 = 0
Position = 0
Position1 = 0
Position2 = 0

For Index = 1 To 100 Step 1
Urtext(Index) = ""
MaxZeichen(Index) = 0
Transtext(Index) = ""
Next

Datei = App.Path & "Dateien"
With CommonDialog1
.DialogTitle = "Open File..."
.Filter = "Text (*.csv)|*.csv"
.FilterIndex = 1
.InitDir = Datei
.Flags = cdlOFNCreatePrompt And cdlOFNPathMustExist _
And cdlOFNLongFileNames And cdlOFNExplorer
.ShowOpen
Datei1 = Datei & "\" & CommonDialog1.FileTitle
End With

oExl.Workbooks.Open Datei1

Tabelle = 1
ActiveWorkbook.Sheets(Tabelle).Select

Zeile = 1
Spalte = 1
For Index = 1 To 100 Step 1
If ActiveSheet.Cells(Zeile, Spalte).Value = "" Then
Exit For
Else
Zähler = Zähler + 1
Urtext(Index) = ActiveSheet.Cells(Zeile, Spalte).Value
MaxZeichen(Index) = Len(Urtext(Index))
Transtext(Index) = ActiveSheet.Cells(Zeile, Spalte + 1).Value
End If
Zeile = Zeile + 1
Next

ActiveWorkbook.Saved = True
oExl.Quit
Set oExl = Nothing

Zähler1 = 7 'Ab siebte Zeile
With ListView1
.ListItems.Clear
For Index = Zähler1 To Zähler Step 1
Set itemX = .ListItems.Add(, , Index + 1 - Zähler1)
itemX.SubItems(1) = Urtext(Index)
itemX.SubItems(2) = Transtext(Index)
Next

End With
'Bis hier läuft alles gut, außer Schließen der Datei
'wenn ich gleich wieder auf >CmdEinlesen> klicke
'kommen falsche Werte.Oder wenn ich die Datei im Explorer öffnen will kommt die
'Meldung "Wird von anderer Anwendung benutzt, schreibgeschützt öffnen"
Beep
End Sub
'-------------------------------------------------------------------------
'Nun habe ich einige Transtext() geändert und möchte alles wieder
'in die gleiche Datei speichern.
'Dazu noch eine Frage:Was muß ich tun um den neuen Inhalt in eine neue Datei
'z.B. Test.csv zu speichern?

Private Sub CmdSaveFile_Click()

With CommonDialog1
.DialogTitle = "Save File..."
.Filter = "Text (*.csv*)|*.csv*"
.FilterIndex = 1
.InitDir = Datei
.Flags = cdlOFNCreatePrompt And cdlOFNPathMustExist _
And cdlOFNLongFileNames And cdlOFNExplorer
.ShowSave
Datei1 = Datei & "\" & CommonDialog1.FileTitle
End With

oExl.Workbooks.Open Datei1

Tabelle = 1
ActiveWorkbook.Sheets(Tabelle).Select

Zeile = 1
Spalte = 1

For Index = 1 To Zähler Step 1
ActiveSheet.Cells(Zeile, Spalte).Value = Urtext(Index)
ActiveSheet.Cells(Zeile, Spalte + 1).Value = Transtext(Index)
Zeile = Zeile + 1
Next

ActiveWorkbook.Saved = True
oExl.Quit
Set oExl = Nothing
'Aber es werden die Änderungen nicht gespeichert, der Inhalt ist der gleiche
'wie vor dem Öffnen
End Sub
Vielen dank im voraus
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
*.csv Datei (Lesen/Schreiben)94Lutz26.09.02 14:38

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel