设为首页
|
收藏本站
|
繁体中文
|
手机版
整站搜索
资讯
技巧
源码
行业
设备(待改)
资源
信息库(待改)
产品
作品(待改)
活动
培训(视频)
平台(待改)
二级(待改)
互动(作废)
交易
Access培训
-
Access开发平台
-
Access行业开发
首页
资讯
技巧
源码
行业
资源
活动
关于
技巧
ACCESS数据库
启动/设置/选项/背景
修复/压缩
安全/加密/解密
快捷键
版本升级/其它等
数据表
命名方式/设计规范
表设计
查询
Sql语言基础
选择查询
更新查询
删除查询
追加查询
生成表查询
交叉表查询
SQL特定查询
查询参数
查询综合应用
界面/窗体/控件
标签
文本框
命令按钮
组合框/列表框
选项组/复选框/选项按钮
选项卡
子窗体
窗体本身/综合应用
其它
报表打印
报表设计
高级报表
模块/函数/VBA/API/系统
VBA基础
内置函数
调试/跟踪/Debug
模块/类模块
API/COM/系统相关
字符数字日期
网络通信游戏
加密解密安全
文件处理
经典算法
宏/菜单/工具栏/功能区
宏/脚本
菜单/工具栏
功能区/Ribbon
图表/图形/图像/多媒体
图表
图形/图像
音频
视频/动画
DAO/链接表/ADO/ADP
DAO/链接表/ODBC
ADO/RDO
ADP
ActiveX/第三方控件/插件
Treeview树控件
ListView列表控件
Toolbar工具栏控件
微软其它控件
Dbi-Tech
CodeJock
Grid++Report
FastReport
ComponentOne
加载项/插件/Addin
OFFICE集成/导入导出/交互
Excel导入导出/交互
Word导入导出/交互
PPT交互
Outlook控制/邮件
Text文本文件/INI/CSV
PDF/SWF/XML格式
CAD格式
Sharepoint/其它Office
SqlServer/其它数据库
表
视图
存储过程/触发器
函数
用户/权限/安全
调试/维护
SqlServer其它/综合
发布/打包/文档/帮助
开发版/运行时
打包/发布/部署
开发文档/帮助制作
Access完整行业系统
采购管理系统
销售管理系统
仓库管理系统
人力资源管理HRM
CRM管理系统
MRP/ERP管理系统
BRP/流程优化
其它管理系统
心得/经验/绝招
其它/杂项
Excel技巧
Excel应用与操作
Excel开发编程
Word技巧
Word应用与操作
Word开发编程
Outlook技巧
Outlook应用与操作
Outlook开发编程
热门文章
VBA系列讲座(2):处理..
Excel2000 应用案..
Excel自带的示例文件
如何避免 Excel 中的..
Excel 图书大推荐
在Excel单元格中设置斜..
最新文章
在 Excel中 打开Ac..
为选择的区域添加边框
如何在Excel中使用文件..
用快捷键实现相对引用和绝对..
【技巧】Excel控制特定..
Excel技巧集锦
联系方式
Access交流网(免费Access交流)
QQ:18449932
网 址:
www.access-cn.com
当前位置:
首页
>
技巧
>
Excel技巧
>
Excel应用与操作
Excel应用与操作
用Excel制作学生成绩条
现在很多学校都在使用Excel来处理学生成绩,但是处理完成绩之后,怎样才能将每个学生的成绩以成绩条方式发给学生呢?这可是个头痛的问题,因为处理完成绩之后会发现,成绩表只有一个表头(如:班别、年级、编号、姓名、总分、名次等),如何才能使每一个学生的成绩记录都有一个表头呢?
有的同事这样想:首先在每个学生的成绩记录之前插入一个空白行,然后再将表头复制到空白行上不就可以了吗?刚开始时觉得还是有点道理的,可是后来想了一想,我们学校有2000多学生,如果用这种方法给每位学生的成绩记录制一个表头,那得用多少时间?
如果能自动完成这个过程,那可是最好的,于是我想到了用Excel的VBA来制作学生成绩条。
解决问题的思路
因为每个学生只有一个学号,所以学号是惟一的,根据学号惟一性这一特点,使用VBA里的判断语句,如果学号不同,就在两者之间插入一个空白行,然后再在每个空白行粘贴复制的表头,最后使用循环语句,自动制作每个学生成绩记录的表头。
解决问题的方法
打开学生的成绩表,我们需要另存为另外一个表来制作成绩条,以免影响成绩表的原貌。
在VBA的工程资源管理器中双击Sheet1,然后出现代码窗口,在代码窗口输入如下代码:
Sub cjt()
Application.ScreenUpdating = False
Sheets(1).[A1].CurrentRegion.Copy Sheets(2).[A1]
’将表一的成绩表复制到表二
a=(Application.WorksheetFunction.CountA(Sheets(2).[b2:b2000]))*2
’sheets(1).[b2:b2000]的字符数的2倍
Sheets(2).[A1:R1].Borders(xlEdgeTop).LineStyle = xlDouble
’sheets(2).[a1:r1]的下边框是双线
For i = 2 To a
If Sheets(2).Cells(i, 3) <> Sheets(2).Cells(i + 1, 3) And (Sheets(2).Cells(i, 3) <> "") Then
Sheets(2).Rows(i + 1).Insert
End If
’如果第三列的上下单元格的值不相等,则在它们之间插入一个空白行
If Sheets(2).Cells(i, 3) = "" Then
Sheets(2).[A1:R1].Copy Sheets(2).Cells(i, 1)
End If
’如果第三列中的单元格是空的,则将Sheets(2).[A1:R1]复制到此行
Next
Application.ScreenUpdating = True
End Sub
发布人:未知
分享到:
点击次数:
更新时间:2005-03-07 12:55:08 【
打印此页
】 【
关闭
】
上一条:
巧用Excel2000编制行政区划代码
下一条:
浅议Excel的替补启动
相关文章
•
在 Excel中 打开Access窗体或者报表的错误原因及解决办法
•
为选择的区域添加边框
•
如何在Excel中使用文件对话框
•
用快捷键实现相对引用和绝对引用快速来回切换
•
【技巧】Excel控制特定单元格输入文本的长度
•
Excel技巧集锦
•
Excel技巧大汇总
•
在word中输出数学符号
热门文章
[2005-02-15]
VB5.0调用Office97技巧
[2004-05-15]
使用颜色标记工作表标签
[2005-04-08]
在所有的 Excel 2000 工作表中使用相同的页眉或页脚
[2006-07-29]
Excel动画教程:数据分列整理
[2005-03-07]
让Excel XP实现语音校对
[2005-02-17]
Excel2000 应用案例之五
热门产品