概念だけでも知りたいです。
例えば、数人の名前と模試の点数や順位などがexcelデータファイルとしてあります。
このファイルのデータをTeXファイルにインポートして、各人の成績表を自動的に作成することをしたい場合、どのような命令がありますか?
丸投げで申し訳ないです。どなたか心優しい方、よろしくお願いします。
doraTeX氏のこちらの記事が参考になるかと思います.
(「latex 差し込み印刷」で検索してヒットしました)
帳票生成ツールとしての LaTeX の活用 - TeX Alchemist Online
https://doratex.hatenablog.jp/entry/20201205/1607102432
成績表くらいだと,記事内の方法で十分なように思います.
ただ,記事後半で触れているような
> expl3 で property list の sequence を使う
> LuaTeX で Lua のテーブルを使う
がお望みであれば,お役に立てず申し訳ございません.
(「latex 差し込み印刷」で検索してヒットしました)
帳票生成ツールとしての LaTeX の活用 - TeX Alchemist Online
https://doratex.hatenablog.jp/entry/20201205/1607102432
成績表くらいだと,記事内の方法で十分なように思います.
ただ,記事後半で触れているような
> expl3 で property list の sequence を使う
> LuaTeX で Lua のテーブルを使う
がお望みであれば,お役に立てず申し訳ございません.
# 既にご解決済みとのことですので、飽くまでご参考までですが。
> 「latex 差し込み印刷」で検索してヒットしました
なるほど、こういう用語で検索をすればよかったのですね。
私は探し方の筋が悪くて、以下のような回り道をしてしまいました:
------------------------------------------------------------
CTAN のページへ行って、"csv" で Search する
↓
すると、個々のパッケージもヒットしますが、"Topic csv-support"
というトピックがヒットしたので、そのページを見に行く
↓
13 個のパッケージがリストアップされていたので、説明文を参考
に、その中からとりあえず、csvmerge、csvsimple、csvtools あた
りのドキュメントを web 上で眺めてみる
↓
csvtools が、かなり直観的かつ簡単に使えそうだったので、ダウ
ンロードして試してみる
※ 個々のパッケージのページに行ってみると、"CSV support" という
Topic の他に "Data display"、"Data import"、"Data manipulation"
等の Topic もあるらしいということが分かりました。
※ csvtools は最終版が 2007 年で "Obsolete" と表示されており、
後継のパッケージは datatool bundle とのことです。datatool
のドキュメントも眺めてみましたが、csvtools が圧倒的にシン
プルで、簡単な作業ならこちらでも大丈夫そうでした。
※ "Contained in" の欄には MiKTeX としか表示されていないので
TeX Live には未収録のようですので、使用するには CTAN から
ダウンロードして、dtx から sty を取り出す必要があります。
------------------------------------------------------------
% --- 2022.csv ---
no,name,1st,rank,2nd,rank,3rd,rank
00001,松野 おそ松,35,28,40,25,15,31
00002,松野 カラ松,40,27,15,30,25,29
00003,松野 チョロ松,25,30,20,29,40,27
00004,松野 一松,15,32,35,26,20,30
00005,松野 十四松,30,29,25,28,35,26
00006,松野 トド松,20,31,30,27,30,28
% --- test.tex ---
\documentclass[b5paper,landscape,papersize,dvipdfmx]{jsarticle}
\usepackage{csvtools}
\pagestyle{empty}
\begin{document}
\applyCSVfile{2022.csv}{%
\begin{center}
2022(令和4)年度 試験成績表
\bigskip
\begin{tabular}{|c|c|r|r|r|r|r|r|}
\hline
学生番号 & 氏 名 &
\multicolumn{2}{|c|}{第1回} &
\multicolumn{2}{|c|}{第2回} &
\multicolumn{2}{|c|}{第3回}\\\hline
\field{1} & \field{2} &
\field{3} 点 & \field{4} 位/ 32 人 &
\field{5} 点 & \field{6} 位/ 30 人 &
\field{7} 点 & \field{8} 位/ 31 人 \\\hline
\end{tabular}
\end{center}
\newpage
}
\end{document}
※ csv ファイルのヘッダ行(上の例だと "no,name,1st,rank,2nd,rank,3rd,rank"
という行)に日本語が含まれていると、うまく行かないみたいです。
※ field がいくつまで使えるか等々は試してみていません。
※ 上の例では単純に "\field{ }" の番号で指定していますが、
"\insert..." や "\insertbyname{...}" として "..." の部分に
ヘッダの単語(no や name 等々)を使うこともできるらしいです。
> 「latex 差し込み印刷」で検索してヒットしました
なるほど、こういう用語で検索をすればよかったのですね。
私は探し方の筋が悪くて、以下のような回り道をしてしまいました:
------------------------------------------------------------
CTAN のページへ行って、"csv" で Search する
↓
すると、個々のパッケージもヒットしますが、"Topic csv-support"
というトピックがヒットしたので、そのページを見に行く
↓
13 個のパッケージがリストアップされていたので、説明文を参考
に、その中からとりあえず、csvmerge、csvsimple、csvtools あた
りのドキュメントを web 上で眺めてみる
↓
csvtools が、かなり直観的かつ簡単に使えそうだったので、ダウ
ンロードして試してみる
※ 個々のパッケージのページに行ってみると、"CSV support" という
Topic の他に "Data display"、"Data import"、"Data manipulation"
等の Topic もあるらしいということが分かりました。
※ csvtools は最終版が 2007 年で "Obsolete" と表示されており、
後継のパッケージは datatool bundle とのことです。datatool
のドキュメントも眺めてみましたが、csvtools が圧倒的にシン
プルで、簡単な作業ならこちらでも大丈夫そうでした。
※ "Contained in" の欄には MiKTeX としか表示されていないので
TeX Live には未収録のようですので、使用するには CTAN から
ダウンロードして、dtx から sty を取り出す必要があります。
------------------------------------------------------------
% --- 2022.csv ---
no,name,1st,rank,2nd,rank,3rd,rank
00001,松野 おそ松,35,28,40,25,15,31
00002,松野 カラ松,40,27,15,30,25,29
00003,松野 チョロ松,25,30,20,29,40,27
00004,松野 一松,15,32,35,26,20,30
00005,松野 十四松,30,29,25,28,35,26
00006,松野 トド松,20,31,30,27,30,28
% --- test.tex ---
\documentclass[b5paper,landscape,papersize,dvipdfmx]{jsarticle}
\usepackage{csvtools}
\pagestyle{empty}
\begin{document}
\applyCSVfile{2022.csv}{%
\begin{center}
2022(令和4)年度 試験成績表
\bigskip
\begin{tabular}{|c|c|r|r|r|r|r|r|}
\hline
学生番号 & 氏 名 &
\multicolumn{2}{|c|}{第1回} &
\multicolumn{2}{|c|}{第2回} &
\multicolumn{2}{|c|}{第3回}\\\hline
\field{1} & \field{2} &
\field{3} 点 & \field{4} 位/ 32 人 &
\field{5} 点 & \field{6} 位/ 30 人 &
\field{7} 点 & \field{8} 位/ 31 人 \\\hline
\end{tabular}
\end{center}
\newpage
}
\end{document}
※ csv ファイルのヘッダ行(上の例だと "no,name,1st,rank,2nd,rank,3rd,rank"
という行)に日本語が含まれていると、うまく行かないみたいです。
※ field がいくつまで使えるか等々は試してみていません。
※ 上の例では単純に "\field{ }" の番号で指定していますが、
"\insert..." や "\insertbyname{...}" として "..." の部分に
ヘッダの単語(no や name 等々)を使うこともできるらしいです。