网站首页  词典首页

请输入您要查询的论文:

 

标题 EXCEL中单元格的样式故障疑难解析
范文

    刘培元

    摘要:探讨excel电子表格复制失败的原因。反复试验,探究真相:单元格样式过多造成电子表格无法复制。运用宏的方法删除过多的样式,排除故障。

    关键词: excel;单元格样式;删除;复制

    中图分类号:TP37 文献标识码:A 文章编号:1009-3044(2016)32-0243-02

    笔者原来使用的是excel2003,由于工作需要,常常在不同的excel文件之间复制粘贴数据。后来,office2003办公系统升级到office2007。基于软件产品均有向后兼容的特点,我们能够使用excel2007办公软件打开excel2003格式的文件。

    在使用现有的EXCEL2007办公软件编辑原有的excel2003格式的文件时,会有复制失败的情况发生,令人困惑。

    1 什么是单元格样式

    单元格样式是excel中一组已定义的格式特性组合。比如字体、字号、数字格式、单元格边框以及单元格底纹,等等。

    这些格式特性组合可以使用可锁定单元格的单元格样式,防止其他人对特定单元格进行更改。Office Excel 2007 包含若干内置单元格样式,可以应用或修改这些样式。还可以修改或重制单元格样式以创建自己的自定义单元格样式。

    2 单元格样式的使用

    单元格样式是基于整个工作簿的文档主题的应用。当您切换到另一主题时,excel2007将自动对单元格样式进行更新以匹配新主题。

    实际上,我们可以把单元格样式理解为“预先定制”的格式集合,在应用这个样式时,相当于“批处理” 预先定制的格式集合。从而达到统一,高效,快捷地排版的目的。

    3 出现故障的原因

    为什么用户在使用excel2007打开excel2003文件时,会出现提示:“不同的单元格格式太多”,粘贴失败。见图1:不同的单元格格式太多。

    

    图1 不同的单元格格式太多

    我们通过故障再现,反复试验,终于发现,用户在不同的excel文件间复制粘贴数据时,单元格样式也一起复制了。这就会导致excel文件的样式一直在增加,当达到一定程度时,excel不能保存更多的样式,那么复制就会失败。总之:无效样式过多,就产生了这种复制失败的现象。

    4 修复故障

    思路:测试本工作薄中有多少个样式,分别是哪些样式,然后删除没有使用价值的样式。

    1)显示工作薄中的单元格样式数量

    Sub 使用宏显示活动工作薄中单元格样式的数量()

    dim a

    a=activeworkbook.styles.count '活动工作薄中共有多少个样式

    msgbox(a) '以对话框的形式显示样式个数

    End Sub

    运行结果见图2:单元格样式的数量

    

    图2 单元格样式的数量

    2)查看活动工作薄中有哪些样式。

    方法一:利用菜单栏。单击"开始"—"单元格样式",在弹出的列表框中列出该活动工作薄中全部的单元格样式。见图3:单元格样式列表。

    

    图3 单元格样式列表

    方法二:使用宏。将活动工作薄中的样式输出到d:\allstyles.txt文本文件中,然后打开该文本文件任意查看这些样式。

    操作步骤:第1步:单击"开发工具"—"宏",在宏名文本框中输入新创建的宏的名称:“显示所有宏名”,单击“新建”按钮。见图4:宏对话框。

    

    图4 宏对话框

    第2步:在弹出的窗口中输入代码。

    Sub 显示所有宏名()

    Dim k, i

    Open "d:\allstyles.txt" For Output As #1

    k = ActiveWorkbook.Styles.Count

    For i = 1 To k Step 1

    Print #1, ActiveWorkbook.Styles(i).Name

    Next i

    End Sub

    第3步:单击“保存”按钮,然后执行。这样本活动工作薄中的所有样式均输出到d:\allstyles.txt文本文件中了。我們可以打开d:\allstyles.txt文件,仔细查看这些样式。

    3)删除样式。通常情况下,保留normal,删除其他样式。

    方法一:一个个地删除。

    操作步骤:第1步:单击“开始”菜单—“单元格样式”按钮下方的三角形,弹出单元格样式对话框。见图5:单元格样式。

    

    图5 单元格样式

    第3步:右击某个样式,在弹出的快捷菜单中,选择删除。

    重复以上步骤,删除没有使用价值的样式。在实际操作中,往往由于工作簿中的自定义单元格样式非常多,手动逐一操作显得不太可能。

    方法二:使用宏

    操作步骤:第1步:按Alt+F8,弹出“宏”对话框,在宏名文本框中,输入宏名:“使用宏批量删除所有非normal的样式”,单击“创建”按钮。见图6:宏窗口。

    

    图6 宏窗口

    第2步:输入代码。

    Sub 使用宏批量删除所有非normal的样式()

    dim a,i

    EX:

    a=activeworkbook.styles.count

    msgbox(a)

    For i = 1 To activeworkbook.styles.count

    On Error Resume Next

    if ActiveWorkbook.Styles(i).name <>"normal" then ActiveWorkbook.Styles(i).Delete

    Next i

    If ActiveWorkbook.Styles.Count > 2 Then GoTo EX

    End Sub

    第3步:单击“保存”按钮,然后执行。这样本活动工作薄中的仅保留normal样式,其他样式均已经删除了。

    5 拓展应用

    故障描述:在使用excel2007打开excel2003格式的文件时,修改字体、字号等等格式,然后保存,再打开,发现还是原样,也就是说格式保存不了。

    故障原因:单元格样式过多。

    修复故障:同上,即删除该文件中多余的单元格样式,就可以保存单元格样式啦。

    参考文献:

    [1] Excel Home.Excel 2010应用大全[M].人民邮电出版社,2011:166-176.

    [2] 罗刚君.Excel VBA程序开发自学宝典[M].3版.电子工业出版社,2014:5-25.

    

    

    

    

    

    

随便看

 

科学优质学术资源、百科知识分享平台,免费提供知识科普、生活经验分享、中外学术论文、各类范文、学术文献、教学资料、学术期刊、会议、报纸、杂志、工具书等各类资源检索、在线阅读和软件app下载服务。

 

Copyright © 2004-2023 puapp.net All Rights Reserved
更新时间:2025/3/16 6:13:04