Telefonszámunk: 1-472-0679

[Resolved] Automatukus sorszám generálás

Kezdőlap Fórumok Excel programozás [Resolved] Automatukus sorszám generálás

Topic Resolution: Resolved

Ennek a témakörnek tartalma 13 hozzászólás, 3 résztvevő. Utolsó frissítés:  delila 1 hónap telt el a bejegyzés óta.

14 bejegyzés megtekintése - 1-14 / 14
  • Szerző
    Bejegyzés
  • #5385

    NIN
    Résztvevő

    Sziasztok!

    Egy újabb kérésem lenne. Régóta töröm a fejem,de csak kőkorszaki megoldásokat tudtam kitalálni rá és így sem tökéletesen működik.

    Problémám a következő:

    Van egy lenyíló listám, menyben “A” és “B” választható

    Amit szertenék:

    0001-9999 ig autómatikusan rendeljen hozzá a program egy soron követkető számot a választott betűhöz.

    Pl.

    A-0001
    A-0002
    B-0001
    A-0003
    B-0002

    ÉRzékelje a program, hogy eddig hány db “A”- t választottam és háhy db “B” -t
    Természetesen a Listából kiválasztott betűhöz rendelt számot egy különálló oszlopban jelenítse meg.

    Pl.:

    Ha a lista oszlopa “N” oszlop, akkor a betűhöz rendelt szám együtt az “M” oszlopba íródjon be. ( A-0001)

    Segítséget előre is köszönöm!

    Üdvözlettel NIN

    #5387

    delila
    Résztvevő

    Laphoz rendelt, eseményvezérelt makró.

    Private Sub Worksheet_Change(ByVal Target As Range)
        If Target.Column = 14 Then  'N oszlop
            Application.EnableEvents = False
            If Target = "A" Or Target = "B" Then Cells(Target.Row, "M") = Target & "-" & _
                Left("000" & Application.WorksheetFunction.CountA(Columns(13), Target & "*"), 4)
            Application.EnableEvents = True
        End If
    End Sub
    #5389

    NIN
    Résztvevő

    Köszönöm a segítséget!

    Működik! Annyi szépséghibával, hogy “A” és”B” ket folyamtosan sorszámozza.

    Tehát:

    A-0001
    A-0002 után , ha “B” jön a következő sorba, akkor

    Nem B-0001 et ír, hanem B-0003 at

    Lehetne egy olyan kérésem, hogy a program külön külön számoza “A” kat és “B” ket?

    Előre is köszönöm a segítséget!

    ÜDvözlettel NIN

    • A hozzászólás módosításra került: 1 hónap, 1 hét telt el a bejegyzés óta- NIN.
    #5393

    NIN
    Résztvevő

    ELNÉZÉST!

    Kérlek ezt az excelt nézd meg!

    Köszönöm!

    Attachments:
    You must be logged in to view attached files.
    #5397

    horvimi
    Kulcsmester

    Hali!

    Ehhez sem kell makró igazából.
    Csak egy képlet az M oszlopba, ami az első cellától az aktuális celláig megszámolja, hogy hány A vagy B van az N oszlopban és ebből gyártja a kódot.

    =N2&"-"&SZÖVEG(DARABTELI($N$2:N2;N2);"0000")

    Ha táblázattá alakítod, akkor a képletet magától ki fogja tölteni, ha egy új Betűt választasz az N oszlopban.

    Lásd csatolt fájl, amiben kikommenteztem a munkalap makrót.

    Imre

    Attachments:
    You must be logged in to view attached files.
    #5401

    NIN
    Résztvevő

    Sziasztok!

    Köszönöm a segítséget!

    Imre módszerénél maradok. Elképzelésem szerint működik!

    Delila! Köszönöm neked is!

    Üdvözlettel NIN

    #5403

    NIN
    Résztvevő

    Sziasztok!

    Nagyon köszönöm az eddigi segítséget!

    Lenne még egy kérdésem/kérésem! Remélme nem vagyok túl szemtelen!

    Problémám a következő:

    Tökéletesen generálja – számolja le az értékeket!
    Felmerült aza probléma, hogy mi van, ha a lsitán valaki visszamenőleg változtat az “A-O-K”-n
    Természetesen átírja az értékeket az egész táblában.

    Van valmi lehetőség, hogy ne lehessen módosítani – újra választani – az egyszer már kiválasztott “A-O-K”-n?

    fixálja adott cella értékét, zárólja esetleg írásvédetté tegye?
    Ebben kérnék segítséget!

    Előre is köszönöm!

    mellékeltem a munkafüzetet!

    Üdvözlettel NIN

    • A hozzászólás módosításra került: 1 hónap, 1 hét telt el a bejegyzés óta- NIN. Indok: Lemaradt melléklet
    Attachments:
    You must be logged in to view attached files.
    #5406

    horvimi
    Kulcsmester

    Az Excelben ugye lapvédelem van, ami a zárolt tulajdonságú cellákat védi, ha bekapcsoljuk a lapvédelmet.
    Ez egy meglehetősen összetett probléma, komolyan meg kellene tervezni, tesztelni, hogy a védelem mely oszlopokra terjedjen ki, és a többire ne.

    Majd eseménykezeléssel elvileg meg lehetne csinálni, hogy ha üresről változik valamire, azt vegye valódinak, és
    – oldja fel a lapvédelmet
    – zárolja a betűt és a generált kódot
    – tegye vissza a védelmet.

    Én erre most nem vállalkozom, bocsánat.

    #5407

    delila
    Résztvevő

    Arra gondoltam, hogy a Q oszlopnál a lapvédelem beállítása előtt engedélyezni kell az oszlop kitöltését (Cellaformázás, Védelem fül, Zárolás négyzet elől kivesszük a pipát). Ezután a laphoz rendelt makró elvégzi a kitöltött Q zárolását.

    Private Sub Worksheet_Change(ByVal Target As Range)
        If Target.Column = 17 And Target <> "" Then
            'Engedélyezi a lapon a módosítást a MAKRÓ SZÁMÁRA
            ActiveSheet.Protect Password:="SzupertitkosJelszo", UserInterfaceOnly:=True
            
            Range(Target.Address).Locked = True
        End If
    End Sub
    #5408

    NIN
    Résztvevő

    Köszönöm szépen mindenkinek a választ és segítséget!

    Delila megoldása tökéletesen működik!

    Lehetne egy olyan kérésem, ha nem túl bonyolult:

    csak a “Q” oszlopot zárolja és ott is csak azokat a cellákat ahol ki van választva “A” vagy “O”

    Ami még üres – még ki nem töltött cellák a “Q” oszlopban, az szerkeszthető legyen.

    Előre is köszönöm a segítséget!

    ÜDvözlettel: Norbert

    #5409

    NIN
    Résztvevő

    Tisztelt Delila!

    Próbáltam a “(Cellaformázás, Védelem fül, Zárolás négyzet elől kivesszük a pipát). Ezután a laphoz rendelt makró elvégzi a kitöltött Q zárolását.” javaslatot, de valamiért nem úgy működik, ahogy kellen.

    Kivettem a Zárolás elől a pipát! Sajnos még is az egész munkafüzetre érvényesíti a védelmet!

    Mellékelem a munkafüzetet!

    Jelszót “Alma” ra cseréltem és egy Ctrt+q makróval felhyorsítottam a jelszó megadást!

    Attachments:
    You must be logged in to view attached files.
    #5411

    delila
    Résztvevő

    A lapodon azoknak a celláknak a zárolását is fel kell oldanod a lapvédelem előtt, amikbe engedélyezni akarod a bevitelt. Ezek (most) a P:S tartomány, teljes oszlopok. Ha máshol is szeretnél adatbevitelt, azokat a tartományokat se zárold.

    #5412

    NIN
    Résztvevő

    Köszönöm!

    Nagyon lúzer hibát vétettem!

    Üdvözlettel, NIN

    • A hozzászólás módosításra került: 1 hónap telt el a bejegyzés óta- NIN.
    #5414

    delila
    Résztvevő

    Szívesen.
    Végül mégis összejött.

14 bejegyzés megtekintése - 1-14 / 14

Be kell jelentkezni a hozzászóláshoz.