Bitte an Martin Beck

Informationen und Beispiele zu den hier genannten Dialog-Elementen:
Label InputBox MsgBox


Excel-Version: 2000
nach unten

Betrifft: Bitte an Martin Beck
von: Bernd
Geschrieben am: 25.04.2002 - 10:07:52

Hi Martin,
ich habe gerade das von dir dankenswerterweise auf meinen Bedarf modifizierte Makro (siehe: Diagr.-Datenbeschr. autom. (Livia, Martin Beck) - Martin Beck 24.04.2002 - 12:24:03) in meine Datei hineinkopiert und das Makro laufen lassen. Leider bleibt es bei beiden Varianten (siehe Makros nachstehend) bei der Zeile: .HasDataLabel = True stehen. Wärst du so nett und würdest da mal d'rübersehen. Ich durchblicke es nicht.

Danke im voraus!!!

Nachstehend noch mal meine "Problemstellung" und die beiden Makros von Dir.
Was muss ich denn ändern, wenn meine Datentabelle "Overall_Project_Portfolio" heisst, die Startzelle B4 ist, die Endezelle B104 und mein Blasendiagramm auf dem Sheet "Diagramm1" steht? Ich habe die Anpassung versucht, leider bleibt das Makro immer bei "ActiveSheet.ChartObjects(1).Activate stehen .


Re: Diagr.-Datenbeschr. autom. (Livia, Martin Beck) - Martin Beck 24.04.2002 - 12:24:03 (0)
anbei 2 Varianten. Die erste ist exakt auf Dein Beispiel (Bezeichnungen in B4:B104) abgestellt und daher unflexibel, die zweite ist flexibel einsetzbar.

Sub Datenbeschriftung()
Worksheets("Overall_Project_Portfolio").Activate
For j = 4 To 104
With Charts("Diagramm1").SeriesCollection(1).Points(j - 4 + 1)
.HasDataLabel = True
.DataLabel.Text = Worksheets("Overall_Project_Portfolio").Cells(j, 2).Value
End With
Next j
End Sub


Sub Datenbeschriftung_flexibel()
Worksheets("Overall_Project_Portfolio").Activate
Startzelle = InputBox("Adresse der Startzelle eingeben, z.B. B4", "Startzelle", "B4")
Spalte = Range(Startzelle).Column
Startzeile = Range(Startzelle).Row
Endezeile = Range(Startzelle).End(xlDown).Row
ws = ActiveSheet.Name
For j = Startzeile To Endezeile
With Charts("Diagramm1").SeriesCollection(1).Points(j - Startzeile + 1)
.HasDataLabel = True
.DataLabel.Text = Worksheets(ws).Cells(j, Spalte).Value
End With
Next j
End Sub






nach oben   nach unten

Re: Beschriftung Bubblediagramm
von: Martin Beck
Geschrieben am: 25.04.2002 - 13:27:13

Hallo Bernd, tja, m.E. sind die Makros OK, sie wurden jedenfalls von mir erfolgreich getestet. Hast Du bei der Diagrammerstellung die Spaltenüberschriften "mitgenommen"? Dann trat bei mir das von Dir geschilderte Problem auf. Deine Beispieltabelle war: Name_ Proj._ ROI___ Score___NPV 1_____ A___ 1,42___ 220___ 120.000 2_____ B___ 3,15___ 275___ 605.779 3_____ C___ 4,15___ 300___ 800.000 4_____ D___ 5,25___ 350___ 900.000 5_____ E___ 1,25___ 100___ 100.000 Davon darfts Du bei der Diagrammerstellung nur diesen Bereich verwenden: 1,42___ 220___ 120.000 3,15___ 275___ 605.779 4,15___ 300___ 800.000 5,25___ 350___ 900.000 1,25___ 100___ 100.000 Gruß Martin Beck

nach oben   nach unten

Re: Beschriftung Bubblediagramm
von: Bernd
Geschrieben am: 25.04.2002 - 13:58:05

Hi Martin, Du hattest recht; das Makro läuft jetzt (flexibel). Was weiterhin nicht läuft und bei der Zeile " .HasDataLabel = True " stoppt ist das Makro "Sub Datenbeschriftung ()" - also das unflexible. Es wäre insofern gut, diese zum Laufen zu bringen, weil ich die Eingabe der Stratadresse B4 den Usern "in der Fläche" nicht zumuten kann, da sie dieses ja auch nicht wissen. Aber ungeachtet dessen bin ich dir sehr, sehr dankbar dafür, dass ich nun das Makro " Sub Datenbeschriftung_flexibel()" einsetzen kann!! Herzliche Grüße aus München Bernd

nach oben   nach unten

Re: Beschriftung Bubblediagramm
von: Martin Beck
Geschrieben am: 25.04.2002 - 15:25:39

Hallo Bernd, ich kann das Problem nicht nachvollziehen, bei mir läuft beides. Ersetze mal in dem flexiblen Makro die Zeile Startzelle = InputBox("Adresse der Startzelle eingeben, z.B. B4", "Startzelle", "B4") durch Startzelle = "B4" Dann braucht der User die Startzelle nicht manuell eingeben und das Makro ist nur eingeschränkt flexibel (oder unflexibel, wie man will ;-)). Gruß Martin Beck

nach oben   nach unten

Re: Beschriftung Bubblediagramm
von: Bernd
Geschrieben am: 25.04.2002 - 20:47:07

Hi Martin, lassen wir es einfach bei dem flexiblen Makro. Ich habe den Text der MsgBox ausgetauscht mit "Bitte Abfrage bestätigen" und das sollte auch der ungeübte User "im Feld" verstehen. Nochmals: meinen tiefen Dank. Dein Wissen würde ich gerne haben. Bernd

 nach oben

Beiträge aus den Excel-Beispielen zum Thema "Formel wenn Betrag zwischen"