Live-Forum - Die aktuellen Beiträge
Datum
Titel
23.04.2024 14:59:21
23.04.2024 14:47:39
23.04.2024 14:23:45
Anzeige
Archiv - Navigation
816to820
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
816to820
816to820
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Fehler in Formel

Fehler in Formel
13.11.2006 10:15:04
Uwe
Guten Morgen an Alle,
folgende Formel benutzte ich für ein Image auf einem Tabellenblatt zu füllen.

Private Sub Worksheet_Change(ByVal Target As Range)
Application.EnableEvents = False
Dim rngUCase As Range
Set rngUCase = Union(Range("E4:Q63"), Range("B82:P110"))
If Not Intersect(Target, rngUCase) Is Nothing Then
Set Target = Intersect(Target, rngUCase)
Target.Cells(1) = UCase(Target.Cells(1))
End If
If Target.Address = "$E$17" And Target(1).Value <> "" Then
Call WordDokumentEinbetten(Target.Value)
End If
Application.EnableEvents = True
'Sheets(1).Image1.Picture = LoadPicture("C:\BILDER\" & Sheets(1).Cells(800, 3) & ".jpg")
End Sub

...Zelle C800 beinhaltet auch eine Formel.
Soweit bekomm ich das Bild ins Image rein wenn C800 der Bildname drin ist.
Lösche ich jedoch mit einem Button A800 dann bekomm ich den Debugfehler in der Image1 Zeile angezeigt. In C800 steht"=TEIL(B800;21;9)" drin.
Zusätzlich fällt mir auf das die einmal geladenen Bilder in den Image stehen bleiben. Also schön wäre es wenn man beim löschen der Zellen mit dem Button auch die Imageinhalte löschen könnte.
Ber Löschbutton hat folgenden Code...

Private Sub CommandButton22_Click()
With Range("A800:A819")
.ClearContents
'.ClearFormats
'.ClearComments
'.ClearNotes
'.ClearOutline
'.Borders.LineStyle = xlNone
End With
End Sub

vielleicht ist das auch noch wichtig... in A800 steht der Pfad von dem ausgewählen Bild.
Hoffe das ist einigermaßen verständlich. Vieleicht muß man irgendwo einen Löschbefehl für den Imageinhalt einfügen.
Hab da schon einiges aus der Recherche versucht. Hat aber nix geholfen.
Vorab schon mal Dank an Euch.
Gruß Uwe

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Fehler in Formel
13.11.2006 13:17:41
Stefan
Hallo Uwe,
Was wohl auch noch wichtig waere: was steht denn in B800?
Schoene Gruesse
Stefan
noch offen...
13.11.2006 13:18:41
Stefan
AW: noch offen...
13.11.2006 13:32:59
Uwe
Hallo Stefan,
ja das stimmt.....
also in B800 steht=WECHSELN(LINKS(A800;LÄNGE(A800)-4);" ";"")
Gruß Uwe
AW: noch offen...
13.11.2006 14:21:15
Stefan
Hallo Uwe,
Wenn Du A800 loescht, B800 wird zu "", C800 wird zu "", und das Makro versucht ein Bild "C:\BILDER\.jpg" zu laden.
Deshalb solltest Du entweder
- dafuer sorgen dass IMMER ein vernueftiger Wert in A800 steht,
- festlegen was passieren soll wenn KEIN vernueftiger Wert in C800 steht,
- nicht das Worksheet_Change Ereignis nutzen um das Bild zu laden
- oder das Worksheet_Change Ereignis nicht auf Aenderungen in der Spalte A reagieren lassen.
Dein Code koennte z.B. so aussehen:

Application.EnableEvents = True
If Sheets(1).Cells(800,3)="" Then
Sheets(1).Image1.Picture = Nothing
Else Sheets(1).Image1.Picture = LoadPicture("C:\BILDER\" & Sheets(1).Cells(800, 3) & ".jpg")
End If

Schoene Gruesse
Stefan
Anzeige
so läufts Klasse
13.11.2006 19:05:32
Uwe
Hallo Stefan,
hab ein wenig angepasst und nun läufts ohne Fehler.
Nochmals vielen Dank.
Gruß Uwe

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige