• ベストアンサー

ExcelのVBAのマクロについての質問です。

セルA1:タイトル1 セルA2:タイトル2 セルA3:タイトル3 上記のように各セルに文字を入力しボタンを押下します。 そうすると、事前に用意してある別のExcelファイルを(雛形.xlsとします) タイトル1.xls タイトル2.xls タイトル3.xls のような名前でセルに入力した分だけExcelファイルを複数作成できるようにしたいのですが、 方法がよくわかりません。どなかた方法を教えていただければ幸いです。 ご回答お待ちしております。

質問者が選んだベストアンサー

  • ベストアンサー
  • mt2008
  • ベストアンサー率52% (885/1701)
回答No.3

ごめんなさい、拡張子を忘れてました FileCopy "C:\hoge1\雛形.xls", "C:\hoge2\" & Range("A" & i) ↓ FileCopy "C:\hoge1\雛形.xls", "C:\hoge2\" & Range("A" & i) & ".xls"

その他の回答 (2)

  • mt2008
  • ベストアンサー率52% (885/1701)
回答No.2

難しく考えることはありません。 雛形.xlsを必要な数コピーするだけです。 Sub test2()   For i = 1 To Cells(Rows.Count, 1).End(xlUp).Row     FileCopy "C:\hoge1\雛形.xls", "C:\hoge2\" & Range("A" & i)   Next i End Sub

  • TAKA_R
  • ベストアンサー率32% (26/79)
回答No.1

内容としてはそれほど難しくはないと思われますが。 質問者様のVBAスキルと、ファイルのパスが分かりませんので、考え方のみ書かせていただきます。 1.タイトルの数がいくつあるかは分かりませんので、一応ループで対応する。 2.雛形ファイルを開く 3.雛形ファイル名をタイトルn番目に変えて、保存する 4.タイトルn番目ファイルを閉じる ループ終わる タイトルの数だけ繰り返す 場合によって、作業中画面の更新をOFFにする。

関連するQ&A

  • VBAのマクロについての質問です

    VBAのマクロについての質問です セルA1:タイトル1 セルA2:タイトル2 セルA3:タイトル3 上記のように各セルに文字を入力しボタンを押下します。 そうすると、事前に用意してある別のExcelファイルを(雛形.xlsとします) タイトル1.xls タイトル2.xls タイトル3.xls のような名前で入力した分だけExcelファイルを複数作成できるようにしたいのですが、 方法がよくわかりません。

  • エクセルのマクロで悩んでます

    はじめて投稿いたします。 現在、エクセル2000でマクロを組んでいるのですが、何日も悩んでそこから動けないので質問させていただきます。 やりたいことは、 (1)検索フォームの入力テキストに記載した数値を読んで検索ボタンを押すと、 (2)データブック.xls内の完全に一致した数値のセルの行をアクティブにして (3)その行のA列からO列の値をコピーして (4)入力ブック.xlsの入力シートのB4:B18に数値だけ貼り付け したいと考えています。 検索フォームは入力ブック.xls内で作成しています。 今のところ、(3)でA列の値を読んで、(4)でB4セルに貼りつけということはできているのですが、複数になるとできていません。 根気よく、同じプログラムを書くのが良いのでしょうか? かなり面倒なので、もっと簡単にかける方法があれば教えてください。

  • エクセルマクロ 次のようなプログラム教えてください

    エクセルのマクロで、次のようなことをしたいと思っていますが、 素人でわかりません。 教えていただけますか。 ---------------------------------- o動かしているファイルをa.xlsとします。  a.xlsは、3行目からA列に名前、B列~D列にデータが入っていて、  各行ごとのファイルを作りたい。(行数は決まっていない)  なお、セルE1にある文字が入っている。 o各ファイルは、原紙としてgensi.xlsとして保存されているファイルに、  a.xlsのB~D列のものを入力したものを作りたい。  (B~D列のデータは、gensi.xlsのそれぞれセルC7・C8・C9に入力する)   gensi.xlsは、a.xlsと同じフォルダにあります。 o作成場所は、「C:\date」の中に、セルE1にある文字のフォルダ、A列に  ある名前のフォルダに作りたい。 (セルE1の文字のフォルダは、マクロを初めて実施するときは無いと思います  が、2回目からは存在すると思います。A列の名前のフォルダはマクロ実施時  にはありません。作成するファイル名は、A列の名前と同じ(フォルダ名と同じ).xls にします。) o実行ボタンを3つ作って、1つは今選択されている行のフォルダ・ファイルを作る。  2つ目は数字を入力させて、今選択されている行から入力した数字の行までを一括  で作成する。  3つ目は、3行目から現在入力されている行すべてを一括で作成する。 ------------------------------- 上記のことをしたいと思っています。 よろしくお願いします。 駄文ですみません。 なお、エクセルは古いバージョンでエクセル2000です。

  • 名を付けて保存のコード(エクセルVBA)

    セルA1に書いてある文字をそのままファイル名にして保存させるコードの記述方法を教えて下さい。 例) A1に 「’001」を入力しておき、シート上に配置してあるコマンドボタンをクリックすることで、「001.xls」と名を付けて、あらかじめ決めてある、ディレクトリに保存 エクセル97を使用しています。上書き保存とか、予めコード内にファイル名を書いておく方法は分かったのですが、セルを参照させる方法が分かりません! どなたか詳しい方、宜しくお願い致します。

  • ExcelのマクロでのIMEについて

    ExcelはXP(2003)でOSのIMEは2000なのですが Excelで変な現象が起こっていて困っています。 どなたか経験されて解決なさっていたら 教えていただけませんか? 現象は Excelでマクロを組んでいて、ボタン押下で あるCSVファイルを読み込んでいます。 読み込んだCSVファイルの中身は半角文字、 全角文字とあるのでそれぞれのセルをCSV読込時に IME制御しています。 さらに、入力、変更がNGなセルはロックを掛けてい ます。 ロックを掛けている全角入力のセルで入力しようと した場合、もちろんExcel自体でメッセージが表示 されるのですが、そのメッセージの「OK」ボタンを Enterキーで押すと、それ以後、十字キーでのセル 移動時にロック時のメッセージが表示されてしまう 現象です。 略して書くと全角入力セルで入力がロックされて いるセルに入力しようとしてロックを外すよう促す メッセージが表示され、そのあと十字キーを押下す るだけでまたロック時のメッセージが表示されて しまう現象です。 かなりの長文になってしまってわかりずらいと思う のですが、どなたかお願いします。 MicrosoftのExcel2003とIME2000ではかならず起こる 現象で、修正パッチ等がでていないのでどなたか 経験があるかもです。。。

  • EXCEL VBA でWord文章に値を入れ込み

    現在、EXCELファイルでデータを入力しているのですが、 この中のボタンを押下すると、EXCELのあるセルの値を、 Wordファイルのある場所に貼り付けたい。 例えとして、 EXCELの A1に製造番号 B1に、155556 (という製造番号) が入力されている。 ボタンを押下すると、 Wordのあるフォーマットで作成されている文章ファイルの 製造番号    155556 というような箇所があり、この数値のところに上記、EXCELのB2の 値を埋め込みたい。表形式でなく、文章の改行で、次行の一部に、 埋め込みたい。 Wordファイルには、EXCELのようにB2セルの値というような、 場所を指すものがないので、どのように指定するか分かりません。 よろしくお願いいたします。

  • ExcelのVBAで、他のExcelファイルのセルのデータを取得

    ExcelのVBAで、他のExcelファイルのセルのデータをファイルを実際に開かずに取得する方法はありますか? Workboks.openを使わずに、具体的にどうすればいいのでしょう? (例)  AAA.xls のセル"C5"に BBB.xls のセル"B3"のデータを入力したい場合。 (AAA.xlsにマクロを起動するボタンがある) ただし、BBB.xlsの最初の3行は空白です。

  • エクセルマクロによるハイパーリンクの方法

    はじめて投稿します。 エクセルマクロを始めたばかりですが、よろしくお願いします。 Fileフォルダ内にマクロ.xlsとdataフォルダがあり、 dataフォルダ内には複数のPDFファイルがあります。 マクロ.xlsのセルA1~A10に適当な英数字の文字列(例えばA123,B243,C072…など)が書かれていて dataフォルダ内にはセルA1~A10に書かれている文字列に少し文字が追加された名前のPDFファイル (例えばセルの文字列が"A123"なら"A123(OK).pdf")があります。 これをマクロを使ってA1~A10の文字列にハイパーリンクさせて、 セルに書かれている文字列をクリックして開きたいのですがどうすればよいでしょうか? A1~A10に書かれている文字列を変数cellnameに代入し、 PDFファイルをcellnameにワイルドカードを使って変数pdfnameに代入できずにつまずいています…。 どなたかご解答の程宜しくお願いいたします。

  • エクセルのマクロで作成した関数を他のエクセルのファイルから参照できるのですか?

    エクセルVBAに関して質問です。 a.xlsというファイルに複数のシートがあり すべてのシートにあるデータと「計算」ボタンがあります。 「計算」ボタンを押下すると、マクロが実行され 計算結果が同じシートに表示されます。 データの内容はシートごとに違いますが、 「計算」ボタンで呼び出したいマクロはすべて同じです。 この「計算」ボタンを押すと実行されるマクロを b.xlsに記述したいのですが、 (他のエクセルのファイルにも使いまわしたいので) そのようなことは可能なのでしょうか。 またどのようにマクロを記述すればこのマクロを 呼び出すことができるのでしょうか。 分かりにくい文章で申し訳ございませんが ご教授くださるとうれしいです。

  • 【エクセル マクロ VBA】 エクセルを重複起動させたい

    グーグルや過去ログを検索してもわからなかったので質問させていただきます。 エクセル(2003or2007)でVBAを用いた備品の管理ソフト(bihin.xls)を作っています。 このファイルは、起動時にAuto_Openマクロでウィンドウをもう一つ作って、2つを上下に並べて比較しながら操作できるようにしています。 しかし困ったことに、この状態で全く関係ないエクセルファイルを開くと、ウィンドウ数が計3つになってしまい見づらくなってしまいます。 また逆に、全く関係ないエクセルファイルを開いているときにこのbihin.xlsを起動すると、これまたウィンドウが3つになってしまいます。 したがって、 (1)bihin.xlsを開いているときに別のエクセルファイルを開いたら、新しいエクセルで開かせる。(つまりエクセルの複数起動) (2)別のエクセルファイルを開いているときにbihin.xlsを開いたら、bihin.xlsを新しいエクセルで開く。 ・・・という2つの機能を実現させたいと考えております。 エクセルを複数起動させる方法として、スタートメニューからエクセルを開くという方法があるのは知っているのですが、このbihin.xlsは複数の人が使うことになるので、いちいち全員にスタートメニューから開かせるのは非効率なのでできません。 また、何かしらのエクセルの設定を変更して実現できるとしても、全員のエクセルの設定を変更させるはあまりやりたくはありません。 ですので、bihin.xlsに記述するマクロで何とかしたいと考えています。 どなたかご教授いただければ幸いです。 よろしくお願いいたします。