Anzeige
Archiv - Navigation
1956to1960
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

Zellen auslesen und auffüllen

Zellen auslesen und auffüllen
07.12.2023 19:16:59
Frank
Hallo an alle,

vielleicht kann mir jemand helfen.

zur Erläuterung:
ich habe mehrere Zeilen wo verschieden Sachen drin stehen - die sprechen ich per Schleife einzeln an)
in jeder Zelle sollen immer 9 Zeichen in der Zelle stehen
es soll immer mit einer 0 (NULL) aufgefüllt werden zwischen Buchstaben und Zahl

es kann sein, dass die ersten 2 oder die erste 3 Zeichen Buchstaben sind und dann Zahlen kommen

ist --> XXY9988
soll --> XXY000998

ist XX9999
soll yy0009999

kann mir jemand dabei helfen ein VBA Code zu schreiben ?

danke schön


grüße
Frank

13
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: ist mE zumindest nicht eindeutig ...
07.12.2023 19:39:37
neopa C
Hallo Frank,

... wieso wird in Deinem ersten Beispiel die letzte Ziffer der Ursprungszahl weggelassen und warum wird im 2. Beispiel aus den ersten beiden Zeichen "XX" ein "yy"?
Davon abgesehen, würde ich Deine Zielstellung wie folgt interpretieren und mit einer Formel lösen.

Ursprungsdatenwert in A1, dann folgende Formel in einer anderen Zelle:
=LINKS(A1;AGGREGAT(15;6;ZEILE(A1:A9)/ISTZAHL(-TEIL(A1;ZEILE(A2:A9);1));1))&WIEDERHOLEN(0;9-LÄNGE(A1))&TEIL(A1;AGGREGAT(15;6;ZEILE(A1:A9)/ISTZAHL(-TEIL(A1;ZEILE(A1:A9);1));1);99)

Gruß Werner
.. , - ...
Anzeige
AW: ist mE zumindest nicht eindeutig ...
07.12.2023 19:43:43
Frank
Hallo Werner,

sorry das ist ein schneller Fehler mit dem xx oder yy -
das ist nur ein Bsp.

ist --> XXY9988
soll --> XXY000998

ist XX9999
soll xx0009999


ich brauch das ganze als VBA. mit Formeln kann ich da leider nicht arbeiten - Zusatzspalten kann ich auch leider nicht einfügen

Grüße
Frank
AW: VBA_Lösung gesucht, jedoch zuvor ...
07.12.2023 19:54:17
neopa C
Hallo Frank,

... solltest Du noch meine erste Fragestellung: "wieso wird in Deinem ersten Beispiel die letzte Ziffer der Ursprungszahl weggelassen?"
Dein Beispiel würde bedeuten, daß immer konstant drei 0en eingefüllt werden sollen und Du dann nach dem 9. Zeichen des Ergebnisdatenwertes die vorhandenen Zeichen ""weggedrückt" werden, oder?

Wie auch immer kläre das. Aber mit VBA beschäftige ich mich nicht. Es gibt genügend User, die Dir damit helfen können und wollen, aber diese müßten sicher auch wissen, was Du genau anstrebst.

Gruß Werner
.. , - ...
Anzeige
AW: VBA_Lösung gesucht, jedoch zuvor ...
07.12.2023 19:58:37
Frank
Hallo Werner

nicht immer konstant 3 Nullen

können auch 2 Nullen sein
es müssen nach den Buchstaben zu der 1. Zahl mit Nullen aufgefüllt werden bis exakt 9 Stellen sind

noch ein Beispiel

ist --> xx23
soll --> xx0000023


danke trotzdem
AW: klärt noch immer nicht eindeutig meine Frage, denn ...
07.12.2023 20:09:48
neopa C
Hallo Frank,

... meine eingestellte Formel berücksichtigt dynamisch genau das. D.h. sie gibt für "XXY9988" als Ergebnis "XXY009988". Sieh Dir noch einmal an, was Du dagegen als Ergebnis vorgegeben hast.

Gruß Werner
.. , - ...
AW: klärt noch immer nicht eindeutig meine Frage, denn ...
07.12.2023 20:18:10
Frank
Hey,

sorry- du hast natürlich recht.
ist mir gar nicht aufgefallen

XXY9988 --> XXY009988
RR25 --> RR0000025
XXY12365 --> XXY012365

9 Stellig
nach den Buchstaben mit Nullen auffüllen

sorry noch einmal für die Verwirrung


grüße

Anzeige
dann is ja erledicht und nich mehr offen...owT
07.12.2023 20:59:10
Oberschlumpf
AW: dann is ja erledicht und nich mehr offen...owT
07.12.2023 21:06:43
Frank
Hallo

warum erledigt

ich habe leider noch keine VBA Lösung gefunden!
nur eine Formellösung, die mir leider nicht hilft

ich brauch immer noch Hilfe für das Thema


grüße Frank
AW: dann is ja erledicht und nich mehr offen...owT
07.12.2023 21:31:25
Oberschlumpf
Hi Frank,

natürlich hast du recht!
...oo(Oberschlumpf, erst lesen, dann verstehen, dann - hier - nicht SO antworten wie vorher!)

Ok, Ulf hat ja schon ne VBA-Idee.

Aber ich hab auch noch eine...ich stand ja hier in der Pflicht!^^ :-)
https://www.herber.de/bbs/user/164931.xlsm

Hilft auch meine Idee?

Ciao
Thorsten
Anzeige
AW: dann is ja erledicht und nich mehr offen...owT
07.12.2023 21:55:37
Frank
Hallo,

danke dir

das hilft mir sehr sehr weiter


grüße
Frank
AW: dann is ja erledicht und nich mehr offen...owT
07.12.2023 22:15:04
Oberschlumpf
Hi,

bekommt denn Ulf auch ne Antwort? Er hatte ja auch "für dich gearbeitet".

Ciao
Thorsten
AW: klärt noch immer nicht eindeutig meine Frage, denn ...
07.12.2023 21:05:14
Ulf
Hi Frank,
~


Public Function generateNr(ByVal strIN As String) As String
Dim lngPos As Long
Dim lngLen As Long
Dim bIsValid As Boolean
Dim strLeft As String
Dim strRight As String
lngLen = Len(strIN)
lngPos = 1
Do Until bIsValid
'Länge prüfen mit lngLen usw...
bIsValid = IsNumeric(Mid$(strIN, lngPos))
If bIsValid Then
Exit Do
End If
lngPos = lngPos + 1
Loop
strLeft = Left$(strIN, lngPos - 1)
strRight = Mid$(strIN, lngPos)
If Len(strRight) + Len(strLeft) = 9 Then
generateNr = strLeft & String(9 - Len(strLeft) - Len(strRight), Asc("0")) & strRight
Else
generateNr = "N/A"
End If
End Function

hth
Ulf
Anzeige
AW: naja, "Recht" hatte nur meine Glaskugel ;-) owT
08.12.2023 11:08:16
neopa C
Gruß Werner
.. , - ...

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige