首页 最新 热门 推荐

  • 首页
  • 最新
  • 热门
  • 推荐

Matlab编程技巧:写入Excel表格

  • 23-09-22 00:44
  • 3691
  • 9977
blog.csdn.net

本文研究如何将Matlab变量的内容写入Excel表格,以及相关的一些技巧。

文章目录

  • 1 函数
  • 2 简单示例
  • 3 写入表格的注意点
    • 3.1 写入单个单元格
    • 3.2 写入多个单元格
    • 3.3 写入0开头的数字
    • 3.4 指定所有的四个参数
    • 3.5 避免用for循环

1 函数

写入Excel表格的函数比较简单,只有一个函数如下:

xlswrite(filename,A,sheet,xlRange)
  • 1

其中的参数含义如下:

参数含义
filename文件名,可以是绝对路径也可以是相对路径
A写入表格文件的变量
sheet写入的工作表
xlRange写入的单元格区域

该函数的用法比较灵活,除了将四个参数都填上以外,也可以选填其中的几个参数。例如:

xlswrite(filename,A)
  • 1

如果只有filename和A两个参数,那么Matlab就会默认把A填写在文件filename的活动工作表内,从A1开始填写。

2 简单示例

打开Matlab,直接在命令行输入如下语句。

xlswrite('demo.xlsx','123','sheet1','A2');
  • 1

然后在Matlab的工作区就会看到生成了一个xlsx文件:demo.xlsx。注意,如果路径下已经存在了demo.xlsx文件,就会直接写入文件,而不是新建一个。
在这里插入图片描述
打开该文件,在工作表sheet1中就会看到从A2单元格开始,横着分别写入了’1’,‘2’,'3’三个数字。
在这里插入图片描述
至此,这个小的demo就演示完成了。

3 写入表格的注意点

3.1 写入单个单元格

在第二章的例子中,把‘123‘三个数分别写到三个单元格中了。但是如果我想把’123’这个字符串写到A2一个单元格中怎么办呢。只要把函数写成下面的样子,也就是第二个参数写成元胞数组。

xlswrite('demo.xlsx',{'123'},'sheet1','A2');
  • 1

这样,函数就会把123这个字符串作为一个整体写入A2中了。
在这里插入图片描述

3.2 写入多个单元格

写入多个单元格也很简单,只要在第二个参数的元胞数组中加上多行多列就行。例如:

>> A = {'123','456';'789','123'}

A =

  2×2 cell 数组

    {'123'}    {'456'}
    {'789'}    {'123'}

>> xlswrite('demo.xlsx',A,'sheet1','A2');
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

这样,就会在表格中从A2单元格开始,写入元胞数组的内容。
在这里插入图片描述

3.3 写入0开头的数字

如果写入的数子是0开头的,例如010000,通过以下函数写入。

>> xlswrite('demo.xlsx',{'010000'},'sheet1','A2');
  • 1

那么打开表格后会发现,开头的数字0没有了,只剩下了10000。
在这里插入图片描述
解决的办法也很简单,加两个单引号在变量前面就行了。

>> xlswrite('demo.xlsx',{'''010000'},'sheet1','A2');
  • 1

这样的话,表格会把这个单元格的内容作为文本看待。
在这里插入图片描述

3.4 指定所有的四个参数

在第二章节说的4个参数最好全都指定,不要让matlab帮你做决定。不然容易出现一些混乱。

3.5 避免用for循环

博主刚开始写脚本的时候用for循环一个个地写入单元格数据。这样做的后果就是,如果要写入很多单元格,那就会在进程中重复的打开关闭表格文件,导致整个过程变得很慢。

最好的做法就是将变量打包成一个单元数组一次性写入表格中。

>>返回个人博客总目录

注:本文转载自blog.csdn.net的chhttty的文章"https://blog.csdn.net/u013288925/article/details/107991197"。版权归原作者所有,此博客不拥有其著作权,亦不承担相应法律责任。如有侵权,请联系我们删除。
复制链接
复制链接
相关推荐
发表评论
登录后才能发表评论和回复 注册

/ 登录

评论记录:

未查询到任何数据!
回复评论:

分类栏目

后端 (14832) 前端 (14280) 移动开发 (3760) 编程语言 (3851) Java (3904) Python (3298) 人工智能 (10119) AIGC (2810) 大数据 (3499) 数据库 (3945) 数据结构与算法 (3757) 音视频 (2669) 云原生 (3145) 云平台 (2965) 前沿技术 (2993) 开源 (2160) 小程序 (2860) 运维 (2533) 服务器 (2698) 操作系统 (2325) 硬件开发 (2492) 嵌入式 (2955) 微软技术 (2769) 软件工程 (2056) 测试 (2865) 网络空间安全 (2948) 网络与通信 (2797) 用户体验设计 (2592) 学习和成长 (2593) 搜索 (2744) 开发工具 (7108) 游戏 (2829) HarmonyOS (2935) 区块链 (2782) 数学 (3112) 3C硬件 (2759) 资讯 (2909) Android (4709) iOS (1850) 代码人生 (3043) 阅读 (2841)

热门文章

101
推荐
关于我们 隐私政策 免责声明 联系我们
Copyright © 2020-2024 蚁人论坛 (iYenn.com) All Rights Reserved.
Scroll to Top