Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1620to1624
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Fortlaufende Nummerierung aber mit 2 Buchstaben

Fortlaufende Nummerierung aber mit 2 Buchstaben
14.05.2018 07:33:01
Zoe401
Guten Morgen,
ich stehe vor einem Problem, bei dem ich Hilfe eure Hilfe gebrauchen könnte.
Ich habe zwei Tabellen, in welche Daten von einerm anderen Arbeitsblatt kopiert werden.
In der einen Tabelle wird dazu jeweils eine fortlaufende Nummer erstellt und in der zweiten Tabelle werden die Proben nicht mit Nummern aufgelistet sondern mit Buchtaben. Jeweils zwei. Wir stehen im Moment irgendwo bei CS und es soll automatisch weiter "nummerieren" mit CT, CU, CV, CW, CX, CY, CZ, DA, DB usw.
Mein Code für die Nummerierung un das kopieren der Daten in Tabelle 1 (Probenübersicht - Zahlen) ist wie folgt. Tabelle 2 heisst (Probenübersicht - Buchstaben).
Sub NeueProbe1()
Dim wbProbenübersicht As Workbook
Dim wbProtokollvorlage As Workbook
Dim wksStart As Worksheet
Set wbProtokollvorlage = ThisWorkbook
Set wksStart = wbProtokollvorlage.Sheets("Startseite")
Dim wksTarget As Worksheet
Dim i As Integer
i = wbProtokollvorlage.Sheets("Startseite").TextBox1.Value
On Error Resume Next
Set wbProbenübersicht = Workbooks("Probenübersicht.xlsx")
On Error GoTo 0
If wbProbenübersicht Is Nothing Then
Set wbProbenübersicht = Workbooks.Open _
("C:\Users\kiesel\Desktop\Protokoll Vorlagen Test\Probenübersicht.xlsx")
End If
Select Case True
Case wbProtokollvorlage.Sheets("Startseite").CheckBox28
Set wksTarget = wbProbenübersicht.Sheets("Probenübersicht - Zahlen")
Case wbProtokollvorlage.Sheets("Startseite").CheckBox29
Set wksTarget = wbProbenübersicht.Sheets("Probenübersicht - Buchstaben")
End Select
wksTarget.Activate
For a = 1 To i

wksTarget.Cells(5, 1).End(xlDown).Offset(1, 0).Value = wksTarget.Cells(5, 1).End(xlDown). _
Offset(0, 0).Value + 1
wbProtokollvorlage.Sheets("Startseite").Range("C4").Copy
wksTarget.Range("H" & wksTarget.Cells(5, 1).End(xlDown).Row).PasteSpecial Paste:= _
xlPasteValues
wbProtokollvorlage.Sheets("Startseite").Range("G20").Copy
wksTarget.Range("C" & wksTarget.Cells(5, 1).End(xlDown).Row).PasteSpecial Paste:= _
xlPasteValues
wbProtokollvorlage.Sheets("Startseite").Range("G6").Copy
wksTarget.Range("D" & wksTarget.Cells(5, 1).End(xlDown).Row).PasteSpecial Paste:= _
xlPasteValues
wbProtokollvorlage.Sheets("Startseite").Range("C27").Copy
wksTarget.Range("E" & wksTarget.Cells(5, 1).End(xlDown).Row).PasteSpecial Paste:= _
xlPasteValues
wbProtokollvorlage.Sheets("Startseite").Range("G6").Copy
wksTarget.Range("F" & wksTarget.Cells(5, 1).End(xlDown).Row).PasteSpecial Paste:= _
xlPasteValues
wksTarget.Range("G" & wksTarget.Cells(5, 1).End(xlDown).Row).Value = 1
wbProtokollvorlage.Sheets("Startseite").Range("C14").Copy
wksTarget.Range("I" & wksTarget.Cells(5, 1).End(xlDown).Row).PasteSpecial Paste:= _
xlPasteValues
wbProtokollvorlage.Sheets("Startseite").Range("C18").Copy
wksTarget.Range("J" & wksTarget.Cells(5, 1).End(xlDown).Row).PasteSpecial Paste:= _
xlPasteValues
wbProtokollvorlage.Sheets("Startseite").Range("G14").Copy
wksTarget.Range("K" & wksTarget.Cells(5, 1).End(xlDown).Row).PasteSpecial Paste:= _
xlPasteValues
Next a
End Sub
Bei der fortlaufenden Nummerierung (fett) ist das ja einfach. Wie geht das aber nun mit Buchstaben? Ist das überhaupt möglich?
Viele Grüße,
Zoe

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Nur ein Ansatz!
14.05.2018 07:48:32
RPP63
Moin!
UDF:
Function Alpha$(Spalte&)
Alpha = Split(Cells(1, Spalte).Address, "$")(1)
End Function
Ergibt als Tabellenfunktion:
 A
98CT
99CU
100CV
101CW
102CX
103CY
104CZ
105DA
106DB

ZelleFormel
A98=Alpha(ZEILE())

Gruß Ralf
Anzeige
AW: Fortlaufende Nummerierung aber mit 2 Buchstaben
14.05.2018 08:10:58
Daniel
Hi
So:
1. Zeichenfolge zu Zelladresse erweitern (eine Zeilennummer hinzufügen)
2. von dieser Adresse die Spaltennummer ermitteln
3. Spaltennummer erhöhen
4. mit der neuen Spaltennummer eine Spalte erstellen und deren Adresse ermittelt
5. aus der Adresse die Spaltenbezeichnung extrahieren
With wksTarget.Cells(5, 1).End(xlDown)
.Offset(1, 0).value = Split(Range(.value & "1"). Offset(0, 1).Address, "$")(1)
Ende with
Gruß Daniel
Funktioniert einwandfrei. Top, danke! owT
14.05.2018 08:19:22
Zoe401
Funktioniert einwandfrei. Top, danke!
Excel ist zuallererst Formel, nicht VBA ;)
16.05.2018 17:54:37
lupo1
B1 oder A2: =WECHSELN(ADRESSE(1;SPALTE(INDIREKT(A1&1))+1;4);1;)
(die Formel bleibt ausnahmsweise mal gleich; also egal, ob nach unten oder rechts kopiert)
Anzeige

9 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige