Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1672to1676
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

einen Teilwert suchen und zum grössten +1 addieren

einen Teilwert suchen und zum grössten +1 addieren
04.02.2019 12:43:09
bhawener
Hallo zusammen,
Ich habe gerade ein Verständnisproblem und hierzu keine direkt passende Lösung gefunden.
Also ich generiere mir eine Art Projektnummer die besteht aus dem aktuellen Jahr (19), einer generierten Nummer, hier z.B. 2081 und einer fortlaufenden Nr. 001 bis 999.
Nun würde ich gerne mit VBA in dem Sheet Projektnummer die höchste Nr. mit 192081....
finden +1 addieren, um die neue Nummer dann in das entsprechende Sheet zu schreiben.
Danke für die Hilfe und dieses super Forum. Ich glaube meine gesammten VBA Kenntnisse habe ich mir durch dieses Forum angeeignet.

14
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: einen Teilwert suchen
04.02.2019 12:47:37
ede
Hallo,
versuch es doch einfach mit der funktion max().
gruss
ede
AW: einen Teilwert suchen
04.02.2019 12:53:48
bhawener
Danke für die schnelle Antwort, ede,
da es in dem Sheet auch andere Nummern gibt, wie z.B 192082...., 192085...., 195072...., usw.
laufe ich gerade gegen die Wand.
Ich bekomme diesen Anfangswert 192081 nicht mit der Funktion max() hin, wie gesagt ein Verständnisproblem.
AW: einen Teilwert suchen
04.02.2019 13:34:12
ede
Hallo nochmal,
dann hatte ich dich anfangs falsch verstanden, auf die schnelle einen lösungsansatz evtl. mit einer for-schleife:

Sub next_nummer()
projekt = 192081
wert = 0
For Z = 1 To 99
hwert = Round(Cells(Z, 1) / 1000, 0)
If hwert = projekt Then
If wert 

Schau mal ob dir das weiter hilft.
ede
Anzeige
AW: einen Teilwert suchen
04.02.2019 19:09:45
bhawener
Hallo ede,
ich bekomme bei der Zeile "hwert = Round(Cells(Z, 1) / 1000, 0)"
einen Laufzeitfehler 13
AW: einen Teilwert suchen
05.02.2019 02:26:45
Piet
Hallo
dann probiere es bitte mal so, der Code ist ungetestet. Würde mich freuen wenn es klappt!
mfg Piet
Sub next_nummer()
projekt = 192081
Wert = 0
For z = 1 To 99
If Left(Cells(z, 1), Len(projekt)) = projekt Then
If Wert 

AW: einen Teilwert suchen
05.02.2019 07:00:47
ede
Guten Morgen,
du musst natürlich den Bereich deiner bereits vergebenen Projektnummer anpassen und in diesem sollten auch nur Zahlen stehen (kein Text). Im Beispielcode wird im Bereich A1:A99 gesucht und Zahlen erwartet. Eine Beispieldatei wäre angebracht, dann könnte man es auch besser nachvollziehen.
Gruss
ede
Anzeige
AW: einen Teilwert suchen
05.02.2019 09:27:48
bhawener
Guten Morgen,
ja ich stand auf dem Schlauch, A1 ist eine Überschrift.
Leider funktioniert der File-Upload gerade nicht.
deshalb hier die Spalte A:
"belegte
Projektnummer"
19080001
1920810001
1920810002
1920810003
1920810004
1950810001
1950810002
1950810003
1950810004
Wie gesagt, möchte ich die höchste Projektnummer z.B. für 192081.... (hier wäre es ...0004) finden und eine neue mit "...005" generieren.
AW: einen Teilwert suchen
05.02.2019 09:41:32
ede
hallo,
ist die fortlaufenden Nr. nun drei- oder vierstellig? (001 bis 999)
ede
AW: einen Teilwert suchen
05.02.2019 09:43:00
bhawener
eigentlich egal, habe mich verschrieben, 3 Stellig reicht
Anzeige
AW: einen Teilwert suchen
05.02.2019 09:49:06
ede
anbei mal eine Beispieldatei mit einer eigenen Funktion. In Spalte A stehen deine bereits vergeben Projektnummern, in B2 die Nummer zum Hauptprojekt (ohne die dreistellige Folgenummern) und in C2 wird per Formel die nächste freie ermittelt.
https://www.herber.de/bbs/user/127427.xlsm
gruss
ede
AW: einen Teilwert suchen
05.02.2019 09:50:46
bhawener
Vielen Dank für die Hilfe, damit kann ich arbeiten
AW: einen Teilwert suchen
05.02.2019 09:59:45
bhawener
Nochmal ich,
jetzt auch mit Makro, für alle die ähnliches brauchen:
Sub next_nummer()
projekt = Range("Suchtext").Value
nzeile = Tabelle1.Cells(Rows.Count, 1).End(xlUp).Row
nzeile = nzeile + 1
Wert = 0
For Z = 2 To 99
hwert = Round(Cells(Z, 1) / 1000, 0)
If hwert = projekt Then
If Wert 

Anzeige
AW: einen Teilwert suchen
05.02.2019 10:08:54
hary
Moin
Einen hab ich noch.Ohne Schleife. Statt Inputbox kannst du auch eine Zelle nehmen.
Sub neueNummer()
Dim rngFind As Range
Dim strTitel As String
Dim firstAddress As String
Dim hoch As Long
strTitel = InputBox("Suche nach:", "Suchbegriff eingeben")
If strTitel = "" Then Exit Sub
With Columns(1)
Set rngFind = .Find(strTitel & "*", LookIn:=xlFormulas)
If Not rngFind Is Nothing Then
firstAddress = rngFind.Address
Do
If rngFind > hoch Then hoch = rngFind
Set rngFind = .FindNext(rngFind)
Loop While rngFind.Address  firstAddress
End If
End With
MsgBox hoch + 1
End Sub

gruss hary
Anzeige
AW: einen Teilwert suchen
05.02.2019 12:01:48
bhawener
Hallo Hary,
besser geht halt immer, danke ich habe wieder was gelernt.

307 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige