2017-10-11 17 views
0

현재 'ID'필드가 여러 다른 필드의 조합을 통해 자동으로 생성되는 테이블이 있습니다. 예 : ID = '2017_FileName_Chancellor' 이제 수동으로 ID를 붙여 복사하고 첨부 된 파일의 이름을 다음과 같이 바꿀 필요없이 양식의 버튼을 눌러 해당 ID로이 첨부 파일의 이름을 바꾸는 방법을 찾아 냈습니다. 그것은 수천 개의 기록을 위해 그것을 할 때 지루할 것입니다. 어쨌든 내가 이것을 할 수 있니? 나는 VBA에 대한 지식이 없으므로 나는 그것을 개조 할 수 없었다.테이블의 필드에 대한 액세스의 첨부 파일 이름 바꾸기 시도

내 테이블의 사진 https://i.imgur.com/gaTUCtk.png

답변

0

Access에서 첨부 파일의 이름을 변경하려면 도움이 될 수 있습니다 제공 :

Private Sub Command0_Click() 
    Dim NewName As String 
    Dim OldName As String 
    Dim rs As Object 
    Dim strSQL As String 

    Set rs = CreateObject("ADODB.Recordset") 

    strSQL = "SELECT TestAttachment.FileName FROM TestTable WHERE TestID = 1" 

    rs.Open strSQL, CurrentProject.Connection, 1, 3 

    Do Until rs.EOF 
     OldName = rs.Fields(0) 
     NewName = CurrentDb.TableDefs("TestTable").Fields(0).Name 

     Name "C:\Users\TestUser\desktop\" & OldName As 
     "C:\Users\TestUser\desktop\" & NewName & ".TXT" 

     rs.MoveNext 
    Loop 

    rs.Close 
    Set rs = Nothing 

End Sub 
:

Private Sub Command15_Click() 
    Dim NewName As String 
    Dim NewNameWithExt As String 

    NewName = Me.TestID.Value 

    NewNameWithExt = NewName & ".txt" 

    DoCmd.RunSQL ("UPDATE TestTable SET TestAttachment.FileName = '" & 
    NewNameWithExt & "' WHERE TestID = " & NewName) 

End Sub 

이 바탕 화면에 파일의 이름을 변경하려면

+0

이름을 바꾸려는 파일은 각 레코드의 테이블에있는 첨부 파일 필드에 있습니다 (예 : https://i.imgur.com/mEgr00y.png) –

+0

알겠습니다. 내 응답을 업데이트했습니다. 마지막 의견을 반영합니다. 여러 개의 테이블을 가져 오는 경우 테이블을 반복 할 수있는 방법을 찾아야합니다. – Steve

+0

모든 레코드/테이블에 대해이 작업을 수행 할 필요는 없습니다. 버튼을 누르고 양식의 현재 레코드에 대한 첨부 파일의 이름을 바꿀 수 있기를 바랍니다. –