Hallo Zusammen
Ich habe folgendes Problem:
In einer Excel Datei mit VBA (habe ich nicht geschrieben, muss es jedoch erweitern) muss ich folgendes machen können:
in Zelle C6 können Feldgerätetypen einzeln oder "Alle" ausgewählt werden. In Zelle C7 können Gebäudeteile ausgewählt werden. Durch das klicken des Buttons "Liste generieren" werden die Summenzahlen aus einem anderen Reiter summiert und für jeden Typ Gerät eine Positionnummergeneriert und die Anzahl ausgegeben inkl. Preis und Typenangaben.
Nun müsste ich dies erweitern, sodass auch "Alle" Gebäudeteile ausgewählt werden können, und die Liste entsprechend generiert wird.
Untenstehend den bereits bestehenden Code: (Beispiel Datei kann ich nicht hochladen, da es geschäftlich ist.
With Tabelle1
Spaltenanzahl = .Cells(1, Columns.Count).End(xlToLeft).Column
For i = 7 To Spaltenanzahl
Summe_Feldgerät = Application.WorksheetFunction.SumIf(.Range(.Cells(13, 1), .Cells(1048576, 1)), Tabelle9.Cells(7, 3), .Range(.Cells(13, i), .Cells(1048576, i)))
If (.Cells(2, i) = Gerätetyp Or (Gerätetyp = "A" And .Cells(2, i) >= 1)) And ((.Cells(3, i) = Tabelle9.Cells(8, 3)) Or (Tabelle9.Cells(8, 3) = "Alle" And (.Cells(3, i) >= 1))) Then
If Summe_Feldgerät > 0 Then
Cells(a, 1) = Pos_Nummer 'Positionsnummer
Cells(a, 2) = .Cells(1, i) 'Felgeräte
Cells(a, 3) = .Cells(3, i) 'Fabrikat
If .Cells(5, i) > 0 And .Cells(6, i) > 0 Then 'Typenbezeichnung von hier...
Cells(a, 4) = .Cells(4, i) & Chr(10) & "+" & .Cells(5, i) & Chr(10) & "+" & .Cells(6, i)
ElseIf Tabelle1.Cells(5, i) > 0 Then
Cells(a, 4) = .Cells(4, i) & Chr(10) & "+" & .Cells(5, i)
Else
Cells(a, 4) = .Cells(4, i)
End If '...Typenbezeichnung bis hier
Cells(a, 5) = Summe_Feldgerät 'Anzahl
Cells(a, 6) = .Cells(11, i) 'Preis pro Stück
Cells(a, 7) = Cells(a, 5) * Cells(a, 6)
a = a + 1
Pos_Nummer = Pos_Nummer + 1
End If
End If
Next i
End With