Excel (VBA)

Excel VBAに関するフォーラムです。
  • 掲示板への投稿には会員登録(無料)が必要です。会員登録がまだの方はこちら
  • 掲示板ご利用上のお願い」に反するご記入はご遠慮ください。
  • Q&A掲示板の使い方はこちらをご覧ください
トピックに返信
質問

 
(Windows 7 Home Premium : Excel 2013)
複数ファイルからの転記
投稿日時: 17/08/08 09:11:28
投稿者: abcdeee

当方、vba初心者で、いろいろと至らない点も多いと思いますが、ご協力よろしくお願いします。
まず、私がマクロで行いことは「他の複数のエクセルファイルより値を取得し、元ファイルの様式に
 
一括記入する」ということです。
 具体的には、
 元ファイルの5行目にはその列が何を示しているのかを入力してあります。ここでは、社員情報をまとめるためのファイル(5行目1列目:名前、2列目:性別、3列目:評価点)とします。
 
 
 取り込みファイルは、ここでは各社員の情報ファイルとします。
 各社員の情報ファイルは結合されたセルに情報が入力されています。
 各社員の情報ファイルの様式はすべて同じ形式です。
 名前は(行:7〜9、列:AD1〜AX1)これを元ファイルの6行目1列に入力
 性別は(行:10〜12:AU〜AX1)これを元ファイルの6行目2列に入力
 
 
 
 
 上記の2つは値を直接転記という処理を行いたいのですが、残りの評価という項目は条件が違います
 
 
 
 
評価セルは上2つの項目と違い決まったセルに入力されておりません。
 行に関しては、評価の行(20〜22行目結合)が該当します。これは固定です。
 問題は列で、列は5つのうちのどこかに入力されております。
その列は
(w20〜AA1、AB1〜AF1、AG1〜AP1、AQ1〜BF1、BG1〜BV1)の計5つの結合列です。
また、評価セルは必ずオレンジで塗りつぶされております。
このことを利用し、2つの対処(欲を言えば?Aのセル)案を考えました。
?@塗りつぶされたセルの値をそのまま元ファイルの6行目3列に転記
?A塗りつぶされたセルの同列、18〜19(結合)行の値を元ファイルの6行目3列に転記
 具体的には、行:20〜22 列:w20〜AA1にある社員の評価が入力されているとして、その値ではなく行:18〜19:w20〜AA1の値を転記するという処理です。
?Aの場合、行:18〜19は固定で行が5つうちのどれかとなります。
 
 
 備考
・一括転記は、このファイルと同じ階層にある.xlsxを対象とします
(ThisWorkbook.Path & "\"こういう表現を前にみたことがあります)
・社員aを元ファイルの6行目に入力したら、社員bは7行目という様にデータを格納したいです(順番は問いません)。
・元ファイル名の入力シートはsheet1、社員情報ファイルの転記元シート名は社員情報とします。
 
 
わかりにくい点があれば、補足します。
 以上、よろしくお願いします。

回答
投稿日時: 17/08/08 10:23:51
投稿者: WinArrow
投稿者のウェブサイトに移動

これは、質問というより、コードを作成してくださいというお願いでしょうか?
 
↓掲示板ご利用のお願い
http://www.moug.net/faq/kiyaku.html
 
にも書かれていますが、コード作成依頼は、禁止されています。
他人に作って貰ったコードを誰がメンテナンスするんでしょう?
何か不都合が出てきたとき、あなたが理解(納得する)していないオードをメンテナンスすることはできません。
 
 
ご自分でマクロの記録等で、やってみて、その過程での疑問点などを室擁するようにしてください。
ある程度は、マクロの記録でできることがありますので、
まずは、マクロの記録から始めて見てください。

トピックに返信