エラー52:ファイル名または番号が正しくありません
エラー52:不正なファイル名または番号が表示されますユーザーが新しいユーザーアカウントでMicrosoftソフトアクセスデータベースを開こうとすると、古いユーザーアカウントでも同じコンピューターから開くことができます.両方のユーザーが同じアクセス権を持っていますファイル.この問題を解決するにはどうすればよいですか?
windows 10
Microsoft365.
以下の日本語でごめんなさい.
オプション比較データベース
関数copy_kick()
'ExcelはfirstSolarisの有をチェックします.文字列としての薄暗いExpFolder
ExpFolder= Left(Environ( "Windir")、3)&"Local\☆☆☆☆☆☆☆☆_3rd.ldb"
オブジェクトとしての薄暗いFSO
FSO= CreateObject( "Scripting.FileSystemObject")
を設定しますFSO.FolderExists(ExpFolder)=Falseの場合
MkDir(ExpFolder)
Ifを終了
FSO=なしを設定
If Dir(ExpFolder&"\☆☆☆☆☆☆☆☆_3rd.ldb")<>"" Then
'
2016.11.28 Y.F TestStart
'MsgBox( "これはにれは開始プログラムので、プログラム処理を終了します!")
'DoCmd.Quit
'ダブルスタートノーアイスタートキャンセル確認書
'(※前の投稿の強制終了を検討するし、可能性(いいえ入)・・・設定ボタン:はい橋)
MsgBox( "開始入ので、この処理を終了します!" _
&vbCrLf_
&vbCrLf&"※繰り返してプログラムを開始していないことを確認します機会、いいえでないします..." _
、vbYesNo + vbDefaultButton1)= vbYes Then
DoCmd.Quit
Ifを終了
'
2016.11.28 Y.F TestEnd
終了する場合
DoCmd.Echo Fales
'プログラムファイルのコピー
Dim strPassA As String
Dim strPassB As String
strPassA= CurrentDb.Name
strPassB= Left(strPassA、InStrRev(strPassA、 "\")-1)
FileCopy strPassB&"\プログラム\☆☆☆☆☆☆☆☆_Win7.mdb"、ExpFolder&"\☆☆☆☆☆☆☆☆_3rd.ldb"
'ローカルプログラムキック
Dim stAppName As String
stAppName= "Msaccess.exe"&ExpFolder&"\☆☆☆☆☆☆☆☆_3rd.mdb"
Shell(stAppName、1)を呼び出す
DoCmd.Quit
'DoCmd.Echo True
終了機能
返信リスト(回答:6)
申し訳ありませんが、実際、日本人は何が起こっているのかを知ることを事実上不可能にしています.
関数が1つなのか2つあるのかさえわかりません.
このコードの目的を説明できますか?
デバッガーでこのコードをステップ実行するとどうなりますか?どこで失敗しますか?
c:\localは、誰もがアクセスできるフォルダではない場合があります.c:\users\public\[your_app]
をお勧めします
応答5# ->にスキップ6 #SFBこんにちは、
返信ありがとうございます.
ユーザーが古いユーザーアカウントで開くと、エラー52:不正なファイル名または番号が添付された写真1と表示されます
添付の写真2をデバッグをクリックすると
応答6# ->にスキップ3 #TomvanS2番目の図で、Dir括弧内の式を検討すると、そのフォルダーは存在しますか?ファイル名が日本語の文字で始まっていることに気づきました.
テストとして、ファイル名とコードからその文字を省略した場合はどうなりますか?
応答4# ->にスキップ1 #TomvanS(申し訳ありませんが、あなたほど日本語のアルファベットはわかりません)
あなたには次のような表現があります:
Dir(ExpFolder&"[Y] SparePartsSearch_Program_3rd.ldb")
[Y]はあなたの日本語のキャラクターです.
それが実際にファイル名の一部であるかどうか、またそうであれば、そのファイルをコピーして[Y]なしで名前を変更し、それがより適切に機能するかどうかを確認できるかどうか疑問に思いました.
応答1# ->にスキップ2 #SFBその[Y]は\と同じです.したがって、ファイル名の一部ではありません.
削除してみましたが、うまくいきませんでした.そこにあるすべての[Y]を削除する必要がありますか?