Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
740to744
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
740to744
740to744
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Selection.PrintObject

Selection.PrintObject
09.03.2006 12:49:39
Klaus
Moin,
ich verzweifel grad, ich stolper immer wieder über die .selects :(
Also, der Rekorder hat mir dies rausgeworfen:
ActiveSheet.Shapes("logo_r").Select
With Selection
.Placement = xlMoveAndSize
.PrintObject = False
End With
End Sub

Daraus habe ich zunächst mal das gefolgert:
ActiveSheet.Shapes("logo_r").PrintObject = False
Hat natürlich nicht funktioniert. Also hab ich recherchiert und zu einem ähnlichem Thema ("Shapes ohne Select beschriften") dies hier rausgefunden:
Dim objTb As Shape, strText As String
With ActiveSheet
Set objTb = .Shapes("E_3_m")
objTb.TextFrame.Characters.Text = "Mein Text"
End With

Daraus leite ich mit meinem beschränkten VBA Kentnissen ab:
Dim objTb As Shape
With ActiveSheet
Set objTb = .Shapes("logo_l")
objTb.PrintObject = False
End With

Nur leider ist es das wieder nicht :(
Wie krieg ich denn sonst das select weg?
Dank und Gruß,
Klaus M.vdT.
(ich hoffe ich war zumindest nah dran, sonst bin ich für heute total frustriert)

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

Betreff
Datum
Anwender
Anzeige
AW: Selection.PrintObject
09.03.2006 12:51:08
Dr.
Hi,

Sub test()
With ActiveSheet.Shapes("logo_r")
.Placement = xlMoveAndSize
.PrintObject = False
End With
End Sub

AW: Selection.PrintObject
09.03.2006 12:57:31
Klaus
Hi Dr.,
leider ist es eben nicht so einfach.
"Laufzeitfehler 438 Objekt unterstützt diese Eigenschaft oder Methode nicht"
Gruß,
Klaus M.vdT.
AW: Selection.PrintObject
09.03.2006 13:04:42
Dr.
Ok, dann so:

Sub test()
With ActiveSheet.OLEObjects(1)
.Placement = xlMoveAndSize
.PrintObject = True
End With
End Sub

... das tut leider gar nichts ...
09.03.2006 13:21:14
Klaus
Hallo Dr,
das funktioniert so weit, dass der Errorhandler nicht mehr auslöst. Leider macht es auch sonst nichts, oder nichts das ich sehe.
Müsste da nicht auch irgendwo "logo_l" im Code stehen? Und wer ist dieser Ole Object? :)
Gruß und Dank für die Mühe,
Klaus M.vdT.
Anzeige
AW: ... das tut leider gar nichts ...
09.03.2006 13:22:59
Dr.
Ich nehme mal an, dass das nur ein Codeausschnitt ist. Was soll er denn tun? Was für ein Objekt wird angesprochen? Ein Zeichnungsobjekt, ein Steuerelement?
Melde mich morgen wieder
09.03.2006 16:32:31
Klaus
Hallo Dr,
ich melde mich morgen nochmal - mein Chef ist mit Sonderaufgaben angekommen :( keine Zeit mehr zu programmieren
Gruß,
Klaus
wieder da ... mit komplettem Code
10.03.2006 09:26:01
Klaus
Moin,
ich möchte eine jpg (über Grafik einfügen in die Tabelle gebracht) ansprechen.
Vorweg stehen Autoform, die Shapes("E_3_l"). Diese wird mit dem Inhalt der Zelle H19 beschriftet. WENN in Zelle H19 eine 0 steht, soll die jpg, die .Shapes("logo_r") NICHT ausdruckbar sein (Zusammen mit der Änderung des Font.ColorIndex ist dann nur noch ein leeres Blatt im Druckbereich).
Die auskommentierten Zeilen funktionieren nicht, er springt beide male zum Errorhandler.
Das blöde ist ja, wenn ich es mit .select und .selection löse, funktioniert es einwandfrei .. aber dafür bin ich irgendwie zu dickköfpig :)
hier mein Code:
(in einem Modul:)


Sub ausrichten()
Dim objTb As Shape
Dim strText As String
Dim me2_3_l As Integer
Application.ScreenUpdating = False
On Error GoTo handler:
With ActiveSheet
me2_3_l = .Range("h19")
Set objTb = .Shapes("E_3_l")
objTb.TextFrame.Characters.Text = me2_3_l
.Range("a1:f18").Font.ColorIndex = 0
If me2_3_l = 0 Then .Range("a1:b18").Font.ColorIndex = 2
'***Versuch 1***
'Set objTb = .Shapes("logo_l")
'If me2_3_l = 0 Then objTb.PrintObject = False Else objTb.PrintObject = True
'***Versuch 2***
'If me2_3_l = 0 Then .Shapes("logo_r").PrintObject = False Else .Shapes("logo_r").PrintObject = true
End With
handler:
Application.ScreenUpdating = True
End Sub


mfg
Klaus M.vdT
Anzeige
AW: wieder da ... mit komplettem Code
10.03.2006 19:32:31
Leo
Hi,
Set objTb = .Shapes("logo_l")
If me2_3_l = 0 Then
objTb.OLEFormat.Object.PrintObject = False
Else
objTb.OLEFormat.Object.PrintObject = True
End If
mfg Leo

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige