Hallo VBA-Gemeinde,
ich bin VBA-Neueinsteiger und arbeite als Werksstudent in einem großen Automotive-Konzern.
Hier bin ich nun in einem Projekt eingestiegen und folgendes Problem tritt nun auf:
Ich habe diverse Parameter (es sind ungefähr 20 an der Zahl) und verschiedene "Positionen" an denen ich diese Parameter gemessen habe.
Diese Daten werden an einem Prüfstand protokolliert und in ein Textfile geschrieben welches dann über eine VBA-UserForm die Daten in Excel einliest...
Nun schaffe ich es einfach nicht diese Daten in das Sheet zu bekommen. Ich kopiere erst noch den Code hier herein:
'schreibt die eingelesenen Daten in das Excel Sheet
Public Sub schreibe_daten(ByVal x As Integer)
' Übergabe:
' Bei ausgewählten Praxisdaten wird Wert 0 an x übergeben. d.h. Speicherung der
' Daten in die Spalten "absolut", Spalte 3,7,11,15...
' Bei ausgewählten Theoriedaten wird Wert 2 an x übergeben. d.h. Speicherung der
' Daten in die Spalten "Theorie", Spalte 5,9,13,17...
Dim i, Spalte As Integer
'Dim j(20), Zeile As Integer
'If (serie) Then 'Wähle Tabellenblatt in das geschrieben wird
'Sheets("Werte 7 Positionen").Select
'Else
Sheets("Werte 9 Positionen").Select
'End If
For i = 1 To 9
'For j = 1 To 9
'Spaltenindex
Spalte = (4 * i) - 1 + x
'Zeilenindex
'Zeile = (4 * j) + 23
'Werte
If (Parameter(i) <> -999) Then Cells(4, Spalte).Value = Parameter(i)
If (Parameter(i) <> -999) Then Cells(5, Spalte).Value = Parameter(i)
If (Parameter(i) <> -999) Then Cells(6, Spalte).Value = Parameter(i)
If (Parameter(i) <> -999) Then Cells(7, Spalte).Value =Parameter(i)
If (Parameter(i) <> -999) Then Cells(8, Spalte).Value =Parameter(i)
If (Parameter(i) <> -999) Then Cells(9, Spalte).Value = Parameter(i)
If (Parameter(i) <> -999) Then Cells(10, Spalte).Value = Parameter(i)
If (Parameter(i) <> -999) Then Cells(11, Spalte).Value = Parameter(i)
If (Parameter(i) <> -999) Then Cells(12, Spalte).Value = Parameter(i)
If (Parameter(i) <> -999) Then Cells(13, Spalte).Value = Parameter(i)
If (Parameter(i) <> -999) Then Cells(14, Spalte).Value = Parameter(i)
If (Parameter(i) <> -999) Then Cells(15, Spalte).Value = Parameter(i)
If (Parameter(i) <> -999) Then Cells(16, Spalte).Value = Parameter(i)
If (Parameter(i) <> -999) Then Cells(17, Spalte).Value = Parameter(i)
If (Parameter(i) <> -999) Then Cells(18, Spalte).Value = Parameter(i)
If (Parameter(i) <> -999) Then Cells(19, Spalte).Value = Parameter(i)
If (Parameter(i) <> -999) Then Cells(20, Spalte).Value = Parameter(i)
If (Parameter(i) <> -999) Then Cells(21, Spalte).Value = Parameter(i)
If (Parameter(i) <> -999) Then Cells(22, Spalte).Value = Parameter(i)
If (Parameter(i) <> -999) Then Cells(23, Spalte).Value = Parameter(i)
'Next j
Next i
End Sub
Das Problem ist, mit diesem Code hatte es ganz gut geklappt bis eine Änderung eingetreten ist. Bisher war es so, dass die 20 Parameter in Spalte B standen und alle Werte rechts davon aufgeführt wurden so dass man irgendwann einer Spalte ganz weit hinten landete. Nun soll es aber so sein, dass ich die 20 Parameter immer wieder untereinander Anordnen soll und ich hierfür eine zweite FOR Anweisung vorgesehen habe.... Aber es kommt nur Mist dabei raus....
Ich hoffe es ist halbwegs verständlich erklärt. Falls nicht, bitte nachfragen. Ich werde mir Mühe geben es noch deutlicher zu erklären.
Ich würde mich auf eine baldige Antwort sehr freuen.
Vielen Dank im Voraus.
MFG
CURLE
|