Avatar billede hunter41 Novice
29. april 2016 - 13:17 Der er 10 kommentarer og
1 løsning

makroer til fortløbende ordrenr

hej

jeg har de to nedenstående makroer, som laver fortløbende ordrenr i kolonne A mhh AMPRN og Mprn foran:

Sub AMPRN()
Dim rCelle As Range
Dim dNummer As Double

ActiveSheet.Unprotect "hunter55"
Set rCelle = Range(("A" & Rows.Count)).End(xlUp)
dNummer = Len(rCelle.Value) - 5
dNummer = CDbl(Right(rCelle.Value, dNummer))
dNummer = dNummer + 1
rCelle.Offset(1, 0).Font.Color = vbBlue
rCelle.Offset(1, 0).Value = "AMPRN0" & dNummer
Set rCelle = Nothing
ActiveSheet.Protect "hunter55"

End Sub

Sub MPRN()
Dim rCelle As Range
Dim dNummer As Double

ActiveSheet.Unprotect "hunter55"
Set rCelle = Range(("A" & Rows.Count)).End(xlUp)
dNummer = Len(rCelle.Value) - 5
dNummer = CDbl(Right(rCelle.Value, dNummer))
dNummer = dNummer + 1
rCelle.Offset(1, 0).Font.Color = vbRed
rCelle.Offset(1, 0).Value = "MPRN0" & dNummer
Set rCelle = Nothing
ActiveSheet.Protect "hunter55"

End Sub

Nu er det blevet ændret således at AMPRN har sit eget nr system..... er der en der kan tilrette makroen, så den læser i kolonne A og finder det sidst brugte nr med AMPRN foran også laver et nyt ordrenr
Avatar billede hunter41 Novice
29. april 2016 - 13:27 #1
det skal lige sige at sidste AMPRN nr er AMPRN0006, så der skal tages højde for cifrene
Avatar billede supertekst Ekspert
29. april 2016 - 13:46 #2
Suppler med:Sub findAmprNr()
Dim amprNr As String, antalRæk As Long, ræk As Long
    antalRæk = Cells(Rows.Count, "A").End(xlUp).Row
    For ræk = antalRæk To 1 Step -1
        If InStr(Range("A" & ræk), "AMPRN") > 0 Then
            amprNr = "AMPRN" & Format(Mid(Range("A" & ræk), 7) + 1, "0000")
            Exit Sub
        End If
    Next ræk
End Sub
Avatar billede hunter41 Novice
02. maj 2016 - 07:33 #3
supertekst

må indrømme at jeg ikke er nogen haj til det her.......hvorhen i makroen skal jeg sætte det ind ?
Avatar billede supertekst Ekspert
02. maj 2016 - 08:28 #4
Samme sted som den bestående kode, det er det jeg har testet med
Avatar billede hunter41 Novice
02. maj 2016 - 08:33 #5
skal jeg erstatte den med den gamle kode, altså slette den gamle og indsætte den her

spørger fordi at du siger at jeg skal supplere med din kode ?
Avatar billede supertekst Ekspert
02. maj 2016 - 08:47 #6
Jeg har ikke slettet den bestående kode, men indsat den nye i sin egen SUB
Avatar billede hunter41 Novice
02. maj 2016 - 09:19 #7
supertekst

den virker desværre ikke hos mig ......har sat den ind og prøvet at køre den
Avatar billede supertekst Ekspert
02. maj 2016 - 09:30 #8
Du er velkommen til at sende din fil - @-adresse under min profil
Avatar billede hunter41 Novice
02. maj 2016 - 09:49 #9
mail afsendt til supertekst
Avatar billede supertekst Ekspert
02. maj 2016 - 10:02 #10
Kode justeret:
Sub findAmprNr()
Dim amprNr As String, antalRæk As Long, ræk As Long
    antalRæk = Cells(Rows.Count, "A").End(xlUp).Row
    For ræk = antalRæk To 1 Step -1
        If InStr(Range("A" & ræk), "AMPRN") > 0 Then
            amprNr = "AMPRN" & Format(Mid(Range("A" & ræk), 7) + 1, "0000")
            Range("A" & antalRæk + 1) = amprNr      '<----- tilføjet
            Exit Sub
        End If
    Next ræk
End Sub
Avatar billede hunter41 Novice
03. maj 2016 - 09:21 #11
super arbejde af supertekst.........det fungerer bare så fint
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi har et stort udvalg af Excel kurser. Find lige det kursus der passer dig lige her.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester