#Short answer
You are right, the import functions updates their result at certain intervals.
#Explanation
From Change a spreadsheet's locale, time zone, recalculation, and language, a help article from the official documentation,
Note: External data functions recalculate at the following intervals:
- ImportRange: 30 minutes
- ImportHtml, ImportFeed, ImportData, ImportXml: 1 hour
- GoogleFinance: 2 minutes
It's worth to say that formulas are recalculated when they their arguments changes, so we could use this to force a refresh of the imported data.
Workaround
One way to force the recalculation of formulas with import functions is to concatenate to the URL a deterministic but innocuous parameter.
###Example
In the following example, "#rev="&A2 is added to the original URL
A1: https://en.wikipedia.org/wiki/List_of_gravitationally_rounded_objects_of_the_Solar_System
A2: 1
A3: 4
A4: =IMPORTHTML(A1&"#rev="&A2,"table",A3)
Every time that any of the values or A1, A2, or A3 changes, the formula will be recalculated. We could change the value of A2 to "force" a refresh of the table 4 from the URL in A1.
Custom time refresh interval for import functions
To have a custom refresh interval for import functions, use a time-driven trigger script to update the deterministic but innocuous URL parameter.
/**
*
* Updates at the interval set in the time driven trigger configuration
* a cell value to be used as a deterministic bu unnicouus URL parameter
*
*/
function forceRefresh() {
//Cell addrees of the deterministic but unnicouos URL parameter
var reference = 'Sheet1!A2';
var rng = SpreadsheetApp.getActiveSpreadsheet().getRange(reference);
rng.setValue(rng.getValue()+1);
}
#References