テキストボックスの中で、[実行日]に文字列2000531で入力したら2020/05/31に変更しなおかつ、その日付から一年後に別のテキストボックスの[有効期日]に2021/05/31とif文で日付をいれたい。
Probate Sub 実行日_Enter ()
Dim dt As date
Dim d yAs dete
dt=Me.実行日
dy=Me.有効期日
If 有効期日周期.value ="1年” then
dy=DateAdd ("yyyy",1,dt)
Me.有効期日=dy
End If
End sub
If文はネットで調べてなんとなく形になったのですが、文字列からの日付の変換がわかりません。
Sub のプロシャージャもEnter でいいのかexitがいいのか全然わかりません。
よろしくお願いします。
A 回答 (1件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
こんにちは!
>2000531で入力したら・・・
おそらく「0」が一つ多いのでは?
とりあえずテキストボックス1には6桁数値の入力だとしての一例です。
Textbox1.Change でできそうですが、
とりあえずコマンドボタンクリックでやってみました。
テキストボックス1に入力 → テキストボックス2に1年後を表示!となります。
テキストボックスは文字列になりますので、シリアル値に変えてやる必要があります。
一例です。
Private Sub CommandButton1_Click()
Dim myY As Long, myM As Long, myD As Long
Dim myDate As Date
With TextBox1
myY = Left(.Value, 2)
myM = Mid(.Value, 3, 2)
myD = Right(.Value, 2)
myDate = DateSerial(myY, myM, myD)
.Value = myDate
End With
TextBox2 = DateAdd("yyyy", 1, myDate)
End Sub
※ 本来であれば、細かいエラー処理(テキストボックス1の入力がちゃんとシリアル値として認識されるかどうか)などが
必要なのですが、まずはこの程度で・・・m(_ _)m
tom04さん
早々回答ありがとうございました。
初めて投稿の為、説明不足ですみませんでした。ほぼ同じ内容の質問を投稿したので、よろしくお願いします。
プログラムを全部のせているので、回答お願いします。
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Access(アクセス) ExcelのVBAコードについて教えてください。 4 2023/01/20 09:44
- Access(アクセス) チェックボックスにチェックが入った後の挙動 1 2022/08/21 12:39
- Visual Basic(VBA) Excel VBA 書式変更で困ってます。 オートフィルターの日付フィルターを用いて データの絞り込 2 2022/07/26 22:16
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 2 2023/05/23 16:28
- Access(アクセス) Accessのテキストボックスの入力文字制限 1 2023/01/18 20:43
- PowerPoint(パワーポイント) エクセルのマクロについて教えてください。 1 2022/03/25 17:03
- その他(Microsoft Office) wordの差し込み印刷での日付表示 2 2023/08/15 16:51
- Visual Basic(VBA) いつもお世話になっております、VBAで教えて頂きたいのですが 2 2022/05/05 22:20
- Excel(エクセル) 1つのファイルを3つのフォルダにファイル名を【明日の日付】にして、コピーをしたい 2 2022/12/21 17:43
- Excel(エクセル) 日付で矢印マクロ 4 2023/07/25 16:47
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Vba 電卓のテキストボックスに...
-
VB2010 TextBoxの数字の表示...
-
VBでテキストボックスの文字を...
-
テキストボックスに大文字を
-
ユーザーフォームへのデータ入...
-
VB2005テキストボックスへのコ...
-
エクセルVBAでテキストボッ...
-
VBAで入力数値について
-
16進数
-
VBでの入力値制限について
-
【VB.NET】テキストボックスに...
-
Excel ユーザーフォームで計算 ...
-
【C#】コンボボックスにおけるS...
-
アクセスできない保護レベルエ...
-
C#のループでtextboxに値を入れ...
-
他のフォームから別のフォーム...
-
Excel VBAでsub,dimは何の略?
-
ドラゴン曲線を再帰で書く
-
VB.NETでのイベントの途中終了
-
VS CodeでTEXファイルにPDF形式...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルVBAでテキストボッ...
-
アクセスできない保護レベルエ...
-
VBAで入力数値について
-
visual basic初心者です。 visu...
-
ユーザーフォームへのデータ入...
-
Excel ユーザーフォームで計算 ...
-
【VB.NET】テキストボックスに...
-
テキストボックスを空白にする方法
-
テキストボックスに大文字を
-
コンボボックスからテキストボ...
-
VB2005テキストボックスへのコ...
-
VBでローマ字入力とかな入力を...
-
VBでの入力値制限について
-
VBAのフォーム カーソル移動
-
TextBoxの内容を右寄せ
-
Vba テキストボックスの文字列...
-
整数かどうかチェックする
-
TEXTBOXの表示形式の変...
-
ACCESS 除算での小数点切上げ方法
-
テキストボックスとカーソルの制御
おすすめ情報
tom04さん回答ありがとうございました。
ですが、私のスキルが底辺過ぎてどう説明、変更したらいいのかわからないので、
わかることを書きます。
userformの中にテキストボックスを作成して、
オブジェクト名を[実行日]として、もう2つテキストボックスを作成し、
オブジェクト名を[有効期日周期]と[有効期日]としました。
Private Sub Commandbutton1_Enterを実行_click()に変更
Dim my Y As long,myM As long,myD As long
Dim myDate As Date
With TexBox1 を実行日に変更
最後の
TextBox2 を有効期日に変更したらいいのでしょうか?
プログラムを全部乗せたいのですが、文字数に限りがあるので変更箇所の確認のみ
入力しました。
よろしくお願いします。