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

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

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

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

マクロ

定義された処理手続きに応じて、どのような一連の処理を行うのかを特定させるルールをマクロと呼びます。

Q&A

1回答

1572閲覧

VBAでセルの値を使ったパス指定に困っています

Rohanliberate

総合スコア0

VBA

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

マクロ

定義された処理手続きに応じて、どのような一連の処理を行うのかを特定させるルールをマクロと呼びます。

0グッド

0クリップ

投稿2021/12/22 11:32

編集2021/12/22 12:05

イメージ説明
VBAを使って集計表作っているのですが、セルの値を使った保存を行おうと
何度も以下のようなコードを書いているのですがうまくいきません。
実行してみるとファイルがありませんと表示され、デバッグ箇所でSaveAs以降が黄色く表示されます。

写真のように、USBの中身が階層になっているとします。
集計表にはセルA1に2021(today関数で取得)とセルA2に12月(リストから選択)、
A3にスイカと入っています。
この時、2021年フォルダの12月フォルダに集計表をスイカと名前をつけて
保存するにはどうしたらいいでしょうか。初心者中の初心者で見苦しいですが
教えていただけると幸いです。

Sub namaehozon()
Dim wb As Workbook
Dim ws As Worksheet
Dim Path As String
Dim Year As String
Dim Month As String

Set wb = ThisWorkbook Set ws = ThisWorkbook.WorkSheet.("集計") Path = “K:¥野菜¥果物” Year = ws.Range(“A1”)&"年" Month = ws.Range(“A2”) Name = ws.Range(“A3") wb.SaveAs Filename:=Path & Year & Month “¥” Name .xlsm

End Sub

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

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

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

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

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

meg_

2021/12/22 11:35

「うまくいきません」とは具体的にはどうなったのでしょうか?
ak.n

2021/12/22 11:45

Filename の指定が変です 文字列型変数と文字列を連結するときも & です。たとえば Month & "\" それから、最後の .xlsm は文字列なので ".xlsm" です。 最後に、これらを連結したものを一旦、別の変数に入れて、その変数を見て、 思い通りになっていますか? たいぶ \ が抜けちゃってると思います。
Rohanliberate

2021/12/22 11:47

コードにミスがあって実行不可となるという意味です。デバッグがたくさんあるのはわかっているのですが何からおかしいのかさっぱりわからなくなってしまいました。具体性がなく申し訳ないです。
meg_

2021/12/22 11:52

> コードにミスがあって実行不可となるという意味です。 エラーが出ているのであれば詳細を質問に追記ください。
Rohanliberate

2021/12/22 12:06

追記してみました。不足があるようでしたらさらに追記させていただきます。
Rohanliberate

2021/12/22 12:10

>たいぶ \ が抜けちゃってると思います。 色々とサイトを見たのですが¥と/は表記の違いなだけで同じ意味なのでしょうか?
meg_

2021/12/22 13:08

パスのエラーが出るときは、エクスプローラーで目的のフォルダを表示してそのパスとコード内の文字列に差異がないか確認すると良いですよ。
Rohanliberate

2021/12/22 14:01

確かに差異を確認するべきでした。もう少し/の勉強もしてトライしてみます。アドバイスありがとうございます。
guest

回答1

0

vba

1Dim wFullPath As String 2wFullPath = Path & "¥" & Year & "¥" & Month & "¥" & Name & ".xlsm" 3Msgbox wFullPath 4 5wb.SaveAs Filename:=wFullPath

投稿2021/12/23 03:48

jinoji

総合スコア4592

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.35%

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

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

質問する

関連した質問