PDA

View Full Version : ایجاد فولدر بوسیله کد نویسی در اکسس و کپی فایل در آن



mohsenna30ri
شنبه 19 فروردین 1391, 11:47 صبح
با سلام و خسته نباشید

می خواستم هنگام اجرای یک فانکشن عملیات زیر انجام شود:
یک فولدر با نامی که در یکی از فیلدها وجود داره در کنار برنامه ایجاد شود
و سپس فایلی که آدرس اون در فیلد دوم وجود داره در اون فولدر کپی شود

راه حل چیست؟ تو سایت جستجو کردم چیز بدرد بخور ندیدم

فایل به پیوست می باشد

Abbas Amiri
شنبه 19 فروردین 1391, 22:37 عصر
کدهای زیر درمحل مورد نظر کپی کنید ونام جدول وفیلدها را تغییر دهید


Dim sFolder As String, sFile As String
sFolder = DLookup("FolderField", "MyTable", strCriteria)
' Create Folder
MkDir CurrentProject.Path & "\" & sFolder & "\"
sFile = DLookup("FileField", "MyTable", strCriteria)
sFolder = sFolder & Right(sFile, Len(sFile) - InStrRev(sFile, "\"))
' Copy file to new folder
FileCopy sFile, sFolder

soroush_k12
یک شنبه 20 فروردین 1391, 17:45 عصر
کدهای زیر درمحل مورد نظر کپی کنید ونام جدول وفیلدها را تغییر دهید


Dim sFolder As String, sFile As String
sFolder = DLookup("FolderField", "MyTable", strCriteria)
' Create Folder
MkDir CurrentProject.Path & "\" & sFolder & "\"
sFile = DLookup("FileField", "MyTable", strCriteria)
sFolder = sFolder & Right(sFile, Len(sFile) - InStrRev(sFile, "\"))
' Copy file to new folder
FileCopy sFile, sFolder


سلام با تشكر از جناب اقاي اميري
اگر بخواهيم با زدن يك دكمه خود ديتابيس جاري رو به محلي ديگر كپي كنيم آيا راهي وجود داره؟

Abbas Amiri
یک شنبه 20 فروردین 1391, 20:51 عصر
Public Sub CopyMe(ByVal strNewName As String) ' strNewName Full Path
Dim Obj As AccessObject
SaveAsText 6, "", strNewName
With CurrentProject
For Each Obj In .AllForms
With Obj
DoCmd.CopyObject strNewName, .Name, acForm, .Name
End With
Next Obj
For Each Obj In .AllMacros
With Obj
DoCmd.CopyObject strNewName, .Name, acMacro, .Name
End With
Next Obj
For Each Obj In .AllModules
With Obj
DoCmd.CopyObject strNewName, .Name, acModule, .Name
End With
Next Obj
For Each Obj In .AllReports
With Obj
DoCmd.CopyObject strNewName, .Name, acReport, .Name
End With
Next Obj
End With
For Each Obj In CurrentData.AllQueries
With Obj
DoCmd.CopyObject strNewName, .Name, acQuery, .Name
End With
Next Obj
End Sub