Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1056to1060
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

nur bestimmte spalten einblenden

nur bestimmte spalten einblenden
09.03.2009 08:51:17
Jan
hallo zusammen
ich habe folgendes problem:
ich habe die zellen a4 und a6, welche beide daten beinhalten, wobei a4 grösser als a6 ist
dann habe ich noch die spalten B : DQ, welche ebenfalls daten in aufsteingender form beinhalten in etwa so:
01.02.2008__03.2008__01.04.2008__01.05.2008__01.06.2008 bis 01.01.2018
jetzt möchte ich in diesem bereich nur die spalten einblenden, welche zwischen den daten a4 und a6 liegen oder gleich den daten a4 und a6 sind.
wäre froh, wenn mir jemand helfen könnte, da ich nicht so der vba-experte bin..
vielen dank und noch einen schönen morgen!
gruss jan

14
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: nur bestimmte spalten einblenden
09.03.2009 08:56:31
Jogy
Hi.
Schon mal den Autofilter angeschaut?
Gruss, Jogy
AW: nur bestimmte spalten einblenden
09.03.2009 09:00:08
Jan
Hi Jogy
Erstlmals vielen Dank für deine Antwort. Kann man den auch auf bestimmte Spalten beschränken? In meinem Fall wären dann diese die Spalten B bis DQ.
Meines Wissens aktualisiert sich der aber nicht, wenn man in A6 oder A4 das Datum ändern würde..
AW: nur bestimmte spalten einblenden
09.03.2009 09:07:51
Ramses
Hallo
REchte Maustaste auf den Tabellenreiter der Tabelle wo die Daten stehen
code anzeigen
Dort diesen code reinkopieren
Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
    Dim i As Long
    Dim colStart As Long, colEnd As Long, datRow As Long
    MsgBox Target.Address
    If Target.Address(0, 0) = "A6" Or Target.Address(0, 0) = "A4" Then
        'In dieser Spalkte beginnen die Daten
        colStart = 2
        'In dieser Zeile stehen die Daten
        datRow = 1
        'automatisches Ende der Datenreihe ermitteln
        colEnd = Cells(datRow, Columns.Count).End(xlToLeft).Column
        Cells.EntireColumn.Hidden = False
        For i = colStart To colEnd
            If Cells(datRow, i) >= Range("A6") And Cells(datRow, i) <= Range("A4") Then
                Columns(i).Hidden = True
            End If
        Next i
    End If
End Sub

Gruss Rainer
Anzeige
AW: nur bestimmte spalten einblenden
09.03.2009 09:19:07
Jan
vielen dank für deine antwort..
reich es den code nur einzufügen und dananch wieder zurück zu Excel oder muss ich den noch irgendwie speziell ausführen? da momentan passiert noch gar nichts..
AW: nur bestimmte spalten einblenden
09.03.2009 09:23:56
Ramses
Hallo
LESEN !!!!!
Beginnen die Datumspalten wirklich in B ?
colStart = 2
Stehen die Daten wirlich in Zeile 1
datRow = 1
Nach deiner Frage steht das grössere Datum in A4 und das kleinere Datum in A6
Wenn das alles korrekt ist, funktioniert das
Gruss Rainer
AW: nur bestimmte spalten einblenden
09.03.2009 09:27:33
Jan
-kleineres Datum in A4 und grlsseres in A6
Datenspalten beginnen in B und Enden in DQ und stehen in Zeile 10
Entschuldigung dass ich diese Angaben vergessen habe und vielen Dank für deine Mühe..wie würde es jetzt aussehen?
Anzeige
AW: nur bestimmte spalten einblenden
09.03.2009 09:30:52
Ramses
Hallo
Ich bin kein Hellseher, aber was sagt dir der gesunde Menschenverstand wenn du das liest
'In dieser Zeile stehen die Daten
datRow = 1
?
Irgendeine Idee ?
Gruss Rainer
AW: nur bestimmte spalten einblenden
09.03.2009 09:33:20
Jan
ich muss auch 1 eine 10 machen..ist mir klar, habe ich auch gemacht..danach noch alles A4 durch A6 ersetzen und umgekehrt..
danach code beim gewünschten tabellenblatt einfügen und dann zurück zu Excel..passiert aber leider nichts...muss ich den code noch irgendwie ausführen oder sollte das dann automatisch passieren?
AW: nur bestimmte spalten einblenden
09.03.2009 09:36:10
Ramses
Hallo
Gib doch einfach mal ein Datum in eine der beiden Zellen ein
Gruss Rainer
Anzeige
AW: nur bestimmte spalten einblenden
09.03.2009 09:42:08
Jan
Hallo Ramses
Endlich funktioniert das ganze, jedoch blendet Excel genau das aus, was ich nicht ausgeblendet haben will und blendet das ein, was ich ausgeblendet haben will.. wie gesagt, es macht genau das umgekehrte...
Ich hoffe, das das nicht wieder mein Fehler ist, falls ja, möchte ich mir bei dir entscchuldigen. Ich wäre dir aber sehr dankbar, wenn du dieses Problem beheben könntest.
Gruss Jan
AW: nur bestimmte spalten einblenden
09.03.2009 09:48:47
Ramses
Hallo
Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
    Dim i As Long
    Dim colStart As Long, colEnd As Long, datRow As Long
    If Target.Address(0, 0) = "A6" Or Target.Address(0, 0) = "A4" Then
        'In dieser Spalkte beginnen die Daten
        colStart = 2
        'In dieser Zeile stehen die Daten
        datRow = 10
        'automatisches Ende der Datenreihe ermitteln
        colEnd = Cells(datRow, Columns.Count).End(xlToLeft).Column
        Cells.EntireColumn.Hidden = False
        For i = colStart To colEnd
            If Cells(datRow, i) >= Range("A4") And Cells(datRow, i) <= Range("A6") Then
                Columns(i).Hidden = False
            Else
                Columns(i).Hidden = True
            End If
        Next i
    End If
End Sub

Damit sollte es gehen
Gruss Rainer
Anzeige
AW: nur bestimmte spalten einblenden
09.03.2009 09:56:37
Jan
bist sehr nahe dran, aber immer noch nicht ganz:
Excel blendet den gewünschten Bereich ein, jedoch blendet es nach rechts alle Spalten aus, welche grösser als das Datum in A6 ist und nicht nur die Spalten in dem gewünschten Bereich B bis DQ. In den folgenden Spalten ab DP stehen keine Daten mehr. Vielleicht hilft dir das weiter...
Vergessen....
09.03.2009 09:35:18
Ramses
Hallo
Deine erste Frage lautet:
"..ich habe die zellen a4 und a6, welche beide daten beinhalten, wobei a4 grösser als a6 ist ..
Deine Antwort nun
"...-kleineres Datum in A4 und grlsseres in A6..."
Was denn nun wirklich ?
Ungenaue Fragestellungen kosten undendlich Zeit und Nerven
Ändere die Zeile
If Cells(datRow, i) >= Range("A6") And Cells(datRow, i) in
If Cells(datRow, i) >= Range("A4") And Cells(datRow, i) Logik kann so einfach sein :-)
Gruss Rainer
Anzeige
AW: nur bestimmte spalten einblenden
09.03.2009 10:05:04
Jan
unglaublich aber wahr, habe es selbst hinbekommen..:)
habe aus colEnd = Cells(datRow, Columns.Count).End(xlToLeft).Column
colEnd=121 gemacht..
vielen dank für deine Hilfe Ramses! Am liebsten würde ich dir gleich was spendieren..:)
Schönen tag noch:)

292 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige