|
りん さん、Endさん、おはようございます
遅くまでありがとうございました
りんさんのアドバイスを参考に、ちょっとコンパイルエラーになってしまったところを修正し、実行してみました。
>エラー回避のために、ファイルをいろいろチェックしてから保存する方法です。
>Sub Test()
> Dim newbook As Workbook, wb As Workbook, ws As Worksheet
> Dim Opath As String, Ofile As String
> 'コピー元xls
> varxls = "C:A.xls"
> Workbooks.Open Filename:=varxls
> '
> Set ws = ActiveWorkbook.ActiveSheet←ここでメソッド・メンバが
ありませんエラーが出ました。
ので直前にコピー元をもってきました。
Set newbook = Workbooks.Add
>
> 'コピー元xls
> 'varxls = "C:A.xls"
> 'Workbooks.Open Filename:=varxls
> ws.UsedRange.Copy _
> Destination:=newbook.Worksheets(1).Range("A1")
> Opath = "D:\システム\結果\" 'フォルダ(最後の\を忘れないでね)
> Ofile = "A2【番号】 【名】 様.xls" 'ファイル名
> '同じ名前のブックが開かれていたらエラーになるので閉じる(保存はしません)
> On Error Resume Next
> Set wb = Application.Workbooks(Ofile)
> On Error GoTo 0
> If Not wb Is Nothing Then
> wb.Saved = True '保存したフリ
> wb.Close '保存しないで閉じる
> Set wb = Nothing
> End If
> '同じ名前のファイルがフォルダ内にあったら削除しておく
> If Dir(Opath & Ofile) <> "" Then Kill (Opath & Ofile)
> '改めて保存
> newbook.SaveAs Filename:= _
> Opath & Ofile, _
> FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
> ReadOnlyRecommended:=False, CreateBackup:=False
>End Sub
>これでどうでしょうか?
>再起動してから確認してみてください。
結果は、・・・だめでした。
また開こうとすると、(ダブルクリックです)
ヘッダには、保存した名前がでるんですけど
それっきり固まってしまいます。
名前を変えてやってみます。
どうぞ宜しくお願いします。
|
|