Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Markierten Bereich drucken

Markierten Bereich drucken
12.04.2005 15:48:25
abdi
Hallo Zusammen,
sorry, wenn ich das hier doppelt schreibe, aber wie kann ich Sachen im Archiv erneut aktivieren?
So...meine Frage.
Möchte die Makierte Zelle drucken.
Den Inhalt der nichtmarkierten Zellen löschen.
Die Zelle soll dort gedruckt werden, als würde man das ganze Blatt drucken (also, Drucken-Markierten Bereich über Kontext-Menü-Drucken geht nicht)
Hier habe ich in den FAQ ein Start gefunden, aber der funktioniert nicht.

Sub BereichDrucken()
Dim rng As Range
Application.ScreenUpdating = False
ActiveSheet.Copy
For Each rng In Range("A1").CurrentRegion
If rng.Interior.ColorIndex <> 6 Then 'Hier sollte stehen If rng."not"selectet (gibt´s sowas?)
rng.ClearContents
End If
Next rng
Cells.Borders.LineStyle = xlLineStyleNone
ActiveSheet.PrintPreview
ActiveWorkbook.Close savechanges:=False
Application.ScreenUpdating = True
End Sub

Nochmals sorry, das das Thema nun doppelt ist.
Kann mir jemand helfen.
Danke
Gruß Abdi

Anzeige

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Markierten Bereich drucken
12.04.2005 16:05:16
IngoG
Hallo Abdi
versuch mal
if intersect(rng, selection)=nothing then
Gruß Ingo
PS eine Rückmeldung wäre nett...
AW: Markierten Bereich drucken
12.04.2005 16:10:04
abdi
Hallo Ingo.
nop..."Unzulässige Verwendung eines Objekts" kommt als Fehlermeldung
AW: Markierten Bereich drucken
12.04.2005 16:59:51
IngoG
Hallo abdi,
kleiner fingerfehler es muß heißen "is nothing"
Gruß Ingo
also im ganzen satz:

Sub BereichDrucken()
Dim rng As Range
Application.ScreenUpdating = False
ActiveSheet.Copy
For Each rng In Range("A1").CurrentRegion
If rng.Interior.ColorIndex <> 6 Then
If Intersect(rng, Selection) Is Nothing Then rng.ClearContents
End If
Next rng
Cells.Borders.LineStyle = xlLineStyleNone
ActiveSheet.PrintPreview
ActiveWorkbook.Close savechanges:=False
Application.ScreenUpdating = True
End Sub

Anzeige
Nein...druckt leider gesamte Seite
12.04.2005 17:53:26
abdi
Hallo Ingo.
Wieder nicht. :-(
Dieses Ergebnis habe ich nun auf jegliche Weise schon erziehlt.
Es wird die ganze Seite gedruckt.
Vielleicht noch ´ne Idee?
Gruß Abdi
AW: Nein...druckt leider gesamte Seite
12.04.2005 18:12:56
ingoG
Hallo nochmal,
hast Du denn überprüft, welcher bereich mit Range("A1").CurrentRegion abgedeckt ist.
am einfachsten gehst Du mal mit F8 durch das macro und schaust, was im einzelnen passiert...
oder du stellst einfach mal eine Beispielmappe ins netz...
gruß Ingo
Anzeige
AW: Nein...druckt leider gesamte Seite
12.04.2005 21:29:45
abdi
Hallo Ingo,
werde morgen früh gleich die Datei hier einstellen.
Gruß Abdi
AW: Markierten Bereich drucken
13.04.2005 12:34:46
abdi
Hallo Zusammen.
Habe es nun wie folgt gemacht.
In Zelle A1 bis A5 steht was. Spalte B ist leer. In Zelle C1 bis C5 steht wieder etwas.
Bei Markieren der Zelle A3 wird diese gedruckt, genau dort, wo sie auf dem Blatt stehen würde, wenn man alles druckt.

Sub BereichDrucken()
Dim rng As Range
Dim wks As Worksheet
Application.ScreenUpdating = False
ActiveSheet.Copy after:=Worksheets(Worksheets.Count)
For Each rng In Range("B1").CurrentRegion.Cells
If Intersect(rng, Selection) Is Nothing Then
rng.ClearContents
End If
Next rng
ActiveSheet.PrintPreview
ActiveSheet.Delete 'savechanges:=False funktioniert leider nicht. Fehler "400"
Application.ScreenUpdating = True
End Sub

Das einzige was mir noch nicht so gefällt ist, das man "händisch" das Blatt welches kopiert wurde löschen muss. Das "savechanges:=False funzt net so.
Gruß Abdi
Anzeige
AW: Markierten Bereich drucken
13.04.2005 12:36:46
abdi
Hallo Zusammen.
Habe es nun wie folgt gemacht.
In Zelle A1 bis A5 steht was. Spalte B ist leer. In Zelle C1 bis C5 steht wieder etwas.
Bei Markieren der Zelle A3 wird diese gedruckt, genau dort, wo sie auf dem Blatt stehen würde, wenn man alles druckt.

Sub BereichDrucken()
Dim rng As Range
Dim wks As Worksheet
Application.ScreenUpdating = False
ActiveSheet.Copy after:=Worksheets(Worksheets.Count)
For Each rng In Range("B1").CurrentRegion.Cells
If Intersect(rng, Selection) Is Nothing Then
rng.ClearContents
End If
Next rng
ActiveSheet.PrintPreview
ActiveSheet.Delete 'savechanges:=False funktioniert leider nicht. Fehler "400"
Application.ScreenUpdating = True
End Sub

Das einzige was mir noch nicht so gefällt ist, das man "händisch" das Blatt welches kopiert wurde löschen muss. Das "savechanges:=False funzt net so.
Gruß Abdi
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige