8644
Sep 07, 2006, updated at Oct 08, 2008 (UTC)
43782
10
1
Mal schnell Etiketten bzw. Visitenkarten mit Excel
...da ich euch ja gerne an meinen Problemen teilhaben lasse!
Hallo Forum!
Ich bekam am Wochenende einen Anruf mit folgendem Inhalt:
"... ich hab mir bei (Supermarktkette) so'n paar Pakete mit gestanztem Papier gekauft, wo man so Adressetiketten drauf drucken kann! Jetzt hab ich mal den ganzen Kram drauf gedruckt, sieht aber S#####e aus! Nix passt! Will aber am Montag meine neuen krassen Visienkarten zeigen! Kannst du mir nicht helfen?"
Da hab ich gedacht, dass vielleicht noch mehr Leute das Problem haben und mal probiert, ob ich was basteln kann. Da ich immer noch die Meinung vertrete, dass man mit Excel fast alles machen kann, war das auch hier mein erster Anlaufpunkt. Herausgekommen ist eine Geschichte, mit der man mal schnell ein paar gestanzte Blätter konfigurieren, ausfüllen und drucken kann.
Los geht's:
Step 1:
Excel öffnen - wir benötigen 2 Tabellen. Da es meistens drei sind, kann man hier die dritte über das Kontextmenü (rechte Maustaste) löschen. Jetzt habe ich mir erlaubt, die verbliebenen zwei Tabellenblätter umzubenennen (was nicht zwingend nötig ist!) Auch das Umbenennen funktioniert über das Kontextmenü. Meine erste Tabelle heisst Konfiguration und die zweite habe ich Vorlage genannt.
Step 2:
Jetzt bereiten wir die Tabelle Vorlage vor (es folgt ein Screenshoot):
Hier werden später die entscheidenden Werte für die Druckerausgabe eingetragen. Also Lineal suchen und alle gefragten Sachen messen und eintragen. Wir arbeiten hier mit der Masseinheit Zentimeter mit Kommastellen.
Man beachte (falls man das irgendwann folgende Makro nicht modifizieren möchte!), dass alle Zellbezüge eingehalten werden! Um den Gnubbel, der mit "Einrichten" beschriftet ist, kümmern wir uns später. Ich hoffe, dass die Beschriftungen eindeutig sind! Falls nicht, fragt einfach noch mal!
Step 3:
Wir bringen das Makro in die Tabelle!
Folgende Schritte sind nötig:
Menü Extras -> Makro -> Makros
Im folgenden Dialog einen Namen vergeben - z.Bsp. Einrichten - und auf Erstellen klicken. Nun den folgenden (bereits kopierten) Code zwischen Sub wasauchimmer() und End Sub einfügen:
Der (evtl. unbekannte) VBA-Editor kann nun wieder geschlossen werden.
Step 4:
Wir erstellen einen Button!
Falls jemand seine Zeichnen-Symbolleiste sucht, die wir jetzt nämlich brauchen, findet er sie so: Rechte Maustaste auf die Symbolleiste (das Teil oben, mit den Bildchen) -> Häckchen bei Zeichnen setzen. Die Leiste erscheint in der Regel am unteren Bildrand.
In dieser Leiste klicken wir nun auf Autoformen -> Standardformen und suchen uns hier was passendes aus. Dieses Objekt platzieren wir nun an einer Stelle, die wir für gut halten. Um die Sache komfortabler zu gestalten, fügen wir diesem Objekt mittels Kontextmenü einen Text hinzu.
Wenn das alles geklappt hat, fehlt nur noch eine Kleinigkeit: das Makro muss zugewiesen werden! Rechte Maustaste auf das Objekt -> Makro zuweisen -> unser (das einzige) Makro auswählen -> OK -> Fertig!
Achso - der Button muss sich auf dem ersten Tabellenblatt befinden!
So, nun ist eigentlich nur noch probieren angesagt!
HTH Psycho
Hallo Forum!
Ich bekam am Wochenende einen Anruf mit folgendem Inhalt:
"... ich hab mir bei (Supermarktkette) so'n paar Pakete mit gestanztem Papier gekauft, wo man so Adressetiketten drauf drucken kann! Jetzt hab ich mal den ganzen Kram drauf gedruckt, sieht aber S#####e aus! Nix passt! Will aber am Montag meine neuen krassen Visienkarten zeigen! Kannst du mir nicht helfen?"
Da hab ich gedacht, dass vielleicht noch mehr Leute das Problem haben und mal probiert, ob ich was basteln kann. Da ich immer noch die Meinung vertrete, dass man mit Excel fast alles machen kann, war das auch hier mein erster Anlaufpunkt. Herausgekommen ist eine Geschichte, mit der man mal schnell ein paar gestanzte Blätter konfigurieren, ausfüllen und drucken kann.
Los geht's:
Step 1:
Excel öffnen - wir benötigen 2 Tabellen. Da es meistens drei sind, kann man hier die dritte über das Kontextmenü (rechte Maustaste) löschen. Jetzt habe ich mir erlaubt, die verbliebenen zwei Tabellenblätter umzubenennen (was nicht zwingend nötig ist!) Auch das Umbenennen funktioniert über das Kontextmenü. Meine erste Tabelle heisst Konfiguration und die zweite habe ich Vorlage genannt.
Step 2:
Jetzt bereiten wir die Tabelle Vorlage vor (es folgt ein Screenshoot):
Hier werden später die entscheidenden Werte für die Druckerausgabe eingetragen. Also Lineal suchen und alle gefragten Sachen messen und eintragen. Wir arbeiten hier mit der Masseinheit Zentimeter mit Kommastellen.
Man beachte (falls man das irgendwann folgende Makro nicht modifizieren möchte!), dass alle Zellbezüge eingehalten werden! Um den Gnubbel, der mit "Einrichten" beschriftet ist, kümmern wir uns später. Ich hoffe, dass die Beschriftungen eindeutig sind! Falls nicht, fragt einfach noch mal!
Step 3:
Wir bringen das Makro in die Tabelle!
Folgende Schritte sind nötig:
Menü Extras -> Makro -> Makros
Im folgenden Dialog einen Namen vergeben - z.Bsp. Einrichten - und auf Erstellen klicken. Nun den folgenden (bereits kopierten) Code zwischen Sub wasauchimmer() und End Sub einfügen:
Dim W_Anz As Integer
Dim H_Anz As Integer
Dim sHoehe As Single
Dim sHoehe1 As Single
Dim sBreite As Single
Dim sBreite1 As Single
Dim L_Margin As Single
Dim T_Margin As Single
W_Anz = Sheets(1).Range("B3").Value
H_Anz = Sheets(1).Range("B4").Value
Sheets(2).Select
Select Case W_Anz
Case 1
Range("A1").Select
Case 2
Range("A1,C1").Select
Case 3
Range("A1,C1,E1").Select
Case 4
Range("A1,C1,E1,G1").Select
Case 5
Range("A1,C1,E1,G1,I1").Select
End Select
sBreite = Sheets(1).Range("B5").Value
Selection.ColumnWidth = -0.71 + 5.1425 * sBreite
Select Case W_Anz
Case 2
Range("B1").Select
Case 3
Range("B1,D1").Select
Case 4
Range("B1,D1,F1").Select
Case 5
Range("B1,D1,F1,H1").Select
End Select
sBreite1 = Sheets(1).Range("D5").Value
If W_Anz > 1 Then Selection.ColumnWidth = -0.71 + 5.1425 * sBreite1
Select Case H_Anz
Case 1
Range("A1").Select
Case 2
Range("A1,A3").Select
Case 3
Range("A1,A3,A5").Select
Case 4
Range("A1,A3,A5,A7").Select
Case 5
Range("A1,A3,A5,A7,A9").Select
Case 6
Range("A1,A3,A5,A7,A9,A11").Select
Case 7
Range("A1,A3,A5,A7,A9,A11,A13").Select
Case 8
Range("A1,A3,A5,A7,A9,A11,A13,A15").Select
Case 9
Range("A1,A3,A5,A7,A9,A11,A13,A15,A17").Select
Case 10
Range("A1,A3,A5,A7,A9,A11,A13,A15,A17,A19").Select
Case 11
Range("A1,A3,A5,A7,A9,A11,A13,A15,A17,A19,A21").Select
Case 12
Range("A1,A3,A5,A7,A9,A11,A13,A15,A17,A19,A21,A23").Select
Case 13
Range("A1,A3,A5,A7,A9,A11,A13,A15,A17,A19,A21,A23,A25").Select
Case 14
Range("A1,A3,A5,A7,A9,A11,A13,A15,A17,A19,A21,A23,A25,A27").Select
Case 15
Range("A1,A3,A5,A7,A9,A11,A13,A15,A17,A19,A21,A23,A25,A27,A29").Select
End Select
sHoehe = Sheets(1).Range("B6").Value
Selection.RowHeight = sHoehe * 29.5
Select Case H_Anz
Case 2
Range("A2").Select
Case 3
Range("A2,A4").Select
Case 4
Range("A2,A4,A6").Select
Case 5
Range("A2,A4,A6,A8").Select
Case 6
Range("A2,A4,A6,A8,A10").Select
Case 7
Range("A2,A4,A6,A8,A10,A12").Select
Case 8
Range("A2,A4,A6,A8,A10,A12,A14").Select
Case 9
Range("A2,A4,A6,A8,A10,A12,A14,A16").Select
Case 10
Range("A2,A4,A6,A8,A10,A12,A14,A16,A18").Select
Case 11
Range("A2,A4,A6,A8,A10,A12,A14,A16,A18,A20").Select
Case 12
Range("A2,A4,A6,A8,A10,A12,A14,A16,A18,A20,A22").Select
Case 13
Range("A2,A4,A6,A8,A10,A12,A14,A16,A18,A20,A22,A24").Select
Case 14
Range("A2,A4,A6,A8,A10,A12,A14,A16,A18,A20,A22,A24,A26").Select
Case 15
Range("A2,A4,A6,A8,A10,A12,A14,A16,A18,A20,A22,A24,A26,A28").Select
End Select
sHoehe1 = Sheets(1).Range("D6").Value
Selection.RowHeight = sHoehe1 * 29.5
Range("A1").Select
L_Margin = Sheets(1).Range("B8").Value / 2.54
T_Margin = Sheets(1).Range("B7").Value / 2.54
With ActiveSheet.PageSetup
.PrintTitleRows = ""
.PrintTitleColumns = ""
End With
ActiveSheet.PageSetup.PrintArea = ""
With ActiveSheet.PageSetup
.LeftHeader = ""
.CenterHeader = ""
.RightHeader = ""
.LeftFooter = ""
.CenterFooter = ""
.RightFooter = ""
.LeftMargin = Application.InchesToPoints(L_Margin)
.RightMargin = Application.InchesToPoints(0.196850393700787)
.TopMargin = Application.InchesToPoints(T_Margin)
.BottomMargin = Application.InchesToPoints(0.196850393700787)
.HeaderMargin = Application.InchesToPoints(0)
.FooterMargin = Application.InchesToPoints(0)
.PrintHeadings = False
.PrintGridlines = False
.PrintComments = xlPrintNoComments
.CenterHorizontally = False
.CenterVertically = False
If Sheets(1).Range("B9").Value = "Hoch" Then .Orientation = xlPortrait Else .Orientation = xlLandscape
.Draft = False
.PaperSize = xlPaperA4
.FirstPageNumber = xlAutomatic
.Order = xlDownThenOver
.BlackAndWhite = False
.Zoom = 100
End With
Step 4:
Wir erstellen einen Button!
Falls jemand seine Zeichnen-Symbolleiste sucht, die wir jetzt nämlich brauchen, findet er sie so: Rechte Maustaste auf die Symbolleiste (das Teil oben, mit den Bildchen) -> Häckchen bei Zeichnen setzen. Die Leiste erscheint in der Regel am unteren Bildrand.
In dieser Leiste klicken wir nun auf Autoformen -> Standardformen und suchen uns hier was passendes aus. Dieses Objekt platzieren wir nun an einer Stelle, die wir für gut halten. Um die Sache komfortabler zu gestalten, fügen wir diesem Objekt mittels Kontextmenü einen Text hinzu.
Wenn das alles geklappt hat, fehlt nur noch eine Kleinigkeit: das Makro muss zugewiesen werden! Rechte Maustaste auf das Objekt -> Makro zuweisen -> unser (das einzige) Makro auswählen -> OK -> Fertig!
Achso - der Button muss sich auf dem ersten Tabellenblatt befinden!
So, nun ist eigentlich nur noch probieren angesagt!
HTH Psycho
Please also mark the comments that contributed to the solution of the article
Content-ID: 39626
Url: https://administrator.de/contentid/39626
Printed on: December 5, 2024 at 16:12 o'clock
10 Comments
Latest comment
Hi @ ALL
ich bräuchte eure Hilef zum obigen Makro.
Leider wird das Bild oben nicht mehr angezeigt. Jetzt wollte ich fragen ob Ihr mir rasch erklären könntet, was die einzellnen Variabeln (W_Anz, H_Anz, sHoehe, sHoehe1, sBreite, sBreite1, L_Margin, T_Margin) für eine Funktion haben.
Besten Dank
Greetz
Rino
ich bräuchte eure Hilef zum obigen Makro.
Leider wird das Bild oben nicht mehr angezeigt. Jetzt wollte ich fragen ob Ihr mir rasch erklären könntet, was die einzellnen Variabeln (W_Anz, H_Anz, sHoehe, sHoehe1, sBreite, sBreite1, L_Margin, T_Margin) für eine Funktion haben.
Besten Dank
Greetz
Rino
Hallo Psycho, ich habe deinen Post mit großem Intresse gelesen und mich damit versucht diese Datei zu erstellen. Was mir ein Rätsel ist, "Nun den folgenden (bereits kopierten) Code zwischen Sub wasauchimmer() und End Sub einfügen:". Ist das diese ellenlange oben aufgeführte Tabelle?
Also, ich habs eben ausprobiert, funktioniert einwandfrei, super
Danke für deine Hilfe
Also, ich habs eben ausprobiert, funktioniert einwandfrei, super
Danke für deine Hilfe