bj,
tu peux utiliser innerText, textContent ou parser (comme tu l'as fait) toi même les noeuds de ta table et concaténer le contenu
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
| <!doctype html>
<table id="tableau">
<tr>
<td>a</td>
<td>b</td>
<td>c</td>
<td>d</td>
</tr>
<tr>
<td>e<hello>kitten</hello></td>
<td>f</td>
<td>g</td>
<td>h</td>
</tr>
</table>
<script>
console.log(document.getElementById('tableau').innerText);
console.log(document.getElementById('tableau').textContent);
var rows = [...document.getElementById('tableau').rows].map(tr=>{
return [...tr.cells].map(td=>td.innerText)
})
console.log(rows)
</script> |
affiche dans la console
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
|
a b c d
ekitten f g h index.html:17:5
a
b
c
d
ekitten
f
g
h
index.html:18:5
(2) [
]
0: Array(4) [ "a", "b", "c",
]
1: Array(4) [ "ekitten", "f", "g",
]
length: 2 |
ce que tu constates c'est qu'on observe les espaces blancs lors des deux premieres méthodes, qui correspondent à l'indentation : D
dans la dernière tu as récupéré ton contenu sous forme structurée, convertir en str tel que ton vba est un détail
rows.map(r=>r.join(' ')).join('\n')
Partager