Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
676to680
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
676to680
676to680
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Druckbereich per Makro festlegen?

Druckbereich per Makro festlegen?
06.10.2005 10:25:49
Alex
hi leute!
ich hab hier 'ne liste, in der ersten spalte steht das datum (tt.mm.jjjj)
ich hätt jetzt gern ein makro, das mir den druckbereich so festlegt, dass bspw. alle zeilen betreffend september (also xx.09.2005) gedruckt werden.
jmd. ideen?
thx, alex

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Druckbereich per Makro festlegen?
06.10.2005 10:30:02
Thomas
Moin!
Das denke ich sollte doch so aussehen oder nicht?
' Druckbereich angeben
Dim MySheet As Worksheet
Set MySheet = ActiveSheet
MySheet.Range("A1:H54").PrintOut Copies:=1, preview:=False, ActivePrinter:="Adobe PDF auf Ne05:", printtofile:=True, Collate:=True, prtofilename:=PSFileName
Ich hoffe es hilft weiter :-)
Gruß,
Thomas
AW: Druckbereich per Makro festlegen?
06.10.2005 10:33:07
Alex
danke schon mal, aber ich hab wohl was wesentliches vergessen! ;)
die september-einträge reichen ja nicht immer von 1-54 (bspw.)
das ist eben variabel. und dann will ich mal juli gedruckt haben, bzw. als nächstes halt oktober ....
d.h. das makro müsste schon selbst rausfinden, wie weit der september geht!
jetzt klarer?
lg, alex
Anzeige
AW: Druckbereich per Makro festlegen?
06.10.2005 10:36:23
René
Hi,
dann m,üsstest du eine Schleife einbauen, in der du die Range über den Zeilenindex herausbekommst und diesen index dann in die Range einbauen...
zusätzlich könntest du anhand einer userform auswählen, welchen sheet gedruckt werden soll, so als kleiner anreiz ;-)
lg René
AW: Druckbereich per Makro festlegen?
06.10.2005 10:42:30
Alex
ähhhmm ..... tja, danke ;)
wärst du so nett evtl. mal im groben den code zu beschreiben? im detail würd ich's dann wahrscheinlich schon selbst hinkriegen ...
wär echt super!
thx!
AW: Druckbereich per Makro festlegen?
06.10.2005 10:54:10
René
Re,
also am besten mit einer do while bzw until, da man nie weiß, ob jemand auch leerzeichen rein macht bzw gleich vorab die Frage... gib es zischendrinn leerzellen?

Sub endefinden ()
do while sheets(Name).cells(i, 4? [spalte wo immer was steht!!!]) <> ""
i = i + 1
wend
msgbox "letzte benutze Zeile ist Zeile " & i
'falls es nicht stimmt noch ein -->  i = i - 1
End Sub

somit hast du den index der letzten benutzen zeile und kannst ihn in die Range einbauen
Range("A1:H" & i). und dann der Rest des Codes den du schon hast ;-)
lg René
Anzeige
AW: Druckbereich per Makro festlegen?
06.10.2005 11:07:29
Alex
hi!
wenn ich den code richtig verstandne hab, ist mein problem immer noch nicht so recht rübergekommen! ;)
die tabelle sieht bspw. so aus:
14.09.2005 Dr. E
14.09.2005 Dr. S
31.08.2005 Schi
31.08.2005 Schi
31.08.2005 Schi
30.08.2005 Norbert
30.08.2005 Maria
30.08.2005 Gertraud
09.08.2005 Dr. Z
31.07.2005 Sch
31.07.2005 Sch
31.07.2005 Sch
sie KANN aber auch ganz anders aussehen, ok?
so, und NUN soll er mir alles drucken, was im august passiert is (btw: neue zeilen werden immer OBEN eingefügt)
alles klar?
AW: Druckbereich per Makro festlegen?
06.10.2005 11:15:47
René
nun ja, dann kannst du nachdem die schleife herausgefunden hat, wie groß die tabelle ist, abfragen, wo in spalte A (nehme an, dass da das datum komplett drinne steht) der gesuchte monat ist
also schleife bauen
for c = 1 to i (aus vorriger schleife)
if month(sheets(name).cells(c,1)) = varWann
'variable in der der monat steht, den du willst als zahl
if varanfang = 0 then then varAnfang = c
varende = c
end if
next
so nun teste das erstmal und gib dann feedback ;-)
lg René
Anzeige
AW: Druckbereich per Makro festlegen?
07.10.2005 10:15:01
Alex
hi rené!
danke für die mühen, aber ehrlich gesagt: ich steig nicht durch.
die abfrage, um wie viel zeilen es sich handelt, war kein großes problem (hat zwar nicht auf anhieb gefunzt, hab ich aber hinbekommen)
aber was du damit meinst:
also schleife bauen
for c = 1 to i (aus vorriger schleife)
if month(sheets(name).cells(c,1)) = varWann
'variable in der der monat steht, den du willst als zahl
if varanfang = 0 then then varAnfang = c
varende = c
end if
next
hab ich echt keine ahnung, sry. hab viel probiert, aber es kam nix brauchbares bei raus! ;)
vlt. evtl. nochmal kurz auf die sprünge helfen?
danke schon mal im voraus!
lg, Alex
Anzeige
AW: Druckbereich per Makro festlegen?
07.10.2005 10:22:20
René
Re,
also du fügst unter der schleife zum auszählen bis wohin diese schleife ein:
for c = 1 to i (aus vorriger schleife) 'der Wert ist i aus der 1. Schleife
if month(sheets("Name des betroffenen Scheets").cells(c,1)) = varWann
'varWann ist die variable in der der monat steht, den du willst als zahl
'z.B. du möchtest für August, dann musst du in varWann eine 8 zuweisen (varWann = 8)
if varanfang = 0 then then varAnfang = c
varende = c
end if
next
am ende der Schleife kannst du nun die Range bestimmen, die du drucken möchtest...
einfach Range("A" & varAnfang & ":D" & varEnde)
aber mal ne frage... wäre es nicht einfacher, einen Filter zu nehmen und am rechten rand der tabelle einfach eine hilfsspalte einsetzten, die den monat ausließt und du dann filterst und nur das ausdruckst, was du halt willst?
kannst du das workbook mal hochstellen?
dann zeig ich dir, was ich meine
lg René
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige