主页 > 知识库 > 利用matlab与Excel交互之单元格操作

利用matlab与Excel交互之单元格操作

热门标签:银行业务 检查注册表项 智能手机 服务器配置 呼叫中心市场需求 美图手机 网站文章发布 铁路电话系统

前言

接上文 matlab与Excel交互 非xlsread和xlswrite (1) ,此处默认:

Excel=actxserver(‘Excel.application');

Workbook 为已添加工作簿

单元格内容操作

1.设置单元格的值

eSheet2.Range('A1:C3').Value = magic(3);
% 这个等于magic(4)也行,但是多出的部分会自动忽略,
eSheet2.Range('A1').Value = 'Value'; % 设置某一个单元格的值
eSheet2.Columns.Item(1).Value = 123; % 设置某一列的值 行同理

2.复制,粘贴,剪切

% 清除单元格内容
eSheet1.Range('A1').Clear;
% 复制单元格内容
eSheet1.Range('A1').Copy;
% 剪切单元格内容
eSheet1.Range('A1').Cut;
% 删除单元格
eSheet1.Range('A1:C3').Delete
% 粘贴
eSheet1.Range('A1').PasteSpecial;
% 或者
% eSheet1.Paste;

3. 将单元格内容作为图片复制到剪切板

% 将单元格内容作为图片复制到剪切板
eSheet1.Range('A1:C3').CopyPicture

效果如下:

4.向Excel添加MATLAB中的图片

%向Excel中添加图片
a=0:0.1:5;
b=sin(a);
plot(a,b);
hgexport(gcf,'-clipboard');
eSheet1.Range('A1').PasteSpecial;
% 或者
% eSheet1.Paste;

效果如下:

单元格属性操作

1. 设置单元格内字体样式

eSheet2.Range('A1').Font.FontProperty = PropertyValue
% 其中:常用的FontProperty有:Name,Size,Bold,Italic,Underline,Color
% 分别对应字体,大小,加粗,斜体,下划线,颜色

FontProperty具体有那些可以查看

 

%字体加粗
eSheet2.Columns.Item(1).Font.Bold = true % 第一列加粗
% eSheet2.Columns..Font.Bold = true % 全部加粗
eSheet2.Range('A1:C3').Font.Bold = true % 选中范围加粗
eSheet2.Rows.Item(1).Font.Bold = true % 第1列加粗

eSheet2.Range('A1:C3').Font.Name = '华文行楷';
eSheet2.Range('A1:C3').Font.Size = 12;
eSheet2.Range('A1:C3').Font.Italic = true ;  %斜体

2. 设置单元格颜色

eSheet1.Range('A1:B3').Interior.Color = 2^24;% 二进制 前8位表示R,中8位表示G,后8位表示B

提示:颜色可以用十六进制表示(但记得要在赋值的时候转换成二进制),这样更容易提现RGB的值

3. 合并单元格

eSheet2.Range('A1:C3').Merge

4.文本对齐设置

Title.HorizontalAlignment=-4108;  % 水平居中
Title.VerticalAlignment=-4108; % 垂直居中


5.宽度和高度设置

Sheet1.Columns.ColumnWidth=1; % 列宽
Sheet1.Columns.RowHeight=10;  % 行距  单位为磅

总结

到此这篇关于利用matlab与Excel交互之单元格操作的文章就介绍到这了,更多相关matlab与Excel单元格操作内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

标签:沧州 新疆 乐山 红河 上海 长治 沈阳 河南

巨人网络通讯声明:本文标题《利用matlab与Excel交互之单元格操作》,本文关键词  ;如发现本文内容存在版权问题,烦请提供相关信息告之我们,我们将及时沟通与处理。本站内容系统采集于网络,涉及言论、版权与本站无关。
  • 相关文章
  • 收缩
    • 微信客服
    • 微信二维码
    • 电话咨询

    • 400-1100-266