Con este largo, pero sustancioso video tutorial
quiero dar respuesta a un usuario del canal que inicialmente tenía una
dificultad al construir un reloj dentro de una celda que se actualizara cada
segundo para así con esto poder ejecutar una serie de procedimientos que
realizarán otros cálculos que se mostraban en un libro de Excel.
Pues bien, decidí abordar toda la temática pues me
pareció interesante dicho ejercicio. Así y aunque yo sé que no se ajuste al 100%
en todos los casos de todos los usuarios del canal, sé que este video tiene
conceptos muy interesantes que merecen ser explicados y que les servirán a la
hora de abordar un proyecto en VBA.
Por ende, en este video usted encontrará un modo
muy sencillo para crear un reloj actualizable en Excel que se muestre en una
celda de una hoja de cálculo. Además, podrá ejecutar una serie de
procedimientos durante cada segundo de manera indefinida de modo tal que se
repitan durante una secuencia de tiempo determinado.
Procedimientos Sub dentro de un módulo en el editor
de VBA
Sub SimularHora()
Range("B3").Value = Format(VBA.Now,
"hh:mm:ss")
Application.OnTime EarliestTime:=VBA.Now +
TimeValue("00:00:01"), _
Procedure:="SimularHora"
Call Respuesta.GenerarAleatorio9
Call Respuesta.GenerarAleatorio6
End Sub
Sub DetenerHora()
Application.OnTime EarliestTime:=VBA.Now +
TimeValue("00:00:01"), _
Procedure:="SimularHora", Schedule:=False
End Sub
Static Sub GenerarAleatorio9()
Const LimInf As Long = 1
Const LimSup As Long = 9
Dim NueveDecimales As Double
Dim n As Long
Do
NueveDecimales = Round((LimSup - LimInf + 1) * Rnd
+ LimInf, 9)
Loop Until VBA.Len(VBA.CStr(NueveDecimales)) = 11
n = n + 1
ActiveSheet.Cells(n + 1, 7).Value = NueveDecimales
End Sub
Static Sub GenerarAleatorio6()
Dim x As Long
x = x + 1
ActiveSheet.Cells(x + 1, 8).Value = _
Round(ActiveSheet.Cells(x + 1, 7).Value, 6)
End Sub
Adicionalmente se dan algunos conceptos sobre
números decímales en Excel, procedimientos estáticos, y diferencias entre
variables de coma flotante (Single y Double).
No hay comentarios.:
Publicar un comentario