Excel2LaTeX插件的使用、LaTeX表格

目录

一、下载Excel2Latex

二、使用Excel2Latex

1、将Excel2LaTeX文件添加到加载项

2、导出LaTex的表格数据

3、注意事项

1)生成的latex表格断断续续问题

2)改变线形的粗细

3)表格太大,需要缩小到适应大小

4)表格内换行

5)将三个Dataset下面的横线分离开

6)调整表格标题到表格的距离

三、存在问题

1、受保护的视图中不支持此文件类型

[2、Microsoft 已阻止宏运行,因为此文件的来源不受信任](#2、Microsoft 已阻止宏运行,因为此文件的来源不受信任)


一、下载Excel2Latex

Excel2Latex的官网直接下载软件:CTAN: /tex-archive/support/excel2latex

github的项目源码:GitHub - ivankokan/Excel2LaTeX: The Excel add-in for creating LaTeX tables

二、使用Excel2Latex

1、将Excel2LaTeX文件添加到加载项

下载完成之后,打开需要的excel表格,直接双击Excel2LaTeX文件,用excel打开。打开后,会看见如下显示(因为我安装了网盘,所以叠加在这里了,正常应该是在"加载项"中,如果没有看见,都在别的状态栏里看看):

或者是如下图标:

如果不想每次都打开,可以在:开发工具 -> Excel 加载项 -> 浏览 -> 找到刚下载的 .xla 文件 -> 确定,然后勾选上即可在上述状态栏中找到。

2、导出LaTex的表格数据

在excel页面中输入数据,并且设计想要的边框和线条格式,设置效果如下:

接着,选中需要转换为latex代码的表格信息,选择excel上方的"加载项",接着选择相应的图标。

选择"copy to Clipboard",将生成的latex代码复制到剪切板。

转换后的LaTex显示结果:

3、注意事项

写在前面: 不需要设置任何格式,打开excel后直接制作表格。(如果数字是文本格式,转换的会不居中,即设置的各种格式在latex中可能会失效。因此,打开excel表格直接填写,并设置好表格样式即可)

1)生成的latex表格断断续续问题

excel页面中设计好的边框和线条格式效果如下:

转为latex显示如下:

出现竖线截断现象,因此需要修改。

  1. 将 \toprule 、\midrule 、\bottomrule修改为 \hline
  2. 将 \cmidrule修改为**\cline**

如果还是未解决,在excel里面的灰色线条去掉:点击'视图',取消勾选'网格线'

修改后结果如下:

修改后的代码如下:

perl 复制代码
\documentclass[]{interact} % 导入自己的样式,如果没有可以使用\documentclass[]{article}
\usepackage{multirow}
\begin{document}
	
% Table generated by Excel2LaTeX from sheet 'Sheet3'
\begin{table}[htbp]
	\centering
	\caption{Add caption}
	\begin{tabular}{c|c|ccc|ccc}
		\hline
		\multicolumn{2}{c|}{\multirow{2}[4]{*}{Method}} & \multicolumn{3}{c|}{Dataset 1} & \multicolumn{3}{c}{Dataset 2} \\
		\cline{3-8}    \multicolumn{2}{c|}{} & RMSE  & MAE   & ACC   & RMSE  & MAE   & ACC \\
		\hline
		\multirow{2}[2]{*}{Non-Graph} & SVM   & 1     & 2     & 3     & 3     & 2     & 4 \\
		& RF    & 1     & 1     & 1     & 1     & 1     & 11 \\
		\hline
		\multirow{5}[2]{*}{Graph} & GCN   & 8     & 1     & 0     & 1     & 1     & 1  \\
		& GIN   & 1     & 0     & 1     & 0     & 0     & 5  \\
		& CNN   & 7     & 6     & 6     & 5     & 5     & 1  \\
		& GTN   & 1     & 3     & 1     & 1     & 0     & 4  \\
		& NGNN  & 5     & 4     & 1     & 0     & 1     & 0  \\
		\hline
		Proposed & ABC   & 5     & 6     & 7     & 8     & 98    & 15  \\
		\hline
	\end{tabular}%
	\label{tab:addlabel}%
\end{table}%
\end{document}
2)改变线形的粗细

加入宏包:

perl 复制代码
\usepackage{tabu}

按照以下修改环境:

perl 复制代码
        \begin{tabular} ->替换为 \begin{tabu}
        ...
        \end{tabular} ->替换为 \end{tabu}

将需要加粗的线条如下替换:

perl 复制代码
\hline ->替换为 \tabucline[1.5pt]{-} 即可

修改后的代码如下:

perl 复制代码
\documentclass[]{interact} % 导入自己的样式,如果没有可以使用\documentclass[]{article}
\usepackage{multirow}
\usepackage{tabu}

\begin{document}
	
	% Table generated by Excel2LaTeX from sheet 'Sheet3'
	\begin{table}[htbp]
		\centering
		\caption{Add caption}
		\begin{tabu}{c|c|ccc|ccc}
			\tabucline[1.5pt]{-}
			\multicolumn{2}{c|}{\multirow{2}[4]{*}{Method}} & \multicolumn{3}{c|}{Dataset 1} & \multicolumn{3}{c}{Dataset 2} \\
			\cline{3-8}    \multicolumn{2}{c|}{} & RMSE  & MAE   & ACC   & RMSE  & MAE   & ACC \\
			\hline
			\multirow{2}[2]{*}{Non-Graph} & SVM   & 1     & 2     & 3     & 3     & 2     & 4 \\
			& RF    & 1     & 1     & 1     & 1     & 1     & 11 \\
			\hline
			\multirow{5}[2]{*}{Graph} & GCN   & 8     & 1     & 0     & 1     & 1     & 1  \\
			& GIN   & 1     & 0     & 1     & 0     & 0     & 5  \\
			& CNN   & 7     & 6     & 6     & 5     & 5     & 1  \\
			& GTN   & 1     & 3     & 1     & 1     & 0     & 4  \\
			& NGNN  & 5     & 4     & 1     & 0     & 1     & 0  \\
			\hline
			Proposed & ABC   & 5     & 6     & 7     & 8     & 98    & 15  \\
			\tabucline[1.5pt]{-}
		\end{tabu}%
		\label{tab:addlabel}%
	\end{table}%
\end{document}
3)表格太大,需要缩小到适应大小

按以下修改,就可以自适应的调整大小

perl 复制代码
...

    \resizebox{\textwidth}{!}{   
        \begin{tabular} ->替换为 \begin{tabu}
        ...
        \end{tabular} ->替换为 \end{tabu}
         }
....
4)表格内换行

宏包:\usepackage{makecell}

环境:tabular

命令:\makecell[居中情况]{第1行内容 \\ 第2行内容 \\ 第3行内容 ...}

\makecell[c]{a \\ b \\ b}

5)将三个Dataset下面的横线分离开

在生成的LaTeX代码中,Dataset下方的横线代码如下:

perl 复制代码
\cmidrule{3-11}

这显然是一根完整的横线,现在介绍如何分成三段。将上述代码修改为:

perl 复制代码
\cmidrule(r){3-5} \cmidrule(r){6-8} \cmidrule{9-11} 
6)调整表格标题到表格的距离

在\centering下面添加\setlength的命令:

perl 复制代码
\begin{table}[htbp]
  \centering
  \setlength{\abovecaptionskip}{2pt}%
  \setlength{\belowcaptionskip}{10pt}%
  \caption{It is a table.}

修改后的代码如下:

perl 复制代码
\documentclass[]{interact} % 导入自己的样式,如果没有可以使用\documentclass[]{article}
\usepackage{multirow}
\usepackage{tabu}

\begin{document}
	
	% Table generated by Excel2LaTeX from sheet 'Sheet3'
	\begin{table}[htbp]
		\centering
		\setlength{\abovecaptionskip}{2pt} % 标题上方距离
		\setlength{\belowcaptionskip}{10pt} % 标题下方距离
		\caption{Add caption}
		\begin{tabular}{c|c|ccc|ccc}
			\hline
			\multicolumn{2}{c|}{\multirow{2}[4]{*}{Method}} & \multicolumn{3}{c|}{Dataset 1} & \multicolumn{3}{c}{Dataset 2} \\
			\cline{3-8}    \multicolumn{2}{c|}{} & RMSE  & MAE   & ACC   & RMSE  & MAE   & ACC \\
			\hline
			\multirow{2}[2]{*}{Non-Graph} & SVM   & 1     & 2     & 3     & 3     & 2     & 4 \\
			& RF    & 1     & 1     & 1     & 1     & 1     & 11 \\
			\hline
			\multirow{5}[2]{*}{Graph} & GCN   & 8     & 1     & 0     & 1     & 1     & 1  \\
			& GIN   & 1     & 0     & 1     & 0     & 0     & 5  \\
			& CNN   & 7     & 6     & 6     & 5     & 5     & 1  \\
			& GTN   & 1     & 3     & 1     & 1     & 0     & 4  \\
			& NGNN  & 5     & 4     & 1     & 0     & 1     & 0  \\
			\hline
			Proposed & ABC   & 5     & 6     & 7     & 8     & 98    & 15  \\
			\hline
		\end{tabular}%
		\label{tab:addlabel}%
	\end{table}%
\end{document}

三、存在问题

1、受保护的视图中不支持此文件类型

在选项-信任中心-信任中心设置-受保护的视图中,取消勾选的选项。

2、Microsoft 已阻止宏运行,因为此文件的来源不受信任

在选项-信任中心-信任中心设置-受信任位置,将Excel2LaTeX.xla文件的位置添加进来即可,之后双击打开就不会报错。

如果经常换位置,不想每次都操作,可以将该盘符添加进来,并勾选"同时信任此位置的子文件夹"。

相关推荐
不吃鱼的羊15 小时前
Excel生成DBC脚本源文件
服务器·网络·excel
chenchihwen15 小时前
数据分析时的json to excel 转换的好用小工具
数据分析·json·excel
lxxxxl17 小时前
C#调用OpenXml,读取excel行数据,遇到空单元跳过现象处理
excel
m0_7482463518 小时前
前端通过new Blob下载文档流(下载zip或excel)
前端·excel
不吃鱼不吃鱼1 天前
Excel加载项入门:原理、安装卸载流程与常见问题
excel·wps
深耕AI1 天前
在Excel中绘制ActiveX控件:解决文本编辑框定位问题
java·前端·excel
五VV1 天前
Note2024122001_Excel按成绩排名
excel
Eiceblue1 天前
Python拆分Excel - 将工作簿或工作表拆分为多个文件
开发语言·python·excel
Excel_easy1 天前
批量生成二维码,助力数字化管理-Excel易用宝
excel·wps