ChDrive Statement

Named Arguments

No

Syntax

ChDrive driveletter

driveletter

Use: Required

Data Type: String

The letter of the drive (A-Z) to set as the new default drive.

Description

Changes the current working (default) disk drive.

Rules at a Glance

  • If a zero-length string is supplied, the drive isn't changed.

  • If driveletter consists of more than one character, only the first character determines the drive.

Example

The following example demonstrates a utility function that uses ChDrive to determine if a given drive is available. By centralizing the test, the function reduces the amount of coding required each time you need to use ChDrive:

Private Function IsAvailableDrive(sDrive As String) _
                 As Boolean
    
   'if an error occurs goto to the next line of code
   On Error Resume Next
    
   Dim sCurDrv As String
    
   'get the letter of the current drive
   sCurDrv = Left$(CurDir$, 1)
   'attempt to change the drive
   ChDrive sDrive
   'did an error occur?
   If Err.Number = 0 Then
      'no - this drive is OK to use
      IsAvailableDrive = True
   Else
      'yes - don't use this drive
      IsAvailableDrive = False
   End If
   'set the drive back to what it was
   ChDrive sCurDrv
        
End Function

The following snippet shows how this function could be implemented within your application:

If IsAvailableDrive(sDrv) Then
   ChDrive sDrv
Else
   MsgBox "Cannot use Drive " & sDrv & ":\"
End If

Programming Tips and Gotchas

  • On the Macintosh, ChDrive changes the current folder to the root folder of the specified drive. On Windows systems, the default directory ...

Get VB & VBA in a Nutshell: The Language now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.