Tengo un archivo que funcionada bien pero ahora cuando lo abro en otra
maquina me sale el siguiente mensaje
Se ha producido el error 429 en tiempo de ejecucion
El componente ActiveX no puede crear el objeto
La macro la utlizo en thisWorbook
Private Sub Workbook_Open()
Dim fs, d
Set fs = CreateObject("Scripting.FileSystemObject")
Set d = fs.GetDrive(fs.GetDriveName(fs.GetAbsolutePathName("c:\")))
If d.SerialNumber = 278527383 Or d.SerialNumber = 475192457 Then
Else
MsgBox "Esta PC No Tiene Permiso Para el Uso de Este Archivo",
vbCritical, "mensaje"
ThisWorkbook.Close SaveChanges:=False
End If
End Sub
Me podrian orientar por favor para corregir el error.
Agradezco de antemano sus comentarios.
Saludos
1) el error 429 se refiere a librerias que no se encuentran instaladas y registradas en la pc donde se ejecuta el codigo
o probablemente si lo estan, pero estan da#adas, por lo que no se pudieron "crear" las llamadas a sus objetos
2) el codigo que usas requiere de la libreria de los ScriptingRuntime que (generalmente) debiera estar "bajo windows"...
C:\Windows\System[32]\SCRRUN.DLL
3) necesitaras verificar si la libreria esta "disponible" para poder proceder "en consecuencia" (rutinas alternas ?)
4) dicho sea "de paso"... si muestras un MsgBox "avisando" que no se tiene permiso de usar tu archivo...
le das la oportunidad al "infractor" de CANCELAR tu procedimiento y saltarse el cierre de tu libro :-((
si cualquier duda (o informacion adicional)... comentas ?
saludos,
hector.
__ la consulta original __
Ya cheque y si tengo ese archivo en system32, pero me imagino que esta
dañado, como podria repararlo y donde puedo bajar esa libreria.
Agradezco de antemano sus comentarios
Saludos
> Ya cheque y si tengo ese archivo en system32, pero me imagino que esta danado
> como podria repararlo y donde puedo bajar esa libreria...
1) probablemente solo sea necesario (re)registrar el componente -?-
desde (windows-boton) inicio / ejecutar... -> regsvr32 c:\windows\system32\scrrun.dll
2) (segun recuerdo) la libreria se distribuye tanto con windows como con office
intenta haciendo una reparacion/reinstalacion de office / excel desde el panel de control de windows
3) intenta descargando la version mas apropiada desde:
http://www.microsoft.com/downloads/results.aspx?pocId=&freetext=scripting%20runtime&DisplayLang=en
4) visita: INFO: Solucionar el error 429 al automatizar las aplicaciones de Office -> http://tinyurl.com/5vjyx
5) una alternariva mas (por si no encuentras la del punto 3):
http://www.dll-files.com/dllindex/dll-files.shtml?scrrun
saludos,
hector.
__ la propuesta anterior __
Gracias de antemano.
> Deseo que mi macro resida en mi equipo, pero habra ocasionesen usarlo desde otra pc
> sin embargo debe seguir validando la serie de mi HD en mi PC
> entonces como cambiara el codigo: GetAbsolutePathName("c:\").
solo cambia: -> "c:\"
y en su lugar -> ThisWorkbook.Path
saludos,
hector.