Codeprobleme

jokybordaux

Mitglied
hi!
Ich habe 2 Fragen und zwar:
1. Gibt es den Code in VB.Net: While i <> "" oder nur in VB6?
1a. Wenn nicht, was ist der Unterschied und wie lautet der Code?
2. Wie lautet der Code für Excel in VB.Net, damit ich auf die Workbooks und Worksheets zugreifen kann?

lg tina
 
ad 1: Was mich interessiert ist, ob i in VB.Net unbedingt einen Wert zugewiesen werden soll?
Wenn ja, welchen Wert am besten, wenn die Schleife: while i<>"" lautet?

ad2: Bei dem Buch war ich schon, aber es ist nicht genau das, nach dem ich suche! Aber danke!

lg tina
 
Diem Frage stellt sich was i für ein Datentyp ist.
Ich kenn "i" eher als Zählvariable und da ist es eindeutig eine Zahl.

wenn du auf eine leere Zeichenkette testen möchtest, angenommen i wäre eine Zeichenkette: i.length <> 0
 
i ist eine Schleifenvariable und die hab ich als String initialisiert.

Code:
Dim i As String

While i <> ""

            i = xlZelle.Offset(intZeilen, 2).Value                              'i bekommt den Wert des Zeilenfeldes
            PN = xlZelle.Offset(intZeilen, 1).Value                            'Positionsnummer
            ktx = xlZelle.Offset(intZeilen, 3).Value                           'Kurztext
            EH = xlZelle.Offset(intZeilen, 7).Value                            'Einheit
            Ans = xlZelle.Offset(intZeilen, 9).Value                           'Ansatzformel
            BM = xlZelle.Offset(intZeilen, 8).Value                            'Betriebsmittelnr.

            If i = "0" Then                                             'Wenn i Null ist wird eine Position geschrieben
                If LV Is Nothing Then
                    LV = New BS4ServerV3.LV
                End If
                LV.DBInsertKey(PN)                                      'Positionsnummer wird geschrieben
                LV.KTx = ktx                                            'Kurztex                                          
                LV.EH = EH                                              'Einheit
                LV.DBPut()                                              'Änderungen speichern
            Else
                If Kalk Is Nothing Then
                    Kalk = New BS4ServerV3.KALK
                End If
                Kalk.DBInsert()                                         'Kalkulation wird geöffnet
                Kalk.BNr = BM                                           'Betriebsmittelnummer
                Kalk.Ans = Ans                                          'Ansatzformel
                LV.DBPut()                                              'Änderungen speichern
            End If

            Zeile = Zeile + 1                                           'Zeile erhöhen
            i = xlZelle.Offset(intZeilen, 2).Value                'Zeile auslesen

        End While

i ist dazu da, um Zeilen und Spalten aus dem Excel auszulesen und in eine andere Datenbank zu speichern.
 
Das Problem ist das er nie in die While Schleife geht. Da i nicht initialisiert ist.
also i am Beginn leer ist.
Für dein Forgehen ist warscheinlich eine Fussgesteuerte Schleife besser -> Do-Loop.

While

Do-Loop While
 

Neue Beiträge

Zurück