• ベストアンサー

テキストボックスが空白の時、セルに入力"しない"

ユーザーフォームにて、テキストボックスに入力されている文字や数字をユーザーフォーム内の"入力開始ボタン"を押したら、セル(A1)に入力されるように設定しています。 しかし、別のセル(C1)に A1 × B1 = X   という式が入力されており、テキストボックスが空白の状態で入力開始ボタンを押したら、セル(A1)に文字が打ち込まれたとカウントするのか、正しく計算できなくなります(A1を選択してデリートするとXに正しく0と表示されます)。 そこで、テキストボックスに文字か数字が打ち込まれている時のみセル(A1)に入力されるようにしたいのですが、回答宜しくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
noname#187541
noname#187541
回答No.1

こんにちは。 入力開始ボタンのコードの先頭に If Me.TextBox1.Text = "" Then Exit Sub といれるのはどうでしょうか。

uchitarou
質問者

お礼

できました。 こういう時って If ・・・ Then ・・・ でくくるのですね。 勉強になりました。 ありがとうございました。

関連するQ&A

  • テキストボックスへにセル値の入力

    エクセルマクロの初心者で恐縮なのですが、ユーザーフォームのテキストボックスに下記のようなことは可能でしょうか? 例1)ユーザーフォーム上にある「テキストボックス」に「オプションボタン1」を選択するとワークシートのセル値を入力(反映)することは可能でしょうか? 例2)次に、「オプションボタン2」を選択すると、例1でテキストボックスに入力(反映)した値を消去し、かつ、このテキストボックスに数値を直接入力したら、ワークシートの別セルに入力した数値が反映されるようにすることは可能でしょうか? 例1・2)についてどのようなマクロを組めばよいのでしょうか? マクロにお詳しい方、大変申し訳ございませんか、ご指導お願いいたします。

  • セルの値をユーザーフォームのテキストボックスに

    エクセルの質問です。 シート1にボタンを設置してユーザーフォームを呼び出すようにしています。 ユーザーフォームにテキストボックスを用意してて、シート1のセル(A1)に記入された数字を、ボタンを押した時に立ち上がったユーザーフォームのテキストボックスに表示されるようにしたいのですが、どうしたらいいのでしょうか?

  • テキストボックスのセルへの入力について

    初めて利用します。どうしても分からず利用します。 よろしくお願いいたします。 A2セルにMATCH関数にて取得したセル番地が表示されています。 ユーザーフォームのテキストボックスの値をA2セルに表示されたセル番地へ 入力するにはどうしたら良いでしょうか。 ご回答よろしくお願いいたします。

  • VBA 空白テキストボックスカウント

    こんにちは、よろしくお願いします。 ユーザーフォーム上にテキストボックスが 1-31が4段あります。 1-31には数字が入っているところもあれば、空白の所もあります。 このなかの数字が入っているテキストボックスの数をカウント したいのですがうまくいきません。 自分なりにやってみたこと テキストボックスの空白を数えて Dim i As Integer For i = 1 To 31 If Controls("TextBox" & i).Value = "" Then s_su.Text = Exit Sub s_suはカウントされた数字を表示するテキストボックスです。 上の式の =の右側に何を書いたらいいかがわかりません。 純粋に空白のテキストボックスを数えることは可能でしょうか。 また上記のテキストボックスを1-31数字の合計を別のテキストボックスに 表示しようと思いますが、 val(TextBox1.Text) + val(TextBox2.Text)~これを31回書いてますが もっとスマートに書けるようなコードはありますか。

  • テキストボックスの値をセルに反映させたい。

    はじめまして、いつもお世話になっております。 EXCEL VBAの質問です。 下記(1)(2)の質問にお答えいただきたく、お願いいたします。 (1)ユーザーフォームのテキストボックスの値をEXCELのデータが入力されている 最終行の下の空白にユーザーフォームのボタンをクリックして反映。 (2)(1)の逆で特定のセルの値をユーザーフォームのテキストボックスに反映。 色々なサイトのプロシージャをコピペしましたが、うまくいきません。 見づらいかもしれませんが、ユーザーフォームの画像を添付します。 皆様、よろしくお願いいたします。

  • 【エクセルのマクロ】テキストボックスが空白でもエラーが出ないようにしたい

    エクセルを使って、ユーザーフォームのテキストボックスに入力した小数点を含む数字をコピー、もし入力されていなければセルの中を消すマクロを書いていて、次のようなプログラムをテキストボックスとおなじユーザーフォームにあるボタンに取り付けました。 n3 = (n_3.Text) If n3 = Empty Then Range("j23").ClearContents Else Range("j23").Value = n_3 End If しかし、この方法だとコピーした数字が文字列として保存されてしまい、 計算に不向きなので、数字データとしてコピーするためにいちばん上の行に Dim n3 As Single と入れたところ、テキストボックスが空白の場合”型が一致しません”と表示されてエラーが出てしまいます。 調べたところ、Emptyという言葉はSingleのデータ型には使えないことまではわかったのですが、代わりにどのような言葉を使えばよいのかがわかりませんでした。 どなたかEmptyの代わりとなるような言葉か、プログラムを教えていただけないでしょうか?

  • テキストボックスへの入力

    アクセス97にてソフト開発をしております フォームAの「合計」テキストボックスに表示されている数字を、フォームAを閉じたときにフォームBの「金額」テキストボックスに入力できるようにしたいのですが、 どの様にすればいいのでしょうか この二つのテキストボックスはODBCリンクテーブルと連結しています

  • VBAでユーザーフォームのテキスト等に空白欄があった場合に、メッセージボックスが出るようにしたい

    今VBAでシミュレーションソフトを作っていますが、 ユーザーフォームのテキスト、リストボックスで入力されたものが、処理されて結果が出るようにしています。 そのなかで、空白のテキスト等があった場合、間違った結果が出力されるので、空白テキストが出ないようにメッセージボックスが出るようにしたいのです。 テキストはTB1~TB6 リストボックスはLB1~LB6 あります。 入力ボタンを押すと どれかひとつでも空白があればメッセージボックスが出力され、 ユーザーフォームに戻るようにしたいです。 ご回答よろしくお願いします

  • テキストボックスをセルへ。

    3つ聞きたいです。 ユーザーフォームのテキストボックスに記入した内容を 最終行を取得して、指定の列にコメントを入力させるためには どうするのがいいでしょうか。下記で、エラーが出てしまいます。 .cells(lrow + 1, "c").addcomment = textbox5.value それと、一つのテキストボックスの内容を複数の セルへ記入させるには、下記をどうすればいいですか。 .cells(lrow + 1, "X:Z").value = textbox6.value あと、ショートカットキーで(例えば、CTRL + Q) ユーザーフォームを起動させるにはどうすればよいですか。 するとしたら、そのコードはどこに表示させるのがいいでしょうか。 いろいろ、お願いですが教示お願いします。

  • テキストボックスに入力された値を取得する方法

    よろしくお願いします。 フォームにテキストボックスを配置し、ユーザーに文字を入力してもらいます。 OKボタンを押すと、その文字を取得できるようにしたいです。 VBだと・・・ Textbox1.value = a (aは変数) みたいな感じで変数に代入するだけでよかったと思うんですが・・・ どのように書いたら良いでしょうか?

    • ベストアンサー
    • Java

専門家に質問してみよう