bestimmten spaltenbereich auswählen



Excel-Version: 2000
nach unten

Betrifft: bestimmten spaltenbereich auswählen
von: Bernhard
Geschrieben am: 27.04.2002 - 16:30:40

Ich hab folgendes Problem: In einen bestimmten Bereich
(ActiveSheet.Range("C39:Y44").select)befinden sich Formeln. Nun soll die letzte Spalte (z.B. R39:R44) in der ein Wert größer Null ausgeben wird,makiert werden. Ich hab schon eine Weile mit select case rumprobiert, komm aber einfach nicht drauf. Hab dann als Tipp folgenden Vorschlag erhalten:

Dim bereich As Range
Dim col As Range

Set bereich = Range("C39:Y44")
For Each col In bereich.Columns
If Excel.WorksheetFunction.Sum(col) > 0 Then
col.EntireColumn.Select
End If
Next

klappt leider noch nicht - es werden immer vier bis sechs ganze Spalten markiert. Wer weiß Rat?

Gruß Bernhard

nach oben   nach unten

Re: bestimmten spaltenbereich auswählen
von: WernerB.
Geschrieben am: 27.04.2002 - 17:42:07

Hallo Bernhard, was hältst Du von diesem Makro:
Option Explicit Sub SpalteMarkieren() Dim Bereich As String, lo As String, ru As String Dim As Integer, sl As Integer, sr As Integer     Range("C39:Y44").Select     Bereich = Selection.Address(False, False)     lo = Left(Bereich, WorksheetFunction.Find(":", Bereich) - 1) 'links oben     ru = Right(Bereich, Len(Bereich) - InStr(Bereich, ":"))      'rechts unten     sl = Range(lo).Column                                        'Spalte links     sr = Range(ru).Column                                        'Spalte rechts     For i = sr To sl Step -1       If Application.WorksheetFunction.Sum(Range(Cells(39, i), Cells(44, i))) > 0 Then         Range(Cells(39, i), Cells(44, i)).Select         Exit For       End If     Next i End Sub
Viel Erfolg wünscht WernerB.

nach oben   nach unten

hänge noch bestimmten spaltenbereich auswählen
von: bernhard
Geschrieben am: 27.04.2002 - 19:54:23

Danke für die rasche Antwort, leider klappts noch nicht. Bleibt hängen bei: lo = Left(Bereich, WorksheetFunction.Find(":", Bereich) - 1) 'links oben dem zweiten Bereich (Meldung: Variable nicht definiert - dabei ist sies doch oder? Gruß Bernhard

nach oben   nach unten

Re: hänge noch bestimmten spaltenbereich auswählen
von: WernerB.
Geschrieben am: 27.04.2002 - 20:22:29

Hallo Bernhard, bei mir (Excel '97) läuft das Makro ohne Beanstandung durch; das "Hängenbleiben" kann ich so nicht nachvollziehen. Die Variable 'lo' ist auch definiert (as String). Man kann sie aber auch mit einer anderen Methode mit einem Wert belegen, was ich jetzt gemacht habe. Ich hoffe, dass es so nun auch bei Dir klappt:
Option Explicit Sub SpalteMarkieren() Dim Bereich As String, lo As String, ru As String Dim As Integer, sl As Integer, sr As Integer     Range("C39:Y44").Select     Bereich = Selection.Address(False, False)     lo = Left(Bereich, InStr(Bereich, ":") - 1)                  'links oben     ru = Right(Bereich, Len(Bereich) - InStr(Bereich, ":"))      'rechts unten     sl = Range(lo).Column                                        'Spalte links     sr = Range(ru).Column                                        'Spalte rechts     For i = sr To sl Step -1       If Application.WorksheetFunction.Sum(Range(Cells(39, i), Cells(44, i))) > 0 Then         Range(Cells(39, i), Cells(44, i)).Select         Exit For       End If     Next i End Sub
Viel Erfolg wünscht WernerB.

nach oben   nach unten

Re: hänge noch bestimmten spaltenbereich auswählen
von: Bernhard
Geschrieben am: 28.04.2002 - 11:03:45

Hallo Werner! Danke nochmals für deine Hilfe! Nun klappts. Mein Fehler waren Leerstellen, die ich durchs Kopieren wohl miteingeschleppt hatte. Gruß und noch ein schönes Wochenende wünscht Bernhard

 nach oben

Beiträge aus den Excel-Beispielen zum Thema "bestimmten spaltenbereich auswählen"