Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Schaltfläche "Bild einfügen"
#11
Hi Andreas,

so:

Code:
Sub DialogZeigen()

    ActiveSheet.Unprotect
        Application.Dialogs(xlDialogInsertPicture).Show
        Selection.ShapeRange.Width = 85.0393700787
    ActiveSheet.Protect
End Sub

Falls du mit einem Passwort schützt, dann so:

Code:
Sub DialogZeigen()

    ActiveSheet.Unprotect Password:="xxxxxx"
        Application.Dialogs(xlDialogInsertPicture).Show
        Selection.ShapeRange.Width = 85.0393700787
    ActiveSheet.Unprotect Password:="xxxxxx"
End Sub

Anstelle der "x" trägst du dein PW ein.
Gruß Günter
Jeder Fehler erscheint unglaublich dumm, wenn andere ihn begehen.
angebl. von Georg Christoph Lichtenberg (1742-1799)
Antworten Top
#12
Hi,

(11.02.2015, 15:30)rosl77 schrieb: Ach, wieso kann ich denn hier jetzt keinen Screenshot einfügen!

sollst Du ja auch gar nicht, das bringt eh nix. Wenn Du uns Deine Tabelle zeigen willst, dann benutze einen der beiden Links, siehe die als Wichtige Themen markierten Forums-Beiträge!

Beitrag 1 >>>>>>>>>>>>>>> Arbeitsmappen im Forum zur Verfügung stellen
Beitrag 2 >>>>>>>>>>>>>>> Tabellenausschnitte im Forum einstellen
Antworten Top
#13
Hallo Andreas,

hier würde ein Hinweis auf den Fehler 1004 - Der Befehl kann nicht auf ein geschütztes Blatt angewendet werden ... reichen, da braucht es, wie Ralf schreibt, kein Bild.

Wenn Du mal eins einfügen willst - dazu braucht es eine Voraussetzung und zwei Schritte.
Voraussetzung:
Den großen Antworten-Button benutzen.
Schritte:
1. Datei anfügen /(unter dem Eingabefeld, erst Datei auswählen und dann Anhang anfügen)
2. Anhang in Beitrag einfügen
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Antworten Top
#14
Hallo Leute,

vielen Dank erstmal für eure Hilfe!

Günther:
Code:
Sub DialogZeigen()

ActiveSheet.Unprotect Password:="xxxxxx"
Application.Dialogs(xlDialogInsertPicture).Show
Selection.ShapeRange.Width = 85.0393700787
ActiveSheet.Unprotect Password:="xxxxxx"
End Sub

In der letzten Zeile habe ich "Unprotect" gegen "Protect" ausgetauscht, denn mit deinem Code war dann das ganze Arbeitsblatt ungeschützt.

Jetzt passt das alles - nur ein Problem bleibt. Das eingefügte Bild wird jetzt in der Tabelle plaziert, aber nicht an der Stelle wo der Button sitzt. Und durch den Blattschutz kann auch nichts mehr verschoben werden.

   

Also wie bekomme ich jetzt die Position hin?

Danke
Andreas
Antworten Top
#15
Hi,

(12.02.2015, 08:49)rosl77 schrieb: Application.Dialogs(xlDialogInsertPicture).Show

Jetzt passt das alles - nur ein Problem bleibt. Das eingefügte Bild wird jetzt in der Tabelle plaziert, aber nicht an der Stelle wo der Button sitzt. Und durch den Blattschutz kann auch nichts mehr verschoben werden.

dann mußt Du eine Zeile zwischen die Unprotect-Zeile und die oben zitierte einfügen mit:
Range("C5").Select
dann wird es in diese Zelle eingefügt (davon ausgehend, daß der Button in Zelle C5 ist).
Antworten Top
#16
Super, das funktioniert jetzt bestens!

O.k. - jetzt hab ich das Bild an der richtigen Stelle in der richtigen Größe und das Blatt ist weiterhin geschützt.
Einziges Problem - das Bild ist nicht anwählbar und der Menübutton "Rückgängig" ist nicht wählbar.

Wenn jetzt also der Benutzer irrtümlicherweise ein falsches Foto gewählt hat, dann bekommt er es nicht mehr raus.

Kann man das Blatt zwar schützen aber das Bild nicht?
Antworten Top
#17
Hi Andreas,

Zitat:In der letzten Zeile habe ich "Unprotect" gegen "Protect" ausgetauscht, denn mit deinem Code war dann das ganze Arbeitsblatt ungeschützt.

das war wohl ein Überbleibsel durch Copy & Paste. ;)
Gruß Günter
Jeder Fehler erscheint unglaublich dumm, wenn andere ihn begehen.
angebl. von Georg Christoph Lichtenberg (1742-1799)
Antworten Top
#18
(12.02.2015, 12:29)rosl77 schrieb: Kann man das Blatt zwar schützen aber das Bild nicht?

und wenn Du in der Bilder-Zelle in "Zellen formatieren..." im Reiter "Schutz" den Haken bei "geschützt" entfernst?
Antworten Top
#19
Hallo rosl,

wenn Du das Bild löschen willst, dann z.B. mit der Schutzoption
DrawingObjects:=False

Wenn Du ein Bid genau auf die Position des Buttons setzen willst, dann kannst Du auch selbige verwenden.
Hier mal ein Beispielcode, anhand Günters Vorlage ausgebaut. Den Name der Schaltflaeche musst Du anpassen.

Code:
Sub DialogZeigen()
'Makro zum Einfuegen eines Bildes ueber eine Schatflaeche.
'Hinweis_ Keine Fehlerbehandlung, wenn kein Bild ausgewaehlt wurde!
  'Blattschutz aufheben
  ActiveSheet.Unprotect 'Password:="xxxxxx"
  'Dialog zur Bildauswahl zeigen
  Application.Dialogs(xlDialogInsertPicture).Show
  'Mit dem mgewaehlten Bild
  With Selection.ShapeRange
    'Seitenverhaeltnis beibehalten aus
    .LockAspectRatio = False
    'Breite wie Commandbutton xx
    .Width = Me.OLEObjects("Commandbutton21").Width
    'Hoehe wie Commandbutton xx
    .Height = Me.OLEObjects("Commandbutton21").Height
    'Links wie Commandbutton xx
    .Left = Me.OLEObjects("Commandbutton21").Left
    'Oben wie Commandbutton xx
    .Top = Me.OLEObjects("Commandbutton21").Top
  'Ende Mit dem mgewaehlten Bild
  End With
  'Passwort setzen, Obekte bearbeitbar
  ActiveSheet.Protect DrawingObjects:=False 'Password:="xxxxxx"
End Sub
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste