[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『 「データ差込して個別にファイル保存」 について』(Yur)
投稿
[[20121119154726]] 『データ差込して個別にファイル保存』
について...
このマクロを用いて、以前から使ているフォームのシートに
データ差込個別保存をしようとしています。
マクロ実行の際、1件ごとに互換性チェックメッセージがでて、
続行ボタンを押すようになります。
ボタンを押して保存されたファイルはXLS形式で保存されています。
以前のフォームは古いエクセルで、(97-2003)作っています。
シートをコピーしてXLSX形式で保存した上で、再度
個別保存用ファイルに移しても変わりません。
今使っているエクセルは通常の保存ではXLSXの形式で、このマクロで
保存したデータ差し込みして個別保存ファイルはXLSMになっています。
ファイルのシートは
差し込むデータのシート
以前のフォームを移動またはコピーしたシート
の2シートです。
アドバイスがあればお願いします。
< 使用 Excel:unknown、使用 OS:unknown >
(Yur) 2021/04/18(日) 19:03
"xls"の部分を"xlsm"にしてみる
(わ) 2021/04/18(日) 19:09
>アドバイスがあればお願いします。
のようなことを提示してみてはどうでしょうか?
■1
追加投稿を拝見して。
ActiveWorkbook.SaveAs ThisWorkbook.Path & "\" & r.Value & ".xls", FileFormat:=xlNormal
↑のときrの中身は何ですか?
あと、「FileFormat:=xlNormal」にするなら、"xlsx"に変えるとまずいです。
(むしろ「FileFormat」を指定するなら、拡張子はExcel君に勝手につけてもらったほうがよいとおもいます。)
(もこな2) 2021/04/18(日) 19:10
マクロのコードは素人のためほぼ判らず、記載のものをコピーして
います。
rの中身も意味がわからず、申し訳ありません。
ファイルそのものをxlsにしてみましたが変わらず。
出てくるメッセージは
“このブックで使用されている次の機能は、以前のバージョンのExcelではサポートされていません。
このブックを現在選択されているファイル形式で保存すると、これらの機能が失われるか、正常に
実行されなくなる可能性があります。このままブックを保存する場合は、[続行]をクリックしてください。
すべての機能を維持する場合は[キャンセル]をクリックし、新しいファイル形式のいずれかでファイルを
保存してください。”
と出ています。
10レコードあれば10回出てきます。
何かわかればアドバイスをお願いします。
(Yur) 2021/04/18(日) 19:26
そして、理解できない命令があればネット検索したうえで、それでもわからなければ具体的に聞いてみてください。
■3
>ファイルそのものをxlsにしてみましたが変わらず。
別に、本体を「xls」形式にしなくても大丈夫ですよ。
(シートをコピーして新規にできたブックを保存してるだけなので)
繰り返しになりますが、「FileFormat:=xlNormal」にするなら、"xlsx"に変えるとまずいです。
↓を参照して「xlsx」形式がなんであるか調べてみるとよいでしょう。
https://docs.microsoft.com/ja-jp/office/vba/api/excel.xlfileformat
(もこな2) 2021/04/18(日) 20:07
まぁ、本体のファイル形式はお好みということで。
(もこな2) 2021/04/18(日) 20:47
Sub 研究用() Dim 行 As Long Dim srcSH As Worksheet
Stop 'ブレークポイントの代わり
Set srcSH = ThisWorkbook.Worksheets("顧客")
'▼2行目〜自ブックの「顧客」シートのB列最終行まで繰り返し処理 For 行 = 2 To srcSH.Cells(srcSH.Rows.Count, 2).End(xlUp).Row ThisWorkbook.Worksheets(Array("作成", "1回目", "2回目", "3回目")).Copy
With Workbooks(Workbooks.Count) '▼コピーして出来たブックの「作成」シートに自ブックの「顧客」シートから転記 .Worksheets("作成").Range("D1").Value = srcSH.Cells(行, "B") .Worksheets("作成").Range("F4").Value = srcSH.Cells(行, "C") .Worksheets("作成").Range("H6").Value = srcSH.Cells(行, "D") .Worksheets("作成").Range("K9").Value = srcSH.Cells(行, "E") .Worksheets("作成").Range("K10").Value = srcSH.Cells(行, "F") .Worksheets("作成").Range("M2").Value = srcSH.Cells(行, "G") .Worksheets("作成").Range("N6").Value = srcSH.Cells(行, "H")
'▼コピーして出来たブックを名前をつけて保存(拡張子を指定しなければ、エクセル君が勝手に付けるのでそれに任せる) .SaveAs _ Filename:=ThisWorkbook.Path & "\管理表_" & srcSH.Cells(行, "B").Value & "_" & srcSH.Cells(行, "C").Value, _ FileFormat:=xlOpenXMLWorkbook
'▼コピーして出来たブックを閉じる .Close End With Next 行
End Sub
(もこな2) 2021/04/18(日) 21:33
(Yur) 2021/04/19(月) 10:08
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.