Telefonszámunk: 1-472-0679

[Resolved] Nyomtatás példányszám

Kezdőlap Fórumok Excel programozás [Resolved] Nyomtatás példányszám

Topic Resolution: Resolved

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

2 bejegyzés megtekintése - 1-2 / 2
  • Szerző
    Bejegyzés
  • #6689

    ngyrpd
    Felhasználó

    Sziasztok!

    Készítettem egy makrót címkék nyomtatásához. Az D oszlopban az üzlet száma/neve szerepel ami a címkén kell legyen, a E oszlopban pedig egy természetes egész szám ami a példányszámot jelöli.

    Így néz ki a makró:

    Sub Udskriv()
    '
    ' Udskriv Makro
    '
    
    '
        Range("D5").Select
        Selection.Copy
        Range("C3").Select
        Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
            :=False, Transpose:=False
        Range("A1:C4").Select
        Selection.PrintOut Copies:=Range("E5").Value, Collate:=True
        Range("D6").Select
        Application.CutCopyMode = False
        Selection.Copy
        Range("C3").Select
        Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
            :=False, Transpose:=False
        Range("A1:C4").Select
        Application.CutCopyMode = False
        Selection.PrintOut Copies:=Range("E6").Value, Collate:=True
    .
    .
    .
        Range("D34").Select
        Selection.Copy
        Range("C3").Select
        Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
            :=False, Transpose:=False
        Range("A1:C4").Select
        Selection.PrintOut Copies:=Range("E34").Value, Collate:=True
        Range("D35").Select
        Selection.Copy
        Range("C3").Select
        Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
            :=False, Transpose:=False
        Range("A1:C4").Select
        Selection.PrintOut Copies:=Range("E35").Value, Collate:=True
            
        End Sub

    Működik is a dolog egész addig, míg az E oszlopban 0-nál nagyobb szám szerepel, ellenkező esetben hiba lép fel. Hogyan tudnám ezt a hibát orvosolni?

    Elég kezdő vagyok excel-programozásban, ötletem van hogy mit lehetne csinálni, csak nem tudom megvalósítani(már ha működik az ötlet).
    Ha az első vizsgált cella, E5>0 akkor végrehajtja az első műveletet, ellenkező esetben ugrik a következő cellára (E6), és így tovább.

    • A témakör módosításra került: 1 hónap telt el- ngyrpd.
    • A témakör módosításra került: 4 hete telt el- horvimi.
    #6691

    delila
    Felhasználó

    Szia!

    Megállapítjuk, meddig kell másolni az adatokat. Ezt a D oszlop alsó sora mutatja. Egy For-Next ciklussal végig megyünk a D oszlop adatain, D5-től a D utolsó sorig. A mindenkori példányszámot az aktuális sor E oszlopa adja.

    Sub Udskriv()
        Dim sor As Long, usor As Long, peldany As Integer
        
        usor = Range("D" & Rows.Count).End(xlUp).Row 'alsó sor a D oszlopban
        For sor = 5 To usor
            Range("D" & sor).Copy Range("C3") 'aktuális üzletnév másolása D-ből a C3-ba
            peldany = Range("E" & sor)  'példányszám az akt. sor E oszlopából
            If peldany > 0 Then Range("A1:C4").PrintOut Copies:=peldany, Collate:=True
        Next
    End Sub
2 bejegyzés megtekintése - 1-2 / 2

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