A vueltas conel formulario de access al vincularlo
El formulario es uno creado en access normal, y al querer vincularlo introduzco código de vb, se abre el documento en word (si bien es cierto que no me rellena los campos marcados...)y en el formulario de access me da un error "5941 el elemento del conjunto solicitado no existe..", la verdad que me he quedado bloqueado en este punto,¿sabes qué podría hacer?
Te pongo un procedimiento que utilizo yo para hacer algo parecido en mis programas. El usuario del programa hace una plantilla de Word con una carta (circular) dirigida a clientes, yo sustituyo los campos de la dirección de envío. Los campos a sustituir están en Word de esta forma. Donde ponga nombre mi cliente pone en la plantilla de word {Nombre}... Está echo con Access y Word 97 Private Sub Dw_Click() On Error GoTo err_Dw_Click Dim DatLoc As Database Dim fec As String Dim FicCli As Fic Dim AplWord As Word.Application, Doc As Word.Document Dim NomPlan As String, NomDoc As String If Not IsNull(LISCLI.Column(2)) Then Call RelFicCli(LISCLI.Column(2), FicCli) fec = "El Barco de Avila a " & Format$(Date, "long date") Set DatLoc = CurrentDb NomPlan = Camino(CurrentDb.Name) & "Gilvilla.dot" 'Nombre de la plantilla NomDoc = Camino(CurrentDb.Name) & "Carta.doc" If Dir(NomDoc) <> "" Then Kill NomDoc End If FileCopy NomPlan, NomDoc Set AplWord = CreateObject("Word.application.8") Set Doc = AplWord.Documents.Add(NomDoc) 'Por ejemplo busco {Fecha} y lo reemplazo por el valor que haya en la variable fec Doc.Content.Find.Execute findText:="{Fecha}", _ replacewith:=fec, Format:=True, Replace:=wdReplaceAll Doc.Content.Find.Execute findText:="{Nombre}", _ replacewith:=Left$(FicCli.NOM & Space$(60), 60), Format:=True, Replace:=wdReplaceAll Doc.Content.Find.Execute findText:="{Direccion}", _ replacewith:=Left$(FicCli.Dir & Space$(60), 60), Format:=True, Replace:=wdReplaceAll Doc.Content.Find.Execute findText:="{cp}", _ replacewith:=Left$(FicCli.CP & Space$(5), 5), Format:=True, Replace:=wdReplaceAll Doc.Content.Find.Execute findText:="{Poblacion}", _ replacewith:=Left$(FicCli.Pob & Space$(58), 58), Format:=True, Replace:=wdReplaceAll Doc.Content.Find.Execute findText:="{Provincia}", _ replacewith:=Left$(FicCli.Prov & Space$(60), 60), Format:=True, Replace:=wdReplaceAll AplWord.Visible = True Set AplWord = Nothing Set Doc = Nothing End If Exit Sub err_Dw_Click: MsgBox err.Description End Sub