Obtendo informações de um drive no VBA

Colaboração do camarada Robert Martin (http://br.msofficegurus.com/), postou uma dica muito bacana sobre como obter informações de um drive usando o VBA. A função abaixo por exemplo retorna o número de série de um drive baseado em sua letra de referência:

Function SerialPD(ByVal DriveLetter As String) As String
    Dim oFso As New FileSystemObject
    Dim oDrive As Drive
 
    If oFso.DriveExists(DriveLetter) Then
        Set oDrive = oFso.GetDrive(DriveLetter)
        SerialPD = Left(Hex(oDrive.SerialNumber), 4) & "-" & Right(oDrive.SerialNumber, 4)
    Else
        SerialPD = "Drive especificado nao existe."
    End If
 
    Set oDrive = Nothing
    Set oFso = Nothing
 
End Function

É necessária a referência à biblioteca Microsoft Scripting Runtime. No código, o objeto oDrive representa o Drive, que além da propriedade SerialNumber utilizada no código, possui outras como espaço livre, capacidade e sistema de arquivos. Uma documentação completa da biblioteca pode ser vista no site MSDN:

http://msdn.microsoft.com/en-us/library/bkx696eh%28VS.85%29.aspx

Bom proveito e valeu Robert!

Tomás Vásquez
http://www.tomasvasquez.com.br

Comentários

comentários