Den sidste hjælp til VBA koder inden julefreden sænker sig.
I denne VBA kode som er herunder skal et navn tilpasses.Der er 4 knapper CommandButton1, CommandButton2, CommandButton3 og CommandButton4.
Det skal være sådan at navnet i celle A13 på det omtalte "Ark2" skal skifte efter hvilken CommandButton det trykkes på.
Hvis jeg trykker på CommandButton1 skal der stå "Pandrup" i celle A13, CommandButton2 skal der stå "Vejle" Commandbutton3 er "Avedøre" og Commandbutton4 er "Netto"
VBA koderne ligger på et andet ark end "Ark2" som er det ark der bliver udskrevet.
Er det noget der siger nogen noget??
******************************************************************
Const pkArk = "Ark2" 'ArkNavn på PAKKESEDDEL - ***** TILPASSES *****
Dim antalSedler60, antalSedlerX, antalX, ræk, brødType, modTager
Private Sub CommandButton1_Click() 'print 157
UdskrivPallesedler 6
End Sub
Private Sub CommandButton2_Click() 'print 102
UdskrivPallesedler 3 'START-KOLONNE (NUMERISK)
End Sub
Private Sub CommandButton3_Click() 'print 153
UdskrivPallesedler 9
End Sub
Private Sub CommandButton4_Click() 'print 109
UdskrivPallesedler 12
End Sub
Sub UdskrivPallesedler(kol1)
modTager = Cells(4, kol1)
For ræk = 113 To 126 Step 2
antalSedler60 = 0
antalSedlerX = 0
antalX = 0
If Cells(ræk, 1) <> "" Then
brødType = Cells(ræk, 1)
If Cells(ræk, kol1) <> "" And Cells(ræk, kol1) <> " " Then
antalSedler60 = Cells(ræk, kol1)
Else
antalSedler60 = 0
End If
If Cells(ræk, kol1 + 1) <> "" Then
If Cells(ræk, kol1 + 1) <> 0 Then
antalSedlerX = antalSedlerX + 1
antalX = Cells(ræk, kol1 + 1)
End If
End If
If antalSedler60 > 0 Then
tilPasPakkeseddel 60
udskrivSeddel antalSedler60
End If
If antalSedlerX > 0 Then
tilPasPakkeseddel antalX
udskrivSeddel antalSedlerX
End If
Else
MsgBox ("Udskrivning til: " + modTager + " er afsluttet")
Exit For
End If
Next ræk
End Sub
Private Sub udskrivSeddel(antalPkS)
Dim pk
Set pk = ActiveWorkbook.Sheets(pkArk)
pk.PrintOut Copies:=antalPkS, Collate:=True
'TEST
' pk.PrintOut Copies:=1, Collate:=True
End Sub
Private Sub tilPasPakkeseddel(antalKass)
Dim pk
Set pk = ActiveWorkbook.Sheets(pkArk)
With pk
.Cells(22, 1) = brødType
.Cells(30, 8) = antalKass
End With
End Sub