AW: Programm -> Debug jedoch kein Fehler
20.06.2007 11:23:28
ingUR
Hallo, yosherl,
da wohl die Befehlszeile Range("B:D,K:K,N:S,W:" & EndColumn$).EntireColumn.Hidden = True, bei Vorgabe von EndColumn$, vollkommen unabhängig von dem übrigen Befehszeilen betrachtet werden kann, habe ich diese in eine Testprozedur gelegt und mit verschieden Werten für EndColumn$ getestet.
Option Explicit
Sub Fehler()
Dim LastLine As Long, NumOfColumns As Integer, EndColumn As String, PartDetail As String
EndColumn = "XX"
Range("B:D,K:K,N:S,W:" & EndColumn).EntireColumn.Hidden = True
MsgBox "Hidden ausgeführt mit ::" & EndColumn & ":: ausgeführt"
Columns.Hidden = False
Range("A2").Activate
End Sub
Mit Ausnahme, dass der String EndColumn$ ein führendes oder/und nachgestelltes Leerzeichen enthält, konnte ich keinen Fehler erzeugen, wenn der String aus zwei Buchtsaben des Alphabets besteht. selbst "XX" funktioniert bei einer EXCEL-Version, deren letzte Spalte eigentlich nur "IV" sein kann.
Wenn allerdings EndColumn$, bei ähnlichem aussehen wie eine Zulässige Spaktenbeschriftung, Leerzeichen enthält (s.o.; könnte durch Trim(EndColumn) als Rangebeschreibung abgefangen werden) oder aus drei Zeichen besteht oder aber eine Zahl enthält, dann führt es zum 1004er-Fehler, der allerdings auch nicht mit F5 ignoriert werden kann.
Hier wäre es nun also hilfreich, wenn Du beschreiben könntest, wie die Routine zur Wandlung der Spaltenzahl in eine Zeichenkette bei dir funktioniert und/oder mit welchen Stringinhalt für EndColumn$ der Fehler generiert wird, der dann mit F5 "aufgehoben" werden kann.
Gruß,
Uwe