Spaltenformate anhand Suchbegriff setzen
16.07.2003 17:47:07
Stephan Schäfer
Ich habe ein Makro, mit dem ich alle Spalten einer Excel, bei denen als Überschrift (in Spalte 1) das Wort "Rabatt" vorkommt in Prozent formatieren möchte.
Dazu überprüfe ich zuerst, wieviele solche Spalten es gibt und dann sollen diese Spalten formatiert werden.
Allerdings hab ich irgendwo einen Denkfehler... Die Prozedur funktioniert, allerdings läuft es nicht einmal durch für die Spalten (in den Excels, wo es eingesetzt werden soll, kann es von 0 - 3 Spalten dieser Art geben) sondern insgesamt 42x (die Zahl ist enstanden, weil es max 42 verschiedene Spalten geben kann), was natürlich nicht gewünscht ist.
Wo liegt mein Fehler?!
Vielen Dank schon im Vorraus für jegliche Anregungen!
Sub fProzent_format()
On Error GoTo Err_sucheInfo
Dim r As Range
Dim s As String
Dim v As Variant
Dim i As Variant
Dim x As Variant
' Suchbegriff
Range("A1").Select
For i = 1 To 44
If Cells(i, 1) = "Rabatt" Then Exit For
Next i
i = i - 1
For x = 1 To i
s = "Rabatt"
Set r = Cells.Find(What:=s, After:=ActiveCell, LookIn:=xlFormulas, _
lookat:=xlPart, SearchOrder:=xlByRows, _
SearchDirection:=xlNext, _
MatchCase:=False)
Columns(r.Column).Select
Selection.NumberFormat = "0.00%"
Next x
Exit Sub
Err_sucheInfo:
MsgBox Err.Description
End Sub