Anzeige
Archiv - Navigation
856to860
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
856to860
856to860
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Fehler von heute auf morgen...

Fehler von heute auf morgen...
23.03.2007 15:31:39
heute
Hallo,
ich habe hier eine Excel-Datei, die u.a. mit folgendem Code automatisch Bilder einfügt, je nach eingegebener "ID". Die jeweilige Bildpfade + Namen werden in Zellen berechnet und diese an VBA übergeben (in Abhängigkeit von der in Zelle "B3" angegebenen ID...
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address "$B$3" Then Exit Sub
Dim objBild As Object
Dim i As Byte
Dim WS As Worksheet
Set WS = ThisWorkbook.Worksheets("Property Information")
Application.ScreenUpdating = False
On Error Resume Next
'BilderLöschen
For i = 4 To 7
WS.Pictures("Bild" & i).Delete
Next i
'BilderEinfügen
For i = 4 To 7
Set objBild = WS.Pictures.Insert(ThisWorkbook.Path & "\" & WS.Range("BC" & i).Value)
With objBild
.Top = WS.Range(WS.Range("BE" & i).Value).Top
.Left = WS.Range(WS.Range("BE" & i).Value).Left
'.Width = 350
.Width = WS.Range(WS.Range("BE" & i).Value & ":" & WS.Range("BF" & i).Value).Width
.Height = .Width * 3 / 4
.Name = ("Bild" & i)
End With
Next i
usw...
Bis heute hat das alles funktioniert. Folgendes war mir vorher nicht bewusst: Das Tabellenblatt ist sehr umfangreich mit unzähligen riesigen Formeln, d.h. es muss bei einer Änderung der ID in Zelle "B3" relativ lange kalkuliert werden. Bis heute hat die Datei jedoch zuerst kalkuliert und dann den VBA-Code ausgeführt, so dass die zuerst die Bildpfade + Name kalkuliert und dann erst die neuen Bilder eingefügt werden.
Seit eben macht er es jedoch (leider) anders herum: zuerst wird der VBA-Code ausgeführt, und dann erst kalkuliert, so dass bei Eingabe der ID nicht die "neuen" Bilder eingefügt werden, sondern die alten (der vorherigen ID)...
Wie kann das sein, dass sich dies automatisch geändert hat, und wie ändere ich dies wieder?
Gruß, Boris

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Fehler von heute auf morgen...
23.03.2007 15:43:10
heute
Hallo Boris,
die Anweisung
Me.Calculate
zu Beginn des Makros sollte für Abhilfe sorgen.
Gruß Ingolf
AW: Fehler von heute auf morgen...
23.03.2007 16:01:58
heute
Hi Ingolf,
du hast meinen Freitag gerettet, sehr cool. Und das beste: Die Datei besteht aus mehreren Sheets, auf denen wie wild kalkuliert wird, d.h. die Kalkulation bei Änderung der ID im oben beschriebenen Blatt hat immer ewig gedauert. Mit me.caclulate im Code kann ich nun in den Options die Kalkulation auf manual stellen, so daß er nur das gewünschte Blatt neu kalkuliert, was erheblich schneller ist...
Danke,
Boris
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige