Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema MsgBox
BildScreenshot zu MsgBox MsgBox-Seite mit Beispielarbeitsmappe aufrufen

Spalte suchen, nach Sichtbarkeit

Betrifft: Spalte suchen, nach Sichtbarkeit von: Basti
Geschrieben am: 23.08.2004 12:02:12

Ich habe einen großen Montageplan, bei dem das Anfangsdatum jedoch immer verschieden ist.

Es sind immer einige Spalten ausgeblendet.
Ich hab mir überlegt, ab Spalte AB (28) alle weitern Spalten durchzulaufen, ob sie sichtbar sind.
Die erste Spalte die sichtbar ist muss das abbruch kriterium sein.
Ich weiss nicht, wie ich das am besten mit VBA umsetzten kann.
Mit VB haette ich da schon möglichkeiten, jedoch hab ich das irgendwo mal gesehen, dass man ueber Columns("i") oder so aehnlich die spalten durch zählt.

danke basti

  


Betrifft: AW: Spalte suchen, nach Sichtbarkeit von: Boris
Geschrieben am: 23.08.2004 12:08:59

Hi Basti,

z.B. so (ausgegeben wird die Spaltennummer VOR der ausgeblendeten):

Option Explicit

Sub til()
Dim C As Range
For Each C In Columns("AB:IV")
    If C.Hidden Then
        MsgBox "Abbruch bei Spalte Nr.: " & C.Offset(0, -1).Column
    End If
Next C
End Sub


Grüße Boris


  


Betrifft: AW: Spalte suchen, nach Sichtbarkeit von: Basti
Geschrieben am: 23.08.2004 12:19:07

jo danke so in der art hab ich das gedacht.
gibts da irgendwie ein abbruch kriterium fuer next c?

ich will nur die erste sichtbare Spalten ausgegeben haben.

danke basti!


  


Betrifft: Exit Sub von: Boris
Geschrieben am: 23.08.2004 12:21:53

Hi Basti,

Option Explicit


Sub til()
Dim C As Range
For Each C In Columns("AB:IV")
    If C.Hidden Then
        MsgBox "Abbruch bei Spalte Nr.: " & C.Offset(0, -1).Column
        Exit Sub
    End If
Next C
End Sub


Grüße Boris


  


Betrifft: AW: Exit Sub von: Basti
Geschrieben am: 23.08.2004 12:24:56

jop danke habs aber schon anders gelöst:)

der zaehlt aber ein feld zu wenig bei mir, kann ich da jetzt einfach +1 machen, oder is das ne ausnahme?

hab das jetzt bei 10 tabellen ausgetetest und jedesmal tritt der fehler ein


  


Betrifft: AW: Exit Sub von: Boris
Geschrieben am: 23.08.2004 12:36:34

Hi,

jop danke habs aber schon anders gelöst:)
Und wie?

der zaehlt aber ein feld zu wenig bei mir, kann ich da jetzt einfach +1 machen, oder is das ne ausnahme?
Ich hab ja geschrieben, dass im Ergebnis die Spalte VOR der ausgeblendeten ermittelt wird...(C.Offset(0, -1).Column)

hab das jetzt bei 10 tabellen ausgetetest und jedesmal tritt der fehler ein
?

Grüße Boris


  


Betrifft: AW: Exit Sub von: Basti
Geschrieben am: 23.08.2004 12:41:18

Sub til()
Dim C As Range
Dim a As Integer
a = 0
For Each C In Columns("AB:IV")
If C.Hidden = False Then
If a = 0 Then
a = C.Offset(0, -1).Column + 1
End If
End If
Next C
MsgBox (Cells(3, a))

achso ok habs kapiert was du mit vor meintest und denke, das ist jetzt so fehlerlos!

dank dir! Basti


  


Betrifft: C.Offset(0, -1).Column + 1 ist... von: Boris
Geschrieben am: 23.08.2004 12:44:28

Hi Basti,

...doppelt und dreifach - erst -1, dann wieder + 1.

C.Column ist dann die Spalte, die ausgeblendet ist.

Grüße Boris


  


Betrifft: AW: C.Offset(0, -1).Column + 1 ist... von: Basti
Geschrieben am: 23.08.2004 12:48:35

jaja sry, hab das vllt falsch erklärt.
Die ersten Zeilen sind ausgeblendet und die erste die nicht ausgeblendet ist, sollte wiedergegeben werden.

Aber egal hauptsache das funtzt jetzt.

Ich blick durch den restlichen Code nach 3 Wochen Urlaub schon nich mehr ganz durch, da is das wirklich net wichtig, ob da jetzt -1 und dann +1 is ;)

also danke! Basti


 

Beiträge aus den Excel-Beispielen zum Thema "Spalte suchen, nach Sichtbarkeit"