A 回答 (3件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
>ユーザー定義型がNothingじゃなかったら
ユーザー定義型とは?
Type ユーザー定義型
aaa as string
bbb as integer
end Type
と宣言してあって、
Dim 変数 as ユーザー定義型
で変数がNothingであるかどうかを知りたいということ?
Nothingはオブジェクトに対しての比較なので、単なる型で定義されている変数はNothingにしようがありません。
この場合、Typeで型を宣言するのではなく、クラスを作成したら、質問者さんの望む事が可能かと思います。
いろいろやってみてたらよくわからないけど、
↓のようにすると望んだように動いてくれました。
If Not Not ユーザー定義型 Then
~処理~
End If
回答ありがとうございました。
No.2
- 回答日時:
私が知ってる限り、On Errorとかを使って・・・という無理矢理な方法しかないです。
そういうわけで私は
構造体(ユーザー定義型)→クラス
配列→コレクション
を使ってます。
いろいろやってみてたらよくわからないけど、
↓のようにすると望んだように動いてくれました。
If Not Not ユーザー定義型 Then
~処理~
End If
回答ありがとうございました。
No.3
- 回答日時:
他の方の指摘にあるように
ユーザー定義型は、値型なので、Nothing には、なりません。
くだらない例ですが
Type MyType
a As String
b As Integer
End Type
Public MyNothing As MyType '値が未設定な状態(デフォルト初期化状態)
Public Sub test()
Dim a As MyType
If a.a = MyNothing.a And a.b = MyNothing.b Then
MsgBox "yes"
End If
End Sub
みたいにすればどうでしょう。
メンバがそれぞれ未初期化のものと同じであるかどうかは、function にするといいかもしれません。
(未初期化が有効な値を表す場合には使えません)
いろいろやってみてたらよくわからないけど、
↓のようにすると望んだように動いてくれました。
If Not Not ユーザー定義型 Then
~処理~
End If
回答ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) 形式を選択して貼り付け 以下のコードで「元」シートと「先」シートのA列に同じ値があったら指定範囲をコ 5 2022/11/11 07:30
- Visual Basic(VBA) 【Excel VBA】自動メール送信の機能追加 5 2022/09/29 12:53
- Visual Basic(VBA) 【VBAエラー】Nextに対するForがありません 対策について 5 2022/11/21 21:26
- Excel(エクセル) エクセルVBAでオブジェクトが必要です 2 2022/09/10 16:37
- Visual Basic(VBA) エクセルVBAのコードで質問です。 下のコードはJ16の文字列をB3を起点とする範囲から探して、見つ 5 2023/04/07 11:07
- Visual Basic(VBA) [Excel VBA] このコードでは行の挿入や行の消去をすると13のエラーが出てしまう。 3 2022/12/09 00:29
- Excel(エクセル) フォルダ内のワードファイルをPDFに一括変換するVBA 3 2023/06/09 16:51
- Visual Basic(VBA) VBAが止まります。 2 2022/09/02 14:02
- Visual Basic(VBA) 【追加】ファイルを閉じてダイアログで保存した時だけ処理の実行をする 3 2022/03/23 15:43
- Visual Basic(VBA) エクセル VBAで複数セル選択時エラーになる問題 3 2022/10/04 02:40
このQ&Aを見た人はこんなQ&Aも見ています
-
プロが教える店舗&オフィスのセキュリティ対策術
中・小規模の店舗やオフィスのセキュリティセキュリティ対策について、プロにどう対策すべきか 何を注意すべきかを教えていただきました!
-
VB6 配列を初期化したい
Visual Basic(VBA)
-
VBの「As String * 128」とは?
Visual Basic(VBA)
-
VB6とVB.NETでNullの扱いが違う?
Visual Basic(VBA)
-
-
4
VB6のメモリ解放に関して
Visual Basic(VBA)
-
5
Form_Load と Form_Activate のタイミング
Visual Basic(VBA)
-
6
動的配列が存在(要素が有る)か否かを判定できますか?
Visual Basic(VBA)
-
7
配列を関数に渡す方法
Visual Basic(VBA)
-
8
Visual Basic 6.0 コンボボックスのChangeイベントが発生しません
Visual Basic(VBA)
-
9
構造体のコピー
Visual Basic(VBA)
-
10
構造体配列の特定のメンバーをFor~Eachで
Visual Basic(VBA)
-
11
VBで構造体の配列を関数に渡す方法?
Visual Basic(VBA)
-
12
ExcelVBA:パブリック オブジェクト モジュール…というエラーの対処法
Visual Basic(VBA)
-
13
VB6.0のIsNull関数に相当するもの
Visual Basic(VBA)
-
14
VB6 開発環境のエディタに行番号を表示
Visual Basic(VBA)
-
15
frxファイルの役目
Visual Basic(VBA)
-
16
コンパイルエラー:ユーザ定義型は定義されていません、と出るのですがどのライブラリファイルかわかりません。
Visual Basic(VBA)
-
17
DATE型変数を初期化する方法
Visual Basic(VBA)
-
18
VBプログラムの終了
Visual Basic(VBA)
-
19
ユーザー定義型変数の一括初期化
Visual Basic(VBA)
-
20
VB6.0-整数と余りを求める
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ユーザーフォームに別シートか...
-
現在のブックを閉じないで、マ...
-
【VBA】マクロの入ったファイル...
-
IEの通知バー制御ができなくなった
-
Excel VBA 定義されたプロージ...
-
Excel-VBAのmsgBox()の不思議
-
VBA初心者 Ctrl+での操作、ボタ...
-
VBA 複数条件の分岐処理の上手...
-
エクセルのマクロについて教え...
-
VBAに詳しい方教えてください。
-
エクセルのマクロについて教え...
-
エクセルのマクロについて教え...
-
ExcelVBA シート名を複数セルか...
-
FileCopy時のエラー
-
VBAで各列の"+"と"o"の合計数を...
-
エクセルのマクロについて教え...
-
エクセルのマクロについて教え...
-
エクセルのマクロについて教え...
-
エクセルのマクロについて教え...
-
VBA listBoxについて
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エラー(型が一致しません。)...
-
VB6でユーザー定義型がNothing...
-
関数定義について質問です 架空...
-
TextChangeイベントが発生しない
-
#define 文
-
LRESULTとHRESULT
-
ifdefとenum
-
fetchでreturnで戻り値
-
時間差を取得結果を求めるには
-
PHP + MySQL で登録時に重複チ...
-
jQueryの関数内の変数について...
-
VBS 名前定義の確認→ありかなし...
-
char[]とchar*
-
アクティブなウィンドウのみ、...
-
jQuery でドット含むカスタムイ...
-
関数内でのグローバル変数
-
【javaScript】KeyboardEventで...
-
VB.NET の配列の要素数
-
変な質問ですみません、n番目の...
-
c++ cmathとmath.h
おすすめ情報