vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Brandneu! sevEingabe v3.0 - Das Eingabecontrol der Superlative!  
 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
Re: Zeile darüber - Zeile selbst - Zeile darunter ??? 
Autor: Manfred X
Datum: 26.05.11 13:31

Hallo!

Du mußt statt des nullbasierten "Index" einer
zu vergleichenden Spalte ein Array in der
erforderlichen Länge erstellen und die Indices
der Prüfspalten eintragen.

Allerdings stellt sich die Frage, wie diese Bedingungen
"verknüpft" werden sollen. Soll eine Ausgabe in die
Zieldatei bereits erfolgen, wenn in einer der Spalten
ein Unterschied zwischen den Zeilen vorliegt, oder nur, wenn sich
alle übergebenen Spalten in den beiden Zeilen unterscheiden
(zu steuern über den Abfrage-Wert der Variable "cz", weil die Funktion
"CheckConditions" die Zahl der Spalten zurückgibt, in denen
eine Differenz der Zeilenwerte vorliegt. (Eventuell auch noch
auf -1 prüfen: Fehlerbedingung)
Private Function CheckLines4 _
           (ByVal infile As String, ByVal outfile As String, _
            ByRef PrüfSpalten() As Integer) As Boolean
 
On Error GoTo fehler
Dim lines() As String, ak%, i%, k%, fieldsv$(), fieldsp$()
If Not ReadLines(infile, lines) Then CheckLines4 = False: Exit Function
 
'Anzahl der übergebenen Prüfspalten (= Anzahl Array-Elemente)
Dim cz As Integer
cz = UBound(PrüfSpalten) - LBound(PrüfSpalten) + 1
 
Dim written() As Boolean
ReDim written(UBound(lines)) As Boolean
 
ak = FreeFile
Open outfile For Output As #ak
For i = 1 To UBound(lines)
   fieldsv = Split(lines(i - 1), ",")
   fieldsp = Split(lines(i), ",")
   If CheckConditions(fieldsv(), fieldsp(), PrüfSpalten()) = cz Then
      If Not written(i - 1) Then
         Print #ak, lines(i - 1)
      End If
      If Not written(i) Then
         Print #ak, lines(i)
         written(i) = True
      End If
      If i < UBound(lines) Then
         written(i + 1) = True
         Print #ak, lines(i + 1)
      End If
   End If
Next i
Close #ak
CheckLines4 = True
Exit Function
 
fehler:
Close #ak
CheckLines4 = False
End Function
 
 
Private Function CheckConditions _
     (ByRef fieldsv() As String, ByRef fieldsp() As String, _
      ByRef pruefspalten() As Integer) As Integer
 
On Error GoTo fehler
Dim i As Integer, z As Integer
For i = LBound(pruefspalten) To UBound(pruefspalten)
   If CInt(Trim(fieldsv(pruefspalten(i)))) <> _
      CInt(Trim(fieldsp(pruefspalten(i)))) Then z = z + 1
Next i
CheckConditions = z
Exit Function
 
fehler:
CheckConditions = -1
End Function


Beitrag wurde zuletzt am 26.05.11 um 13:33:06 editiert.
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Zeile darüber - Zeile selbst - Zeile darunter ???1.898JBL23.05.11 09:22
Re: Zeile darüber - Zeile selbst - Zeile darunter ???1.183Manfred X23.05.11 11:53
Re: Zeile darüber - Zeile selbst - Zeile darunter ???1.211JBL23.05.11 11:59
Re: Zeile darüber - Zeile selbst - Zeile darunter ???1.302Manfred X23.05.11 12:29
Re: Zeile darüber - Zeile selbst - Zeile darunter ???1.035JBL23.05.11 13:03
Re: Zeile darüber - Zeile selbst - Zeile darunter ???1.235Manfred X23.05.11 13:22
Re: Zeile darüber - Zeile selbst - Zeile darunter ???1.077JBL23.05.11 14:46
Re: Zeile darüber - Zeile selbst - Zeile darunter ???1.190Manfred X23.05.11 15:21
Re: Zeile darüber - Zeile selbst - Zeile darunter ???1.065JBL23.05.11 15:51
Re: Zeile darüber - Zeile selbst - Zeile darunter ???1.115Manfred X23.05.11 16:03
Re: Zeile darüber - Zeile selbst - Zeile darunter ???1.170JBL23.05.11 16:26
Re: Zeile darüber - Zeile selbst - Zeile darunter ???1.120JBL23.05.11 16:40
Re: Zeile darüber - Zeile selbst - Zeile darunter ???1.204Manfred X23.05.11 17:04
Re: Zeile darüber - Zeile selbst - Zeile darunter ???1.060JBL23.05.11 17:20
Re: Zeile darüber - Zeile selbst - Zeile darunter ???1.026JBL25.05.11 16:40
Re: Zeile darüber - Zeile selbst - Zeile darunter ???1.110Manfred X26.05.11 13:31
Re: Zeile darüber - Zeile selbst - Zeile darunter ???1.077JBL26.05.11 15:11
Re: Zeile darüber - Zeile selbst - Zeile darunter ???1.051Manfred X26.05.11 16:12
Re: Zeile darüber - Zeile selbst - Zeile darunter ???1.103JBL26.05.11 16:19
Re: Zeile darüber - Zeile selbst - Zeile darunter ???1.033Manfred X26.05.11 16:32
Re: Zeile darüber - Zeile selbst - Zeile darunter ???1.057JBL27.05.11 10:12
Re: Zeile darüber - Zeile selbst - Zeile darunter ???1.100Manfred X27.05.11 10:58
Re: Zeile darüber - Zeile selbst - Zeile darunter ???973JBL27.05.11 11:36
Re: Zeile darüber - Zeile selbst - Zeile darunter ???1.240Manfred X27.05.11 12:13
Re: Zeile darüber - Zeile selbst - Zeile darunter ???985JBL27.05.11 12:51
Re: Zeile darüber - Zeile selbst - Zeile darunter ???1.137Manfred X27.05.11 13:09
Re: Zeile darüber - Zeile selbst - Zeile darunter ???1.192JBL27.05.11 12:27
Re: Zeile darüber - Zeile selbst - Zeile darunter ???1.098Manfred X27.05.11 13:03
Re: Zeile darüber - Zeile selbst - Zeile darunter ???1.106JBL27.05.11 13:24
Re: Zeile darüber - Zeile selbst - Zeile darunter ???1.069Manfred X27.05.11 13:33
Re: Zeile darüber - Zeile selbst - Zeile darunter ???1.091JBL27.05.11 19:07
Re: Zeile darüber - Zeile selbst - Zeile darunter ???1.133Manfred X27.05.11 21:20
Re: Zeile darüber - Zeile selbst - Zeile darunter ???1.197JBL28.05.11 18:42
Re: Zeile darüber - Zeile selbst - Zeile darunter ???1.039Manfred X28.05.11 20:52
Re: Zeile darüber - Zeile selbst - Zeile darunter ???1.016JBL28.05.11 22:18
Re: Zeile darüber - Zeile selbst - Zeile darunter ???983JBL29.05.11 12:32
Re: Zeile darüber - Zeile selbst - Zeile darunter ???1.132Manfred X29.05.11 13:33
Re: Zeile darüber - Zeile selbst - Zeile darunter ???1.069JBL29.05.11 13:46
Re: Zeile darüber - Zeile selbst - Zeile darunter ???1.003Manfred X29.05.11 14:19
Re: Zeile darüber - Zeile selbst - Zeile darunter ???1.028Manfred X29.05.11 15:03

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