- ベストアンサー
Emptyとしてるのに0が入る(アクセス)
フォーム上のコントロールに対して、 Sub あ() Form_フォーム1.Controls("cmb_年月").Value = Empty End Sub とすると、空白ではなく0がはいります。 cmb_年月には書式は何も設定していませんが、 値集合ソースに数値を設定しています。 だから、Value = Empty とすると0になるのでしょうか? Value = Nullにしたら空白になりました。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
関連するQ&A
- 【エクセル】ActiveCellはなぜNullではないのでしょうか?
私は今まで新規のシートを挿入した際のActiveCellは、Nullだと思っていたのですが Sub Empty空白なら() If ActiveCell.Value = Empty Then Debug.Print "空白セルです" End Sub Sub Null空白なら() If ActiveCell.Value = Null Then Debug.Print "空白セルです" End Sub Sub Null空白なら2() If IsNull(ActiveCell.Value) = True Then Debug.Print "空白セルです" End Sub VBAでこのコードを実行すると Emptyの方だけ「空白セルです」となりました。 (1)なぜ空白でもNullだと反応しないのでしょうか? (2)NullとEmptyの違いはなんですか? ご教授よろしくお願い致します。
- ベストアンサー
- オフィス系ソフト
- Nullについて
こんばんは!よろしくお願いします。 新規に作成したフォームにコンボボックスを設置して Sub test1() If Form_フォーム1.コンボ0.Value = Null Then Form_フォーム1.コンボ0.Value = "" End If MsgBox Form_フォーム1.コンボ0.Value End Sub Sub test2() If IsNull(Form_フォーム1.コンボ0.Value) = True Then Form_フォーム1.コンボ0.Value = "" End If MsgBox Form_フォーム1.コンボ0.Value End Sub 上記2つのサンプルを実行した時に、 test1のほうだけ 実行時エラー94 Nullの使い方が不正です。 となります。 ウォッチウインドウで見ていくと、 「オブジェクト変数、またはwithブロック変数が設定されていません。」 となりますが 「If Form_フォーム1.コンボ0.Value = Null Then」 を通過したら Nullになります。 何が起こっているのでしょうか?
- ベストアンサー
- オフィス系ソフト
- 「Form_フォーム1.テキスト1.Value = "" 」がうまくいかない。
VBAについての質問です。(オフィス2003) フォーム1にテキストボックス1を作成しました。 Module1に Sub test() If Form_フォーム1.テキスト1.Value = "" Then MsgBox "空白です" End If End Sub とコードを書き、テキストボックス1を空白の状態でtestを実行しても何も起こりません。 F8で一行づつ実行してみてみたら Form_フォーム1.テキスト1.Valueのところにカーソルを当てると Form_フォーム1.テキスト1.Value=Nullとなります。 どうすればテキストボックス1が空白なら「空白です」と表示させることが可能でしょうか? よろしくお願いします。
- ベストアンサー
- オフィス系ソフト
- Null と Empty ""
テキストボックスを空白にする際、 Me.テキスト0.Value = Null Me.テキスト0.Value = Empty Me.テキスト0.Value = "" どのコードがいい!などはありますか? 全てエラーにはならず空白になります。 「なるべくNULLを使ったほうがいい」などあれば 教えてください。 access2003です。 よろしくお願い致します。
- ベストアンサー
- オフィス系ソフト
- emptyが判定されない
マクロの記述が巧くいかないので質問させてください。 以下のようなマクロを組んでみたのですが、うまくいきません。 sub a() If Range("K1").End(xlDown).Offset(0, 12).Value = "" Or Range("K1").End(xlDown).Offset(0, 12).Value = Empty Then Range("K1").End(xlDown).Offset(0, 12).Value = "必要ない" End If end sub マクロ画面上でRange("K1").End(xlDown).Offset(0, 12).Valueにポイントすると「Empty値」と出てくるため、= "" の後に=Emptyと入れてみたんですが、文字の入力がされません。 よろしくお願いします。
- 締切済み
- その他MS Office製品
- テキストボックスなら空白にする
フォームにテキストボックス2つとコンボボックス2つを設置して、 規定値に値を設定し、 Private Sub cb_テキストボックスなら空白にする_Click() Dim ctl As Control For Each ctl In Me.Controls If ctl.ControlType = acTextBox Then ctl.Value = Empty End If Next ctl End Sub としたのですが何も起こりません。 空白にするにはどうすればいいでしょうか? あと、 ctl.Valueと打つ時に、 ドットの後に、Valueが一覧に出てきませんでした。 それが原因で空白にならないのでしょうか? ご回答よろしくお願いします。
- ベストアンサー
- オフィス系ソフト
- SelectedIndexChanged
SelectedIndexChangedイベント後、コンボボックスを空白にしたいのですが、 Private Sub cmb_コンボボックス_SelectedIndexChanged(sender As System.Object, e As System.EventArgs) Handles cmb_コンボボックス.SelectedIndexChanged Me.cmb_コンボボックス.Text = "" End Sub をしても何も起りません。空白にもならないしエラーにもなりません。 Me.cmb_コンボボックス.Text = Null は出来ないようです。 イベント後、自身のコントロールを空白にするコードを教えてください。ご教授よろしくお願いします。
- ベストアンサー
- Visual Basic
- 日付型と文字列型、両方にフィルタをするには
アクセス フォームで日付型(Between and)と文字列型、両方にフィルタをするには? Private Sub cmd_ボタン1_Click() Me.Form.Filter = _ "日付 Between #" & Me.cmb_日付1.Value & "# And #" & Me.cmb_日付2.Value & "#" & _ " and 会社名 like " & "*" & Me.cmb_会社名.Value & "*" Me.Form.FilterOn = True End Sub これのどこが変なのか教えていただけますか? 実行時エラー3075「クエリ式の構文エラー:演算子がありません。」というエラーになります。
- ベストアンサー
- オフィス系ソフト
- フィルターの文字列を空にしたいのですが
親フォームからサブフォームを閉じる時に、フィルターの文字列を空にしたいのですが Private Sub Form_Close() Me.Controls("F_SubMain").Form.Filter = Empty DoCmd.Save acForm, Me.Name MsgBox Me.Controls("F_SubMain").Form.Filter DoCmd.ShowToolbar "Ribbon", acToolbarYes End Sub としても、フィルターの文字が残ってしまいます。 親フォームにサブフォームに入れてるので、 そのサブフォームのフィルタの文字列を空白にしたいのですが DoCmd.Save acForm, Me.Name で保存できないようなのですが DoCmd.Save acForm, Me.Controls("F_SubMain").Form もエラーになりました。 こういうことをやりたい場合、どうすればいいでしょうか?
- ベストアンサー
- オフィス系ソフト
- Accessのコントロールの数え方
Access 2003のコントロールについてお教えください。 フォーム1というフォームにチェックボックスがいくつも配置されています。 チェックボックスがいくつ配置されているか知る方法はあるのでしょうか? また、いくつのチェックボックスにチェックが入っているか知る方法はあるでしょうか? ネットで検索したところ、下記のコードが約にたつような気がするのですが、どうやって活用すればよいのかがわかりません・・・・ For Each ctl In Me.Controls With ctl If .ControlType = acTextBox Then 'コントロールの種類がテキストボックスなら値をNull(空)に設定 .Value = Null End If End With Next ctl わかりでしたらお教えください。よろしくお願いします。
- ベストアンサー
- その他MS Office製品
お礼
ありがとうございます。