`table-format` hat durchaus Auswirkungen auf die Breite der Tabellenspalte, allerdings anders als Du glaubst. Wie in der Anleitung zum Paket `siunitx` zu lesen ist, handelt es sich dabei um eine abkürzende Schreibweise für die Optionen `table-figures-integer`, `table-figures-decimal` und `table-figures-exponent`. Es werden also die Vor-, Nachkomma- und Exponentenstellen angegeben, für die eine Zahl formatiert werden soll. Damit beeinflussen diese Angaben nicht nur die Breite der Tabellenspalte, sondern auch die Position des Dezimalpunktes oder Dezimalkommas innerhalb der Spalte.
Folgendes Beispiel verdeutlicht die Auswirkungen:
\documentclass[a3paper]{article}
\usepackage{siunitx}
\newcounter{integer}
\newcounter{decimal}
\begin{document}
\makeatletter
\setcounter{integer}{1}
\@whilenum \value{integer}<10 \do {%
\setcounter{decimal}{1}
\@whilenum \value{decimal}<10 \do {%
\texttt{table-format=\theinteger.\thedecimal}:
\fbox{\begin{tabular}{*3{S[table-format=\theinteger.\thedecimal]}}
1,0 & 2,0 & 3,0 \\
\end{tabular}}\par
\stepcounter{decimal}%
}%
\stepcounter{integer}
}
\end{document}
Vergleicht man hier beispielsweise den Eintrag für `table-format=1.1` mit dem für `table-format=9.9`, so fällt auf, dass der letzte natürlich viel breiter ist:
![1.1 vs. 9.9][1]
Beim Vergleich von beispielsweise `table-format=1.4` mit `table-format=4.1` sind die Spalten – wie zu erwarten – gleich breit, die Position des Dezimalpunktes ist aber unterschiedlich:
![1.4 vs. 4.1][2]
Das Paket `siunitx` bietet übrigens viele weitere Optionen, um die Formatierung der `S`-Spalteninhalte zu verändern. Daher wird dringend empfohlen, dessen Anleitung näher zu studieren.
Natürlich kann man dies `table-format` (und weitere Optionen) nutzen, um die Breite einer Tabelle zu beeinflussen. Gedacht Das ist es jedoch dafür nicht. eher ein Nebeneffekt der Formatierungsmöglichkeiten und nicht ihr eigentlicher Zweck. Will man bei einer Tabelle mit `S`-Spalten eine bestimmte Breite erreichen und enthält die Tabelle keine Spalten, die besser geeignet sind, die zusätzliche Breite zu erhalten, so bietet sich die Verwendung einer `tabular*`-Umgebung an, wie sie in
[Clemens Antwort](http://texwelt.de/wissen/fragen/15033#15066) auf eine frühere, [frühere, allgemeinere Frage Frage](http://texwelt.de/wissen/fragen/15033) erklärt wird. Im Extremfall könnte dies beispielsweise mit:
\documentclass[a4paper]{article}
\usepackage{siunitx}
\usepackage{showframe}
\begin{document}
\noindent\begin{tabular*}{\textwidth}{S@{\extracolsep{\fill}}*2S}
1,0 & 2,0 & 3,0 \\
1,0 & 2,0 & 3,0 \\
1,0 & 2,0 & 3,0 \\
\end{tabular*}
\end{document}
Das folgende, sehr unschöne Ergebnis liefern:
![alt text][3]
Hat man andere Spalten, beispielsweise Textspalten, die sehr gut die *Restbreite* erhalten könnten, so wäre eher eine `tabularx` passend, bei der man eben jene anderen Spalten als `X`-Spalten ausführt:
\documentclass[a4paper]{article}
\usepackage{siunitx}
\usepackage{tabularx}
\usepackage{showframe}
\usepackage{mwe}
\begin{document}
\noindent\begin{tabularx}{\textwidth}{*3{S[table-format=1.1]}X}
1,0 & 2,0 & 3,0 & \blindtext \\
1,0 & 2,0 & 3,0 & \blindtext \\
1,0 & 2,0 & 3,0 & \blindtext \\
\end{tabularx}
\end{document}
![alt text][4]
Es sei an dieser Stelle noch einmal darauf hingewiesen, dass `tabularx` nur mit `X`-Spalten sinnvoll ist. Außerdem sollte man vertikale Linien in Tabellen meiden und horizontale auf ein Mindestmaß reduzieren. Die Linien in obigen Beispielen stammen allesamt nicht von den Tabellen selbst, sondern dienen der Illustration der Tabellenbreite bzw. der Satzspiegelbreite.
Das Paket `siunitx` bietet übrigens viele weitere Optionen, um die Formatierung der `S`-Spalteninhalte zu verändern. Daher wird dringend empfohlen, dessen Anleitung näher zu studieren.
[1]: http://texwelt.de/wissen/upfiles/test9_10.png
[2]: http://texwelt.de/wissen/upfiles/test10_9.png
[3]: http://texwelt.de/wissen/upfiles/test11_7.png
[4]: http://texwelt.de/wissen/upfiles/test12_6.png