2014-04-14 3 views
1

현재 부서로 들어오는 호출을 기록하도록 설계된 데이터베이스 시스템이 있습니다. 첨부 파일을 허용하는 정보가있는 전화 시스템의 다른 요원을 사진, 편지 등으로 돕기 위해 첨부 파일을 추가 할 수 있도록 양식에 첨부 파일 컨트롤이있어 위에서 언급 한 추가 문서를 추가 할 수 있습니다.첨부 파일 크기 제한 액세스 2007

문제는 많은 사람들이 시스템을 사용하여 많은 설명서를 저장하고 있다는 것을 발견했습니다. 이로 인해 데이터베이스의 파일 크기가 기하 급수적으로 늘어납니다.

내가 알고 싶은 것은, VBA를 통해 첨부 파일의 파일 크기를 제한 할 수 있습니까? 예를 들어 6MB로 제한하십시오.

+1

위의 수정 사항을 참조하십시오. "첨부 파일을 추가 할 수 있도록 양식에 첨부 파일 컨트롤이있어 위에 언급 된 추가 문서를 추가 할 수 있습니다." – ASM2701

+1

나는이 점에 대해 전문 지식이 없으므로이 점에 대해 겸허하게 설명합니다. 그것은 Access의 내장 기능이 사진 처리기로 사용할 수 있지만 문서 관리자는 아닙니다. 그리고 나는 당신의 현재 이슈가 마지막이 아닐 것이라고 추측해야합니다. 사용자는 파일 연결 기능 대신 지점 간 (point-to-file) 레코드를 권장합니다. – Smandoli

+1

위의 의견을 뒷받침하기 위해 http://windowssecrets.com/forums/showthread.php/141654-MS-Access-2010-Adding-Attachments-from-Form-using-Unbound-Field-and-VBA – Smandoli

답변

1

다음 코드는 파일 크기를 반환하지만 위에서 언급 한 다른 것들은 Access 데이터베이스에 첨부 파일을 저장하고 싶지 않을 것이므로 데이터베이스가 빠르게 커지고 불안정해질 수 있습니다.

Private Sub CheckFileSize(strMyFile) 
    Dim objFileSys As Scripting.FileSystemObject 
    Dim objMyFile As File 
    Set objFileSys = CreateObject("Scripting.FileSystemObject") 
    Set objMyFile = objFileSys.GetFile(strMyFile) 
    If objMyFile.Size > 6000000 then 
    MsgBox "File is too big.", vbokonly 
    Else 
    MsgBox "File is OK.", vbokonly 
    End If 
    Set objFileSys = Nothing 
    Set objMyFile = Nothing 
End Sub 
+0

감사합니다. 이것은 사용자를 억제하는데 매우 도움이 될 것입니다. 첨부 파일은 주로 작은 그림이나 텍스트 파일 용 기능으로 추가되었습니다. 이것은 대용량 파일을 저장하지 않는 사용자에게 전달되었지만 사용자는 결코 듣지 않습니다. 코드를 고맙게 생각합니다. 시도해 보겠습니다. – ASM2701

+1

환영합니다. 작동하는 경우 작동하는지 확인하십시오. 또한 dll이 scrrun.dll 인 "Microsoft Scripting Runtime"을 참조해야하며 Windows 7을 실행중인 경우 SysWOW64 폴더에 있어야합니다. – Mike