![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?5a7ff87)
いつもお世話になっております。
早速ですが、ExcelVBAでNZ関数を使いたいのですが、
「実行時エラー'429'
ActiveXコンポーネントはオブジェクトを作成できません。」
とエラーが出て、うまくいきません。
実現したい結果は、テキストボックスに入力された値に対して
Nullチェックし、Nullの場合、変数に"名無し"と入力するとった
処理です。
ロジックは以下のように書きました。
Dim strName As String
strName = Nz(txtName.text,"名無し")
環境は以下の通りです。
・Windows Vista Home Premium
・Excel2007
よろしくお願いします。
No.3ベストアンサー
- 回答日時:
Nz関数は、VBAのメンバではなく、Accessアプリケーションのメンバですので、
残念ながらExcelでは使用できません。
(下図を参照)
代替策としては、IIF関数とIsNull関数(ともにVBAのメンバ)を組み合わせるのが
簡単かと思います。
【現在】
strName = Nz(txtName.Text, "名無し")
【修正案・1】
strName = IIF(IsNull(txtName), "名無し", txtName.Text)
【修正案・2】
strName = txtName.Text & IIF(IsNull(txtName),"名無し", "")
![「ExcelVBAでのNZ関数について」の回答画像3](http://oshiete.xgoo.jp/_/bucket/oshietegoo/images/media/8/256939_5497ef7968ba7/M.jpg)
No.2
- 回答日時:
>ExcelVBAでのNZ関数
のExcelが間違いなければ、エクセルVBAの関数でNZ関数は無いのでは。
アゥセスとちょっとセル(ACCESSではフィールドの各セル)の未入力の考えが違うような気がする。
エクセルのセルでは""で判定してます。
>ActiveXコンポーネントはオブジェクトを作成できません
2007以前でのテストですが
Sub test01()
Dim strName As String
strName = Nz(txtName.Text, "名無し")
End Sub
を実行すると、NZで「SubまたはFunctionが定義されていません」とでます。
エラーを推測している場所が違うのでは。
関係ないとは思うが、2007で変わっていることが原因ならすみません。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) ACCESS DAO で不要なテーブルのフィールド(列)の削除 4 2022/06/23 12:13
- Visual Basic(VBA) access count数を変数に格納 2 2022/03/30 19:21
- Visual Basic(VBA) VBAのユーザーフォームのテキストボックスに入力制限をしたい 6 2022/11/15 08:28
- Visual Basic(VBA) VBAでWorkbook.addの使い方 3 2023/02/01 11:58
- PostgreSQL DBFluteについて質問です。 環境:PostgreSQL java8 前提:webアプリケーショ 1 2022/07/07 00:49
- Access(アクセス) アクセス テーブルの空白を変数に置換するボタンが作りたい 4 2022/07/08 11:19
- Visual Basic(VBA) エクセルのマクロについて教えてください。 7 2023/07/04 09:18
- その他(コンピューター・テクノロジー) 【Tableau Desktop】文字列から8桁の数字を日付型(yyyyMMdd)として取得 1 2023/07/31 10:17
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/07/15 15:48
- その他(コンピューター・テクノロジー) ChatGPT ExcelVBAの精度は3.5と4で違いはある? 1 2023/04/21 21:00
このQ&Aを見た人はこんなQ&Aも見ています
-
性格の違いは生まれた順番で決まる?長男長女・中間子・末っ子・一人っ子の性格の傾向
同じ環境で生まれ育っても、生まれ順で性格は違うものなのだろうか。家庭教育研究家の田宮由美さんに教えてもらった。
-
Access サブフォームでの選択行の取得
その他(データベース)
-
レコードを保存するコード アクセスvba
その他(Microsoft Office)
-
Excel VBAからAccessマクロを実行したい
Visual Basic(VBA)
-
-
4
日付型のフィールドに空白を入れる方法を教えてください
その他(データベース)
-
5
ListViewの行選択について
Visual Basic(VBA)
-
6
「RunSQL」と「Execute」の違い
Access(アクセス)
-
7
Accessで数値型にNULLをInsertするとエラー
その他(データベース)
-
8
access2003 クエリSQL文について
その他(プログラミング・Web制作)
-
9
どこにもフォーカスを当てたくない
Access(アクセス)
-
10
SQL文で パラメータが少なすぎます エラー
Access(アクセス)
-
11
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
12
実行時エラー3131 FROM 句の構文エラーです について
Access(アクセス)
-
13
Access VBA Me.Requery レコードは削除されています エラー
その他(データベース)
-
14
エクセル:マクロ「Application.CutCopyMode = False」って?
Excel(エクセル)
-
15
Accessのマクロでモジュールを実行させたい。
Access(アクセス)
-
16
レコード削除時に(サブ)フォームに表示される#Deleted"について"
Access(アクセス)
-
17
ACCESSで、EXCELのような、sumif関数のような関数ってありますか?
Access(アクセス)
-
18
VBAで先月、先々月を求める方法
Visual Basic(VBA)
-
19
VBAでエクセルシートを更新(リフレッシュ)する方法を教えて下さい。
Excel(エクセル)
-
20
Accessでテーブルの値をテキストボックスに代入するには?
Access(アクセス)
関連するカテゴリからQ&Aを探す
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
worksheetFunctionクラスのVloo...
-
「Columns("A:C")」の列文字を...
-
エクセルのVBAの標準モジュール...
-
VBAで既に開いている別アプリケ...
-
エクセルVBAでcode128のバー...
-
実行時エラー 3265「要求された...
-
「オブジェクト変数または With...
-
Excelでフィルタをかけると警告...
-
PowerPointVBAでスライドマスタ...
-
ExcelVBAで参照設定を自動に行う
-
エクセルマクロエラー「'Cells'...
-
オブジェクトが見つかりません
-
Excel VBA Collection.add で R...
-
[C#]static void 関数内でthis
-
テキストボックス中の文字列の...
-
VBA オブジェクトが空かどうか...
-
WordにOLEで埋め込んだExcelでW...
-
CLOBデータの取得方法
-
エクセルVBAでFor each文
-
VBAで作成するメール(開封確認...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
worksheetFunctionクラスのVloo...
-
「Columns("A:C")」の列文字を...
-
エクセルのVBAの標準モジュール...
-
実行時エラー 3265「要求された...
-
Excelでフィルタをかけると警告...
-
VBAで既に開いている別アプリケ...
-
エクセルマクロエラー「'Cells'...
-
テキストボックス中の文字列の...
-
VBAで Set wb = Sheets(1).Cop...
-
ある文字列が全て数字であるか...
-
VBAからPDFファイルにパスワー...
-
VBScriptでファイルの日時順(降...
-
EXCEL VBA オートシェイプナン...
-
[VBA]CDOメッセージ送信エラー
-
エクセルVBAで2つの画像を比較...
-
PowerPointVBAでスライドマスタ...
-
UserForm1.Showでエラーになり...
-
上下の位置揃えについて
-
VBAについてです。 初心者です...
-
VBAで作成するメール(開封確認...
おすすめ情報