例えば
Sub tset1()
Dim mystr As String
mystr = "aaa"
If IsNumeric(mystr) = True Then
MsgBox "数値です"
End If
If IsText(mystr) = True Then
MsgBox "文字です"
End If
End Sub
と言うコードを作ったのですが、
数値かどうかはIsNumericで判断できますが
文字列かどうかを判断したい時にIsStringはないようなのでIsTextを使うのかな?
とおもったのですが、コンパイルエラーになるようです。
IsNumericはInformationクラスのようですが
IsTextはWorksheetFunctionクラスのようです。
だからIsNumericとIsTextの使い方が違うのでしょうか?
文字かどうか評価するIsTextの使い方をご教授ください。
No.1ベストアンサー
- 回答日時:
WorksheetFunction オブジェクトというのはワークシート関数、すなわちワークシートのセルに入力して使うための関数のことです。
おなじみ SUM とか VLOOKUP とか、そういうのです。Excel VBA では、「WorksheetFunction.IsText (数式)」などと「.関数名」(今回の場合は ISTEXT 関数)を続けて書くことにより、多くのワークシート関数が利用できます(※)。
※使えないものもあるので、VBE ヘルプの「Visual Basic で使用できるワークシート関数一覧」参照
ワークシート関数を使ったほうが簡潔なコードで必要な処理ができることもあります。折角たくさん用意されているので、コーディングの際には、何か使えるものがないか確認しておくとよいと思います。
IsNumeric は VBA 関数なので、オブジェクトの記述は不要で、いきなり関数名から書くことができます。
また、InStr 関数というのもありますから、VBE ヘルプで調べてみてください。そこらへんに調べたいワードを何でもかんでもタイプし、F1 キーを押すだけです。InStr と不等号を併用すれば、ご希望のことができるかもしれませんよ。
次の構文もご参考に。
If 条件 Then
処理
ElseIf 条件 Then
処理
'Else ←処理が必要な場合は「'」を外す
' 処理 ←処理が必要な場合は「'」を外す
End If
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) InputBoxでキャンセルボタンを押したらファイル自体を閉じたい 3 2022/07/23 17:52
- Visual Basic(VBA) 【再々投稿】VBAのプログラムで動作しなくて困っています 8 2022/10/14 09:06
- Visual Basic(VBA) VBAのトグルボタンでのマクロについて質問です 3 2022/10/10 17:23
- Visual Basic(VBA) まとめシートから集計シートへA列のコードが一致したら1行コピーするマクロをネット上で見つけました。こ 1 2022/08/30 14:11
- Visual Basic(VBA) 【再投稿】VBAで動作しなくて困っています 2 2022/10/11 11:05
- Visual Basic(VBA) 実行時エラー´5854´ 文字列型パラメーターが長すぎます。 3 2023/06/08 21:17
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 1 2023/02/02 09:25
- Visual Basic(VBA) 数字が「0」の列を削除するため、下記のコードを実行しましたが、コンパイルエラーSubまたはFunct 3 2022/12/04 00:00
- Visual Basic(VBA) VBAで日付入力しているのですが 4 2023/03/02 11:25
- Excel(エクセル) 2つのVBAを一緒にしたら機能しなくなりました(エクセル) 7 2022/06/02 12:41
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルVBAで名前の決まってい...
-
excelのInitializeイベントとAc...
-
ACCESSのVBAにてExcelのシ...
-
Excel・Word リサーチ機能を無...
-
特定のPCだけ動作しないVBAマク...
-
配列数式の解除
-
メッセージボックスのOKボタ...
-
UserForm1.Showでエラーになり...
-
エクセルのマクロについて教え...
-
教えて下さい
-
エクセルで特定の列が0表示の場...
-
Excel マクロ VBA プロシー...
-
一つのTeratermのマクロで複数...
-
マクロで空白セルを詰めて別シ...
-
特定文字のある行の前に空白行...
-
文字列内で括弧を使うには
-
マクロで"#N/A"のエラー行を削...
-
エクセルのマクロについて教え...
-
End Sub が必要です。
-
ExcelのVBA。public変数の値が...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
excelのInitializeイベントとAc...
-
ACCESSのVBAにてExcelのシ...
-
Excelマクロ 別シートへ連続コ...
-
エクセルVBAでブックの分割
-
オートシェイプの不具合について
-
「IsText」の使い方を教えてく...
-
エクセル2010の内容を次のシー...
-
EXCELで1シートのデータを複数...
-
「シートを削除しますか」のメ...
-
CSVファイルの読み込みVBA作成...
-
VBA処理でこんな条件処理ってで...
-
エクセル2007 マクロについて...
-
エクセルVBAで名前の決まってい...
-
別のシートの文字列を他のシー...
-
【VBA】3個のワークブックから...
-
ExcelVBAを使っての振り分け処理
-
VBAで繰り返し処理の速度を...
-
複数シート内容を1 シートに纏...
-
同一ブック内・別シートの内容...
-
エクセルマクロ シートの追加
おすすめ情報