sheetcheck

Timesheet check

Check timesheets for missing employee IDs, invalid date ranges, hours stored as text, and row count issues.

Your file is read in your browser. It is never uploaded.

Rule sets are saved in this browser only.

required
pattern

Expected format AAA-999 — A = letter, 9 = digit, * = any character.

dateRange
numericRange
allowedValues
rowCount

Employee ID column missing or renamed

Timesheet exports sometimes use 'Resource ID', 'Contractor ID', or 'EmployeeNo' instead of 'Employee ID'. Without an employee identifier, rows cannot be matched to people or projects. The header must be present and consistent before checking.

Work date stored as text

Dates like '2024-01-05' may be stored as text or use a regional format like 'Jan 5'. A date range check needs ISO yyyy-mm-dd values to confirm each work date falls within the expected period. Convert all work dates to ISO format before upload.

Hours column contains text values

Hours such as '7.5' may be stored as text because of an apostrophe, trailing space, or mixed format. Numeric range rules cannot compare text values, so rows are flagged even when the hours are valid. All hours cells must contain only numbers.

Activity code values vary

One row may use 'Billable', another 'B', and a third 'bill'. Inconsistent activity codes make downstream invoicing unreliable. Allowed value checks highlight rows that do not match the expected set. Map all codes to one stable list.

How to fix

FAQ

What timesheet columns are checked by default?

The default rules check Employee ID, Work Date, Hours and Activity Code. Employee ID is also matched against the pattern AAA-999 - three letters, a dash, then three digits - as a warning rather than an error, so edit or remove that rule if your IDs are shaped differently. Project Code is not checked by default.

Why is my hours column flagged as text?

Values with apostrophes, spaces, or text formatting are treated as text. Numeric range rules need numeric hours to compare against minimum and maximum thresholds. Convert the column to a number format before running the check.

Can I use different activity code values?

The default allowed values include Billable, Non-Billable, and Admin. If your timesheet uses other codes, update the allowed value list before running the check. Consistent activity codes help downstream invoicing work correctly.

What date format works for work dates?

Use ISO yyyy-mm-dd values for work dates. That avoids regional ambiguity and lets date range checks compare values correctly. Convert any text or regional dates to ISO before uploading the file.

Should I remove duplicate rows?

Yes. Duplicate rows for the same employee and work date inflate hours and make reports inconsistent. Keep only one row per employee per work date. If duplicates exist, consolidate them before running the checker.

Related checks