Access - No hay ningún documento abierto.

 
Vista:

No hay ningún documento abierto.

Publicado por Santiago (14 intervenciones) el 20/09/2002 20:03:12
Tengo el siguiente código:

Private Sub cmdDoc_Click()
Dim strGrabaRef As String

\'REM strGrabaRef = Me.txtRef & \".doc\"

strGrabaRef = \"UE 02 016.doc\"

\'_________________________________________________________________
\'Grabamos la refencia en el la instancia de la plantilla.
Dim mobjWordApp As Word.Application

Set mobjWordApp = New Word.Application

‘Activo el documento.
Documents(strGrabaRef).Activate

With mobjWordApp
.Visible = True

\'Selecciona los marcadores del documento y los reemplaza
\'con los valores de los campos del formulario.

.ActiveDocument.Bookmarks(\"DocumentoRef\").Select
.Selection.Text = (CStr(Forms!PRUEBA!txtRef))

End With

End Sub

1) Lo que quiero hacer es grabar en el marcador DocumentoRef la referencia que tengo almacenada en un campo de texto (Me.txtRef).

2) Tengo varios documentos abiertos, entre ellos el que voy a usar para grabar la referencia.

3) La referencia coincide con el nombre del docuento (Ref.: UE 02 001=> UE 02 001.doc)

No puedo llevar a cabo esta operación porque me sale el siguiente error:


“Se ha producido el error ‘4248’ en tiempo de ejecución:

El comando no está disponible porque no hay ningún documento abierto.

Línea que produce el error:

.ActiveDocument.Bookmarks(\"DocumentoRef\").Select

¿Alguna sugerencia?

Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Alejandro

No hay ningún documento abierto.

Publicado por Alejandro (4142 intervenciones) el 22/04/2023 00:42:49
El error se produce porque el objeto Word.Application que acabas de crear no tiene ningún documento activo. Puedes solucionarlo añadiendo una línea de código que abra el documento antes de intentar seleccionar el marcador:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
Private Sub cmdDoc_Click()
    Dim strGrabaRef As String
    strGrabaRef = "UE 02 016.doc"
 
    Dim mobjWordApp As Word.Application
    Set mobjWordApp = New Word.Application
 
    'Abre el documento
    mobjWordApp.Documents.Open FileName:=strGrabaRef
 
    With mobjWordApp
        .Visible = True
 
        'Selecciona los marcadores del documento y los reemplaza
        'con los valores de los campos del formulario.
        .ActiveDocument.Bookmarks("DocumentoRef").Select
        .Selection.Text = (CStr(Forms!PRUEBA!txtRef))
    End With
End Sub

De esta forma, el documento "UE 02 016.doc" se abrirá y se activará, y podrás seleccionar el marcador y reemplazar su contenido por el valor del campo de texto "txtRef".
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar