Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Benannten Zeilenbereich ausblenden
#1
Hallo zusammen,

ich möchte mir in einer Tabelle einige Zeilen automatisch ausblenden, die über den Namens-Manager benannt sind. Folgenden Code habe ich mir dazu bereits gestrickt der funktioniert: 

If Range("1_Anzahl").Value = "0" And Range("2_Anzahl").Value = "0" Then Rows("207:224").Hidden = True
If Range("1_Anzahl").Value >= 1 Or Range("2_Anzahl").Value >= 1 Then Rows("207:224").Hidden = False

Range("1_Anzahl").Value ist der Wert in Zelle G16
Range("2_Anzahl").Value ist der Wert in Zelle G17
Der Sinn des Codes ist also dass die Zeilen 207 bis 224 eingeblendet werden wenn in den Zellen G16 oder G17 Werte eingegeben werden die größer als 0 sind.

So weit ist alles schön und gut. Da die Tabelle aber in Zukunft leben wird und Zeilen eingefügt werden, habe ich über den Namens-Manager die Zeilen 207 bis 224 als "Bereich_Antrieb" benannt. Dieser Bereich wächst dann mit, denn dazwischen Zeilen eingefügt werden und sollte doch auch über VBA angesprochen werden können... 
Leider funktioniert der folgende Code aber nicht: 
If Range("1_Anzahl").Value = "0" And Range("2_Anzahl").Value = "0" Then Rows("Bereich_Antrieb").Hidden = True
If Range("1_Anzahl").Value >= 1 Or Range("2_Anzahl").Value >= 1 Then Rows("Bereich_Antrieb").Hidden = False

Was mache ich falsch, bzw. was kann ich ändern?
Huh


Vielen Dank schon vorab für jeden Lösungsansatz... 

Viele Grüße!
Antworten Top
#2
Hallo Klaibi

Code:
If Range("1_Anzahl").Value = "0"

Diese Null ist keine Zahl sondern Text

Du schreibst ja auch
Code:
If Range("1_Anzahl").Value >= 1
Das wäre richtig
Mfg Guschti
Der Künstler lebt auch vom Applaus
Excel Optimaler Zuschnitt von Stangen/Balken - YouTube
[-] Folgende(r) 1 Nutzer sagt Danke an Guschti für diesen Beitrag:
  • Klaibi
Antworten Top
#3
Vielen Dank, deine Antwort hat mir bei einem Problemchen geholfen welches ich noch nichtmal gesehen hatte Smile

Mit der ursprünglichen Problemstellung komme jedoch damit nicht wirklich weiter. Ich bekomme den Laufzeitfehler 13 (Typen unverträglich).
Antworten Top
#4
Kontrolliere ob dein Bereich nur aus Zeilen oder nur aus Spalten Besteht!
Eine Menge reden, aber nichts sagen können viele...
Antworten Top
#5
Bereich_Antrieb ist über den Namens-Manager wie folgt definiert:

Bezieht sich auf: =Tabelle1!$207:$223

Sollte also korrekt sein  Blush
Antworten Top
#6
Hallo K...,

im Excelblatt ist der Name nicht der Zeile sondern einem Range-Objekt zugeordnet (named range).

es muss also heissen:

Range("Bereich_Antrieb").rows.Hidden = True
helmut

Für mich ist die Möglichkeit in Excel an Zellen und Bereichen Namen zu vergeben die wichtigste Funktionalität.
Sie macht Formeln und den VBA-code verständlicher. Für Makros gilt die Regel: "Nur über benannte Bereiche auf den Inhalt der Zellen zugreifen."
Und wofür sind Regeln da? Um nachzudenken bevor man sie bricht.





[-] Folgende(r) 2 Nutzer sagen Danke an Ego für diesen Beitrag:
  • Klaibi, Frogger1986
Antworten Top
#7
Wow! Genau so wollte ich das  :18: 

VIELEN DANK!  :100:
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste