注册 登录
编程论坛 VB6论坛

怎么分步操作同一个excel?

tianskon 发布于 2013-08-14 17:01, 515 次点击
我做了几个checkbox,每个checkbox对应一个子程序(全部调用同个excel,只是写入不同的sheet),只选一个的时候,用:
Sub biaoge
Dim excelID As Excel.Application
Set excelID = CreateObject("Excel.Application")
excelID.Workbooks.Open ("C:\22.xls")
excelID.Worksheets(1).Select
excelID.Cells(11, 1) = Text12.Text
excelID.Workbooks.Close
excelID.Quit
End Sub
然后它会提示要不要保存,保存就可以了。
但我要选多个checkbox的时候呢?要怎么写?

4 回复
#2
风吹过b2013-08-14 17:44
Sub biaoge
Dim excelID As Excel.Application
Set excelID = CreateObject("Excel.Application")
excelID.Workbooks.Open ("C:\22.xls")
excelID.Worksheets(1).Select

if checkbox1.value=1 then                    '第一个
   excelID.Cells(11, 1) = Text12.Text
end if

if checkbox2.value=1 then                    '第二个
   excelID.Cells(?, ?) = Text??.Text
end if
……

excelID.Workbooks.Close
excelID.Quit
End Sub
#3
tianskon2013-08-14 20:46
版主,我想要的是,第一个checkbox,打开的是excel中的sheet1,第二个checkbox打开的是sheet2,然后第三个,第四个……,对应打开sheet3,4,……
我上面写的这些,是打开了sheet1来操作,如果把这几个checkbox都写在同一个子程序,那怎么才能操作其它sheet呢?
#4
风吹过b2013-08-15 08:18
Sub biaoge
Dim excelID As Excel.Application
Set excelID = CreateObject("Excel.Application")           '创建新的EXCEL
excelID.Workbooks.Open ("C:\22.xls")         '打开文件

if checkbox1.value=1 then                    '第一个
   excelID.Worksheets(1).Select              '选择第一个工作表
   excelID.Cells(11, 1) = Text12.Text
end if

if checkbox2.value=1 then                    '第二个
   excelID.Worksheets(2).Select              '选择第二个工作表
   excelID.Cells(?, ?) = Text??.Text
end if
……

excelID.Workbooks.Close                      '关闭工作簿
excelID.Quit                                 '退出 EXCEL
End Sub
#5
tianskon2013-08-15 08:35
不用写成子程序的形式,也可以,谢谢版主,
1