Thema Datum  Von Nutzer Rating
Antwort
03.07.2017 08:20:58 Singsa
NotSolved
03.07.2017 11:53:28 RPP63
NotSolved
03.07.2017 12:09:47 Gast70117
NotSolved
03.07.2017 15:58:25 Gast70117
NotSolved
03.07.2017 16:37:01 Gast59592
NotSolved
Blau Einblenden von Spalten
03.07.2017 15:54:23 Gast74810
NotSolved

Ansicht des Beitrags:
Von:
Gast74810
Datum:
03.07.2017 15:54:23
Views:
591
Rating: Antwort:
  Ja
Thema:
Einblenden von Spalten

In der Hoffnung, dass es jetzt mit Mozilla funktioniert und der Code richtig formatiert angezeigt wird hier noch eimal mein Anliegen:

 

Hallo :)

In meinem Programm habe ich die Möglichkeit in den Zeilen I14 bis I50 zwischen drei Eingaben "HAZ", "EMZF" und "EMZ" zu wählen.

Je nachdem, was ich wähle blenden sich die dazugehörigen Spalten ein. In eine Zelle kann ich nur eine Option eintragen, aber ich kann innerhalb von I14 bis I50 auch mehrere Optionen eintragen, dann blenden sich dementsprechend mehr Spalten ein.

Nun mein Problem bzw. meine Probleme:

1. Gebe ich in einer Zelle zuerst EMZ und danach in einer anderen Zelle HAZ ein, werden nur die zu EMZ zugehörigen Spalten eingeblendet. Die zu HAZ gehörenden Spalten bleiben ausgeblendet. Anders herum funktioniert es einwandfrei.

2. Gebe ich z. B. HAZ in einer Zelle ein und ändere diese Zelle dann in EMZ um, dann werden zwar die zu EMZ gehörenden Spalten eingeblendet, aber die zu HAZ gehörenden Spalten bleiben eingeblendet (die sollen aber wieder ausgeblendet werden).

Lösche ich alle Inhalte in I14 bis I15 schließen sich alle Spalten, was ich auch so will (falls das relevant ist). Ich hoffe ich konnte alles verständlich beschreiben und dass mir jemand helfen kann. Danke im Voraus und Grüße Singsa :) PS: bin leider absoluter Neuling in VBA :)

Mein Programm:


Private Sub Worksheet_Change(ByVal Target As Range)
    Dim varAusblend As Range
    Dim varSchalter As Range
 

'Wenn  nur EMZ (HAZ und EMZF nicht)aktiv, dann entsprechende Parameter einblenden
If WorksheetFunction.CountIf(Range("I14:I50"), ["EMZ"]) > 0 And WorksheetFunction.CountIf(Range("I14:I50"), ["EMZF"]) = 0 And WorksheetFunction.CountIf(Range("I14:I50"), ["HAZ"]) = 0 Then
               ActiveSheet.Columns("P:U").Hidden = False And ActiveSheet.Columns("V:AG").Hidden = True


'Wenn  nur HAZ (EMZ und EMZF nicht)aktiv, dann entsprechende Parameter einblenden
ElseIf WorksheetFunction.CountIf(Range("I14:I50"), ["EMZ"]) = 0 And WorksheetFunction.CountIf(Range("I14:I50"), ["EMZF"]) = 0 And WorksheetFunction.CountIf(Range("I14:I50"), ["HAZ"]) > 0 Then
               ActiveSheet.Columns("AD:AG").Hidden = False And ActiveSheet.Columns("P:AC").Hidden = True
               
               
'Wenn  nur EMZF (HAZ und EMZ nicht)aktiv, dann entsprechende Parameter einblenden
ElseIf WorksheetFunction.CountIf(Range("I14:I50"), ["EMZ"]) = 0 And WorksheetFunction.CountIf(Range("I14:I50"), ["EMZF"]) > 0 And WorksheetFunction.CountIf(Range("I14:I50"), ["HAZ"]) = 0 Then
               ActiveSheet.Columns("V:AC").Hidden = False And ActiveSheet.Columns("P:U").Hidden = True And ActiveSheet.Columns("AD:AG").Hidden = True
                  
                  
'Wenn  EMZF und HAZ (EMZ nicht)aktiv, dann entsprechende Parameter einblenden
ElseIf WorksheetFunction.CountIf(Range("I14:I50"), ["HAZ"]) > 0 And WorksheetFunction.CountIf(Range("I14:I50"), ["EMZF"]) > 0 And WorksheetFunction.CountIf(Range("I14:I50"), ["EMZ"]) = 0 Then
            ActiveSheet.Columns("V:AG").Hidden = False And ActiveSheet.Columns("P:U").Hidden = True
         
         
'Wenn  EMZF und EMZ (HAZ nicht)aktiv, dann entsprechende Parameter einblenden
ElseIf WorksheetFunction.CountIf(Range("I14:I50"), ["HAZ"]) = 0 And WorksheetFunction.CountIf(Range("I14:I50"), ["EMZF"]) > 0 And WorksheetFunction.CountIf(Range("I14:I50"), ["EMZ"]) > 0 Then
            ActiveSheet.Columns("P:AC").Hidden = False And ActiveSheet.Columns("AD:AG").Hidden = True
                        
                        
'Wenn  EMZ und HAZ (EMZF nicht)aktiv, dann entsprechende Parameter einblenden
ElseIf WorksheetFunction.CountIf(Range("I14:I50"), ["HAZ"]) > 0 And WorksheetFunction.CountIf(Range("I14:I50"), ["EMZF"]) = 0 And WorksheetFunction.CountIf(Range("I14:I50"), ["EMZ"]) > 0 Then
            ActiveSheet.Columns("P:U").Hidden = False And ActiveSheet.Columns("AD:AG").Hidden = False And ActiveSheet.Columns("V:AC").Hidden = True
            
            
'Wenn  HAZ und EMZF und EMZ aktiv, dann entsprechende Parameter einblenden
ElseIf WorksheetFunction.CountIf(Range("I14:I50"), ["HAZ"]) > 0 And WorksheetFunction.CountIf(Range("I14:I50"), ["EMZF"]) > 0 And WorksheetFunction.CountIf(Range("I14:I50"), ["EMZ"]) > 0 Then
            ActiveSheet.Columns("P:AG").Hidden = False


'Wenn  nichts aktiv, dann alle Parameter ausblenden
Else: ActiveSheet.Columns("P:AG").Hidden = True
          

End If
       
         

End Sub

 


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
03.07.2017 08:20:58 Singsa
NotSolved
03.07.2017 11:53:28 RPP63
NotSolved
03.07.2017 12:09:47 Gast70117
NotSolved
03.07.2017 15:58:25 Gast70117
NotSolved
03.07.2017 16:37:01 Gast59592
NotSolved
Blau Einblenden von Spalten
03.07.2017 15:54:23 Gast74810
NotSolved