QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 1082|回复: 3
打印 上一主题 下一主题

利用MATLAB生成Word和Excel文档之案例教程

[复制链接]
字体大小: 正常 放大

2620

主题

162

听众

1万

积分

升级  0%

  • TA的每日心情
    开心
    2015-3-12 15:35
  • 签到天数: 207 天

    [LV.7]常住居民III

    社区QQ达人 发帖功臣 新人进步奖 优秀斑竹奖 金点子奖 原创写作奖 最具活力勋章 助人为乐奖 风雨历程奖

    群组第六届国赛赛前冲刺培

    群组国赛讨论

    群组2014美赛讨论

    群组2014研究生数学建模竞

    群组数学中国试看培训视频

    跳转到指定楼层
    1#
    发表于 2014-11-24 10:57 |只看该作者 |倒序浏览
    |招呼Ta 关注Ta
    利用MATLAB生成Word和Excel文档之案例教程
    利用MATLAB生成统计报告或报表是一件非常有意义的事情,做这个事情的起因是本人每个学期末都要做好几张试卷分析,工作重复单调,并且周围很多人都有对类似的困扰。特别是当统计工作者面对大量相同格式的统计报表时,所做的工作往往只是重复性劳动,此时就需要一个模版,每次自动导入数据,自动生**们想要的报告,把人们从繁重的、重复的工作中解脱出来。基于这个考虑,本帖以案例的形式详细介绍如何利用MATLAB生成Word和Excel文档。读者可以参照本帖内容,生成自己的统计报告或报表。
    游客,如果您要查看本帖隐藏内容请回复

    注意:在高版本word中,应将Document.SaveAs(filespec_user)改为Document.SaveAs2(filespec_user);

    【例2】利用MATLAB生成Excel文档
    效果图与前面的效果图类似
    源代码:
    function ceshi_Excel
    %利用MATLAB生成Excel文档
    %   ceshi_Excel
    %
    %   Copyright 2009 - 2010 xiezhh.
    %   $Revision: 1.0.0.0 $  $Date: 2009/12/14 20:40:00 $

    filespec_user = [pwd '\测试.xls'];

    try
        Excel = actxGetRunningServer('Excel.Application');
    catch
        Excel = actxserver('Excel.Application');
    end;

    Excel.Visible = 1;    % set(Excel, 'Visible', 1);

    if exist(filespec_user,'file');
        Workbook = Excel.Workbooks.Open(filespec_user);
        % Workbook = invoke(Excel.Workbooks,'Open',filespec_user);
    else
        Workbook = Excel.Workbooks.Add;
        % Workbook = invoke(Excel.Workbooks, 'Add');
        Workbook.SaveAs(filespec_user);
    end

    Sheets = Excel.ActiveWorkbook.Sheets;    % Sheets = Workbook.Sheets;
    Sheet1 = Sheets.Item(1);
    Sheet1.Activate;

    Sheet1.PageSetup.TopMargin = 60;
    Sheet1.PageSetup.BottomMargin = 45;
    Sheet1.PageSetup.LeftMargin = 45;
    Sheet1.PageSetup.RightMargin = 45;

    RowHeight = [26,22,15,29,37,29,29,25,25,36,280,31,40,29,15,24]';
    Sheet1.Range('A1:A16').RowHeight = RowHeight;
    Sheet1.Range('A1:H1').ColumnWidth = [9,15,9,9,9,9,9,9];

    Sheet1.Range('A1:H1').MergeCells = 1;
    Sheet1.Range('A2:H2').MergeCells = 1;
    Sheet1.Range('A8:A9').MergeCells = 1;
    Sheet1.Range('B88').MergeCells = 1;
    Sheet1.Range('E8:H8').MergeCells = 1;
    Sheet1.Range('B99').MergeCells = 1;
    Sheet1.Range('E9:H9').MergeCells = 1;
    Sheet1.Range('A10:H10').MergeCells = 1;
    Sheet1.Range('A11:H11').MergeCells = 1;
    Sheet1.Range('A12:H12').MergeCells = 1;
    Sheet1.Range('A13:H13').MergeCells = 1;
    Sheet1.Range('A14:H14').MergeCells = 1;
    Sheet1.Range('D16:H16').MergeCells = 1;

    Sheet1.Range('A4:H14').Borders.Weight = 3;
    Sheet1.Range('A10:H12').Borders.Item(3).Linestyle = 0;
    Sheet1.Range('A10:H12').Borders.Item(4).Linestyle = 0;
    Sheet1.Range('A13:H13').Borders.Item(4).Linestyle = 0;
    Sheet1.Range('A14:H14').Borders.Item(3).Linestyle = 0;

    Sheet1.Range('A1:H9').HorizontalAlignment = 3;
    Sheet1.Range('A4:A9').HorizontalAlignment = 6;
    Sheet1.Range('C4:C7').HorizontalAlignment = 6;
    Sheet1.Range('E4:E7').HorizontalAlignment = 6;
    Sheet1.Range('G4:G7').HorizontalAlignment = 6;
    Sheet1.Range('A10:H10').HorizontalAlignment = 6;
    Sheet1.Range('A11:H11').HorizontalAlignment = 6;    % -4130
    Sheet1.Range('A11:H11').VerticalAlignment = 1;
    Sheet1.Range('A12:H12').HorizontalAlignment = 4;
    Sheet1.Range('A13:H13').VerticalAlignment = 1;
    Sheet1.Range('A14:H14').HorizontalAlignment = 4;
    Sheet1.Range('D16:H16').HorizontalAlignment = 4;

    Sheet1.Range('A1').Value = '试  卷  分  析';
    Sheet1.Range('A2').Value = '( 2009  —  2010   学年 第一学期)';
    Sheet1.Range('A4:H4').Value = {'课程名称','','课程号',...
        '','任课教师学院','','任课教师',''};
    Sheet1.Range('A5:H5').Value = {'授课班级','','考试日期',...
        '','应考人数','','实考人数',''};
    Sheet1.Range('A6:H6').Value = {'出卷方式','','阅卷方式',...
        '','选用试卷A/B','','考试时间',''};
    Sheet1.Range('A7:H7').Value = {'考试方式','','平均分',...
        '','不及格人数','','及格率',''};
    Sheet1.Range('A8').Value = '成绩分布';
    Sheet1.Range('B8').Value = '90分以上       人占        %';
    Sheet1.Range('E8').Value = '80---89分        人占        %';
    Sheet1.Range('B9').Value = '70---79分      人占        %';
    Sheet1.Range('E9').Value = '60---69分        人占        %';
    Sheet1.Range('A10').Value = ['试卷分析(含是否符合教学大纲、难度、知识覆'...
        '盖面、班级分数分布分析、学生答题存在的共性问题与知识掌握情况、教学中'...
        '存在的问题及改进措施等内容)'];
    Sheet1.Range('A12').Value = '签字 :                      年     月     日';
    Sheet1.Range('A13').Value = '教研室审阅意见:';
    Sheet1.Range('A14').Value = '教研室主任(签字):             年    月    日';
    Sheet1.Range('D16').Value = '主管院长签字:                  年    月    日';

    Sheet1.Range('A4:H12').Font.size = 10.5;
    Sheet1.Range('A1').Font.size = 16;
    Sheet1.Range('A1').Font.bold = 2;

    Shapes = Sheet1.Shapes;
    if Shapes.Count ~= 0;
        for i = 1 : Shapes.Count;
            Shapes.Item(1).Delete;
        end;
    end;

    zft = figure('units','normalized','position',...
    [0.280469 0.553385 0.428906 0.251302],'visible','off');
    set(gca,'position',[0.1 0.2 0.85 0.75]);
    data = normrnd(75,4,1000,1);
    hist(data);
    grid on;
    xlabel('考试成绩');
    ylabel('人数');
    hgexport(zft, '-clipboard');

    Sheet1.Range('A11').Select;
    Sheet1.Paste    % Sheet1.PasteSpecial;

    delete(zft);
    Workbook.Save   % 保存文档
    复制代码


    zan
    转播转播0 分享淘帖0 分享分享1 收藏收藏0 支持支持1 反对反对0 微信微信

    0

    主题

    16

    听众

    666

    积分

    升级  16.5%

  • TA的每日心情
    无聊
    2018-8-4 15:30
  • 签到天数: 77 天

    [LV.6]常住居民II

    自我介绍
    爱数学

    群组数模专题强化培训

    群组2014年地区赛数学建模

    群组国赛讨论

    群组第二届数模基础实训

    回复

    使用道具 举报

    0

    主题

    16

    听众

    666

    积分

    升级  16.5%

  • TA的每日心情
    无聊
    2018-8-4 15:30
  • 签到天数: 77 天

    [LV.6]常住居民II

    自我介绍
    爱数学

    群组数模专题强化培训

    群组2014年地区赛数学建模

    群组国赛讨论

    群组第二届数模基础实训

    回复

    使用道具 举报

    淘车        

    0

    主题

    12

    听众

    35

    积分

    升级  31.58%

  • TA的每日心情
    开心
    2015-1-29 14:54
  • 签到天数: 1 天

    [LV.1]初来乍到

    自我介绍
    新人
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 注册地址

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

    关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

    手机版|Archiver| |繁體中文 手机客户端  

    蒙公网安备 15010502000194号

    Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

    GMT+8, 2025-5-22 10:17 , Processed in 0.394062 second(s), 71 queries .

    回顶部