ここから本文です

VBA初心者なのですが、もし下記のことがVBAで可能であればコードを教えてください...

isa********さん

2020/3/2413:16:41

VBA初心者なのですが、もし下記のことがVBAで可能であればコードを教えてください。
同じフォルダ内に「入力」ファイル・「貼り付け」ファイル・画像フォルダがあります。

入力ファイルのユーザーフォームにあるLabel1に品番が表示されており、
ComboBox1にロットNoが表示されています。
CommandButton1を押せば、Label1の品番を「貼り付け」ファイルのSheet1 A2セルへ
書き込み、ComboBox1のロットNoをSheet1 B2セルへ書き込み、画像フォルダ内にある
Label1の品番と同名の画像ファイル(jpg)を「貼り付け」ファイルのSheet1 A4セル辺りに
貼り付けをさせたいのです。
このようなことがVBAでは可能でしょうか?
もし可能であればコードを教えていただけると助かります。
よろしくお願い致します。

補足書き忘れましたが、もし画像フォルダ内にLabel1と同名の画像ファイル(jpg)が無ければエラー表示が出てユーザーフォームが閉じるようになってほしいです。
よろしくお願い致します。

閲覧数:
31
回答数:
1

違反報告

ベストアンサーに選ばれた回答

まーさんさん

2020/3/2422:03:08

コマンドボタンに以下のコードを書きこんで実行してください。

Private Sub CommandButton1_Click()
Dim myPath As String
Dim myPic As String
myPath = ThisWorkbook.Path & "\"

Workbooks.Open myPath & "貼り付け.xlsx"

With ActiveWorkbook.Sheets("Sheet1")
.Range("A2") = Me.Label1.Caption
.Range("B2") = Me.ComboBox1.Text
myPic = Dir(myPath & "画像\" & Me.Label1.Caption & ".jpg")
If myPic = "" Then
MsgBox "画像がありません"
Unload Me
Exit Sub
Else
.Pictures.Insert myPath & "画像\" & myPic
End If
.Shapes(.Shapes.Count).Top = Range("A4").Top
.Shapes(.Shapes.Count).Left = Range("A4").Left
End With

Unload Me
End Sub

質問した人からのコメント

2020/3/24 23:59:46

自分が思ってた通りになりました!(人-)感謝(-人)感謝です!!
これで仕事がスムーズにできそうです^^
ありがとうございました。

あわせて知りたい

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。

不適切な投稿でないことを報告しました。

閉じる