|
▼超初心者 さん
記載漏れです。
Dim myDir As Stringと宣言して
myDir = CreateObject("WScript.Shell").SpecialFolders("Desktop")
xlsFileName = myDir & "\" & Format(Date, "yyyy_mm_dd") & "履歴データ一覧.xls"
・
・
・
xlsWkb.SaveAs xlsFileName, FileFormat:=56
xlsWkb.Close: Set xlsWkb = Nothing
xlsApp.Quit: Set xlsApp = Nothing
としたら成功しました。
>▼超初心者 さん
>VBA初心者です。
>いろいろ考えてみたら、
>Dim myDir As Stringと宣言して
>xlsFileName = myDir & "\" & Format(Date, "yyyy_mm_dd") & "履歴データ一覧.xls"
>と変更したら成功しました。
>
>お手数おかけして申し訳ございません。
>有難うございました。
>
>
>>▼超初心者 さん:
>>こんにちは。
>> 自分なりに修正して
>>
>>sub
>>
>>Dim objWShell As Object 'WScript.Shell
>>Dim strDesktopPath As String 'デスクトップの場所
>>
>>'Windows Script Hostのオブジェクトを作成する
>>Set objWShell = CreateObject("WScript.Shell")
>>
>>'スペシャルフォルダ(特殊フォルダ)の場所を返す
>>strDesktopPath = objWShell.SpecialFolders("Desktop")
>>
>>Set DB = CurrentDb
>> xlsFileName = "strDesktop" & Format(Date, "yyyy_mm_dd") & "履歴データ一覧.xls"
>> Debug.Print xlsFileName
>> .
>> .
>> .(途中省略)
>>xlsWkb.SaveAs xlsFileName, FileFormat:=56
>> xlsWkb.Close: Set xlsWkb = Nothing
>> xlsApp.Quit: Set xlsApp = Nothing
>>
>>end sub
>>
>> としましたがユーザのデスクトップに書き出されません。
>>デバックプリントで出力してもどこをどのように修正するのか
>>わかりません。
>>どうかご教授をお願いします。
>>
>>>▼VBA初心者 さん:
>>>> 「xlsFileName = "SpecialFolders("Desktop"):\" & Format
>>>> (Date, "yyyy_mm_dd") & "ホストデータ.xls"」として、
>>>> 使用しているユーザのデスクトップに保存されるでしょうか。
>>>
>>>Debug.Print xlsFileName
>>>にて、xlsFileNameのデータの中身を確認してみると良いです。
>>>きちんとしたファイル名(フルパス)になっていたら出力されます。
>>>
>>>
>>>余談ですが、私のAcc2000では、デスクトップパスは、
>>>CreateObject("WScript.Shell").SpecialFolders("Desktop")
>>>このようにして取得します。
>>>
>>>2007から(?)の機能でCreateObjectなしでも使えるように
>>>なっているのかもしれませんが、一応、参考までに。。。
|
|