Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1376to1380
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
Inhaltsverzeichnis

VBA Spalten ein/ausblenden per Click

VBA Spalten ein/ausblenden per Click
19.08.2014 16:09:04
koskesh
Hallo, möchte per Click auf ein Button folgende Aktionen ausführen
- Spalten H:K ein bzw ausblenden
- Spalten L-O aus bzw einblenden
Alle vier Aktionen auf den selben Button (wien Toggle für ein/aus)
Die jeweiligen Spalten sollen nicht gleichzeitig sichtbar sein.
Nur für die Spalten H:K habe ich es so hinbekommen
Columns("H:K").EntireColumn.Hidden = Not Columns("H:K").EntireColumn.Hidden

15
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA Spalten ein/ausblenden per Click
19.08.2014 16:18:48
Daniel
Hi
Probiere mal:

With Range("H:K").EntireRow
.Hidden = not .Hidden
End With
With Range("L:O").EntireRow
.Hidden = not .Hidden
End with
bevor du den Code Startest, musst du dafür sorgen dass der eine Block ausgeblendet und der andere Eingeblendet ist.
wenn du den Fall absichern willst, dass jedmand von Hand noch ein- oder ausblendet, aber nach dem Klick wieder alles wie gewohnt sein soll, dann so:
Static x as Boolean
x = Not x
Range("H:K").EntireRow.Hidden = x
Range("L:O").EntrieRow.Hidden = Not x
Gruß Daniel

Anzeige
AW: VBA Spalten ein/ausblenden per Click
19.08.2014 16:30:09
koskesh
Krieg einen Debug Fehler. Keine Ahnung wieso

AW: VBA Spalten ein/ausblenden per Click
19.08.2014 16:37:11
Daniel
wenn du mir sagen würdest, bei welchem Code und in welcher Zeile, dann würde ich dir auch sagen, woran es liegt.
Tippfehler kannst du vermeiden, wenn du den Code selber schreibst und dabei die Intellisense verwendest, dh du tippst die ersten Buchstaben ein und drückst dann ALT+LEER.
wenn der Ausdruck schon eindeutig ist, bekommst, wird er automatisch vervollständigt, falls nicht, bekommst du eine Auswahlliste und kannst den passenden auswählen, so dass du nicht alles tippen musst.
Gruß Daniel

AW: VBA Spalten ein/ausblenden per Click
19.08.2014 16:40:08
Christian
Hallo,
wir sind hier in einem Forum, nicht im Kids-Chat, da gehört Anrede und Gruß dazu, gehört eigentlich zur guten Erziehung.... und zur Netiquette !!
Wo tritt den der Fehler auf?
MfG Christian

Anzeige
AW: VBA Spalten ein/ausblenden per Click
19.08.2014 20:35:32
Gerold
Hallo koskesh

Option Explicit
Dim Toggle As Boolean
Sub DeinButton_Klick()
If Toggle Then
Columns("H:K").EntireColumn.Hidden = True
Columns("L:O").EntireColumn.Hidden = False
Toggle = False
Else
Columns("H:K").EntireColumn.Hidden = False
Columns("L:O").EntireColumn.Hidden = True
Toggle = True
End If
End Sub
Gruß Gerold
Rückmeldung wäre nett.

AW: VBA Spalten ein/ausblenden per Click
19.08.2014 21:07:45
Daniel
Hi Gerold
nicht DIM Toggle as Boolean, sonder STATIC Toggle as Boolean
Mit DIM ist Toggle beim Start des Makros immer FALSE, weil die Variablenwerte nach Makroende gelöscht werden, ausser die Variable ist als STATIC deklariert, dann behält sie ihren Wert für den nächsten Lauf dieses Makros.
Gruß Daniel

Anzeige
AW: VBA Spalten ein/ausblenden per Click
19.08.2014 22:44:19
Gerold
Hallo Daniel
Stimmt, hast recht.
Hatte den von Robert nur -aus der Sub rausgeholt- und nicht weiter drauf geachtet.

Option Explicit
Static Toggle As Boolean
Sub DeinButton_Klick()
If Toggle Then
Columns("H:K").EntireColumn.Hidden = True
Columns("L:O").EntireColumn.Hidden = False
Toggle = False
Else
Columns("H:K").EntireColumn.Hidden = False
Columns("L:O").EntireColumn.Hidden = True
Toggle = True
End If
End Sub
Gruß Gerold
Rückmeldung wäre nett.

AW: VBA Spalten ein/ausblenden per Click
19.08.2014 22:48:43
Gerold
Hallo Daniel
Stimmt, hast recht.
Hatte den von Robert nur -aus der Sub rausgeholt- und nicht weiter drauf geachtet.

Option Explicit
Sub DeinButton_Klick()
Static Toggle As Boolean
If Toggle Then
Columns("H:K").EntireColumn.Hidden = True
Columns("L:O").EntireColumn.Hidden = False
Toggle = False
Else
Columns("H:K").EntireColumn.Hidden = False
Columns("L:O").EntireColumn.Hidden = True
Toggle = True
End If
End Sub
Gruß Gerold
Rückmeldung wäre nett.

Anzeige
AW: VBA Spalten ein/ausblenden per Click
19.08.2014 22:48:55
Gerold
Hallo Daniel
Stimmt, hast recht.
Hatte den von Robert nur -aus der Sub rausgeholt- und nicht weiter drauf geachtet.

Option Explicit
Sub DeinButton_Klick()
Static Toggle As Boolean
If Toggle Then
Columns("H:K").EntireColumn.Hidden = True
Columns("L:O").EntireColumn.Hidden = False
Toggle = False
Else
Columns("H:K").EntireColumn.Hidden = False
Columns("L:O").EntireColumn.Hidden = True
Toggle = True
End If
End Sub
Gruß Gerold
Rückmeldung wäre nett.

AW: VBA Spalten ein/ausblenden per Click
20.08.2014 08:12:54
koskesh
Funktioniert. Danke euch zwei.
Hatte es in der Zwischenzeit aber schon selber so gelöst:
Habe zusätzlich den Buttonnamen beim togglen verändert.
Vielen Dank & VG
Option Explicit
Private Sub cmdButton_Click()
If Columns("H:K").EntireColumn.Hidden = True Then
Columns("H:K").EntireColumn.Hidden = False
Columns("L:O").EntireColumn.Hidden = True
cmdButton.Caption = "Test"
Else
Columns("H:K").EntireColumn.Hidden = True
Columns("L:O").EntireColumn.Hidden = False
cmdButton.Caption = "OK"
End If
End Sub

Anzeige
AW: VBA Spalten ein/ausblenden per Click
24.08.2014 03:21:30
Adis
Hallo
If Columns("H:K").EntireColumn.Hidden = True Then
ich amüsiere mich köstlich. Vor allem über die Eigenlösungen im Forum s. oben (wollte ich gerade anbieten)
Sie stammt noch aus Excel Urzeiten, ich kenne sie aus Excel7, als es noch keine Toggel Button gab.
Gruss Adis

AW: VBA Spalten ein/ausblenden per Click
24.08.2014 08:34:22
Matthias
Hallo
Eine If-Abfrage ist da nicht nötig
Sorge einfach dafür das Einer der beiden Bereiche bereits ausgeblendet ist
Dann kannst Du mit folgendem Code wechselseitig ein- und ausblenden.
Application.ScreenUpdating = False
Columns("H:K").EntireColumn.Hidden = Not Columns("H:K").EntireColumn.Hidden
Columns("L:O").EntireColumn.Hidden = Not Columns("H:K").EntireColumn.Hidden
Mehr brauchst Du nicht.
Gruß Matthias

Anzeige
AW: VBA Spalten ein/ausblenden per Click
19.08.2014 16:19:24
Robert
Hallo koskesh
Sub DeinButton_Klick()
Dim Toggle As Boolean
If Toggle Then
Columns("H:K").EntireColumn.Hidden = True
Columns("L:O").EntireColumn.Hidden = False
Toggle = False
Else
Columns("H:K").EntireColumn.Hidden = False
Columns("L:O").EntireColumn.Hidden = True
Toggle = True
End If
Viele Grüße
Robert

AW: VBA Spalten ein/ausblenden per Click
19.08.2014 16:29:08
koskesh
Funktioniert nicht richtig. Das ausblenden funktioniert aber das wieder einblenden nicht.

AW: VBA Spalten ein/ausblenden per Click
20.08.2014 08:49:29
Robert
Die ToggleVariable muss als Static definiert werden, dann gehts.
Mein Fehler.
Viele Grüße
robert

310 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige