VBA Funciones Útiles

Submitted by tanny on Mon, 11/27/2017 - 10:48

Validar si un archivo existe

'For File this function will return TRUE and
'For folder it will return FALSE
Public Function FExists(OrigFile As String)
Dim fs
Set fs = CreateObject("Scripting.FileSystemObject")
FExists = fs.FileExists(OrigFile)
End Function

Validar si un directorio existe

'For File this function will return False and
'For folder it will return TRUE
Public Function DirExists(OrigFile As String)
Dim fs
Set fs = CreateObject("Scripting.FileSystemObject")
DirExists = fs.folderexists(OrigFile)
End Function

Calcular dígito verificador del Rut chileno

Public Function RutDigito(ByVal Rut As Long) As String
    Dim Digito      As Integer
    Dim Contador    As Integer
    Dim Multiplo    As Integer
    Dim Acumulador  As Integer
    Contador = 2
    Acumulador = 0
    While Rut <> 0
      Multiplo = (Rut Mod 10) * Contador
      Acumulador = Acumulador + Multiplo
      Rut = Rut \ 10
      Contador = Contador + 1
      If Contador > 7 Then
        Contador = 2
      End If
    Wend
    Digito = 11 - (Acumulador Mod 11)
    RutDigito = CStr(Digito)
    If Digito = 10 Then RutDigito = "K"
    If Digito = 11 Then RutDigito = "0"
  End Function

Fuente: https://es.wikipedia.org/wiki/Anexo:Implementaciones_para_algoritmo_de_rut