Microsoft Access is still one of the fastest ways to build a real database backed app without writing a full backend. This cheat sheet covers the shortcuts, ob…
Microsoft Access is still one of the fastest ways to build a real database-backed app without writing a full backend. This cheat sheet covers the shortcuts, object types, and query patterns you need to get productive fast — bookmark it for quick reference.
Table of Contents
- Essential Keyboard Shortcuts
- Access Object Types
- Building Tables
- Field Data Types
- Relationships & Keys
- Query Design Basics
- SQL View Cheat Sheet
- Common Query Criteria
- Forms Quick Guide
- Reports Quick Guide
- Macros & Automation
- Common Errors & Fixes
- Pro Tips
Essential Keyboard Shortcuts
| Action |
Shortcut |
| New database |
Ctrl + N |
| Open database |
Ctrl + O |
| Save current object |
Ctrl + S |
| Save As |
F12 |
| Print |
Ctrl + P |
| Undo |
Ctrl + Z |
| Copy |
Ctrl + C |
| Paste |
Ctrl + V |
| Cut |
Ctrl + X |
| Find |
Ctrl + F |
| Find & Replace |
Ctrl + H |
| New record (in a table/form) |
Ctrl + + |
| Delete current record |
Ctrl + - |
| Save current record |
Shift + Enter |
| Insert current date |
Ctrl + ; |
| Insert current time |
Ctrl + Shift + ; |
| Switch between Design/Datasheet view |
F11 (Navigation Pane) or right-click object → View |
| Open Navigation Pane |
F11 |
| Run a query |
Alt + Q, R or the Run (!) button |
| Open the Immediate Window (VBA) |
Ctrl + G |
Access Object Types
| Object |
Purpose |
| Table |
Stores your raw data, organized into rows (records) and columns (fields) |
| Query |
Asks questions of your data — filters, sorts, joins, calculations |
| Form |
A user-friendly interface for entering and viewing data |
| Report |
A formatted, printable summary of your data |
| Macro |
Automates repetitive tasks without writing code |
| Module |
Houses VBA code for advanced logic and automation |
Building Tables
- Create → Table (or Table Design for full control).
- Name each field clearly (no spaces are safest — use underscores or camelCase).
- Set a Primary Key for every table (Access defaults to an AutoNumber
ID field).
- Choose the correct Data Type for each field (see below).
- Use the Field Properties pane to set field size, format, default value, and validation rules.
- Switch to Datasheet View to start entering data.
Tip: Design your tables before you touch forms or reports. A clean, normalized table structure (no repeated/duplicated data across columns) saves hours of rework later.
Field Data Types
| Data Type |
Use For |
| Short Text |
Names, short codes, up to 255 characters |
| Long Text |
Notes, descriptions, large blocks of text |
| Number |
Numeric values (Integer, Long Integer, Double, etc.) |
| Large Number |
Very large integers |
| Currency |
Monetary values — avoids rounding errors |
| Date/Time |
Dates, times, or both |
| AutoNumber |
Auto-incrementing unique ID, typically the Primary Key |
| Yes/No |
Boolean true/false values |
| OLE Object |
Embedded files like images or documents |
| Hyperlink |
Clickable web or file links |
| Attachment |
Multiple files attached to a record |
| Calculated |
A field whose value is computed from other fields |
| Lookup Wizard |
Creates a dropdown pulling values from another table or list |
Relationships & Keys
- Primary Key: Uniquely identifies each record in a table (usually an AutoNumber
ID).
- Foreign Key: A field in one table that references the Primary Key of another, linking the two.
- Set up relationships: Database Tools tab → Relationships → drag the Primary Key of one table onto the matching Foreign Key of another.
- Enforce Referential Integrity: Check this box when creating a relationship to prevent orphaned records (e.g., an order with no matching customer).
- Relationship types:
- One-to-Many — most common (one customer, many orders)
- Many-to-Many — requires a junction/bridge table
- One-to-One — less common, used to split a table for security or organization
Query Design Basics
- Create → Query Design.
- Add the table(s) you need; Access auto-detects joins from existing relationships.
- Drag fields down into the query grid.
- Set Sort, add Criteria, and check/uncheck Show per column.
- Click Run (the red exclamation mark) to see results.
Query types:
| Type |
Use |
| Select Query |
Retrieves and displays data (most common) |
| Totals Query |
Groups and summarizes data (sums, counts, averages) |
| Crosstab Query |
Pivots data into a spreadsheet-like grid |
| Append Query |
Adds records from one table into another |
| Update Query |
Bulk-edits records matching criteria |
| Delete Query |
Bulk-deletes records matching criteria |
| Make-Table Query |
Creates a new table from query results |
SQL View Cheat Sheet
Every query can be viewed/edited as raw SQL: right-click the query tab → SQL View.
-- Basic select
SELECT FirstName, LastName, Email
FROM Customers
WHERE Country = "Kenya"
ORDER BY LastName ASC;
-- Join two tables
SELECT Orders.OrderID, Customers.CompanyName
FROM Orders
INNER JOIN Customers ON Orders.CustomerID = Customers.CustomerID;
-- Aggregate with grouping
SELECT Country, COUNT(*) AS TotalCustomers
FROM Customers
GROUP BY Country;
-- Update records
UPDATE Products
SET Price = Price * 1.1
WHERE Category = "Electronics";
-- Delete records
DELETE FROM Orders
WHERE OrderDate < #01/01/2024#;
Note: Access uses #date# to delimit date literals in SQL, and "text" or 'text' for strings.
Common Query Criteria
"Kenya" → Exact text match
Like "K*" → Starts with "K" (wildcard)
Like "*@gmail.com" → Ends with this text
>100 → Greater than 100
Between 1 And 100 → Range of values
Is Null → Empty fields
Is Not Null → Non-empty fields
Not "Kenya" → Excludes a value
#01/01/2026# Or Later → Date comparisons (use # around dates)
Forms Quick Guide
- Select a table/query → Create → Form for an instant auto-generated form.
- Or use Form Design / Form Wizard for full control.
- Common controls: Text Box, Combo Box (dropdown), List Box, Check Box, Button, Tab Control.
- Bind a control to a field: set its Control Source property in the Property Sheet.
- Add navigation buttons via the Form Wizard or the Navigation control in the Design ribbon.
- Use Subforms to show related child records (e.g., Order Details inside an Orders form).
Reports Quick Guide
- Select a table/query → Create → Report for a quick auto-report.
- Use Report Wizard to group and sort data as you build it.
- Add totals: Design view → select a text box in the group footer → set Control Source to
=Sum([FieldName]).
- Switch to Print Preview to check pagination before printing/exporting.
- Export a report: External Data tab → PDF or Excel.
Macros & Automation
- Create a macro: Create tab → Macro → choose an action from the dropdown (e.g., OpenForm, RunQuery, SetValue).
- Attach a macro to a button: Form Design view → select button → Property Sheet → Event tab → On Click → choose your macro.
- Autoexec macro: Name a macro
AutoExec and it runs automatically when the database opens.
- VBA: For logic beyond what macros can do, open the VBA Editor (
Alt + F11) and write code behind forms/reports or in standalone modules.
Common Errors & Fixes
| Error |
Likely Cause |
Fix |
| "Type mismatch" |
Comparing incompatible data types in a query/expression |
Check field data types match what you're comparing |
| "Enter Parameter Value" prompt |
Query references a field name that doesn't exist or is misspelled |
Check spelling of field names in the query/SQL |
| Can't enter data — table is read-only |
Query is not updatable (e.g., uses aggregate functions or multiple joins) |
Edit data in the underlying table, or redesign the query |
| Relationship won't save — "referential integrity" error |
Orphaned records exist that violate the relationship |
Clean up mismatched records first, or don't enforce integrity |
| Database file is very large / slow |
Bloat from repeated edits, temp objects |
Run Compact & Repair Database (Database Tools tab) |
| "Database needs to be repaired or converted" |
File corruption |
Run Compact & Repair, or restore from backup |
Pro Tips
- Run Compact & Repair Database regularly (Database Tools tab) — Access files bloat fast.
- Name tables and fields consistently (
tbl_Customers, qry_MonthlySales) so objects are easy to find in the Navigation Pane.
- Use Input Masks on fields like phone numbers to enforce a consistent format at entry.
- Use Lookup fields and Combo Boxes to reduce typos in data entry instead of free-text fields.
- Back up your
.accdb file before big structural changes — Access has no built-in version history.
- Split large databases into a Front End (forms/reports/queries) and Back End (tables only) when multiple people need shared access — this reduces corruption risk and improves performance.
Got an Access trick that saves you time? Share it in the comments below.