Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Grafiken an bestimmter Stelle

Grafiken an bestimmter Stelle
14.08.2004 10:53:53
Werner
Hallo, da ich hoffe, dass mir auch diesmal schnell und kompetent geholfen wird, trage ich mal mein Problem vor:
Ich möchte in Abhängigkeit von einem Zellwert bestimmte Grafiken an bestimmten Stellen auf dem Tabellenblatt erscheinen lassen.
Beispiel:
J1 = 1, dann soll im Bereich A1:A3 Grafik 1 erscheinen
J1 = 2, dann soll im Bereich A1:A3 Grafik 2 erscheinen
K1 = 1, dann soll im Bereich B1:B3 Grafik 1 erscheinen
K1 = 2, dann soll im Bereich B1:B3 Grafik 2 erscheinen
L1 = 1, dann soll im Bereich C1:C3 Grafik 1 erscheinen
L1 = 2, dann soll im Bereich C1:C3 Grafik 2 erscheinen
Ist sowas möglich ? Besonders toll wäre es, wenn die Grafiken bei jedem Erscheinen um einen zufällig gewählten Winkel gedreht erscheinen würden.
Ich freue mich auf eure Antworten und danke schon jetzt herzlich dafür!!
Gruß aus Schleswig-Holstein
Werner
Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: Grafiken an bestimmter Stelle
K.Rola
Hallo,
die Frage kommt mir bekannt vor.
Grafik ist ein weitläufiger Begriff, um welche Art Grafik gehts denn? Nicht jede Grafik
läßt sich unter E97 drehen.
Wo kommen die Grafiken her, sind sie schon in der Datei oder müssen sie zur Laufzeit geladen werden?
Habe die Grafiken schon die Maße, dass sie in den Zellbereich passen oder sollen sie skaliert werden, ggf. um den Preis, dass die Proportionen nicht mehr stimmen?
Fragen über Fragen....
Gruß K.Rola
Anzeige
AW: Grafiken an bestimmter Stelle
Ramses
Hallo
hier mal ein Script.
Die Grafiken müssen im Namensfeld den Namen "Bild 1" und "Bild 2" haben.
Rotieren lässt sich die Grafik nicht, weil die Bildbereich beim drehen sonst über den zu positionierenden Bereich hinausragen, wenn die Grafik nicht skaliert wird.
Aber dieses Gimmick übersteigt den Aufwand hier im Forum.
Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
Dim sh1 As Shape, sh2 As Shape
Set sh1 = ActiveSheet.Shapes("Picture 1")
Set sh2 = ActiveSheet.Shapes("Picture 2")
Select Case Target.Address(False, False)
Case "J1", "K1", "L1"
ActiveSheet.Shapes("Picture 1").Visible = False
ActiveSheet.Shapes("Picture 2").Visible = False
Select Case Target.Address(False, False)
Case "J1"
If Target.Value = 1 Then
With sh1
.Visible = True
.Top = 0
.Left = 0
.Height = ([a1].RowHeight + [a2].RowHeight + [a3].RowHeight) * 5.67
.Width = [a1].ColumnWidth * 5.67
End With
End If
If Target.Value = 2 Then
With sh2
.Visible = True
.Top = 0
.Left = 0
.Height = ([a1].RowHeight + [a2].RowHeight + [a3].RowHeight) * 5.67
.Width = [a1].ColumnWidth * 5.67
End With
End If
Case "K1"
If Target.Value = 1 Then
With sh1
.Visible = True
.Top = 0
.Left = [a1].ColumnWidth * 5.67
.Height = ([a1].RowHeight + [a2].RowHeight + [a3].RowHeight) * 5.67
.Width = [a1].ColumnWidth * 5.67
End With
End If
If Target.Value = 2 Then
With sh2
.Visible = True
.Top = 0
.Left = [a1].ColumnWidth * 5.67
.Height = ([a1].RowHeight + [a2].RowHeight + [a3].RowHeight) * 5.67
.Width = [a1].ColumnWidth * 5.67
End With
End If
Case "L1"
If Target.Value = 1 Then
With sh1
.Visible = True
.Top = 0
.Left = ([a1].ColumnWidth + [B1].ColumnWidth) * 5.67
.Height = ([a1].RowHeight + [a2].RowHeight + [a3].RowHeight) * 5.67
.Width = [a1].ColumnWidth * 5.67
End With
End If
If Target.Value = 2 Then
With sh2
.Visible = True
.Top = 0
.Left = ([a1].ColumnWidth + [B1].ColumnWidth) * 5.67
.Height = ([a1].RowHeight + [a2].RowHeight + [a3].RowHeight) * 5.67
.Width = [a1].ColumnWidth * 5.67
End With
End If
End Select
End Select
End Sub

Gruss Rainer
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige