• 締切済み

EXCELファイル挿入について

Excel2000を使用してます。 前回質問したのですが問題が生じたので再度質問します。 ExcelFile A とExcelFile Bがあります。 まずAを開きBを別シートで読み込みを行ないたいのですが どのようにすればいいのでしょうか? ExcelFile A はシート1とシート2の二つのシートに分かれています。 ExcelFile Bはシートが一つでこのシートを丸ごとExcelFile Aのシート3として挿入を行いたいだけです。 以前に質問した際にはExcelFile B(固定名)でしたが、 それは無事解決できました。 問題はExcelFile Bは常に固定名ではないということです。 ただBという文字列ははいっています。 (1234-567-B.xlsといった具合で7654-321-B.xlsとなる場合もあります) イメージしているのはExcelFile Aの一枚目のシートに ExcelFile B挿入ボタンを設置してこのボタンを押すだけでExcelFile Bがシート三枚目に入ってくるといった感じです。 マクロ設定でBの文字列検索を行い当てはまった場合挿入します。 なかった場合はメッセージを出します。 ExcelFile AとExcelFile Bは同じ場所にあります。 こんな感じなのですができるでしょうか? 具体的にマクロを作成してもらえたら大変うれしいです。

  • nghm
  • お礼率85% (315/370)

みんなの回答

  • hige_082
  • ベストアンサー率50% (379/747)
回答No.2

ここをよく利用されているようですが、禁止事項は読まれましたか? >具体的にマクロを作成してもらえたら大変うれしいです。 丸投げ・依頼の項目をよく読んでください 以上の理由から >問題はExcelFile Bは常に固定名ではないということです。 一番の問題はExcelFile Bの検索のようなので、この部分だけにします Sub test() Dim inFail As String inFail = Dir("C:\", vbNormal) Do If inFail Like "*B.xls" Then MsgBox inFail ElseIf inFail = "" Then Exit Do End If inFail = Dir Loop End Sub コードを見て出来る、出来ないの判断ができるようなので 説明は省きます

nghm
質問者

お礼

ありがとうございました。 丸投げ・依頼とは知りませんでした。 今後気をつけたいと思います。 参考にしてみます。

  • Nouble
  • ベストアンサー率18% (330/1783)
回答No.1

ワイルドカード(正規表記と同意)を使っては如何でしょうか?

nghm
質問者

お礼

有難うございました。

関連するQ&A

  • シート挿入について

    ExcelFile A とExcelFile Bがあります。 まずAを開きB挿入ボタンでBを別シートで読み込みを行なっていますが B(固定)ではなくBを含む文字列にしたいのですが どのようにすればいいのでしょうか? 現在の設定は Workbooks.Open Filename:=Workbooks("A.xls").Path & "\B.xls" となっています。

  • エクセルのシート読み込み

    Excel2000を使用してます。 前回質問したのですが解決できなかったので再度質問します。 ExcelFile A とExcelFile Bがあります。 まずAを開きBを別シートで読み込みを行ないたいのですが どのようにすればいいのでしょうか? ExcelFile A はタブ1とタブ2の二つのシートに分かれています。 ExcelFile Bはタブが一つでこのタブを丸ごとExcelFile Aのタブ3 として挿入を行いたいだけです。 イメージしているのはExcelFile Aの一枚目のシートに ExcelFile B挿入ボタンを設置してこのボタンを押すだけでExcelFile Bがシート三枚目に入ってくるといった感じです。

  • 別ExcelFileの挿入について

    ExcelFile A とExcelFile Bがあります。 まずAを開きBを別シートで読み込みを行ないたいのですが どのようにすればいいのでしょうか? できれば読み込みボタン一つで読み込めればいいと思っています。 (読み込みファイル名(B)は固定の名前にしておく)

  • Excelで、少しプログラムのようなことがしたいのですが・・・

    『A.csv』と『B.xls』のように、別々のexcelfile(または、sheet)で、どちらにも同じ項目の『C』という列があるとします。 その列の入力されているデータ(数値)が一致したとき、『B.xls』のfile(または、sheet)の『C』という列のセルにそのデータ(数値)記入させる。 …みたいなプログラムをExcelでしたいのですが、できるでしょうか?

  • マクロ【シート名に対応した文字を挿入・置換】

    マクロ【シート名に対応した文字を挿入・置換】 御世話になります。 【D:\test】内に2つのエクセルファイル(Excel2003)があります。 ※1つ目のファイル名は【季節別表.xls】。 中には一番左端のシート名は【起動シート】で、その横は【spring】【summer】【autumn】【winter】という名前のシートが あり、すべてのシートにはサンプルの表がある。 ※2つ目のファイル名は【データシート.xls】。 中にはシート名【2008】のみが存在。 シート内には下記のような文字を入力している。 セルB2:シート名 セルC2:季節名 セルD2:気候 セルB3:spring セルC3:春 セルD3:暖かい セルB4:summer セルC4:夏 セルD4:熱い セルB5:autumn セルC5:秋 セルD5:涼しい セルB6:winter セルC6:冬 セルD6:寒い B2・C2・D2はシートの列が何の項目であるかがわかるために入力。 B3~6は【季節別表.xls】に存在するシート名を縦に入力。 悩んでいるのは【季節別表.xls】のシート名【起動シート】内にあるマクロボタンに入れるマクロです。 理想の処理の流れですが、 【データシート.xls】のセルB3のspringというシート名が【季節別表.xls】にあればそのシートに セルB3の右隣であるセルC3の文字列【春】を取得し、【季節別表.xls】のシート名【spring】のセルD35の文字列である 【今年の季節名は入学シーズンである。】の【季節名】と置換。 また、セルC3の右隣であるセルD3の文字列【暖かい】を取得し、 【季節別表.xls】のシート名【spring】のセルF70の文字列である【気候は気候状況。】の文字列【気候状況】と置換。 この処理が終わったら、今度は次の行を同じような処理を続け、最終的にはB列が空行になるまで続けられるマクロは 可能でしょうか? 何か簡単なサンプルコードがあれば助かります。 宜しくお願い致します。

  • エクセルで新たなファイルを開くマクロ

    【質問:1】 ○○○.xlsというファイル上で、 ボタンを押すと、 ×××.xlsというファイルを ”マクロを有効にする”で開いて、 (どちらもマイドキュメントに保存してあります) かつ、 ○○○からの自動リンクを反映させ更新し、 (通常ですとダイヤルログボックスがでますよね) ×××のシート1のA1セルをアクティブにする というマクロはどのように書けばいいでしょうか? 【質問:2】 ×××.xlsにおいて、 ボタンを押すと、 ×××を”保存せずに閉じ”て、 かつ○○○.xls(既に開いてあります)の シート1のA1セルをアクティブにする というマクロはどのようにかけばいいでしょうか?  よろしくご教示のほどお願い致します。

  • Excel

    A.xlsとB.xlsの2つのブックがあります。 A.xlsのSheet1のB2セルに文字列が入っています。その文字列にはJ3など列と行の組み合わせの値になってます。 このA.xlsのSheet1のB2のセルの文字列を使ってB.xlsのSheet1の上記のB2に書かれた位置のセルの値を取得したい。 これを実現するにはどうすればいいですか? ご教授お願い致します

  • Excelの関数で、検索条件(複数)を満たす場合値を返す方法について質

    Excelの関数で、検索条件(複数)を満たす場合値を返す方法について質問です。 セルA2にある文字列が、別ファイルのA列にある文字列を含む場合セルB2に○を、含まない場合は×を入力する関数を教えて下さい!! --------- book1.xls シート1 A2にある文字列が、 book2.xls シート1 A列にある文字列のいずれかを含む場合、 book1.xls シート1 B2に「○」を、含まない場合は「×」を結果として反映させたいです。 ※book1.xlsのリストは全角カナ、book2.xlsのリストは半角カナ です。 ※book2.xls シート1にある検索条件は行列共に増える可能性があります。 マクロやVBAではなく関数で行うことは可能でしょうか? 勉強不足ですみません。 色々調べて試しているのですが、なかなかうまくいかないのでお力をお貸し下さい。 よろしくお願いします。

  • エクセル2010のマクロについての質問です。

    エクセルにてマクロを組もうと色々調べているのですが、 どうしてもわからないため教えていただきたいことがあります。 現在、マクロを実行すると固有の文字をアクティブセルに挿入するというマクロを作成しました。 このマクロを少し改造したいのですが、A1とB1に=のものが入っている行の特定の列のセルに固有の文字を挿入するという風にしたいです。 例えば、Aの列にはA1には1、A2には2という風に順に10間での数字が入っていて、 B1には9が入っている場合、C9のセルに固有の文字を挿入するという感じです。 B1を7に変えた場合、C7に固有の文字が挿入されるという感じにしたいです。 質問の仕方が下手でわかりにくいかも知れませんがお知恵をお貸しください。 よろしくお願いします。

  • エクセルマクロで流し込み書き出しはできますか?

    エクセルでSheet1,2,3に入っている値を加工してSheet3に書き出すマクロを作りたいと思っています。 特にSheet1と2には縦一列にデータが並んでおり、それらを結合したいのですが個数が不特定のため困っています。 例えば Sheet1には縦1列に 10 11 12 13 ・ ・ ・ と数値が並んでおり、 Sheet2には縦1列に a1 a2 a3 a4 ・ ・ ・ と文字が並んでおり、 Sheet3には 固定文字列1 固定文字列2 が記載されています。 これらを組み合わせて、 固定文字列1 10,11,12,13 固定文字列2 ('a1','a2','a3','a4') という文字列をSheet4に書き出したいのですがマクロでどのように記述すればよいでしょうか。 数値も文字も個数は変動するので、何個であったとしても対応可能にしたいです。 数値はカンマ区切り、文字はアポストロフィ区切りで全体を括弧で囲みたいです。 また文字の個数は1000を超える場合もあるため、 固定文字列1 10,11,12,13 固定文字列2 ('a1','a2','a3','a3',・・・'a100') 固定文字列1 10,11,12,13 固定文字列2 ('a101','a102','a103','a104',・・・'a200') 固定文字列1 10,11,12,13 固定文字列2 ('a201','a202') のように100個毎に区切りたいです。 これを吐き出すマクロ作りたいのですがご存知の方、ご教授いただけますでしょうか。

専門家に質問してみよう