Telefonszámunk: 1-472-0679

[Resolved] Nyomtatás

Kezdőlap Fórumok Excel témák [Resolved] Nyomtatás

Topic Resolution: Not Resolved
8 bejegyzés megtekintése - 1-8 / 8
  • Szerző
    Bejegyzés
  • #6339
    ngyrpd
    Felhasználó

      Sziasztok!

      Számomra egy komplex feladatról lenne szó, amiben remélem tudtok segíteni, útmutatást nyújtani. Adott az alábbi munkafüzet. Az első munkalapon az A oszlopban üzlet számok(nevek) találhatóak, a B oszlopban pedig az a mennyiség amennyi darabot kellene kinyomtatni az adott üzletnek a Munkalap 3-ból. A Munkalap1-ben az A oszlop állandó míg a B oszlop értékei napról-napra változnak. A Munkalap2-ben pedig A oszlop szintén az üzlet száma(neve) illetve a B oszlopban a hozzájuk tartozó kimenő sor/kapu található, jó lenne ha a Munkalap3-ba ha beírom az üzletszámát automatikusan megjelenne a kimenősor.
      Jelenleg úgy zajlik a nyomtatás hogy a Munkalap3-ba beírom az adatokat az adott üzletnek, majd kiadom a nyomtatás parancsot, majd következik a következő üzlet, összesen 30 és van hogy egy nap 2x, 3x meg kell ezt ismételni, ezt a folyamatot szeretném felgyorsítani.
      Ha valaki csak azzal is tudna segíteni hogy milyen kulcsszavakra keressek rá az is nagy segítség lenne, angol anyagok is jók. Köszönöm előre is a segítséget.

      Attachments:
      You must be logged in to view attached files.
      #6341
      Titok
      Felhasználó

        Csináltam egy egyszerű makrót.
        Ha anyomtatás nem menne, akkor rögzíts egy nyomtatást, a példányt írd át pld-nek, és menni fog.
        Nem engedi feltölteni.
        Bemásolom ide akkor:

        Sub Makró1()

        ‘ Makró1 Makró


        Sheets(„Munka1”).Select

        utolso = Cells(Rows.Count, „A”).End(xlUp).Row

        For i = 2 To utolso

        Sheets(„Munka1”).Select
        uz = Cells(i, 1).Value
        pld = Cells(i, 2).Value
        Sheets(„Munka3”).Select
        Cells(3, 4).Value = uz

        Application.PrintCommunication = False
        With ActiveSheet.PageSetup
        .PrintTitleRows = „”
        .PrintTitleColumns = „”
        End With
        Application.PrintCommunication = True
        ActiveSheet.PageSetup.PrintArea = „”
        Application.PrintCommunication = False
        With ActiveSheet.PageSetup
        .LeftHeader = „”
        .CenterHeader = „”
        .RightHeader = „”
        .LeftFooter = „”
        .CenterFooter = „”
        .RightFooter = „”
        .LeftMargin = Application.InchesToPoints(0.708661417322835)
        .RightMargin = Application.InchesToPoints(0.708661417322835)
        .TopMargin = Application.InchesToPoints(0.748031496062992)
        .BottomMargin = Application.InchesToPoints(0.748031496062992)
        .HeaderMargin = Application.InchesToPoints(0.31496062992126)
        .FooterMargin = Application.InchesToPoints(0.31496062992126)
        .PrintHeadings = False
        .PrintGridlines = False
        .PrintComments = xlPrintNoComments
        .CenterHorizontally = False
        .CenterVertically = False
        .Orientation = xlLandscape
        .Draft = False
        .PaperSize = xlPaperA4
        .FirstPageNumber = xlAutomatic
        .Order = xlDownThenOver
        .BlackAndWhite = False
        .Zoom = False
        .FitToPagesWide = 1
        .FitToPagesTall = 1
        .PrintErrors = xlPrintErrorsDisplayed
        .OddAndEvenPagesHeaderFooter = False
        .DifferentFirstPageHeaderFooter = False
        .ScaleWithDocHeaderFooter = True
        .AlignMarginsHeaderFooter = True
        .EvenPage.LeftHeader.Text = „”
        .EvenPage.CenterHeader.Text = „”
        .EvenPage.RightHeader.Text = „”
        .EvenPage.LeftFooter.Text = „”
        .EvenPage.CenterFooter.Text = „”
        .EvenPage.RightFooter.Text = „”
        .FirstPage.LeftHeader.Text = „”
        .FirstPage.CenterHeader.Text = „”
        .FirstPage.RightHeader.Text = „”
        .FirstPage.LeftFooter.Text = „”
        .FirstPage.CenterFooter.Text = „”
        .FirstPage.RightFooter.Text = „”
        End With
        ‘pld a példányszám
        Application.PrintCommunication = True
        ActiveWindow.SelectedSheets.PrintOut Copies:=pld, Collate:=True, _
        IgnorePrintAreas:=False

        Next i

        End Sub

        Attachments:
        You must be logged in to view attached files.
        #6343
        delila
        Felhasználó

          Nem volt nekem teljesen tiszta, mit is akarsz elérni. Úgy látom, címkéket szeretnél nyomtani, mindegyiket a Munka1 lap B oszlopában meghatározott darabszámmal.
          Csatolok egy füzetet. A Nyomtatandó lapra tettem egy gombot, ami indítja a nyomtatást. Sorra veszi az üzleteket, összeállítja a címkéket, és kinyomtatja a megadott példányszámmal. Van ahol többet 1-2 darabbal, ami osztható maradék nélkül 3-mal. Pl. a 16 db helyett 18 címkéd lesz.
          Ha csak 1-1 kiválasztott üzlethez nyomtatnál, nem az összeshez, akkor módosítom a makrót.

          #6344
          ngyrpd
          Felhasználó

            Kedves Titok!

            Köszi a makrót! Kipróbáltam, de úgy látom, hogy minden üzlethez csak egy címkét nyomtat, igaz hogy valójában nem nyomtattam ki, csak lecsatlakoztam a nyomtatóról és kiadtam a parancsot. Csatolok egy képet amin láthatod mire gondolok.

            Attachments:
            You must be logged in to view attached files.
            #6346
            Titok
            Felhasználó

              Szia!

              Lehet, hogy a nyomtatás részét át kell írni a saját nyomtatódra.
              Írtam is, hogy a pld-t ne felejtsd átírni, ha kell.
              Mentsd le a fájlt csak 2 boltra, és 2 ill. 3 példányra, ez 5 oldal. Ha jó, akkor fog menni másképpen is.
              Felmerült, depiroslila részéről hogy véletlenül nem Címkét akarsz nyomtatni?

              #6347
              ngyrpd
              Felhasználó

                Kedves Delila!

                Igen jól gondolod pontosan ezt szeretném, de nem találom a csatolt fájlt, el tudnád küldeni újra?

                #6348
                delila
                Felhasználó

                  Újabban a data.hu sem fogadja az xlsm kiterjesztésű fájlokat. Bemásolom ide a makróját.

                  Sub Nyomtatas()
                      Dim uzlet, sor As Integer, db, kimeno As String, x As Integer, oszlop As Integer
                      Dim hol, szam As Integer, ide As Integer
                      
                      Sheets("Nyomtatandó").Select
                      
                      sor = 2
                      Do While Sheets("Munka1").Cells(sor, "A") <> ""
                          Range("A:C").ClearContents
                          uzlet = Sheets("Munka1").Cells(sor, "A")
                          hol = Application.Match(uzlet, Sheets("Munka2").Columns(1), 0)
                          kimeno = Sheets("Munka2").Cells(hol, 2)
                          If Sheets("Munka1").Cells(sor, "B") <> "" Then
                              hol = Application.Match(uzlet, Sheets("Munka1").Columns(1), 0)
                              db = Application.WorksheetFunction.RoundUp(Sheets("Munka1").Cells(hol, 2) / 3, 0)
                              szam = 1: ide = 1
                              Do While szam <= db
                                  For oszlop = 1 To 3
                                      Cells(ide, oszlop) = "Üzlet száma: " & uzlet & vbLf & "Kimenő sor: " & kimeno _
                                          & vbLf & Format(Date, "yyyy.mm.dd")
                                  Next
                                  ide = ide + 1
                                  szam = szam + 1
                              Loop
                                  
                              Range("A1").CurrentRegion.Select
                              ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
                  
                          End If
                          sor = sor + 1
                      Loop
                  End Sub
                  • A hozzászólás módosításra került: 4 years, 5 months telt el-delila.
                  #6669
                  ngyrpd
                  Felhasználó

                    Sziasztok! Sikerült megoldanom a problémát a következő makróval:

                    Sub Nyomtatas()

                    ‘ Nyomtatas Makró


                    Range(„D4”).Select
                    Selection.Copy
                    Range(„C3”).Select
                    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
                    :=False, Transpose:=False
                    ActiveWindow.SelectedSheets.PrintOut Copies:=Range(„E4”).Value, Collate:=True, _
                    IgnorePrintAreas:=False
                    Range(„D5”).Select
                    Application.CutCopyMode = False
                    Selection.Copy
                    Range(„C3”).Select
                    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
                    :=False, Transpose:=False
                    ActiveWindow.SelectedSheets.PrintOut Copies:=Range(„E5”).Value, Collate:=True, _
                    IgnorePrintAreas:=False
                    Range(„D6”).Select
                    Application.CutCopyMode = False
                    Selection.Copy
                    Range(„C3”).Select
                    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
                    :=False, Transpose:=False
                    ActiveWindow.SelectedSheets.PrintOut Copies:=Range(„E6”).Value, Collate:=True, _
                    IgnorePrintAreas:=False
                    End Sub

                    A fenti makróban 3szor van kiadva a nyomtatás parancs de az eredetiben nagyjából 500szor kellene. A problémám az, hogy ha a cella értéke aminek az értéke adja a példányszámot (Copies:=Range(„E6”).Value) = 0-val akkor nem fut végig a makro. Valakinek van ötlete arra, hogy hogyan lehetne ezt kiküszöbölni?

                  8 bejegyzés megtekintése - 1-8 / 8
                  • Be kell jelentkezni a hozzászóláshoz.