Hallo,
ich habe ein für meine Verhältnisse kniffliges Programm zu schreiben.
Folgendes soll erfüllt werden:
In einem Tabellenblatt sind in der obersten Zeile Baureihen (ca.50), und in der ersten Spalte techn. Daten (ca.300) zu den Baureihen aufgeführt.
Es gibt 5 Zusammenstellungen an techn. Daten die relevant sind, das heisst das von den techn. Daten immer nur bestimmte Kombinationen gefragt sind.
Beim Start des Programms soll der Anwender gefragt werden (oder durch anklicken auswählen) welche Baureihe er haben möchte und in der 2. Auswahl soll er festlegen welche Kombinationsmöglichkeit (1-5) er haben möchte.
Die Auswahl soll dann in einem anderem Tabellenblatt eingefügt werden.
Ich hab das mal ungefähr programmiert, allerding ist der Programmieraufwand gewaltig und fehleranfällig, ausserdem bekomme ich das nicht hin, das das Blatt bei Mehrfachauswahl von links aufgefüllt wird.
Vielleicht kann mir jemand ein paar Tips geben, das wäre super, da ich momentan wirklich auf dem Schlauch stehe und VBA-mässig nicht sonderlich bewandert bin.
a = InputBox("Bitte geben Sie den gewünschten Spaltencode ein")
b = InputBox("Welche Datenzusammenstellung möchten Sie aufrufen? Sie können zwischen 1, 2, 3, 4, oder 5 wählen")
i = 2
If a = "E" And b = "1" Then
Worksheets("Ausgabeblatt").Cells(1, 1) = Worksheets("berechnungen").Cells(1, 1) 'hier werden die relevanten Daten in das andere Blatt übertragen'
Worksheets("Ausgabeblatt").Cells(1, i) = Worksheets("berechnungen").Cells(1, 5)
Worksheets("Ausgabeblatt").Cells(2, 1) = Worksheets("berechnungen").Cells(18, 1)
Worksheets("Ausgabeblatt").Cells(2, i) = Worksheets("berechnungen").Cells(18, 5)
End If
If a = "E" And b = "1" Then 'hier habe ich versucht zu erreichen das das Blatt von links nach rechts aufgefüllt wird'
Else: r = 0
End If
If a = "I" And b = "1" Then
Worksheets("Ausgabeblatt").Cells(1, 1) = Worksheets("berechnungen").Cells(1, 1)
Worksheets("Ausgabeblatt").Cells(1, i + 1) = Worksheets("berechnungen").Cells(1, 9)
Worksheets("Ausgabeblatt").Cells(2, 1) = Worksheets("berechnungen").Cells(18, 1)
Worksheets("Ausgabeblatt").Cells(2, i + 1) = Worksheets("berechnungen").Cells(18, 9)
End If
End Sub
|