Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1300to1304
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
X-Achse an Werte anpassen
06.03.2013 15:08:17
jana
Hallo zusammen,
ich habe ein Problem mit einem xy-Säulendiagramm. Da sich die Werte, die in dem Diagramm ausgegeben werden ändern können, möcht ich,dass sich die X-Achse den Werten anpasst. Hier ist ein Beispiel:
https://www.herber.de/bbs/user/84223.xlsx
Nun möchte ich, dass das Diagramm in diesem Fall auf der X-Achse nur von c bis f geht, da die retlichen Werte Null sind.
Gibt es hierfür einen code für vba?
LG Jana Eule

18
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: X-Achse an Werte anpassen
06.03.2013 15:53:11
Daniel
Hi
du könntest beispielsweise die Datentabelle mit dem Autofilter nach "ungleich 0" in der Spalte B filtern.
normalerweise werden in Diagrammen nur die sichtbaren Werte der Datentabelle angezeigt.
als MakroCode dann:
cells(1,1).Autofilter field:=2, criteria1:="0"

du solltest allerdings deiner Datentabelle eine Überschriftenzeile spendieren, die benötigt der Autofilter.
Gruß Daniel

AW: X-Achse an Werte anpassen
06.03.2013 16:10:28
jana
Hey,
danke schon mal für die Antwort!
Ich hab das aber noch nicht so ganz kapiert. muss ich nur den code eingeben, den du geschrieben hast oder kommt da noch was dazu?und wie verbinde ich das dann mit der überschrift?
also so wie ich das gearde probiert habe klappe es auf jeden fall nicht.
könntest du mir vielleicht das was du meinst in der bsp.-datei ändern und dann wieder hochladen?
LG Jana

Anzeige
AW: X-Achse an Werte anpassen
06.03.2013 16:14:54
Daniel
Hi
lass das VBA-Gedöns erstmal weg wende doch einfach erstmal den autofilter direkt in der Tabelle an.
einfach die Datentabelle markieren und dann DATEN - SORTIEREN UND FILTERN - FILTERN klicken.
in der ersten Zeile der Tabelle erscheinen jetzt in jeder Zelle DropDown-Buttons.
da klickst du auf den DropDown-Button in Spalte B und nimmst das Häkchen beim Wert 0 raus.
die erste Zeile kann der autofilter leider nicht ausblenden, denn die benötigt er für die DropDownfelder.
was ne Überschrift ist, muss ich dir hoffentlich nicht erklären.
Gruß Daniel

AW: X-Achse an Werte anpassen
06.03.2013 16:23:10
jana
Hey,
super es funktiniert!
Ich kenn mich mit excel echt nict gut aus und hab so ein filter noch nie genutzt,jetzt hab ich aber auch verstanden, dass man dort eine überschrift braucht!
danke!
LG Jana

Anzeige
Listen sollten immer ...
06.03.2013 16:38:47
Rudi
Hallo,
... eindeutige Überschriften haben.
Überschriften sind für etliche Funktionen Pflicht.
Gruß
Rudi

AW: X-Achse an Werte anpassen
06.03.2013 16:43:57
jana
hey,
hab grad festgestellt, dass der autofilter bei meinem problem nicht die lösung ist.
wenn sich die werte in meiner datentabelle ändern muss ich jedesmal den filter neu aktivieren,damit er die nullen der neuen daten rausfiltert. kann man das problem vielleicht auch anders lösen,ohne,dass man jedes mal den filter neu aktivieren muss?
LG Jana

per Hilfsspalte & Namen
06.03.2013 17:03:42
Rudi
Hallo,
ABCDEFG
1a0  c1 
2b0  d2 
3c1  e3 
4d2  f4 
5e3  #ZAHL!#ZAHL! 
6f4  #ZAHL!#ZAHL! 
7g0  #ZAHL!#ZAHL! 
8h0  #ZAHL!#ZAHL! 
9    #ZAHL!#ZAHL! 

NameBezug
xwerte=Tabelle1!$F$1:INDEX(Tabelle1!$F:$F;ANZAHL(Tabelle1!$F:$F))
ywerte=Tabelle1!$E$1:INDEX(Tabelle1!$E:$E;ANZAHL(Tabelle1!$F:$F))

ZelleFormel
E1{=INDEX($A$1:$A$8;KKLEINSTE(WENN($B$1:$B$8<>0;ZEILE($B$1:$B$8);"");ZEILE()))}
F1{=INDEX($B$1:$B$8;KKLEINSTE(WENN($B$1:$B$8<>0;ZEILE($B$1:$B$8);"");ZEILE()))}
  
E2{=INDEX($A$1:$A$8;KKLEINSTE(WENN($B$1:$B$8<>0;ZEILE($B$1:$B$8);"");ZEILE()))}
F2{=INDEX($B$1:$B$8;KKLEINSTE(WENN($B$1:$B$8<>0;ZEILE($B$1:$B$8);"");ZEILE()))}
  
Achtung, Matrixformel!
Die geschweiften Klammern{} nicht eingeben,
sondern die Zelle mit
Shift + Strg + Enter
verlassen statt Enter alleine.

Formeln eingeben und Namen definieren (strg+F3).
Die Datenreihe anklicken und in der Bearbeitungsleiste die Formel
=DATENREIHE(;'84223.xlsx'!ywerte;'84223.xlsx'!xwerte;1)
eingeben. '84223.xlsx' durch deinen Mappennamen ersetzen.
Gruß
Rudi

Anzeige
AW: per Hilfsspalte & Namen
06.03.2013 21:01:37
jana
hey,
ich hab jetzt alles bis auf den letzten schritt gemacht.
Die Datenreihe anklicken und in der Bearbeitungsleiste die Formel
=DATENREIHE(;'84223.xlsx'!ywerte;'84223.xlsx'!xwerte;1)
eingeben. '84223.xlsx' durch deinen Mappennamen ersetzen.

diesen teil verstehe ich nicht. meinst du mit der datenreihe die spalten A und B oder E und F? und wenn ich diese markiere, und die formel in bearbeitungsleiste schreibe,dann gehen ja die daten bzw. formeln weg...
kannst du mir das bitte noch genauer erklären?
LG Jana

@rudi
07.03.2013 17:53:43
jana
Hey Rudi,
könntest du mir das bitte nochmal genauer erklären? Wäre echt toll, wenn ich endlich eine Lösung für mein Problem hätte... Also die Lösung hast du mir ja geschrieben,kanns eben nur nicht umsetzen =)
LG Jana

Anzeige
@alle: Brauche eure Hilfe
08.03.2013 11:46:59
jana
Hey,
kann mir vielleicht jemand diesen letzten Schritt erklären?
Ich versteh das einfach nicht!
Wenn jemand eine andere Lösung für das Problem hat, ist das natürlich auch ok =)
LG Jana

AW: @alle: Brauche eure Hilfe
08.03.2013 12:42:51
Daniel
HI
damit ist der Wertebereich des Diagramms gemeint.
hier gibst du jetzt nicht mehr die Zellen direkt an, sonden den Namen, der dann auf den Zellbereich verweist.
bei Diagrammen besteht noch die besonderheit, daß man vor dem Namen noch den Dateinamen hinschreiben muss (Ausrufezeichen als Trennzeichen).
Gruß Daniel

AW: @alle: Brauche eure Hilfe
08.03.2013 12:49:04
jana
Hey,
hab das grad probiert und jetzt ist mir auch klar wie das ganz fuktionieren soll, nur jetzt hab ich das Problem, dass die Formel =DATENREIHE(;'84223.xlsx'!ywerte;'84223.xlsx'!xwerte;1) nicht erkannt wird, muss ich dafür noch eine code in vba eingeben?
LG Jana

Anzeige
AW: @alle: Brauche eure Hilfe
08.03.2013 13:35:25
Daniel
Hi
nö, mit VBA brauchst du da gar nichst tun.
du musst halt im Wertebereich des Diagramms den Namen anstelle des direkten Zellbezugs angeben.
das kannst du entweder über den entsprechenden Diagrammassistenen (Kontextmenü - Daten auswählen) oder eben direkt über die Bearbeitungszeile, wenn du im Diagramm die Datenreihe markierst.
die Bearbeitungszeile ist die Zeile, wo du normalerweise die Zellwerte und Formeln eingibst.
besser kann ich dir das jetzt auch nicht am PC erklären.
Gruß Daniel

AW: @alle: Brauche eure Hilfe
08.03.2013 14:56:01
jana
hey, danke für die antwort!
jetzt hats geklappt!
ich hab aber statt DATENREIHE(;'84223.xlsx'!ywerte;'84223.xlsx'!xwerte;1) nur das '84223.xlsx'!ywerte;'84223.xlsx'!xwerte eingegeben, dann hats geklappt...
Aber trotzdem ist mei Problem nicht gelöst!
Wenn ich die Werte ändern und auch die Anzahl der Werte funktioniert das ganze nicht mehr. Wenn sich die Anzahl der Werte verkleinert, wird nun an der Stelle, wo vorher ein Wert war auf der X-Ache #Zahl angezeigt und das möchte ich natürlich auch nicht! Hat denn vielleicht noch jemand eine andere Lösung?
LG Jana

Anzeige
AW: @alle: Brauche eure Hilfe
08.03.2013 15:05:37
Daniel
Hi
das sollte eigentlich nicht passieren, da sich dein Name automatisch an die Anzahl der vorhandenen Werte anpasst und so die Zeilen, in denen der Fehlerwert steht, gar nicht mehr zum Zellbereich des Namens gehören und deswegen auch nicht im Diagramm erscheinen.
setzt natürlich voraus, daß du es so gemacht hast, wie es dir gesagt wurde!
aber am besten ist, wenn du weiterhin Hilfe brauchst, daß du die Datei mit deinem bisherigen Ergebnis hier mal hochlädst, dann kann man am ehesten was sagen.
gruß Daniel

AW: @alle: Brauche eure Hilfe
09.03.2013 08:45:17
Daniel
Hi
du hast den Datenbereich ja gar nicht über die Namen definiert, sondern wieder über die direkte Zelladdresse.
bei Diagrammen muss man da ein bisschen aufpassen.
man kann das Diagramm entweder
a) über EINEN EINZIGEN Zellbereich der alles (alle x-Werte, Achsenbeschriftung) enthält definieren, oder man kann
b) jedes Elemente einzeln definieren, dh jede Datenreihe extra, die Achsenbeschriftung extra usw.
bei Methode a) (die du bisher wahrscheinlich angewendet hast) ist es nicht möglich, Namen zu verwenden, da Excel hier die Namen dann sofort in feste Zellbezüge umwandelt.
wenn man mit veränderlichen Zellbezügen, die über berechnete Namen definiert werden, arbeiten will, muss man Mehtode b) verwenden und jedes Element des Diagramms einzeln definieren.
- hierzu klickst du das Diagramm an (rechte MT)
- wählst Daten auswählen
- klickst auf der linken Seite (Legeneinträge Reihen) "Bearbeiten" und trägst dort im Eingabefenster bei Reihenwerte dann ='Dateiname.xlsx'!xWerte ein
- klickst auf der rechten Seite (horizontale Achsenbeschriftung Rubrik) "Bearbeiten" und trägst dort im Eingabefenster bei Reihenwerte dann ='Dateiname.xlsx'!yWerte ein.
dann sollte das mit den Namenszuweisungen auch funktionieren.
Gruß Daniel

Anzeige
AW: @alle: Brauche eure Hilfe
09.03.2013 13:01:29
jana
Hey,
Vielen Dank für die ausführliche Beschreibung!Jetzt klappt es endlich!
Liebe Grüße Jana

305 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige