Keresés

Új hozzászólás Aktív témák

  • Fferi50

    Topikgazda

    válasz KaliJoe #25126 üzenetére

    Szia!

    A konstansnak (állandónak) pont az a lényege, hogy egyszer definiálod "direkt" módon az értékét és az soha de soha nem változhat meg a programban. Ezért nem lehet semmilyen változó tartalomhoz kötni a meghatározását, mert akkor már a konstans jelleg nem áll fenn. A makróba be kell "égetni" az értéket, csak úgy tudod változtatni, ha átírod a makróban ezt az értéket.

    Ha tehát cella értékből akarod kivenni a "konstans" értékét, akkor azt csak változóba teheted bele, de ez a változó természetesen lehet az egész programra érvényes Global, vagy Public is és elég a program indulásakor értéket adni neki, többet nem kell vele foglalkoznod.

    Nézz rá helpben a változók deklarálására.

    Üdv.

  • Polllen

    nagyúr

    válasz KaliJoe #25126 üzenetére

    Mindig ugyanazt a sheet-t akarod kinyomtatni?

    Ez alapján, igen:
    ...
    Dim wsh_Űrlap As Variant

    wsh_Űrlap = Worksheets("Űrlap Nyomtatáshoz")
    ...
    If ActiveWindow.SelectedSheets.PrintPreview(wsh_Űrlap) = True Then
    Worksheets("Alapértékek").Select
    ActiveSheet.Unprotect
    Worksheets("Alapértékek").Cells(4, "J").Value = Worksheets("Űrlap Nyomtatáshoz").Cells(2, "M").Value + 1
    ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
    End If
    ...

    Próbáld meg ezt:
    Dim wsh_Urlap As String

    wsh_Urlap = "Űrlap Nyomtatáshoz"
    ...
    If Worksheets(wsh_Urlap).PrintPreview = True Then
    Worksheets("Alapértékek").Select
    ActiveSheet.Unprotect
    Worksheets("Alapértékek").Cells(4, "J").Value = Worksheets("Űrlap Nyomtatáshoz").Cells(2, "M").Value + 1
    ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
    End If

    Bár ha fix, változó sem kell.

Új hozzászólás Aktív témák

Hirdetés