Microsoft Excel

Herbers Excel/VBA-Archiv

Markieren schlägt fehl | Herbers Excel-Forum


Betrifft: Markieren schlägt fehl von: Space
Geschrieben am: 26.01.2010 11:59:00

Hallo,

ich würde gerne den Bereich wie im Code angegeben markieren um Formatierungen vornehmen zu können. Allerdings kommt immer der Felhler beim Kompilieren: Unzureichender oder nicht ausreichend definierter Verweis!

Sub
.....
'Bereich auswählen
.Range(.Cells(18, 1), .Cells(18, 1).End(xlDown)).Resize(, 23).Select


' Formatierungen vornehmen
Selection.Interior.ColorIndex = xlNone
Selection.Borders(xlDiagonalDown).LineStyle = xlNone
Selection.Borders(xlDiagonalUp).LineStyle = xlNone
Selection.Borders(xlEdgeLeft).LineStyle = xlNone
Selection.Borders(xlEdgeTop).LineStyle = xlNone
Selection.Borders(xlEdgeBottom).LineStyle = xlNone
Selection.Borders(xlEdgeRight).LineStyle = xlNone
Selection.Borders(xlInsideVertical).LineStyle = xlNone
Selection.Borders(xlInsideHorizontal).LineStyle = xlNone
Selection.Borders(xlDiagonalDown).LineStyle = xlNone
Selection.Borders(xlDiagonalUp).LineStyle = xlNone
With Selection.Borders(xlEdgeLeft)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlEdgeTop)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlEdgeBottom)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlEdgeRight)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
Selection.Borders(xlInsideVertical).LineStyle = xlNone
Selection.Borders(xlInsideHorizontal).LineStyle = xlNone
....
End Sub

Wie kan nich das beheben!
Vielen Dank!

Gruß
Space

  

Betrifft: AW: Markieren schlägt fehl von: Hajo_Zi
Geschrieben am: 26.01.2010 12:00:40

Hallo Unbekannte(r),

man könnte vermuten Du arbeitest mit With? Da geht kein Select, ist auch nicht notwendig.
Hinweise zu select usw.

GrußformelHomepage


  

Betrifft: dir fehlt der With-Rahmen von: Rudi Maintaire
Geschrieben am: 26.01.2010 13:02:45

Hallo,
in der Art:

Sub tt()
  .....
  'Bereich auswählen
  With Sheets(1)
    With .Range(.Cells(18, 1), .Cells(18, 1).End(xlDown)).Resize(, 23)
      
      ' Formatierungen vornehmen
      .Interior.ColorIndex = xlNone
      .Borders(xlDiagonalDown).LineStyle = xlNone
      .Borders(xlDiagonalUp).LineStyle = xlNone
      .Borders(xlEdgeLeft).LineStyle = xlNone
      .Borders(xlEdgeTop).LineStyle = xlNone
      .Borders(xlEdgeBottom).LineStyle = xlNone
      .Borders(xlEdgeRight).LineStyle = xlNone
      .Borders(xlInsideVertical).LineStyle = xlNone
      .Borders(xlInsideHorizontal).LineStyle = xlNone
      .Borders(xlDiagonalDown).LineStyle = xlNone
      .Borders(xlDiagonalUp).LineStyle = xlNone
      With .Borders(xlEdgeLeft)
        .LineStyle = xlContinuous
        .Weight = xlThin
        .ColorIndex = xlAutomatic
      End With
      With .Borders(xlEdgeTop)
        .LineStyle = xlContinuous
        .Weight = xlThin
        .ColorIndex = xlAutomatic
      End With
      With .Borders(xlEdgeBottom)
        .LineStyle = xlContinuous
        .Weight = xlThin
        .ColorIndex = xlAutomatic
      End With
      With .Borders(xlEdgeRight)
        .LineStyle = xlContinuous
        .Weight = xlThin
        .ColorIndex = xlAutomatic
      End With
      .Borders(xlInsideVertical).LineStyle = xlNone
      .Borders(xlInsideHorizontal).LineStyle = xlNone
    End With
  End With
  ....
End Sub

Gruß
Rudi


  

Betrifft: AW: dir fehlt der With-Rahmen von: Space
Geschrieben am: 26.01.2010 14:35:27

Hallo,

habe den With Rahmen eingefügt. Ein Problem gibt es dabei noch:

With .Range(.Cells(18, 1), .Cells(18, 1).End(xlDown)).Resize(, 23)

Der Code zählt nicht bis zum Schluss der Tabelle sondern nur bis zur ersten Zelle in Spalte 1 die leer ist oder aber mit einer anderen darunter liegenden Zelle verbunden ist. Ich würde aber gerne die gesamte Tabelle formatieren.

Wie kann man das lösen?
Vielen Dank für die Rückmeldung

Gruß
Space


  

Betrifft: AW: dir fehlt der With-Rahmen von: Rudi Maintaire
Geschrieben am: 26.01.2010 14:47:37

Hallo,
evtl.
With .Range(.Cells(18, 1), .Cells(rows.Count, 1).End(xlUp)).Resize(, 23)

oder aber mit einer anderen darunter liegenden Zelle verbunden ist.

Teufelswerk! Vermeide verbundene Zellen.

Gruß
Rudi


  

Betrifft: AW: dir fehlt der With-Rahmen von: Space
Geschrieben am: 26.01.2010 15:10:41

Hallo Rudi,

das hat geklappt !!!!

Danke!
Gruß
Space


Beiträge aus den Excel-Beispielen zum Thema "Markieren schlägt fehl"