質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
VBA

VBAはオブジェクト指向プログラミング言語のひとつで、マクロを作成によりExcelなどのOffice業務を自動化することができます。

Q&A

解決済

1回答

832閲覧

【VBA】 セルに入力されている文字にインプットボックスで入力した文字を追加する。

sh444

総合スコア15

VBA

VBAはオブジェクト指向プログラミング言語のひとつで、マクロを作成によりExcelなどのOffice業務を自動化することができます。

0グッド

0クリップ

投稿2021/08/24 02:41

VBAの内容についてです。
別ブックAの内容をコピーして、開いているブックBに張り付けます。(ブックBにはシートが4つあります)
その後、InputBoxで、各シートの対象セルに入力するようにしています。
VBA全体のコードは下記のとおりです。

Sub

1 2 Dim RC As Integer 3 Dim OpenFileName, fileName, Path, SetFile As String 4 Dim wbMoto, wbSaki As Workbook 5 6 Set wbMoto = ActiveWorkbook 'マスターデータ取り込み元をセット 7 8 Application.DisplayAlerts = False 9 10 RC = MsgBox("マスターデータ取込みますか?", vbYesNo + vbQuestion, "確認") 11 12 If RC = vbYes Then 13 14 OpenFileName = Application.GetOpenFilename("Microsoft Excelブック,*.xls?") 15 'ダイアログボックスを表示して、マスターデータファイルを指定します。 16 17 If OpenFileName <> "False" Then 18 SetFile = OpenFileName 19 Else 20 MsgBox "キャンセルされました" 21 Exit Sub 'マスターデータの取り込みをキャンセル 22 End If 23 24 25 Workbooks.Open fileName:=SetFile, ReadOnly:=True, UpdateLinks:=0 26 'ダイアログボックスで指定したマスターデータファイルを開きます。 27 28 Set wbSaki = Workbooks.Open(Path & SetFile) 29 30 'ワークブック間のシート「項目」をコピーします。 31 wbSaki.Worksheets("内容").Range("D:O").Copy 32 wbMoto.Worksheets("見積入力").Range("U7").PasteSpecial xlPasteValues 33 34 35 Application.CutCopyMode = False 'コピー切り取りを解除 36 wbSaki.Close False 'マスターデータ取り込み先のファイルを閉じる 37 38 Else 39 40 MsgBox "処理を中断します" 41 42 End If 43 44 Application.DisplayAlerts = True 45 46 Dim ans As String 47 ans = InputBox("見積書・請求書No", "", "") 48 49 If ans <> "" Then 50 wbMoto.Worksheets("見積").Range("I3").Value = ans 51 52 53 End If 54 55 Application.DisplayAlerts = True 56 57 58 ans = InputBox("見積書発行日", "", "") 59 60 If ans <> "" Then 61 wbMoto.Worksheets("見積").Range("F11").Value = ans 62 End If 63 64 ans = InputBox("完工日", "", "") 65 66 If ans <> "" Then 67 wbMoto.Worksheets("請求 ").Range("F11").Value = ans 68 End If 69 70End Sub 71' 72' 73 74コード

そこで、お伺いしたいことがあります。 下記の部分のコードについて、見積シートのI3にすでに「あいう-」が入力されています。InputBoxでは数字(例:1234)を入力します。
結果としては、I3セルには、「あいう-1234」を入力したいです。
wbMoto.Worksheets("見積").Range("I3").Value = ans
Range("I3").value = ans & "あいう-"
とコードを追加してみたのですが、うまくいきませんでした。

Dim

1 ans = InputBox("見積書・請求書No", "", "") 2 3 If ans <> "" Then 4 wbMoto.Worksheets("見積").Range("I3").Value = ans 5 6コード

VBA初心者です。コードのほとんどはネットで調べて組み合わせて作っております。
ご教授頂ければ助かります。
宜しくお願いします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

y_waiwai

2021/08/24 02:45

うまくいかない、とはどういうふうにうまくいかないんでしょうか
sh444

2021/08/24 02:49

エラーは出ないのですが、あいう-が反映しておりません。
guest

回答1

0

ベストアンサー

wbMoto.Worksheets("見積").Range("I3").Value = ans

wbMoto.Worksheets("見積").Range("I3").Value = wbMoto.Worksheets("見積").Range("I3").Value & ans

ってはなしかな?

投稿2021/08/24 02:56

y_waiwai

総合スコア87774

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

sh444

2021/08/24 02:59

wbMoto.Worksheets("見積").Range("I3").Value = ans Worksheets("見積").Range("I3").Value = "あいう-" & ans にコードを変更してみたところ、「あいう-1234」と表示されました! ご回答いただいたのに、申し訳ございません。 シートが4つある中、シート指定をしていなかったので、該当のセルに表示されていないだけでした。お手数おかけいたしました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問