Access y VBA
Blog de Access y VBA del Buho


Inicio


Acerca de
Suscríbete al blog

Categorías
General [3] Sindicar categoría
Access con Codigo VBA [15] Sindicar categoría

Archivos
Septiembre 2005 [11]
Agosto 2005 [5]
Junio 2005 [2]

Sindicación (RSS)
Artículos
Comentarios

 


31 de Agosto, 2005


Dialogo Guardar Como

He expuesto anteriormente hasta 4 métodos para abrir el diálogo «Abrir Archivo» en Access (Dependiendo de versiones).

Pero bastantes personas desconocen como se abre el diálogo «Guardar como».

En el siguiente ejemplo que te propone el Búho, utilizamos los dos métodos en un caso REAL. Este ejemplo, no es otro, que escoger un fichero de disco duro (Dialogo Abrir) y copiarle a otra ubicación que el usuario escoja, mediante el cuadro «guardar como».

Los dos diálogos, juntos, pero no revueltos.

http://accessbuho.mvps.org/ficheros/guardacomo.zip

Por ErBuho - 31 de Agosto, 2005, 12:55, Categoría: Access con Codigo VBA
Enlace Permanente | Referencias (0)

Serie del disco duro

Hasta no hace mucho, el Búho, o sea yo, aunque conocía la existencia del concepto «serie del disco duro» no tenía las ideas muy claras al respecto de como diferenciar mediante código VBA los «dos» números de serie que conocía.

Hay que distinguir claramente entre los números de serie de un disco duro, si por ejemplo, queremos utilizar ese dato para protección de programas. Un número de serie es el «numero de serie del volumen» número que se asigna automáticamente al formatear una unidad o partición. Este número se genera, como ya he dicho, cuando se formatea una unidad de disco. En el archivo de texto que podrás leer si te bajas el ejemplo que he construido, se explica mejor este funcionamiento. Además de este número de serie del volumen, existe el denominado número de serie FIJO o inalterable, que es el le asigna el fabricante. Este número sí que no varía y es el indicado pues para implementar procesos de protección en nuestras aplicaciones, ya que aunque se formatee dicho disco duro, el número de serie FIJO o de FABRICA, siempre será el mismo.

http://accessbuho.mvps.org/ficheros/seriefisicohd.zip

Por ErBuho - 31 de Agosto, 2005, 12:53, Categoría: General
Enlace Permanente | Referencias (0)

Msgbox especiales

El objeto Msgbox de VBA (Y de VB) es MODAL (Significa que mientras no se cierre, el código que va detrás de él se detiene y también impide manipular o abrir cualquier otro objeto de la ventana Base de datos). Algunas veces este comportamiento puede ser un incoveniente,ya que simplemente deseamos poner un aviso en pantalla, pero que el programa siga su marcha. Otras veces, un Msgbox colocado en cierta parte del codigo, puede bloquear un registro, si el usuario se va a tomar el bocata y se olvida de presionar cualquiera de los botones del Msgbox de VBA

Hay posibilidades de que esto no sea así, teniendo objetos Msgbox alternativos (De igual estética y funcionalidad que el nativo VBA y sin la utilización de formularios «simuladores» de Msgbox) que bien no sean modales o que simplemente estén temporizados y se cierren al X tiempo que nosotros deseemos.

Su implmentación es muy simple y para muestra dos «botónes»:

Ejemplo de Msgbox NO modal

Option Explicit

Private Declare Function MsgboxNoModal Lib "user32" Alias _     "MessageBoxA" (ByVal hwnd As Long, ByVal lpText As String, _

 ByVal lpCaption As String, ByVal wType As Long) As Long

Const MB_ICONASTERISK = &H40&

'Y luego ya se llama asi desde cualquier sitio

Sub EjemploMsgboxNoModal()

  Call MsgboxNoModal(100, "Esto es NO modal.", _ 

      "Ejemplo Msgbox No Modal ", MB_ICONASTERISK)

End Sub

Las otras constantes de los botones e iconos son:

Las otras constantes de los botones e iconos son:

Const MB_DEFBOTON1 = &H0&

Const MB_DEFBOTON1 = &H0&

Const MB_DEFBOTON2 = &H100&

Const MB_DEFBOTON3 = &H200&

Const MB_ICONOASTERISCO = &H40&

Const MB_ICONOEXCLAMACION = &H30&

Const MB_ICONOHAND = &H10&

Const MB_ICONOINFORMACION = MB_ICONOASTERISCO

Const MB_ICONOPREGUNTA = &H20&

Const MB_ICONOSTOP = MB_ICONOHAND

Const MB_OK = &H0&

Const MB_OKCANCEL = &H1&

Const MB_YESNO = &H4&

Const MB_YESNOCANCEL = &H3&

Const MB_ABORTRETRYIGNORE = &H2&

Const MB_RETRYCANCEL = &H5&

Ejemplo de Msgbox Temporizado

'Especial para los usuarios despistados

'*********** Código ***************

'

' msgboxTemporal

'

' Rutina que demuestra el uso del

' método PopUp del objeto wshShell

' Nos da la posibilidad de estable-

' cer un tiempo de duración en su

' segundo argumento. Por lo demás

' es casi igual que el MsgBox (así

' como el uso de sus constantes vb)

' Autor: Juan M. Afán de Ribera

' Fecha: Junio 2003

'

Sub msgboxTemporal() 

  Dim wShell As Object 'New wshShell 

  Dim Respuesta As Integer 

  Set wShell = CreateObject("WScript.Shell") 

  Respuesta = wShell.PopUp("Estaré abierto 5 segundos", _ 

      5, "Método wshShell.Popup", vbYesNo + vbInformation) 

  Select Case Respuesta

    Case -1: MsgBox "No has apretado ningún botón"

    Case vbYes: MsgBox "Has apretado el botón ""Sí"" "

    Case vbNo: MsgBox "Has apretado el botón ""No"" "

  End Select 

  Set wShell = Nothing 

End Sub

'********* Fin código *************

Y me falta uno muy chulo. Pruebale:

Y me falta uno muy chulo. Pruebale:

EJEMPLO MSGBOX ESPECIAL

Dim Respuesta As Integer

Respuesta = Eval("MsgBox('Atención: Este registro no existe' " & _ 

    "& chr(13) & chr(10) & " & _ 

    "'Confirme su decisión de dar de alta este nuevo registro@" & _ 

    "¿Desea crear este nuevo registro?@',4,'Aviso')")

If Respuesta = 6 Then 

  'Codigo para crear

End If

Este último Msgbox que acabas de ver es un tanto especial, pues pone en negrita parte del texto. Chulo...¿Verdad?

Juan Amador tambien ha realizado una aplicacion MDE que podrás referenciar en tus aplicaciones de Access para poner Msgbox personalizados. Puedes decargarte el fichero (Y leer sus instrucciones de uso) en esta dirección:
http://www.geocities.com/famaads/jmmsgbox/index.html
O bien, desde este propio foro, en elsiguiente enlace:
www.mvp-access.com/buho/ficheros/jmmsgbox.zip
! Gracias Juan !

Y ya para rizar el rizo e interaccionar con el objeto nativo Msgbox de Visual Basic y de VBA para access, deberías visitar este enlace. Podrás poner iconos a los Msgbos,cambiar el texto de los botones etc etc. No estoy hablando de crearte un formulario que simule un Msgbox, te estoy hablando del propio MSGBOX....
Pulsa AQUI

Por ErBuho - 31 de Agosto, 2005, 12:50, Categoría: Access con Codigo VBA
Enlace Permanente | Referencias (0)

Cuadro Dialogo Abrir Archivo

Esta pregunta se suele repetir con cierta frecuencia en este tipo de foros: ¿Como abrir el cuadro de diálogo abrir-escoger Archivo?.

Normalmente las respuestas citan la ya archi-conocida llamada a la API para este menester. Quizá lo que mucha gente desconozca es que existen más métodos para hacer lo mismo, incluso, con más prestaciones.

En el siguiente enlace tienes los métodos que el Búho ha captado para abrir el mencionado cuadro de diálogo. Ojo a la versión de Access que tienes (En el enlace, lo explico):

http://www.retena.es/personales/hualde.retena/access/abrirficherometodos.txt

Además de todo esto, Juan M. Afán de Ribera ha creado un excelente codigo con todo esto, que podrás visitar en el siguiente enlace. NO TE LE PIERDAS!!!!
http://www.mvp-access.com/juanmafan/descargas/filedialog.htm

Por ErBuho - 31 de Agosto, 2005, 12:49, Categoría: Access con Codigo VBA
Enlace Permanente | Referencias (0)




<<   Agosto 2005  >>
LMMiJVSD
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31     

Enlaces
eGrupos
ZoomBlog

 

Blog alojado en ZoomBlog.com