
例えば
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ランキング
-
エクセル2010の内容を次のシー...
-
同一ブック内・別シートの内容...
-
excel sheet の整理をしたいです
-
excel
-
エクセルで特定の列が0表示の場...
-
教えて下さい
-
Excel・Word リサーチ機能を無...
-
VBAでfunctionを利用しようとし...
-
特定のPCだけ動作しないVBAマク...
-
配列数式の解除
-
Excel マクロ VBA プロシー...
-
Excel_マクロ_現在開いているシ...
-
Excel VBAからAccessマクロを実...
-
お助けください!VBAのファイル...
-
UserForm1.Showでエラーになり...
-
ExcelのVBA。public変数の値が...
-
ExcelVBAでPDFを閉じるソース
-
メッセージボックスのOKボタ...
-
エクセルで別のセルにあるふり...
-
一つのTeratermのマクロで複数...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
excelのInitializeイベントとAc...
-
ACCESSのVBAにてExcelのシ...
-
同一ブック内・別シートの内容...
-
Excelマクロ 別シートへ連続コ...
-
エクセルVBAでブックの分割
-
エクセル2010の内容を次のシー...
-
ExcelVBA: 5行ごとにテキスト...
-
複数のシートでマクロの実行
-
エクセルマクロ シートの追加
-
excel sheet の整理をしたいです
-
VBAで繰り返し処理の速度を...
-
ExcelVBAを使っての振り分け処理
-
VBAについて
-
オートシェイプの不具合について
-
【VBA】セルとシート操作の繰り...
-
excel
-
複数シート内容を1 シートに纏...
-
配列数式の解除
-
特定のPCだけ動作しないVBAマク...
-
マクロOn Error GoTo ErrLabel...
おすすめ情報