ich verzweifle gerade an folgender Problemstellung:
Ausgelöst durch einen CommandButton sollen in Spalte D eines Excelblattes innerhalb einer Markierung 6-stellige Auftragsnummern, durch einen Unterstrich getrennt um eine 3-stellige Probennummer ergänzt werden.
-Die Auftragsnummer soll aus der ersten Zeile der Markierung (jeweils nur bis zum Unterstrich übernommen werden, und durch die oben genannten Probennummern (getrennt durch "_") ergänzt werden.
z.B. "123456_015" übernommen wird "123456" addiert wird "_" & "Probennummer" zu "123456_Probennummer"
-Die (ganzzahligen) Probennummern werden per Hand eingetragen, sollen aber um voranstehende Nullen ergänzt werden, damit diese immer 3-stellig sind.
z.B. "2" soll zu "002" werden, "15" soll zu "015" werden.
Beispiel für die Markierten Zellen:
123456_008
6
7
8
17
18
23
29
109
Soll werden:
123456_008
123456_006
123456_007
123456_008
123456_017
123456_018
123456_023
123456_029
123456_109
-Ich möchte das ganze nur in einer Markierung ablaufen lassen, die Schleife läuft bei mir aber nicht fehlerfrei und ich weiß nicht, ob man dafür wirklich eine Schleife benötigt, oder ob es auch mit "For each" geht.
Hier mein bisheriger Code:
Sub AddNumberInSelection()
Dim strErsteZelle As String
Dim strLetzteZelle As String
Dim strAuftrag As String
Dim strProbe As String
Dim i As Integer
strErsteZelle = Selection.Row
strLetzteZelle = Selection.Rows.Count + Selection.Row - 1
strAuftrag = Selection.Cells(1, 1)
i = strErsteZelle + 1
Do Until i = strLetzteZelle + 1
strProbe = Selection.Cells(i, 1).Value
Sheets(1).Cells(i, 4).Value = strAuftrag & strProbe
i = i + 1
Loop
End Sub
komischerweise funktioniert mein Code nur für die ersten beiden Zeilen der Markierung, danach bleibt die Variable strProbe leer ("").
Liebe Grüße,
Robin