1

私はこのコードを使用していますが、何らかの理由で、8文字を超える名前は切り捨てられます。

Dim SaveName As String
Dim CurrentDate As Date

CurrentDate = Now

SaveName = InputBox("Save Database as..", "Save as..", CurrentDate)

DoCmd.TransferDatabase _
acExport, _
"dBase IV", _
"C:\Data\PLC_MOBZ\Test\export", _
acTable, _
"DB_Total", _
SaveName, _
False

ご存知のように、何も入力されていない場合でも、デフォルトの名前は次のようになります。

"22-2-2013 14:42:44"  

これは8文字より長くする必要があります。

4

1 に答える 1

3

これはデータベース標準です。「dir」または「folder」はデータベース名で、内部のファイルはテーブルです。結果として、dBase 形式以外のテーブルを作成することはできませんし、すべきではありません。

他のものを作成すると、それらのdBaseプログラムは、テーブルを表すファイルを読み取ったり見つけたりすることができなくなります。

そのため、フォルダー名とファイル名の両方を 8.3 形式のままにする必要があり、ALSO にスペースを含めないでください。したがって、これは Microsoft の問題ではなく、dBase 標準です。

ファイルの名前を変更できるファイルを作成した後に、このルールを確実に破ることができます。これは、Access の外部で行うか、VBA の「name」コマンドを使用して行うことができます

例えば:

Name  "oldFileName" as  "newFileName"
于 2013-02-22T15:52:47.933 に答える