• ベストアンサー

エクセルファイルのマクロ ファイル変換

micrsoft365のエクセルファイル たとえば a.xmlファイルを開いたときに a.xmlのセルA1 = あ a.xmlのセルB1 = い a.xmlのセルC1 = う と 出るとします これを別の b.xmlファイルに 次のように変換したいとき b.xmlのセルD2=a.xmlのセルA1 = あ b.xmlのセルE2=a.xmlのセルB1 = い b.xmlのセルF2=a.xmlのセルC1 = う 以上の操作をしたいのですが a.xmlファイルを開いて マクロを実行して b.xmlファイルを作成したいのですが、 やりかた コードなど教えていただけますと 助かります 宜しくお願い致します OS win10

  • XML
  • 回答数1
  • ありがとう数1

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

  • ベストアンサー
  • NuboChan
  • ベストアンサー率47% (745/1583)
回答No.1

例えば、 以下では ? Sub CopyXML() 'a.xmlファイルを開く Workbooks.Open Filename:="a.xml" 'b.xmlファイルを新規作成 Workbooks.Add ActiveWorkbook.SaveAs Filename:="b.xml", FileFormat:=xlXMLSpreadsheet 'a.xmlファイルの1行目のA1,B1,C1のセルの値をコピー Workbooks("a.xml").Worksheets(1).Range("A1:C1").Copy 'b.xmlファイルのd1,e1,f1のセルに貼り付け Workbooks("b.xml").Worksheets(1).Range("D1:F1").PasteSpecial xlPasteValues 'クリップボードをクリア Application.CutCopyMode = False 'a.xmlファイルを閉じる Workbooks("a.xml").Close SaveChanges:=False End Sub

sushidokei
質問者

お礼

有り難うございます 試してみます

関連するQ&A

  • エクセルでのマクロの作成(コピー、ファイル展開)

    自身で作成しようとしたのですができなかったので質問させていただきます。 ExcelでAファイルからマクロを実行させて、Bというファイルを開き一部のセルをコピーし、 Aファイルの条件に該当するセルにペーストするマクロを組みたいと考えています。 以下にさらに具体的に内容を記載いたします。 「Xフォルダ内にAファイルとBファイル(20101010-XXX)があり、Aファイル内にてマクロを実行させる。」 1:指定したフォルダ内にある、条件に合う該当ファイルをリストアップする(名前順) 2:リストの一つ目のファイル(Bファイル)を開く 3:Bファイル内のセルF9を選択し、コピーする。 4:Bファイルを閉じる 5:Aファイルの指定セル(C6)に貼り付ける 6:リストの二つ目のファイル(Bファイル)を開く 7:      : (3、4は同様) 8:Aファイルの指定セル(C306)[以降C6+300ごとに増やす]に貼り付ける 9:リストの三つ目のファイル(Bファイル)を開く         :  以下リストアップされたファイルを繰り返し処理し、全て終えたら終了。 簡単ですが例も記載します。 ================(例 Aファイル)================== A        B       C 行  4    20101010←日付        時間    Bセル値  6      10:00     F9(Bファイル一つ目)←貼り付け対象  :        :       :                       306      20:00     F9(Bファイル二つ目)            :        :        :                       606      30:00     F9                                                               :        :       :                                                               ============================================= XXXにはAファイルBセルの時間と一致するようにする↓ ================(例 Bファイル(20101010-XXX))=== A     B       C      D     F                               ○○←コピー対象                           ============================================= どなたか、ご存知の方が居られればお教え願います。 よろしくお願いいたします。

  • エクセルのマクロで別ファイル(エクセル)のマクロを実行させるには?

    エクセルにおいてマクロを組んでいます. 1.実行させたいマクロAが組んであるファイル(Aファイルとします)が多数あります。またマクロAはモジュール内(Module1)に作っております。 2.1のマクロAを別のエクセルファイル(Bファイルとします)のマクロBで実行させたい. 上記のようなことを行いたいのですが可能でしょうか?さらに言えば、マクロBによってマクロAのプロシージャを指定して実行させることは出来るでしょうか? 現在は、マクロBによってマクロAを組んであるAファイルを開き、Aファイルのマクロの中にファイルを開いたときにマクロAを実行させる(イベントドリブン)ようにしています. 直接、マクロBでAファイルのマクロAを動かせるようになればマクロAにイベントドリブンなコードを組む手間がなくなるので、なんとかそのような事が出来ないでしょうか? どうか、詳しい方ご教授ください。 よろしくお願いいたします。。。

  • 【エクセルVBA】エクセルファイル間で表のコピーと貼り付け

    そもそも出来るかどうか、わかりませんが、 もしかしたらと思い、質問させていただきました。 2つのエクセルファイル「個別」と「合計」があるとします。 「個別」はCドライブの「所属者」フォルダに 「合計」はCドライブの「集計」フォルダにあるとします。 「個別」ファイルには以下のような表とコマンドボタンがあります。 A1 A2・・・はセルの位置を表しています。    A1 A2 A3 B1 B2 B3 C1 C2 C3 コマンドボタンをクリックすると、この表と同じ内容が 「合計」ファイルの以下の位置に移動するようにしたいです。    E1 E2 E3 F1 F2 F3 G1 G2 G2 要するに「個別」ファイルにある表をコピーして、 「合計」ファイルの指定した位置に貼り付けるという操作を マクロを使ってコマンドボタンをクリックすることで 自動に行えるようにしたいのです。 もし可能ならば、 どのようにコードを入力するべきか教えてください。 マクロに関しては素人ですので、 できれば入力すべきものをそのまま回答していただけると ありがたいです。

  • Excelマクロに関しての質問

    Excelマクロに関しての質問です。 ファイルAの”シート1”のF1,F16,F42,F65,F97,F122を別のファイルBの”集計シート”のB2,C2,D2,E2,F2,G2にデータ(数値or文字)を移します。 そしてファイルAの”シート2”のF1,F16,F42,F65,F97,F122をファイルBの”集計シート”のB3,C3,D3,E3,F3,G3にデータを移します。 それをファイルAの”シート29”まで繰り返し行いたいのですが、どのようなマクロを組めば良いのでしょうか? 教えて頂きたいです。

  • エクセル(マクロ) 特定セルのファイル間コピペ

    マクロで下記内容の処理を行いたいと思っております。 どのようなコードにすればよいかご教授よろしくお願い致します。 1.A.xlsを開く 2.B.xlsを開く 3.B.xlsの特定セルの値をコピーする。(特定セルを仮にB4、C7、D9とする) 4.A.xlsのC列にあるファイル名リストから「B.xls」というファイル名の入ったセルを検索する。 5.仮に5行目に「B.xls」というファイル名があれば、同じ行にある特定列 (行は固定で、例えばE5、F5、G5とする)に3.でコピーしたB4、C7、D9の値を張り付ける。 ※B4はE列、C7はF列、D9はG列に対応するものとする 6.B.xlsを閉じる 7.C.xlsを開く 8.C.xlsの特定セルの値をコピーする。(特定セルはB.xlsと同じB4、C7、D9) 9.A.xlsのC列にあるファイル名リストから「C.xls」というファイル名の入ったセルを検索する。 10.仮に7行目に「C.xls」というファイル名があれば、同じ行にある特定列 (行は固定で、例えばE7、F7、G7とする)に8.でコピーしたB4、C7、D9の値を張り付ける。 ※B4はE列、C7はF列、D9はG列に対応するものとする 11.C.xlsを閉じる 12.D.xlsを開く 以下、同じ処理を繰り返す。

  • Excel 2007のマクロ記述について

    Excel 2007で、B4セルからI最終行までの整数のみを小数点以下1桁にする処理をマクロで実行したいのですが、どのように記述したらよいか教えてください。 最終行とはI列にセルの値がある最後の行です。 下記の例のマクロ実行結果は、1→1.0、2→2.0となります。 (例)      列      A  B    C    D    E   F  G   H  I    J      K  行4  A1 0.9   0.9   0.9   0.9  1.2  1.2   2  2   CIRCLE  CIRCLE    5  A2 1.4   1.4   1.6   1.6   1   1  1.5  1.5  CIRCLE  CIRCLE    6  A3 0.71  0.71   0.71  0.71  1   1  1.5  1.5  CIRCLE  CIRCLE マクロ実行結果      列      A  B    C    D    E   F  G   H   I    J      K  行4  A1 0.9   0.9   0.9   0.9  1.2  1.2  2.0  2.0  CIRCLE  CIRCLE    5  A2 1.4   1.4   1.6   1.6  1.0  1.0  1.5  1.5  CIRCLE  CIRCLE    6  A3 0.71  0.71   0.71  0.71  1.0  1.0  1.5  1.5  CIRCLE  CIRCLE

  • EXCEL マクロ コマンドボタンで複数ファイルの制御は可能?

    Excelのマクロを作成しています。 <マクロの内容>  AファイルからBファイルへデータをコピ&ペーストしたり、Bファイル内のセルを結合したり、結合解除したりしています。 <状況>  Aファイル内(標準モジュール)にマクロを作成し[マクロの実行]から実行させたところ成功しました。  Aファイル内(Microsoft excel objects Sheet1)にボタンを作成し、そのボタンを押すことで同様にしようとしたところBファイルを操作するところでエラーが発生しました。  ファイル間でデータをやり取りしたり、マクロの入っていない側のファイルのセル情報を変更させたいのですが、ボタンで実行させるにはどうすればいいのでしょうか?

  • <文字列マクロについて>

    <文字列マクロについて> 皆さま お力を貸して下さい。 初心者で、何もわからず書いておりますがすみません。 下記の2つのマクロを教えて下さい。 ?横に並んだ「ある行」に在るデータを「列」に変換し、  指定した数だけ並べる    あいうえお    ←A1セルからE1まで5列(これは状況により変わる)       ↓(マクロ実行:3行同じ数だけ並べるという指定)  あ        →A1セルから下にひたすら、同じ文字が続き順に並ぶ  あ  あ  い  い  い  う  う        →A1セルから下に並べる(3行は指定できれば別の数字にも変えたい  う  え  え  え  お  お  お ?規則的に並んだデータのまとまりをセットで移動する。  例だと5つの塊(これは変数とおきたい)    あ A              a  い B              b  う C               c   え D               d  お E              e    ↓(マクロ実行)  あ  い  う  え  お  A  B  C  D  E      ・  ・  ・  ・    a b c d e    

  • EXCELのマクロで。。。

    シートAのセルC2の値(数字)を シートBのE、F、Gの各列のうち空いている一番左のセルで、かつ、D列に何か書いてある一番下の行のセル に転記したいです。 たとえば、シートBが図のような場合にはF28です。これが毎回、変化します。 マクロの記述を教えて下さい。よろしくお願い致します。

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

    あセルを選択すると、その列の行を一番下まで書き出すようにしたいと思っています。 A1セル=ひらがな E2セル以降=書出し B列 ひらがな ←タイトル(B1セル) あいうえお かきくけこ さしすせそ C列 カタカナ←タイトル(C1セル) アイウエオ カキクケコ サシスセソ D列 英文字←タイトル(D1セル) abcd efgh ijkl 縦になっててちょっと見づらいですが、このような場合、A1の“ひらがな”というワードが入っていて、マクロを実行するとその下の行である “あいうえお” “かきくけこ” “さしすせそ” と、E2以降に表示するようにしたいのですが、どのように考えてコードにしたらいいのか分からないので教えていただけないでしょうか。

専門家に質問してみよう