梦幻之旅
DEBUG - 天道酬勤
::
首页
::
新随笔
::
联系
::
聚合
::
管理
::
671 随笔 :: 6 文章 :: 256 评论 :: 0 Trackbacks
<
2011年9月
>
日
一
二
三
四
五
六
28
29
30
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
1
2
3
4
5
6
7
8
公告
本博客中未注原创的文章均为转载,对转载内容可能做了些修改和增加图片注释,如果侵犯了您的版权,或没有注明原作者,请谅解
常用链接
我的随笔
我的评论
我的参与
最新评论
留言簿
(21)
给我留言
查看公开留言
查看私人留言
随笔分类
(644)
Android(10)
(rss)
ANT(4)
(rss)
C#(10)
(rss)
C/C++(16)
(rss)
CSS(3)
(rss)
DataBase(119)
(rss)
DB-DailyMmaintenance(16)
(rss)
Design Patterns(27)
(rss)
english
(rss)
Exceptions(7)
(rss)
EXT(39)
(rss)
FLASH(9)
(rss)
Hardware(20)
(rss)
Hibernate(13)
(rss)
Html(23)
(rss)
Java(143)
(rss)
java Net(10)
(rss)
JavaScript(39)
(rss)
Linux(26)
(rss)
php(5)
(rss)
Regular Exp(3)
(rss)
Spring(17)
(rss)
Struts(12)
(rss)
TOOL(43)
(rss)
VB/VBA/VBS(5)
(rss)
webservice(9)
(rss)
XML(2)
(rss)
我的梦幻旅途(14)
(rss)
随笔档案
(669)
2017年9月 (4)
2016年10月 (1)
2015年6月 (1)
2015年4月 (2)
2015年1月 (1)
2014年8月 (2)
2014年7月 (9)
2014年6月 (1)
2014年5月 (2)
2014年4月 (3)
2014年3月 (3)
2013年10月 (4)
2013年9月 (8)
2013年8月 (4)
2013年6月 (3)
2013年5月 (4)
2013年4月 (7)
2013年3月 (1)
2013年1月 (3)
2012年12月 (4)
2012年11月 (1)
2012年10月 (1)
2012年9月 (4)
2012年8月 (1)
2012年7月 (2)
2012年6月 (1)
2012年5月 (4)
2012年4月 (2)
2012年3月 (1)
2012年2月 (4)
2012年1月 (6)
2011年12月 (10)
2011年11月 (7)
2011年10月 (6)
2011年9月 (37)
2011年8月 (34)
2011年7月 (44)
2011年6月 (10)
2011年5月 (5)
2011年4月 (3)
2011年3月 (1)
2011年2月 (1)
2011年1月 (18)
2010年12月 (9)
2010年11月 (13)
2010年10月 (17)
2010年9月 (2)
2010年8月 (10)
2010年7月 (10)
2010年6月 (5)
2010年5月 (8)
2010年4月 (9)
2010年3月 (11)
2010年2月 (3)
2010年1月 (8)
2009年12月 (6)
2009年11月 (10)
2009年10月 (5)
2009年9月 (1)
2009年8月 (18)
2009年7月 (6)
2009年6月 (2)
2009年5月 (1)
2009年4月 (4)
2009年3月 (6)
2009年2月 (5)
2009年1月 (3)
2008年12月 (13)
2008年11月 (13)
2008年10月 (30)
2008年9月 (9)
2008年8月 (24)
2008年7月 (17)
2008年6月 (15)
2008年5月 (16)
2008年4月 (15)
2008年3月 (19)
2008年2月 (3)
2008年1月 (20)
2007年12月 (24)
2007年11月 (9)
文章档案
(6)
2008年4月 (1)
2008年3月 (1)
2008年1月 (2)
2007年11月 (2)
最新随笔
1. PP代码生成器(四) 使用解决方案生成代码
2. PP代码生成器(三) 设计freemarker模板, 创建解决方案
3. PP代码生成器(二) 解决方案, 生成任务, 辅助设计面板
4. PP代码生成器(一) 简介, 下载, 运行
5. PP持久层代码生成器
6. 比较好的博客
7. 系统集成项目管理工程师
8. 软件公司项目经理岗位职责
9. 联想笔记本 显示屏 键盘失灵 释放静电
10. eclipse maven
积分与排名
积分 - 954092
排名 - 37
最新评论
1. re: Myeclipse 快捷键大全(绝对全)
crl+向右箭头(输入法有问题打不出来)移到下一个参数的位置,然后crl+shift+向右箭头 选中该位置的参数即可
--红领巾
2. re: Log4j基本使用方法
555
--555
3. re: Myeclipse 快捷键大全(绝对全)[未登录]
很不错,谢谢
--银狐
4. re: Flex 表单
是谁这么无聊~呜~~~
--HUIKK
5. re: Spring AfterReturning 异常
具体是什么意思啊
--dingli
阅读排行榜
1. Exception in thread "main" java.lang.NoClassDefFoundError: com/sun/mail/util/LineInputStream(70015)
2. log4j.properties 使用说明(42070)
3. Myeclipse 快捷键大全(绝对全)(32711)
4. TNSNAMES.ORA 配置(24380)
5. oracle 树状查询(21351)
评论排行榜
1. Exception in thread "main" java.lang.NoClassDefFoundError: com/sun/mail/util/LineInputStream(53)
2. JMail 异常: java.lang.NoClassDefFoundError: javax/activation/DataSource(21)
3. javax.mail.MessagingException: 530 5.7.0 Must issue a STARTTLS command first(14)
4. java 读取 excel 2003 或 excel 2007(14)
5. java.lang.UnsupportedClassVersionError: Bad version number in .class file(8)
(原创) VBA-Test
VERSION
1.0
Class BEGIN
CLASS
BEGIN
MultiUse
=
-
1
'
True
END
Attribute VB_Name
=
"
Sheet3
"
Attribute VB_GlobalNameSpace
=
False
Attribute VB_Creatable
=
False
Attribute VB_PredeclaredId
=
True
Attribute VB_Exposed
=
True
'
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Rem
模块名称: 生成插入SQL Rem
Rem
作者: Huyvanpull Rem
Rem
版本: V0.1 Rem
Rem
编写时间: 2011.09.16 Rem
Rem
修改时间: 2011.09.16 Rem
Rem
功能描述: 根据数据Sheet的内容在另一个Sheet内生成插入SQL Rem
'
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Option
Explicit
Const
strTableNameCell
=
"
A1
"
'
表名所在的位置
Const
intHeaderRow
=
3
'
数据表头所在行
Const
strDataSheetName
=
"
数据源
"
'
保存数据的Sheet名称
Const
strIsqlSheetName
=
"
插入SQL
"
'
保存SQL的Sheet名称
Const
strDeleSheetName
=
"
删除SQL
"
'
存删除SQL的Sheet名称
Dim
strTableName
As
String
'
数据库表名
Dim
strTemSql
As
String
'
临时SQL语句
Dim
strInsertSql
As
String
'
插入SQL语句
Dim
intClumnCount
As
Integer
'
列数
Dim
intIndex1
As
Integer
'
索引变量
Dim
intIndex2
As
Integer
'
第二个索引变量
Dim
intIndex3
As
Integer
'
第三个变量
Rem
激活本Sheet时执行,生成插入SQL
Private
Sub Worksheet_Activate()
Sub
Worksheet_Activate()
Rem
清空SQL的Sheet
Worksheets(strIsqlSheetName).Select
Cells.Select
Selection.ClearContents
ActiveCell.Select
Rem
得到表名
strTableName
=
Worksheets(strDataSheetName).Range(strTableNameCell).Value
Rem
列数
intClumnCount
=
Worksheets(strDataSheetName).Range(
"
IV
"
&
intHeaderRow).End(xlToLeft).Column
Rem
开始组装SQL语句
strTemSql
=
"
INSERT INTO
"
strTemSql
=
strTemSql
+
strTableName
strTemSql
=
strTemSql
+
"
(
"
Rem
组装字段头
For
intIndex1
=
1
To
intClumnCount
strTemSql
=
strTemSql
+
Worksheets(strDataSheetName).Cells(intHeaderRow, intIndex1).Value
If
intIndex1
<
intClumnCount
Then
strTemSql
=
strTemSql
+
"
,
"
End
If
Next
intIndex1
Rem
下条语句组装TempSQL完成
strTemSql
=
strTemSql
+
"
) VALUES (
"
Rem
组装SQL语句体
For
intIndex2
=
intHeaderRow
+
1
To
Worksheets(strDataSheetName).UsedRange.Rows.Count
strInsertSql
=
strTemSql
For
intIndex3
=
1
To
intClumnCount
Rem
加上单元格里的数据
strInsertSql
=
strInsertSql
+
getCellVal(Worksheets(strDataSheetName).Cells(intIndex2, intIndex3))
If
intIndex3
<
intClumnCount
Then
strInsertSql
=
strInsertSql
+
"
,
"
End
If
Next
intIndex3
strInsertSql
=
strInsertSql
+
"
);
"
Rem
MsgBox strInsertSql
Rem
向插入SQL的Sheet赋值
Worksheets(strIsqlSheetName).Cells(intIndex2
-
intHeaderRow,
1
).Value
=
strInsertSql
Next
intIndex2
Rem
设置插入SQL的Sheet的样式
Worksheets(strIsqlSheetName).UsedRange.Select
With
Selection
.Font.Size
=
9
'
设置字号Font.Name = "MS Sans Serif" '设置字体
.Font.Color
=
1
'
设置字的颜色Borders.LineStyle = xlContinuous '设置实线边框
.Columns.AutoFit
'
设置单元格宽度自适应(根据单元格内文字都是自动调节该单元格的宽度)
End
With
Rem
选中第一个单元格
Worksheets(strIsqlSheetName).Range(
"
A1
"
).Select
Rem
删除SQL的Sheet的值
Worksheets(strDeleSheetName).Range(
"
A1
"
).Value
=
"
--DELETE FROM
"
+
strTableName
+
"
WHERE 1=1
"
Worksheets(strDeleSheetName).Range(
"
A4
"
).Value
=
"
Write By: Huyvanpull
"
Worksheets(strDeleSheetName).Range(
"
A5
"
).Value
=
"
QQ: 182429125
"
Worksheets(strDeleSheetName).Range(
"
A6
"
).Value
=
"
Date: 2011-09-17
"
End Sub
Rem
根据类型得到Cell里的值的函数
Function getCellVal()
Function
getCellVal(c)
Dim
tempStr
As
String
Rem
如果单元格是数字
If
IsNumeric
(c.Value)
Then
tempStr
=
"
'
"
Rem
如果不是整数,在前面加0
If
Int
(c.Value)
<>
c.Value
Then
tempStr
=
tempStr
+
"
0
"
End
If
tempStr
=
tempStr
+
CStr
(c.Value)
tempStr
=
tempStr
+
"
'
"
Rem
如果单元格是是日期型
ElseIf
IsDate
(c.Value)
Then
tempStr
=
"
to_date('
"
tempStr
=
tempStr
+
Format
(c.Value,
"
yyyy-mm-dd hh:mm:ss
"
)
tempStr
=
tempStr
+
"
','yyyy-mm-dd hh:mi:ss')
"
Rem
如果单元格是其它数据类型
Else
tempStr
=
"
'
"
tempStr
=
tempStr
+
CStr
(c.Value)
tempStr
=
tempStr
+
"
'
"
End
If
Rem
返回字符串
getCellVal
=
tempStr
End Function
posted on 2011-09-17 00:43
HUIKK
阅读(427)
评论(0)
编辑
收藏
所属分类:
VB/VBA/VBS
新用户注册
刷新评论列表
只有注册用户
登录
后才能发表评论。
网站导航:
博客园
IT新闻
知识库
C++博客
博问
管理
相关文章:
excel2pdm
vb 托盘
VBA 自定义函数
(原创) VBA 代码的保护
(原创) VBA-Test
Powered by:
BlogJava
Copyright © HUIKK