VBA Projects

Full Access with Source Code
  • Designed and Developed by PNRao

  • Full Access with VBA Source Code

  • Well Commented Codes Lines

  • Creative and Professional Design

Manage Your Projects

120+ Project Management Templates

Seamlessly manage your projects with our powerful & multi-purpose templates for project management.

120+ PM Templates Includes:
  • 50+ Excel Templates

  • 50+ PowerPoint Templates

  • 25+ Word Templates

Share Post

Microsoft Access is a powerful tool that lets you build relational database applications with a robust GUI front-end. To supercharge your Access applications, VBA (Visual Basic for Applications) comes into play, allowing developers to script custom functionality. One lesser-known, yet incredibly useful function in this arsenal is the Command() function. This blog post aims to demystify the Command() function, diving into its purpose, syntax, and practical applications.

VBA Command Function Purpose and Syntax

The Command() function in MS Access VBA allows you to retrieve the argument or command-line string that has been passed when an Access project (or database) was started. Think of it as a way to give instructions to your Access application upon startup, thereby customizing its behavior based on different needs.

Why Use the Command() Function?

Imagine wanting to start your database for different departments in your company with custom views or functionalities. Instead of creating multiple copies of the database, you can pass command-line arguments to guide the database’s behavior.


The function is simple, with no parameters:


VBA Command Function Examples:

1. Basic Retrieval of Command Argument:

Suppose you start your Access database with the following command:

msaccess.exe "C:\MyDatabase.accdb" /cmd "Sales"

To retrieve and display the string “Sales”, you would use:

Dim department As String
department = Command()
MsgBox "The department is: " & department

2. Using Command() to Direct Startup Behavior:

Imagine you want to open a specific form based on the department passed as a command-line argument.

Dim department As String
department = Command()

Select Case department
    Case "Sales"
        DoCmd.OpenForm "frmSalesDashboard"
    Case "HR"
        DoCmd.OpenForm "frmHRDashboard"
    Case Else
        MsgBox "No valid department specified!"
End Select

3. Passing Multiple Arguments:

To pass multiple arguments, you can use a delimiter like a comma:

msaccess.exe "C:\MyDatabase.accdb" /cmd "Sales,East"

Then, in VBA, you can split the arguments:

Dim args() As String
args = Split(Command(), ",")
MsgBox "Department: " & args(0) & " Region: " & args(1)


The Command() function offers a flexible way to customize the startup behavior of your MS Access applications. By harnessing the power of command-line arguments, you can create more dynamic and adaptable database applications that cater to a wide array of needs. Whether you’re tailoring views for different departments or toggling between development and production modes, this function is a gem waiting to be leveraged. Happy coding!

Effortlessly Manage Your Projects and Resources
120+ Professional Project Management Templates!

A Powerful & Multi-purpose Templates for project management. Now seamlessly manage your projects, tasks, meetings, presentations, teams, customers, stakeholders and time. This page describes all the amazing new features and options that come with our premium templates.

Project Management Templates

All-in-One Pack
120+ Project Management Templates

Essential Pack
50+ PM Templates

Excel Pack
50+ Excel PM Templates

PowerPoint Pack
50+ Excel PM Templates

MS Word Pack
25+ Word PM Templates

Ultimate Project
Management Template
Ultimate Resource
Management Template
Project Portfolio
Management Templates
Categories: VBA FunctionsTags: , , Last Updated: September 30, 2023

Leave A Comment