VB操作Excel时日期和时间出错 20

我想把Access中的数据保存至Excel中,代码:PrivateSubCommand3_Click()'''''导出至Excel'如果EXCEL文件已经打开,需要先关闭... 我想把Access中的数据保存至Excel中,代码:
Private Sub Command3_Click() '''''导出至Excel
'如果EXCEL文件已经打开,需要先关闭它.
Dim lpClassName As String
Dim lpCaption As String
Dim Handle As Long

lpClassName = "XLMAIN"
lpCaption = "Microsoft Excel - MyExcel.xls"
Handle = FindWindow(lpClassName$, lpCaption$)

If Handle <> 0 Then
MsgBox "请先关闭EXCEL文件!", vbOKOnly + vbInformation, "不能对已经打开的文件进行写操作!"
Exit Sub
End If

'检查EXCEL文件是否存在 , 如果存在则删除
If Dir(App.Path & "\MyExcel.xls") <> "" Then Kill App.Path & "\MyExcel.xls"

'进行数据转换
Dim dbs As Database
'打开数据库
Set dbs = OpenDatabase(App.Path & "\粮情检测与管理.mdb")
'把数据导入EXCEL
findDate = Format(CDate(Combo1.Text & "-" & Combo2.Text & "-" & Combo3.Text), "yyyy-mm-dd")
DTPicker1.Value = findDate

dbs.Execute "SELECT * INTO [Excel 8.0;DATABASE=" & App.Path & "\MyExcel.xls].[WorkSheet1] FROM " & Combo4 & "仓温度表 where 日期=#" & DTPicker1.Value & "#"
'关闭数据库对象
dbs.Close
'释放数据库对象
Set dbs = Nothing
End Sub
这样保存之后,生成的Excel中日期成了#####,时间成了1900-1-0 20:23:10 求代码修改Excel的列的属性
展开
 我来答
jeff13141988
推荐于2021-02-13 · TA获得超过790个赞
知道小有建树答主
回答量:402
采纳率:25%
帮助的人:69.7万
展开全部
可直接在Excel中设置格式也可在VBA中设置代码如下:
自定义格式 单元格输入 显示为

#,##0 "元人民币" 1500 1,500 元人民币
"答复: "通用格式 1500 答复: 1500
"总额是"#,##0" 美元" 1500 总额是1,500美元

#,##0, 123456789 123,457
#,##0, 12345678912 12,345,679
#,##0, 1234 1

0.00;"仅显示正数!" 123 123.00
0.00;"仅显示正数!" -123 仅显示正数!
0.00;"仅显示正数!" 0 0.00

#,##0_);(#,##0);-0-_) 0 -0-
#,##0_);(#,##0);-0-_) 12.2 12
#,##0_);(#,##0);-0-_) -102 (102)

(###) ###-### 8.52378E+12 (852377) 659-6295
###"/"###-#### 8.52378E+12 852377/659-6295

###-##-#### 421897322 421-89-7322
社会福利号 ###-##-#### 421897322 社会福利号 421-89-7322

mmmm-yy 1995-6-1 June-95
mmmm d, yyyy 1995-6-1 June 1, 1995
dddd 1995-6-1 Thursday
mmmm d, yyyy (dddd) 1995-6-1 June 1, 1995 (Thursday)
"It's" dddd 1995-6-1 It's Thursday

[红色][<1]0.0%;[蓝色亏培][>=1]#,##0;G/通用格式 1 1
[红色][<1]0.0%;[蓝色][>=1]#,##1;G/通用格式 -1 -100.0%
[红色][<1]0.0%;[蓝色][>=1]#,##2;G/通用格式 45 45

G/通用格式;G/通用格式;G/通用格式;[红色]G/通用格销氏唯式 程香宙 程香宙
G/通用格式;G/通用格式;G/通用格式;[红色]G/通用格式 234 234

©G/通用格式 2004 ©2004
G/通用格式;G/通核谨用格式;G/通用格式;G/通用格式 注册 注册
G/通用格式;G/通用格式;G/通用格式;G/通用格式 号码 号码
G/通用格式;G/通用格式;G/通用格式;G/通用格式 文本引述 “文本引述
G/通用格式;G/通用格式;G/通用格式;G/通用格式 123 123

正数;"负数";"零";"文本" 32 正数
正数;"负数";"零";"文本" -32 负数
正数;"负数";"零";"文本" 0 零
正数;"负数";"零";"文本" 程香宙 文本

;;; 1234
;;; -145

[>100]#,000;;; 99
[>100]#,000;;; 102 102
[>100]#,000;;; -54
[>100]#,000;;; 程香宙
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
谈冠A
2008-12-11
知道答主
回答量:1
采纳率:0%
帮助的人:0
展开全部
第二返帆纤步应该这样:lpClassName = "XLMAIN"
lpCaption = "Microsoft Excel - MyExcel.xls"
Handle = FindWindow(lpClassName$, lpCaption$)

If Handle <> 0 Then
MsgBox "请先关闭EXCEL文件!", vbOKOnly + vbInformation, "不能对已经打开轿蔽的文件漏仿进行写操作."
END if
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式