AC2000 - Tabellenproblem

Hallo Ihr Spezialisten,

ich habe wiedermal ein kniffliges Problem eines Rennschnecken-Züchter-Vereins.

Wie kriege ich es mit VBA hin, daß aus folgender Tabellenstrukur …

NEU TYP NUM EINTRITT Menge Wert
 CHEF 301002004 Schmitt 
 MITGL 1305776 4 520,00 €
 MITGL 1305813 1 181,00 €
 CHEF 301100025 Berndes 
 MITGL 2358591 4 216,00 €
 MITGL 4512263 2 190,00 €
 MITGL 4512286 1 170,00 €
 MITGL 4765550 1 41,00 €
 MITGL 878725 2 1.492,00 €
 CHEF 301100695 Kangert 
 MITGL 1305776 3 390,00 €
 MITGL 7396277 2 326,00 €
 MITGL 7396337 1 225,00 €
 MITGL 8540322 1 49,00 €
 MITGL 878694 1 760,00 €
 MITGL 878725 1 746,00 €

eine Tabelle mit dieser Struktur wird …

NEU CHEF TYP NUM Menge Wert
301002004 Schmitt MITGL 1305776 4 520,00 €
301002004 Schmitt MITGL 1305813 1 181,00 €
301100025 Berndes MITGL 2358591 4 216,00 €
301100025 Berndes MITGL 4512263 2 190,00 €
301100025 Berndes MITGL 4512286 1 170,00 €
301100025 Berndes MITGL 4765550 1 41,00 €
301100025 Berndes MITGL 878725 2 1.492,00 €
301100695 Kangert MITGL 1305776 3 390,00 €
301100695 Kangert MITGL 7396277 2 326,00 €
301100695 Kangert MITGL 7396337 1 225,00 €
301100695 Kangert MITGL 8540322 1 49,00 €
301100695 Kangert MITGL 878694 1 760,00 €
301100695 Kangert MITGL 878725 1 746,00 €

Ich brauche also für jedes Mitglied („NUM“) den entsprechenden „CHEF“
mit Nummer und Namen in einer Zeile.

Hoffentlich ist meine Anfrage nicht zuviel verlangt.

Ich bedanke mich jetzt schon für Eure Antworten.

gruss
moritzbock

Wenn deine Ausgangsdatei mit Tabs getrennt ist, geht das etwa so (DAO):

Dim S, Lin As String, Tmp As String, \_
 RSM As DAO.Recordset, RSC As DAO.Recordset, Merk As Long

 On Error Resume Next
 CurrentDb.Execute "DROP Table tblChef"
 CurrentDb.Execute "DROP Table tblMitgl"
 On Error GoTo 0
 CurrentDb.Execute "CREATE Table tblChef (ID Long,ChefName Text(50))"
 CurrentDb.Execute "CREATE Table tblMitgl (Num Long, IDChef Long, Menge Long, Wert Currency)"
 Set RSC = CurrentDb.OpenRecordset("tblChef", dbopendynaset)
 Set RSM = CurrentDb.OpenRecordset("tblMitgl", dbopendynaset)
 Open "C:\temp\ttt.txt" For Input As #1
 Line Input #1, Lin
 Do Until EOF(1)
 Line Input #1, Lin
 S = Split(Lin, Chr(9))
 If UBound(S) \> 0 Then
 If Trim(S(1)) = "CHEF" Then
 RSC.Addnew
 Merk = Val(S(2))
 RSC!ID = merk
 Tmp = Trim(S(3))
 If Tmp "" Then RSC!Chefname = Tmp
 RSC.UpDate
 Else
 RSM.AddNew
 RSM!IDChef = Merk
 RSM!Num = Val(S(2))
 RSM!Menge = Val(S(3))
 RSM!Wert = Val(S(4))
 RSM.UpDate
 End If
 End If
 Loop
 Close #1
 RSC.Close
 RSM.Close

Gruß aus dem Norden
Reinhard Kraasch (http://www.kraasch.de - Access Tipps & Tricks)

Hallo Reinhard,

auf Dich kann man sich wirklich verlassen.

Hat alles prima funktioniert.

Tausend Dank und ein Sternchen!!

gruss aus dem Südwesten
moritzbock

Wenn deine Ausgangsdatei mit Tabs getrennt ist, geht das etwa
so (DAO):