2017-10-11 4 views
0

Actuellement, j'ai une table où le champ 'ID' est généré automatiquement par une combinaison de plusieurs autres champs. Exemple: ID = '2017_FileName_Chancellor' Maintenant, j'ai essayé de trouver un moyen de renommer cette pièce jointe à cet ID (en appuyant éventuellement sur un bouton dans le formulaire) sans copier manuellement coller l'ID et renommer le fichier joint comme ce serait fastidieux quand on le fait pour des milliers d'enregistrements. Est-ce qu'il y a de toute façon pour moi de faire ça? Je n'ai aucune connaissance en VBA, donc je ne pouvais pas altérer cela.Essayer de renommer une pièce jointe dans Accès à un champ de la table

Fournir une photo de ma table pourrait aider https://i.imgur.com/gaTUCtk.png

Répondre

0

Pour modifier le nom de la pièce jointe dans Access:

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 

Pour modifier le nom du fichier sur le bureau:

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 
+0

Le fichier que je souhaite renommer se trouve dans le champ attachement de la table pour chaque enregistrement, comme https://i.imgur.com/mEgr00y.png –

+0

Okay J'ai mis à jour ma réponse t o reflète votre dernier commentaire. Notez que vous devrez trouver un moyen de faire une boucle dans les tables si vous utilisez plusieurs tables. – Steve

+0

Je n'en ai pas besoin pour tous les enregistrements/tableaux, j'aimerais simplement pouvoir appuyer sur le bouton et renommer la pièce jointe de l'enregistrement en cours dans le formulaire. –