leer celda de una hoja en otra máquina

16/10/2003 - 01:24 por ernestor | Informe spam
bunenas noches señores. Espero puedan ayudarme.

Quiero leer una celda de un archivo compartido en otra
máquina. Utilizando el comando excel:

='\\PC1\directorio\subdirectorio\[archivo.xls]Hoja1'!$C$21

puedo leer directamente el valor de la celda.

Quisiera hacer algo similar utilizando un macro visual
basic del excel.

Muchas gracias de antemano por la ayuda.

ernestor

Preguntas similare

Leer las respuestas

#1 Héctor Miguel
16/10/2003 - 10:20 | Informe spam
Hola, Ernesto !

... leer una celda de un archivo compartido en otra maquina.
Utilizando el comando excel: ='\\PC1\directorio\subdirectorio\[archivo.xls]Hoja1'!$C$21
puedo leer directamente el valor de la celda.
... hacer algo similar utilizando un macro visual basic [...]



suponiendo que tienes que 'depositar' el resultado en la celda activa...
ActiveCell.Formula = "='\\PC1\directorio\subdirectorio\[archivo.xls]Hoja1'!$C$21"
=>lo cual 'genera' un vinculo 'real' hacia el archivo 'x'<
si deseas 'solamente' el valor 'final'... agrega una 'siguiente linea' con...
ActiveCell = ActiveCell

Saludos,
Héctor.
Respuesta Responder a este mensaje
#2 Lomnpencraft
16/10/2003 - 20:03 | Informe spam
Perdona, pero si ya tienes el problema resuelto, para que
quieres una macro?


bunenas noches señores. Espero puedan ayudarme.

Quiero leer una celda de un archivo compartido en otra
máquina. Utilizando el comando excel:

='\\PC1\directorio\subdirectorio\[archivo.xls]Hoja1'!


$C$21

puedo leer directamente el valor de la celda.

Quisiera hacer algo similar utilizando un macro visual
basic del excel.

Muchas gracias de antemano por la ayuda.

ernestor
.

Respuesta Responder a este mensaje
#3 ernestor
22/10/2003 - 22:17 | Informe spam
Por que el problema es un tanto más complejo y necesito
que la información sea obtenida por una instrucción en una
macro (para procesar algunos datos con esta información).
No me sirve que sea obtenida en una instrucción de una
celda.
Espero que esto ayude.

ernestor
Perdona, pero si ya tienes el problema resuelto, para que
quieres una macro?


bunenas noches señores. Espero puedan ayudarme.

Quiero leer una celda de un archivo compartido en otra
máquina. Utilizando el comando excel:

='\\PC1\directorio\subdirectorio\[archivo.xls]Hoja1'!


$C$21

puedo leer directamente el valor de la celda.

Quisiera hacer algo similar utilizando un macro visual
basic del excel.

Muchas gracias de antemano por la ayuda.

ernestor
.



.

Respuesta Responder a este mensaje
#4 Héctor Miguel
23/10/2003 - 02:39 | Informe spam
Hola, Ernesto R !

... es ... mas complejo y necesito que la informacion sea obtenida por una instruccion en una macro
... (para procesar algunos datos ...). No me sirve que sea obtenida en una ... celda [...]



el siguiente ejemplo 'hace lo mismo' que la propuesta anterior [SIN 'tener que' escribir en una celda]
no estoy seguro que 'funcione' en ambientes de redes [supongo que 'deberia'] pero el 'objetivo' es:
usando el metodo ExecuteExcel4Macro [segun los 'parametros' que se le 'pasen' en el codigo]
1.- 'construye' una cadena de texto [similar al metodo/formula que usas 'directamente' en la hoja]
2.- 'extrae' el dato [que 'toma' del directorio->libro->hoja->celda 'especificados'] y ...
3.- 'almacena' el dato 'extraido' en una variable [p.e. 'Resultado'] para su uso 'posterior'
=> [obviamente] yo corri pruebas EN mi disco duro local <podrias utilizar variables [y constantes] del tipo 'publico' [p.e.] para los datos que sean 'fijos' [en su caso]
y 'convertir' [la parte 'importante' de] el codigo a una funcion [que resultaria mas versatil y ventajosa] ;)
en un modulo de codigo 'normal' ==Sub TomarDato()
Dim Ruta As String, Libro As String, Hoja As String, Celda As String, _
EsteDato As String, Resultado As Variant
Ruta = "\\PC1\directorio\subdirectorio\"
Libro = "archivo.xls"
Hoja = "hoja1"
Celda = "c21"
If Right(Ruta, 1) <> "\" Then Ruta = Ruta & "\"
EsteDato = "'" & Ruta & "[" & Libro & "]" & Hoja & "'!" & _
Range(Celda).Range("a1").Address(, , xlR1C1)
Resultado = ExecuteExcel4Macro(EsteDato)
MsgBox Resultado
End Sub

Saludos,
Héctor.
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida