Schleifen Problem
11.01.2015 16:59:35
Stefan
ich habe schon viele Hilfestellungen hier für Probleme gefunden die mir wirklich sehr viel weiter geholfen haben. Vielen Dank dafür. Leider hänge ich nun schon länger an einem Problem und möchte euch gerne um Hilfe bitten.
Ich habe eine Tabelle mit 400 Spalten und 150 Zeilen. Über ein Formular möchte ich nun Werte (Messwerte) nach bestimmten Bedingungen in die Tabelle schreiben.
.txt_1.Value sind die x-Werte und .txt_2.Value die y-Werte
Was ich bisher habe:
Dim a As Integer
Dim b As Integer
Dim lngRow As Long
Dim sngIncr As Single
Dim am As Single, imo As Single, imu As Single
am = 2
imo = 10
imu = 0
sngIncr = 0.5
For lngRow = 10 To 160
With UserForm1
a = Worksheets("Tabelle1").Cells(lngRow, 3).Value
b = .txt_3.Value
If a >= b Then
ElseIf .txt_1.Value - am 0.5 And .txt_2.Value - _
imo sngIncr Then
Worksheets("Tabelle1").Cells(lngRow, 3).Value = .txt_3.Value
End If
End With
sngIncr = sngIncr + 1!
Next
Diese Zeilen machen nun auch genau was ich möchte, jedoch nur für Spalte C. Leider habe ich aber nun 400 Spalten und müsste dann 400 mal diese Schleife programmieren. Da würden mir vermutlich zu viele Fehler passieren. Meine nächste Schleife würde dann so aussehen:
Dim a2 As Integer
Dim b2 As Integer
Dim lngRow2 As Long
Dim sngIncr2 As Single
Dim am2 As Single, imo2 As Single, imu2 As Single
am2 = 2
imo2 = 10
imu2 = 0
sngIncr2 = 0.5
For lngRow2 = 10 To 160
With UserForm1
a2 = Worksheets("Tabelle1").Cells(lngRow2, 4).Value
b2 = .txt_3.Value
If a2 >= b2 Then
ElseIf .txt_1.Value - am 1.5 And .txt_2.Value - _
imo sngIncr2 Then
Worksheets("Tabelle1").Cells(lngRow2, 4).Value = .txt_3.Value
End If
End With
sngIncr2 = sngIncr2 + 1!
Next
Eigentlich hat sich nun nur die Spalte verändert und die Bedingung
.txt_1.Value - am 0.5
zu
.txt_1.Value - am 1.5
Hat jemand einen Tipp wie ich das ganze in einer Routine machen kann? Für Hilfe wäre ich euch wirklich sehr dankbar.