[Access] Valeur d'une requete dans Word

N3m0Xy Messages postés 8 Date d'inscription mardi 5 juin 2007 Statut Membre Dernière intervention 29 juin 2007 - 28 juin 2007 à 21:41
N3m0Xy Messages postés 8 Date d'inscription mardi 5 juin 2007 Statut Membre Dernière intervention 29 juin 2007 - 29 juin 2007 à 19:09
 Bonjour à tous! Voila vous allez peut etre éclaicir mon problème...


Grace à un code je copie sous Word le résultat d'une requete :


"SELECT Monchamp FROM Matable WHERE Id = 1"



Tout se passe bien jusque la mais je me retrouve sous Word avec le
champ que j'ai sélectionné sous forme de tableau alors que je voudrais
obtenir seulement la valeur du champ.

Je m'explique "SELECT Nom FROM Client WHERE Id =1" renvoie sous Word par exemple

--------

| Nom |

----------

| Durand |

----------


Je voudrais que ça renvoie seulement Durand...comment faire?!

Merci !

4 réponses

N3m0Xy Messages postés 8 Date d'inscription mardi 5 juin 2007 Statut Membre Dernière intervention 29 juin 2007
28 juin 2007 à 21:43
Voici mon code :

Private Sub Commande10_Click()


Set Word_Application = New Word.Application


CurrentDb.CreateQueryDef "Situation_Nom", "SELECT Nom FROM Situation WHERE Num_client = " & Me.Num_client.Value & ";" 'ma requete


 

 Word_Ouvrir_document CurrentProject.Path & "\model.doc", True


If (DCount("*", "Situation_Nom") > 0) Then

     Word_Atteindre_Signet "SituationNom"

     DoCmd.OutputTo acQuery, "Situation_Nom", acFormatTXT, CurrentProject.Path & "\model.txt"

     Word_Insère_fichier CurrentProject.Path & "\model.txt"

     DoCmd.DeleteObject acQuery, "Situation_Nom"

   

End If


End Sub


 

 Public Sub Word_Atteindre_Signet(Optional Nom_signet As Variant)

   

   


 If Not IsNull(Nom_signet) Then

      Word_Application.Selection.GoTo What:=wdGoToBookmark, Name:=Nom_signet

End If


End Sub


 Public Sub Word_Insère_fichier(NomFichier As String)


 Word_Application.Selection.InsertFile _

                        
FileName:=NomFichier, _

                        
Range:="", _

                        
ConfirmConversions:=False, _

                        
Link:=False, _

                        
Attachment:=False


 End Sub


Public Sub Word_Ouvrir_document(Nom_Document As Variant, Visible As Boolean)


 With Word_Application

      .Visible = Visible

      .Documents.Open _

                    
FileName:=Nom_Document, _

                    
ConfirmConversions:=True, _

                    
ReadOnly:=False, _

                    
AddToRecentFiles:=False, _

                    
PasswordDocument:="", _

                    
PasswordTemplate:="", _

                    
Revert:=False, _

                    
WritePasswordDocument:="", _

                    
WritePasswordTemplate:=""

 End With


 End Sub
0
cs_Nicko11 Messages postés 1141 Date d'inscription mercredi 7 mars 2007 Statut Membre Dernière intervention 19 septembre 2007 3
29 juin 2007 à 08:22
Salut, rien ne t'empeche d'extraire DURANT de ce que te donnes ta requete.

Regarde la fonction Mid().
0
cs_Nicko11 Messages postés 1141 Date d'inscription mercredi 7 mars 2007 Statut Membre Dernière intervention 19 septembre 2007 3
29 juin 2007 à 08:31
Je viens de tester ave ce code, je sais pas si c'est ce qu'il y a de mieux mais ca fonctionne:

Dim tt As String
tt = "--------" & Constants.vbCrLf & "| Nom |" & Constants.vbCrLf & "----------" & Constants.vbCrLf & "| Durand |" & Constants.vbCrLf & "----------"


MsgBox tt


tt = Mid(tt, 34, 6)
MsgBox tt

Une remarque tout de meme: Cela ne fonctionne que si le format que tu m'as donné est le meme.

--------
| Nom |
----------
| Durand |
----------

Si non, il faudrait utiliser une autre fonction (Instr() je crois) pour chercher la presence de  "|"   
0
N3m0Xy Messages postés 8 Date d'inscription mardi 5 juin 2007 Statut Membre Dernière intervention 29 juin 2007
29 juin 2007 à 19:09
Merci de ta réponse cela pourrait fonctionner mais je ne vois pas
comment en faire une macro pour Word...je cherche du côté de la
fonction Mid() ça pourrait marcher. Encore merci de t'etre pencher sur
mon probleme. Toute tes idées sont les bienvenues!
0