![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?5a7ff87)
初めまして、VBA初心者です。
エクセルVBAについてご教示お願いします。
A列 B列 C列 D列 E列
管理番号 名称 投資 計上 金額
BP00100FUJITA 小型機 2024/09 2024/10 4,000
BP00300TAKEDA 転写機 2024/10 2024/10 6,000
BP00500ENDO 電気炉 2024/09 2024/09 8,000
BP00501ENDO 測定装置 2025/05 2025/02 5,000
上記のようなデータがあり、これを添付のデータに転記したいのです。
添付のものは同じ形式で投資用・計上用があります。
質問としまして
①A列(管理番号)のBP●●500~とBP●●501~を、添付の11~14行目(同じ名称)の該当する月度に金額を転記することは可能でしょうか?
②C列の投資、D列の計上の月度が違う場合、それぞれ添付の投資エクセルには●月度、計上エクセルには●月度、に金額を転記することは可能でしょうか?
出来ればサンプルコードをいただけると助かります。。
![「エクセルVBA、別ブックへ転記する。につ」の質問画像](http://oshiete.xgoo.jp/_/bucket/oshietegoo/images/media/d/543233540_6646069fe85f2/M.png)
No.20
- 回答日時:
>→変換結果シートを見る→白紙(管理シートに記載したパターン名は残っている)
変換結果シートになにも出力されていない。と理解しました。
これが、起こるケースは、以下の何れかです。
転記元のデータ1行分について考えると
①その管理番号の装置名が転記先にあるので、その転記先に金額を転記した。
②その管理番号の装置名が転記先にないので、変換表のパターンをA2行以降
検索したが、マッチしたパターンが存在しなかった。
1行分で構いませんので、実際に金額が転記されなかった転記元データを提示していただくことは可能でしょうか。
No.19
- 回答日時:
No17の回答の補足をみました。
例として
BP0050* 促進槽
についてですが、転記元が
BP00501SAMP 小型機 2024/09 2024/10 4,000
のようになっていると、
上記のパターンにはマッチしますが、そもそも、小型機が転記先に存在するので、小型機に転記されます。
転記元の装置名が転記先に存在しない場合のみ、変換表を参照して、変換を行います。
あなたの希望としては、
転記元の装置が、転記先にあろうがなかろうが、
変換表にあるなら、変換表で設定した変換先に転記してほしい。
というように読み取れますが、そのようなことでしょうか。
空白を無視していただけるとのことで、ありがとうございます。
違うんです違うんです。
作成いただいたマクロを回す→「完了」のメッセージボックスが出る→変換結果シートを見る→白紙(管理シートに記載したパターン名は残っている)
さらに新しく作成された「_●月予測」のエクセルも転記がされてない
という状態でして・・・
どう説明すればいいのかわからないのですが、
・マクロは問題なく回っている
・新しく「_●月予測」のエクセルも出力されている
・なぜか金額の転記がされていない
・エラー等は出ていない
以上の結果から、なにかわかりますか・・?
No.18
- 回答日時:
1.空白については、無視するようにします。
2.下記の件
>転記のパターンを掲示の例でお話すると、
>パターン
>BP0050* 電気炉
>と入力しておくと、「BP00501ENDO 測定装置」(500の枝番分)も「電気炉」のセルに転記される。ということでしょうか?
回答:はい、その通りです。
管理番号の先頭6桁が、"BP0050" であれば、それ以降の文字がどのようなものでも電気炉へ転記対象となります。
>また、別でご質問なのですが、
>小型機や、転写機に関しては①でご説明の通り、装置名が転記先にあるので>記載は不要、という認識でよいでしょうか?
回答:はい、その通りです。
逆に言えば、小型機は、転記先にあるので、
BP00100FUJITA 小型機 2024/09 2024/10 4,000
のデータを処理するとき
パターン 装置
BP00100* 電気炉
と登録しても、電気炉には転記されません。
No.16
- 回答日時:
>空白でもエラーになってしまうんですね!
余白がたくさん入っていたので、不要な部分を消したら無事にマクロが回りました!
回答:空白がない前提で作成していました。空白を無視するようにすることは可能です。但し、その場合は、同一行の2シートの装置名が共に、空白でないとエラーになります。そのように修正しましょうか。
>ただ、新規保存されたシートに転記されておらず……
回答:
パターンに関係のない装置、あなたが最初に提示された
BP00100FUJITA 小型機 2024/09 2024/10 4,000
BP00300TAKEDA 転写機 2024/10 2024/10 6,000
の転記は、正常に行われてますか。
転記は以下のようにして行っています。
①転記元の装置名が転記先にある場合、その装置の行へ転記を行う。
②転記元の装置名が転記先にない場合、管理シートのパターンをA2から下へ検索する。転記元元の管理番号が、管理シートのパターンにマッチすれば、
該当装置の転記先へ転記し、その管理番号の転記を終了とする。A2から最終行まで検索してもマッチしない場合は、転記しない。
>マクロ入りエクセルA2から下へパターン入力したのですが、、
>転記元に入っているすべてのパターンを入力してマクロを回すと、枝番(パターンで指定したもの)も含めて転記される。という認識で間違いないですか?
回答:
「転記元に入っているすべてのパターンを入力してマクロを回すと、枝番(パターンで指定したもの)も含めて転記される。」
すみません。この意味がよくわかりません。具体的に例を挙げて説明していただけませんでしょうか。
説明が下手ですみません。。
空白についてですが、今装置が全部で78件分入っています。
これは1年ごと(年度ごと)に更新され、毎年違う数になります。
現在319行から586行まで空白なのですが、年度が変わって装置数が増減してもエラーなく回るよう修正をお願いできますか・・?
わたし以外の方も使うので、出来れば空白を消す、という作業をなくしたくて・・
転記のパターンを掲示の例でお話すると、
パターン
BP0050* 電気炉
と入力しておくと、「BP00501ENDO 測定装置」(500の枝番分)も「電気炉」のセルに転記される。ということでしょうか?
また、別でご質問なのですが、
小型機や、転写機に関しては①でご説明の通り、装置名が転記先にあるので記載は不要、という認識でよいでしょうか?
No.15
- 回答日時:
ブレイクポイントの設定方法は、下記にも表示されています。
https://kabu-macro.com/detail.php?dir=word&dir2= …
VBA ブレイクポイント で検索するといくつかヒットします。
No.14
- 回答日時:
>装置名の並びはまったく同じように見えるのですが……なにか確かめる方法等ありますか?
装置名が空白の場合も、このエラーがでます。
空白の装置名がないか確認してください。
(但し、最後の4行分は合計用なので無視して構いません。)
もし、上記で解決しない場合は、マクロの
106行 のMsgBox ("転記先ブックの2つのシートの装置名の並びが不一致です")
にブレイクポイントを設定して、実行してください。
(106行の左端をクリックすると●印が現れます。それでブレイクポイントの設定完了です)
マクロを実行すると、その行で止まります。
1つ上の行にkey1,key2があるので、それにマウスを当てるとその内容が表示されます。それが、2つのシートの各々の装置名です。
それを確認してください。
又、102行に wrowがありますが、それがシートの行番号です。その値も確認してください。
空白でもエラーになってしまうんですね!
余白がたくさん入っていたので、不要な部分を消したら無事にマクロが回りました!
ただ、新規保存されたシートに転記されておらず……
マクロ入りエクセルA2から下へパターン入力したのですが、、
転記元に入っているすべてのパターンを入力してマクロを回すと、枝番(パターンで指定したもの)も含めて転記される。という認識で間違いないですか?
No.13
- 回答日時:
下記にアップしました。
https://ideone.com/SB0PoN
これで確認してください。
>非表示を解除→マクロ→保存→非表示、という流れで問題ないでしょうか?
はい、それで問題ありません。
上記で正常に動作することが確認できましたら、
列の非表示を解除せずにマクロを実行してみてください。
その場合も、正常に終了するはずです。
行が非表示になるのは、まずいですが、列が非表示になるのは問題ありません。
ありがとうございます。
すべて再表示し、マクロを回してみたのですが
「転記先ブックの2つのシートの装置名の並びが不一致です」のエラーが出ました。
装置名の並びはまったく同じように見えるのですが……なにか確かめる方法等ありますか?
No.12
- 回答日時:
補足の画像を拝見しました。
不明点及び確認です。1.最終行を決めるための列(計画、?予、予測、実績)は、J列で間違いないでしょうか。
J列の最後に「実績」の文字が設定されているセルが最終行のセルになります。
2.装置名が記述されている列は、I列で間違いないでしょうか。
(小型機、転写機、電気炉などが設定されている列です)
3.装置名は、必ず、7行,11行,15行、・・・のように7行目から開始して、4行間隔で設定される。
で間違いないでしょうか。
4.提示された画像の最後の4行は、合計を表示するための行であり、転記の対象にはならないと解釈しましたが
それであってますか。(I列に装置名も設定されていない)
従って、転記の対象になる行は、7行目から最後の4行を除いた範囲内の予測の行になります。
上記の確認が、取れ次第、マクロの修正を行います。実際のレイアウトと最初に提示されたレイアウトに
かなり違いがありますので、多少修正に時間がかかります。
今後、画像を提示される場合は、実際のレイアウトを提示するようにしてください。
アップロードされた画像が思っていたより画質が粗めだったので心配だったのですが、確認いただけたようで安心しました。
不明点の回答いたします。
1、(計画、前予、予測、実績)の列は投資・計上ともにJ列で間違いありません。
ただ、J列「実績」の最終行の隣のセルにはSUM関数が入っています。
問題ないようでしたらそのままお願いいたします。
2、装置名が入っているのはどちらもE列になります。
3、tatsumaruさんの認識の通りです。
7行目、11行目、15行目・・・と4行間隔で記載されています。
4、K列、R列、Y列から先(Z方向)にはSUM関数が入っています。
転記したいのは、L~Q列(4月度から9月度)とS~X列(10月度から3月度)の予測行です。
すみません、その通りです・・
次回より気を付けます。。作り直し等でお手数をおかけしてしまい申し訳ないです。
よろしくお願いいたします。
No.11
- 回答日時:
追伸:
>念のため、(齟齬を避けるため)
>「国内_連結修正後」の画像と「国内_計上連結修正後」の画像をアップしていただけませんでしょうか。
>(勘定科目がどこの列なのか、最初にあなたから提示された画像では想像がつきません)
と回答しましたが、
「国内_連結修正後」と「国内_計上連結修正後」とが、全く同じレイアウトなら、「国内_連結修正後」の画像のみで構いません。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) エクセルVBAでデータ転記 1 2024/01/28 20:11
- その他(Microsoft Office) マクロVBAについて 1 2022/09/06 18:12
- Access(アクセス) Accessのクエリの結果を、既存のエクセルに追加したい 2 2022/07/31 22:44
- Excel(エクセル) アウトラインの小計のやり方 1 2023/03/20 11:51
- Visual Basic(VBA) 【VBA】データを入力後に,同一シート内に履歴として転記するVBAコードを教えていただきたいです。 3 2022/11/16 01:37
- Visual Basic(VBA) 指定月分の顧客データファイルを統合して並べ替え、所定の場所に貼り付ける (再質問) 4 2022/09/14 22:51
- Visual Basic(VBA) 指定月分の顧客データファイルを統合して並べ替え、所定の場所に貼り付ける 3 2022/09/10 07:55
- Excel(エクセル) 【マクロ】転記ツール。転記先にデータがある場合、上書きするか消すか質問をして欲しい 2 2023/10/29 22:52
- Visual Basic(VBA) エクセル VBAでの転記の方法について 1 2023/10/22 19:14
- Visual Basic(VBA) VBA シート間の転記で、条件の追加コードの書き方について教えて下さい。 13 2023/02/26 09:31
このQ&Aを見た人はこんなQ&Aも見ています
-
プロが教えるわが家の防犯対策術!
ホームセキュリティのプロが、家庭の防犯対策を真剣に考える 2組のご夫婦へ実際の防犯対策術をご紹介!どうすれば家と家族を守れるのかを教えます!
-
Excel初心者です。 詳しい方、効率の良いやり方を教えてください。 職場で、抽出したデータの表を見
Excel(エクセル)
-
【マクロ】顧客番号にて一致させ、情報を表へ上書きする為には
Excel(エクセル)
-
(マクロ)データをAブックからBブックへコピー、データを入っているセルまでだけコピーする為には
Excel(エクセル)
-
-
4
【マクロ】ファイル名の変更について
Excel(エクセル)
-
5
エクセル共有したが、アクセスできなくかった
Excel(エクセル)
-
6
一つのセルに(例えばA1)入力された3桁・4桁の数字を並べ替えて同一行のセルに表示させる。
Excel(エクセル)
-
7
Excelの関数について教えてください
Excel(エクセル)
-
8
VBAについての質問です
Excel(エクセル)
-
9
VBA バックグラウンドで別ブックを開いてデータ転記
Excel(エクセル)
-
10
エクセル関数に詳しい方教えてください
Excel(エクセル)
-
11
Excelにてある膨大なデータを管理しています。 そこで、特定の市町村にのみ色を付けたいです。 Ex
Excel(エクセル)
-
12
Excel初心者です。 詳しい方、効率の良いやり方を教えてください。 職場で、抽出したデータの表を見
Excel(エクセル)
-
13
VBAで大量のファイルをシート名ごとに転記やらいろいろしたい!
Visual Basic(VBA)
-
14
スマートな関数を教えて下さい。
Excel(エクセル)
-
15
【関数】先頭だけにある、半角スペースを、とりのぞく事はできますか?
Excel(エクセル)
-
16
はがきについて。
Excel(エクセル)
-
17
【関数】適切な文字数の数字を取り出したい
Excel(エクセル)
-
18
エクセルの計算
Excel(エクセル)
-
19
pdfの表をexcelにはりつけて計算したい
Excel(エクセル)
-
20
【マクロ】名前を保存する際に、同じファイルがあった場合に、メッセージを表示
Excel(エクセル)
関連するカテゴリからQ&Aを探す
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルで二つの数字の小さい...
-
エクセルで最初のスペースまで...
-
PowerPointで表の1つの列だけ...
-
VBAで文字列を数値に変換したい
-
エクセル 文字数 多い順 並...
-
2つのエクセルのデータを同じよ...
-
文字列に数字を含むセルを調べたい
-
エクセル(勝手に太字になる)
-
エクセルで文字が混じった数字...
-
Excelで半角の文字を含むセルを...
-
A列がない・・・A列が非表示に...
-
「B列が日曜の場合」C列に/...
-
エクセルの表示画面(シート)...
-
エクセルの項目軸を左寄せにしたい
-
エクセル 同じ値を探して隣の...
-
Excel、市から登録している住所...
-
Excelの行、列の左方向シフト、...
-
エクセルの表から正の数、負の...
-
エクセルのセル内の文字の一部...
-
オートフィルターをかけ、#N/A...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルで二つの数字の小さい...
-
PowerPointで表の1つの列だけ...
-
2つのエクセルのデータを同じよ...
-
エクセルで最初のスペースまで...
-
エクセルVBA、別ブックへ転記す...
-
エクセル 文字数 多い順 並...
-
エクセル(勝手に太字になる)
-
VBAで文字列を数値に変換したい
-
エクセルで文字が混じった数字...
-
エクセルの表から正の数、負の...
-
「B列が日曜の場合」C列に/...
-
Excelで半角の文字を含むセルを...
-
エクセルの並び変えで、空白セ...
-
Excel、市から登録している住所...
-
エクセル 同じ値を探して隣の...
-
EXCELで 一桁の数値を二桁に
-
エクセル初心者です 関数の入れ...
-
A列がない・・・A列が非表示に...
-
オートフィルターをかけ、#N/A...
-
エクセルで、列の空欄に隣の列...
おすすめ情報
転記元も転記先も、拡張子はxlsxでした。(補足質問の見落としすみません……)
また、転記先のフォルダをいくつか作ると先に進んだため、別のエラーのご相談なのですが、
〇転記先ブックのシートチェック のメッセージボックス「転記先ブックの2つのシートの行数が不一致です」が出てしまいます。
たしかに投資、計上の見えている行?がちがうようなのですが、どの部分を変えれば良いかわからず……
「国内_連結修正後」はD列から、「国内_計上連結修正後」はE列から始まっていることに気付き、(非表示になってました)これが問題なのかな?と思っております。
いくつも聞いてすみません、解決策などありますか……?
ここまでしっかり作りこんでいただけると思ってませんでしたので、添付の画像はざっくり伝わればいいや、とわたしが制作したものです。
実際のエクセルシートを添付しますので、どうぞよろしくお願いいたします。
こちらは計上のシートになります。
非表示の列の違いはありますが、内容は同じです。
装置名変換そのものが動いてないようなのです。
管理へは添付のように入力しているのですが、(これは転記先に装置名があるのを確認済みです)変換結果シートが白紙になってまして……
D6125シート内に記載されているデータです。
先程の補足に添付した促進槽も、転記されていないので添付いたします。
転記先データに転記されていないのですが、画像が小さいので見えますかね……?