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.

Spalten mit Bedingung ausblenden
#1
allo liebe Excel Gemeinde,

ich bin neu hier und habe eine Frage bzw. ein Problem mit VBA :)

Ich bin leidenschaftlicher Anno-Spieler (falls jemand das Spiel kennt). Regelmäßige bastel ich mir Hilfstools in Excel um die Komplexität zu beherrschen. Beim aktuellen Titel ist das etwas schwer, weil viele Parameter zu berücksichtigen sind. Ich hab das ganze recht gut hinbekommen in Excel, allerdings bleibt ein Thema offen: Ich möchte jene Produktionsgüter ausblenden, wo es keinen Bedarf gibt.

Konkret bedeutet das: Es gibt in der Arbeitsmappe "Inselbilanz_Produktion" 10 Zeilen (Zeile 4-13) mit Inselnamen. Dann gibt es Spalten mit den entsprechenden Berechnungen zur Optimierung. (Spalte J-M als Beispiel für das Produktionsgut Fisch) Wenn nun in der Spalte K4 bis K13 überall 0 steht, dann sollen J-M ausgeblendet werden. Die gleiche muss ich dann für andere nun kopieren, oder?:

Wenn K4-K13 = 0, dann J-M ausblenden
Wenn O4-O13 = 0, dann N-R ausblenden
Wenn T4-T13 = 0, dann S-W ausblenden
usw...

Ist das möglich bzw. weiß zufällig jemand die Lösung?

Vielen lieben Dank im Voraus.


Angehängte Dateien
.xlsx   Vorl_191023_Anno_1800_Rechner - Kopie.xlsx (Größe: 1,28 MB / Downloads: 4)
Antworten Top
#2
Hallo

so?



Code:
Sub TT()
   
   'Wenn die Differenz =0 ist, ist das Ergebnis = True
   'also Hidden=True
   
   Columns("J:M").Hidden = (Range("K4") - Range("K13")) = 0
   Columns("N:R").Hidden = (Range("O4") - Range("O13")) = 0
   Columns("S:W").Hidden = (Range("T4") - Range("T13")) = 0
   '...
   
End Sub


LG UweD
Antworten Top
#3
PHP-Code:
Sub M_snb()
    Columns("J:M").Hidden = [sum(K4:K13)=0]
End Sub 
oder
PHP-Code:
Sub M_snb()
    
Columns("J:M").Hidden = [iserr(1/sum(K4:K13))]
End Sub 
Zum übersetzen von Excel Formeln:

http://dolf.trieschnigg.nl/excel/index.p...gids=en+de
Antworten Top
#4
Danke erstmal für den Input :)

Er funktioniert, dass die Spalten ausgeblendet werden. Jedoch muss ich das Makro immer manuell ausführen. Gibt es eine Möglichkeit, dass es immer ausgeführt wird wenn ich irgendwas in der Arbeitsmappe ändert?

Danke!
Antworten Top
#5
hallo nochmal


man könnte das Change Event nutzen

- Rechtsclick auf den Tabellenblattreiter
- Code anzeigen
- rechts dann den Code rein


Code:
Private Sub Worksheet_Change(ByVal Target As Range)

  Columns("J:M").Hidden = (Range("K4") - Range("K13")) = 0
  Columns("N:R").Hidden = (Range("O4") - Range("O13")) = 0
  Columns("S:W").Hidden = (Range("T4") - Range("T13")) = 0
  '...
End Sub

LG UweD
Antworten Top
#6
Es funktioniert. Vielen vielen Dank, bin sehr happy darüber :) Problem gelöst.
Antworten Top


Gehe zu:


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