セルタイプの判定
TypeName らしいです。 isなんちゃらじゃないのね
For i = 2 To 300 ' 縦方向のスキャン
j = ActiveSheet.Cells(i, 3)
If TypeName(j) = "Double" Then
strNew = Format(Int(j / 10000), "###") + "-" + Format(j Mod 10000, "0###")
ActiveSheet.Cells(i, 3) = strNew
End If
Next i
最終行まで、一括変換するVBA
Dim i As Integer
Dim j As Integer
Dim nLastRow As Integer
' ワークシートの最終行を得る
nLastRow = ActiveSheet.Cells.SpecialCells(xlLastCell).Row
For i = 1 To nLastRow
For j = 2 To 5
'行列の指定 : Cells(Row,Column)
If TypeName(ActiveSheet.Cells(i, j).Value) <> "Empty" Then ActiveSheet.Cells(i, j) = ActiveSheet.Cells(i, j) / 100
Next j
Next i