Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


9638 / 13644 ツリー ←次へ | 前へ→

【26239】新規フォームと日付の記入について レオン 05/6/29(水) 11:43 質問[未読]
【26240】Re:新規フォームと日付の記入について MARBIN 05/6/29(水) 11:53 回答[未読]
【26249】Re:新規フォームと日付の記入について レオン 05/6/29(水) 14:38 質問[未読]
【26251】Re:新規フォームと日付の記入について MARBIN 05/6/29(水) 15:54 発言[未読]
【26254】Re:新規フォームと日付の記入について レオン 05/6/29(水) 16:44 お礼[未読]
【26241】Re:新規フォームと日付の記入について MARBIN 05/6/29(水) 11:58 発言[未読]

【26239】新規フォームと日付の記入について
質問  レオン  - 05/6/29(水) 11:43 -

引用なし
パスワード
   レオンと申します。

失礼ながら2つほど質問させていただきます。
まず1つめですが、
登録フォームを作成しました。エクセル上にボタン(新規登録)
を作成し、そのボタンを押すことで登録フォームの表示をさせ
ています。この新規登録ボタンを押した時点で前回の記入内
容をすべてクリアするコードはどのようにしたらいいのでしょう
か?コードの中にそれぞれの欄を削除することを記せば可能
だと思ったのですが、記入欄が多数あるのでもう少し簡便な
方法はないかと思い質問させていただきます。

2つめですが、日付を記入するところで、コンボボックスを使っ
て、「月」と「日にち」を別々に選択するようにしています。
その後、ワークシートに転記する際に「6/29」と表示させたいと
考えています。その時に、

= .ComboTsuki.Value / .ComboHinichi.Value

と表記すると割り算をしてしまい、「月」や「日」を入れてももち
ろんエラーが出てしまいます。

長文大変申し訳ありませんが、何かよいお考えがあれば是非
ご教授ください。よろしくお願いします。

【26240】Re:新規フォームと日付の記入について
回答  MARBIN  - 05/6/29(水) 11:53 -

引用なし
パスワード
   2つめは、

= CDate(.ComboTsuki.Value & "/" & .ComboHinichi.Value)

でいけると思います。
セルの書式設定は予め変えておくか、マクロで変更するようにし
てください。

【26241】Re:新規フォームと日付の記入について
発言  MARBIN  - 05/6/29(水) 11:58 -

引用なし
パスワード
   ユーザーフォーム、ですよね。
複数のコントロールを制御する場合は
下記のようにします。

Dim i As Long
 For i = 1 to 5
  Me.Controls("Combobox" & i).Value = ""
 Next i

【26249】Re:新規フォームと日付の記入について
質問  レオン  - 05/6/29(水) 14:38 -

引用なし
パスワード
   MARBIN さん、さっそくのご返答ありがとうございます。

>2つめは、
>
>= CDate(.ComboTsuki.Value & "/" & .ComboHinichi.Value)
>
>でいけると思います。
実際に同様に入力してみました。すると、
「コンパイルエラー:修正候補:ステートメントの最後」
という表示がでてきまして、「Date」の部分が選択された状態に
なってしまいました。

また、ユーザーフォームの件なのですが、フォーム内にある欄は、
「ComboTsuki」や、「txtChumonbi」など別々の名前をつけていま
す。MARBINさんが記されているコードのように数字で管理した方
が便利なのでしょうか?

度々すいませんが、ご意見お願いします。

【26251】Re:新規フォームと日付の記入について
発言  MARBIN  - 05/6/29(水) 15:54 -

引用なし
パスワード
   ↓で検証しましたが、エラーはおきませんでしたよ。
セルの値は2005/6/29という感じになりましたが。

With Me
Worksheets(1).Cells(1, 1).Value = CDate(.Combotsuki.Value & "/" & .Combohinichi.Value)
End With

また、オブジェクト名を変えてあると、提示したMe.Controls〜は使えません。
実行すると、

"指定されたオブジェクトは見つかりません。"

とエラーになると思います。
もちろんCombobox1〜のままだとエラーになりません。

【26254】Re:新規フォームと日付の記入について
お礼  レオン  - 05/6/29(水) 16:44 -

引用なし
パスワード
   MARBIN さん

できました。
CDateのCの後にスペースを入れてしまっていました。
うまくできました。

新規フォームの方もMARBINさんがおっしゃるようにやってみようと
思います。
ありがとうございました。

9638 / 13644 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free