|
▼peke さん:
おはようございます。
新規ブックの標準モジュールに
'==============================================================
Option Explicit
Sub sample()
With Range("a1:d10")
.Name = "データ一覧表"
.Formula = "=int(rand()*10000)+1"
.Value = .Value
MsgBox "数値のサンプルデータ作成" & _
vbCrLf & .Name.Name & " " & .Name.Value
End With
MsgBox "WorksheetFunction.Count(Range(""データ一覧表"").Columns(1)) = " & _
WorksheetFunction.Count(Range("データ一覧表").Columns(1)) & vbCrLf & _
"とデータが数値ならCount関数は正常に値を返しますが・・・"
'***********************************************************************************
With Range("a1:d10")
.Formula = "=CHAR(INT(RAND()*26)+65)"
.Value = .Value
MsgBox "文字列のサンプルデータ作成" & _
vbCrLf & .Name.Name & " " & .Name.Value
End With
MsgBox "WorksheetFunction.Count(Range(""データ一覧表"").Columns(1)) = " & _
WorksheetFunction.Count(Range("データ一覧表").Columns(1)) & vbCrLf & _
"とデータが文字列だとCount関数はカウントしません" & vbCrLf & vbCrLf & _
"これが原因ではないですか?"
End Sub
として、sampleを実行して表示される結果を検討してみてください。
今回のご質問に限ったことではありませんが、
同じコードでも扱うデータが違えば、結果が違うのは当然ですよね!!
どんなデータに対して、こんな結果がでました という
大事な大事な記述が抜けています。
又、"データ一覧表"という定義された名前についても
投稿ではpeke さんがどのように定義されたものなのか記述されていません。
この投稿を見ている方が全員、
peke さんが悩んでいる現象が再現できる投稿を
お願いします。
難しい(記述が面倒)ことですけど、きっと無駄になりませんから・・・。
|
|