1.6k Aufrufe
Gefragt in Tabellenkalkulation von benjaminm Mitglied (631 Punkte)
Hallo @ all,

ich habe das problem das meine diagramme in den Tabellen sich immer verschieben.Nun habe ich im Net gestöbert, da es von MS nicht vorgesehen ist diese Dinger zu verankern.

Da bin ich auf folgende Idee gestoßen, bekomme sie aber leider nicht umgesetzt.
Da brauch ich mal wieder eure Hilfe.

Der Code:
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
DiagramminUserForm
End Sub
Private Sub Workbook_SheetChange(ByVal Sh As Object, _
ByVal Target As Range)
DiagramminUserForm
End Sub
Sub DiagramminUserForm()
If ActiveSheet.ChartObjects.Count > 0 Then
Pfad = ThisWorkbook.Path & "\bild.gif"
ActiveSheet.ChartObjects(1).Chart.Export Pfad
UserForm1.Picture = LoadPicture(Pfad)
UserForm1.PictureSizeMode = fmPictureSizeModeStretch
Kill Pfad
If Not UserForm1.Visible Then
UserForm1.startupposition = 0
UserForm1.Top = 20
UserForm1.Left = 600
UserForm1.Show vbModeless
End If
Else
UserForm1.Hide
End If
End Sub


nun weiß ich nur nicht wo das Ding rein muss, ins jeweilige TB?
Oder in die UserForm selbst?
Muss ich dafür noch etwas an der Userform machen, oder reicht es ne leere UF anzulegen und das Fenster auf die gewünschte Göße zu ziehen?
Und zu guter Letzt, Wie wird die UF aktiviert?

Danke für eure hilfe.

Gruß Benjamin

3 Antworten

0 Punkte
Beantwortet von beverly Experte (3.5k Punkte)
Hi Benjamin,

ich würde nicht das UserForm selbst verwenden um das Diagramm-Bild reinzuladen, sondern ein Image auf dem UserForm. Dort hast du die Möglichkeit, das Bild flächenfüllend anzuzeigen. Dazu müsstest du diese beiden Zeilen ändern:

UserForm1.Image1.Picture = LoadPicture(Pfad)
UserForm1.Image1.PictureSizeMode = fmPictureSizeModeStretch

Kopiere den gesamten Code ins Codemodul DieseArbeitsmappe. Das UserForm wird immer dann gestartet, wenn du eine Eingabe im Tabellenblatt machst und wenn du das Tabellenblatt aktivierst.

Bis später,
Karin
0 Punkte
Beantwortet von benjaminm Mitglied (631 Punkte)
Hallo Karin,

Das hat hingehauen, danke!
Nur habe ich am anfang nicht bedacht das dass mit der UserForm tierisch nervt, da sie sich ja immer vor die Tabelle setzt.

Also es funktioniert ist aber unpraktisch und ich will es nun doch nicht verwenden.
Wir beide hatten schon in nem anderen Thread das Thema behandelt, nun muss ich wohl darauf zurück kommen. Ich muss irgendwie das Diagramm innerhalb einer Tabelle verankern, bekomme es aber nicht hin! Jedes mal wenn ich die Mappe neu öffne verschiebt sich das blöde Diagremm im Excel 2007!
Isch werd noch fuchsig....
Hast du noch mal ne Idee, kann man nicht irgend wie die Position des Diagrammes festsetzen?In etwa so wie die Position einer Userform?

Gruß benjamin
0 Punkte
Beantwortet von beverly Experte (3.5k Punkte)
Hi Benjamin,

es ist durchaus möglich, dass wir darüber schon mal in einem anderen Thread geschrieben haben - da ich jedoch zwischen 30 und 50 Beiträgen pro Tag in verschiedenen Foren schreibe, weiß ich leider nicht mehr, was ich dort bereits vorschlagen hatte und weshalb für dein Problem keine Lösung dabei war. Deshalb kann ich jetzt auch nicht sagen: versuche doch noch mal dieses.

Bis später,
Karin
...