
Function mycount(y As Range)
Dim num As Integer
Dim c As String
Dim a As Range
c = y.Address
For Each a In Range(c)
If a.Text = ">" Then
num = num + 1
End If
Next a
mycount = num
End Function
この関数を定義して,ワークシート上で=mycount("範囲")と入力するとその範囲内に">"のマークがいくつあるかを返します。この場合,引数yで指定された範囲のアドレスをcに入れていますが,yのアドレス取得せずにfor each a in range(y)としても正しい値を返してくれません。なぜでしょうか?
また同じような問題で(サブプロシージャで)
dim dat as range
set dat = application.inputbox()
とした時,このdatにはいったい何が入っているのですか?
No.1ベストアンサー
- 回答日時:
>yのアドレス取得せずにfor each a in range(y)としても正しい値を返してくれません。
for each a in y が正しいでしょう。
y はRange オブジェクトなので、改めてRange()に入れる必要はありません。
>set dat = application.inputbox()
application.inputbox() の戻り値(値の取得方法)として、セル情報(Range)を取得する事が可能です。
そのような指定がしてあれば、選択されたセル(範囲)の情報を入れる事が可能です。
早速の回答ありがとうございました。
なるほど,yはRangeオブジェクトだったからRange(y)とした場合に不具合が起きてしまったのですね。納得いきました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) 形式を選択して貼り付け 以下のコードで「元」シートと「先」シートのA列に同じ値があったら指定範囲をコ 5 2022/11/11 07:30
- Visual Basic(VBA) VBAの繰り返し処理について教えてください。 3 2022/08/02 13:21
- Visual Basic(VBA) ExcelVBAに関する質問 3 2023/02/17 10:47
- Excel(エクセル) excel2013 色付きセルの値合計 3 2023/02/28 11:48
- Visual Basic(VBA) VBAが止まります。 1 2022/09/02 14:51
- Excel(エクセル) エクセルで書式設定とフィルタの組み合わせでうまく行かないのですが 4 2022/10/07 10:02
- Excel(エクセル) 日付で矢印マクロ 4 2023/07/25 16:47
- Excel(エクセル) VBA フォルダ見える化のコードについて 2 2023/06/19 15:04
- Excel(エクセル) B列に文字がはいったらA列に数字が入るマクロードを完成させたい 4 2023/04/21 01:58
- Visual Basic(VBA) 前回ご教授いただいたコードに覚えたてのループ処理で品名りんごAから順に20回for nextでループ 7 2023/01/13 22:01
このQ&Aを見た人はこんなQ&Aも見ています
-
エクセルのラベルの値(文字列)を垂直方向で中央揃えにするには?
Excel(エクセル)
-
EXCEL VBAで全選択範囲の解除
Excel(エクセル)
-
VBAでエクセルシートを更新(リフレッシュ)する方法を教えて下さい。
Excel(エクセル)
-
-
4
エクセルのエラーメッセージ「400」って?
Visual Basic(VBA)
-
5
エクセル・マクロでグラフを最背面に移動させたい
Excel(エクセル)
-
6
TextBoxコントロールを引数として渡すには?
その他(教育・科学・学問)
-
7
配列でデータが入っている要素を求める方法
Visual Basic(VBA)
-
8
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
9
Application.Runエラー(1004)
Excel(エクセル)
-
10
VBAでワークシートを引数としてサンプル関数に渡したい
Visual Basic(VBA)
-
11
worksheetFunctionクラスのVlookupプロパティを取得できません エラーへの対応
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Vba Array関数について教えてく...
-
【マクロ】シートの変数へ入れ...
-
【マクロ】並び替えの範囲が、...
-
エクセルのVBAコードと数式につ...
-
エクセルのマクロについて教え...
-
エクセルの改行について
-
【VBA】 結合セルに複数画像と...
-
vbsでのwebフォームへの入力制限?
-
算術演算子「¥」の意味について
-
【マクロ】売上一覧YYYYMMDDHHS...
-
【マクロ】開いているブックの...
-
Vba セルの4辺について罫線が有...
-
vb.net(vs2022)のtextboxのデザ...
-
ダブルクリックで貼り付けた画...
-
VBAの「To」という語句について
-
VBAでユーザーフォームを指定回...
-
VBAでCOPYを繰り返すと、処理が...
-
【マクロ】変数を使った、文字...
-
エクセルのVBAコードについて教...
-
ワードの図形にマクロを登録で...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Vba セルの4辺について罫線が有...
-
vbsでのwebフォームへの入力制限?
-
【ExcelVBA】5万行以上のデー...
-
【マクロ】売上一覧YYYYMMDDHHS...
-
【マクロ】開いているブックの...
-
【マクロ】並び替えの範囲が、...
-
エクセルの改行について
-
エクセルのマクロについて教え...
-
vb.net(vs2022)のtextboxのデザ...
-
VBAでCOPYを繰り返すと、処理が...
-
VBA ユーザーフォーム ボタンク...
-
エクセルのVBAコードと数式につ...
-
エクセルのVBAコードについて教...
-
[VB.net] ボタン(Flat)のEnable...
-
【マクロ】変数を使った、文字...
-
改行文字「vbCrLf」とは
-
質問58753 このコードでうまく...
-
【マクロ】シートの変数へ入れ...
-
ワードの図形にマクロを登録で...
-
算術演算子「¥」の意味について
おすすめ情報