The best way I found to do this is using a Web App, from Google App Script, let's take the example:
First, we create an HTML script file in Google App Script:
<!DOCTYPE html>
<html>
<head>
<base target="_top">
<head>
<style>
table {
font-family: arial, sans-serif;
border-collapse: collapse;
width: 100%;
}
td, th {
border: 1px solid #dddddd;
text-align: center;
padding: 8px;
}
tr:nth-child(even) {
background-color: #dddddd;
}
</style>
</head>
<body>
<h1 style="background-color:powderblue;text-align:center;">Jogos na TV</h1>
<h2 style="font-family:tempus sans itc;"><a href="https://t.me/mattosxperiences">CANAL NO TELEGRAM</a> <img border="0" alt="Telegram Mattos Xperiences" src="https://logodownload.org/wp-content/uploads/2017/11/telegram-logo.png" width="25" height="25"> </h2>
<h1></h1>
<h2 style="font-family:tempus sans itc;"><a href="https://mattosxperiences.com.br">SITE OFICIAL</a> <img border="0" alt="Site Mattos Xperiences" src="https://mattosxperiences.com.br/favicon-32.png" width="25" height="25"> </h2>
<h1></h1>
<table border="1" cellpadding="5px" >
<?var tableData = getSheetData();?>
<?for(var i = 0; i < tableData.length; i++) { ?>
<?if(i == 0) { ?>
<tr>
<?for(var j = 0; j < tableData[i].length; j++) { ?>
<th><?= tableData[i][j] ?></th>
<? } ?>
</tr>
<? } else { ?>
<tr>
<?for(var j = 0; j < tableData[i].length; j++) { ?>
<td><?= tableData[i][j] ?></td>
<? } ?>
</tr>
<? } ?>
<? } ?>
</table>
</body>
</html>
The second step is to create a common script file and define the data search and activate the HTML file:
function doGet(e) {
var htmlOutput = HtmlService.createTemplateFromFile('HTML Pagina da Web');
return htmlOutput.evaluate();
}
function getSheetData() {
var ss= SpreadsheetApp.getActiveSpreadsheet();
var dataSheet = ss.getSheetByName('Web App');
var dataRange = dataSheet.getDataRange();
var dataValues = dataRange.getValues();
return dataValues;
}
After that, just publish via web app deployment and the result will be something like this:
https://script.google.com/macros/s/AKfycbz2Q42n872sFWL0Rkf-ntFFW7jb86YBIDhNRR6qy0OQLykK7YY/exec