Hallo,
Ich habe ein für euch mit Sicherheit kleines Problem. Mich bringt es aber langsam aus der Ruhe, da ich mit VB noch nie zu tun hatte.
Ich habe eine csv Datei die aus einer Datenbank heraus erzeugt wird. Die Zeilenanzahl variiert von Monat zu Monat der Rest bleibt gleich.
So die Ausgabe in der csv. Natürlich mit Werten gefüllt. :
0;Artikelnummer;VerkauftMonat;VerkauftVorManat;VerkauftJahr;Artikelbeschreibung;OEM-Nummer
Jetzt habe ich noch eine Excel Datei in der die Artikel ebenfalls auftauchen. Sortiert nach verkaufter Anzahl. Ich möchte wenn die Excel Datei geöffnet wird diese automatisch sich die csv-Datei nimmt und die Verkauft-Werte zur jeweiligen Artikelnummer in die dazugehörenden Felder der Excel einträgt.
Ich habe schon mal angefangen und aus anderen threads teile zusammengesucht und selbst ein wenig probiert.
Modul1 Code:
Worksheet_Change Code:
Workbook_Open Code:
Vieleicht kann mir einer von euch weiter helfen.
Vielen Lieben Dank schon mal
Ich habe ein für euch mit Sicherheit kleines Problem. Mich bringt es aber langsam aus der Ruhe, da ich mit VB noch nie zu tun hatte.
Ich habe eine csv Datei die aus einer Datenbank heraus erzeugt wird. Die Zeilenanzahl variiert von Monat zu Monat der Rest bleibt gleich.
So die Ausgabe in der csv. Natürlich mit Werten gefüllt. :
0;Artikelnummer;VerkauftMonat;VerkauftVorManat;VerkauftJahr;Artikelbeschreibung;OEM-Nummer
Jetzt habe ich noch eine Excel Datei in der die Artikel ebenfalls auftauchen. Sortiert nach verkaufter Anzahl. Ich möchte wenn die Excel Datei geöffnet wird diese automatisch sich die csv-Datei nimmt und die Verkauft-Werte zur jeweiligen Artikelnummer in die dazugehörenden Felder der Excel einträgt.
Ich habe schon mal angefangen und aus anderen threads teile zusammengesucht und selbst ein wenig probiert.
Modul1 Code:
Code:
Public arrDaten() As String
Sub Main()
Dim ReadLine As String
Dim Zähler As Long
Dim Dummy() As String
Dim Datei As Integer
Dim i As Long
Datei = FreeFile
Open "C:\Temp\PREIS11.CSV" For Input As #Datei
Zähler = 1
Do
ReDim Preserve arrDaten(0 To 8, 1 To Zähler)
Line Input #Datei, ReadLine
If ReadLine <> "" Then
Dummy = Split(ReadLine, ";")
For i = 0 To 8
arrDaten(i, Zähler) = Dummy(i)
Next
Zähler = Zähler + 1
End If
Loop Until EOF(Datei)
Close #Datei
End Sub
Worksheet_Change Code:
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim i As Long
Dim AktuelleZeile As Long
AktuelleZeile = Target.Row
If Target.Column = 1 Then
For i = 1 To UBound(arrDaten, 2)
If UCase(CStr(arrDaten(1, i))) = UCase(CStr(Target.Value)) Then
Worksheets(1).Cells(AktuelleZeile, 2) = arrDaten(3, i)
Worksheets(1).Cells(AktuelleZeile, 3) = arrDaten(4, i)
Worksheets(1).Cells(AktuelleZeile, 4) = arrDaten(5, i)
Worksheets(1).Cells(AktuelleZeile, 5) = arrDaten(6, i)
Worksheets(1).Cells(AktuelleZeile, 6) = arrDaten(7, i)
Exit For
End If
Next
End If
End Sub
Workbook_Open Code:
Code:
Private Sub Workbook_Open()
Main
End Sub
Vieleicht kann mir einer von euch weiter helfen.
Vielen Lieben Dank schon mal
Zuletzt bearbeitet: