qax-os/excelize · error

table %s does not exist

Error message

table %s does not exist

What it means

Dynamic error created by newNoExistTableError when an operation references a table name that does not exist in the workbook. It is raised by DeleteTable, DeletePivotTable, and getSlicerSource (and exercised in tests): the input at fault is the table name argument, which fails a lookup, so the dependent operation is aborted with this error.

Source

Thrown at errors.go:339

	return fmt.Errorf("invalid slicer name %q", name)
}

// newInvalidStyleID defined the error message on receiving the invalid style
// ID.
func newInvalidStyleID(styleID int) error {
	return fmt.Errorf("invalid style ID %d", styleID)
}

// newNoExistSlicerError defined the error message on receiving the non existing
// slicer name.
func newNoExistSlicerError(name string) error {
	return fmt.Errorf("slicer %s does not exist", name)
}

// newNoExistTableError defined the error message on receiving the non existing
// table name.
func newNoExistTableError(name string) error {
	return fmt.Errorf("table %s does not exist", name)
}

// newNotWorksheetError defined the error message on receiving a sheet which
// not a worksheet.
func newNotWorksheetError(name string) error {
	return fmt.Errorf("sheet %s is not a worksheet", name)
}

// newPivotTableColFieldsError defined the error message on same data field
// appears both in the pivot table column fields and filter fields.
func newPivotTableColFieldsError(data []string) error {
	return fmt.Errorf("data fields %s appear both in the pivot table column fields and filter fields", strings.Join(data, ", "))
}

// newPivotTableRowFieldsError defined the error message on same data field
// appears both in the pivot table row fields and filter fields.
func newPivotTableRowFieldsError(data []string) error {
	return fmt.Errorf("data fields %s appear both in the pivot table row fields and filter fields", strings.Join(data, ", "))

View on GitHub (pinned to f2483381fb)

Solutions

  1. List tables (GetTables) and use an exact existing name
  2. Add the table with AddTable before deleting it
Defensive patterns

Strategy: validation

When it happens

Trigger: Thrown at errors.go:339 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of qax-os/excelize@f2483381fb (2026-09-02). Data as JSON: /api/errors/9837fd7457ebfa33. Report an issue: GitHub.