Excel VBA小程序

本人有一个ExcelVBA的小程序,是对一个股市成交明细下载后的Excel表格进行计算,但不想一个个打开再进行运算,想一次用程序来逐个自动运算,要求开始用打开文件对话框后... 本人有一个Excel VBA的小程序,是对一个股市成交明细下载后的Excel表格进行计算,但不想一个个打开再进行运算,想一次用程序来逐个自动运算,要求开始用打开文件对话框后点选运算的表格后选择后就以循环形式对每个表格用我的VBA小程序来计算。
因每天下载的同股票名的成交明细是同名的, 要求运算的表格后文件名要求加上" _当天日期(年月日)",因为下载时是Excel2003格式文件,所同时转回Excel2007格式文件。
若干股票的成交明细是下载到同一文件夹的。

下面的程序中请问改那些就行:
Sub 表格计算 ()
Application.DisplayAlerts = False
Dim fd As FileDialog
Set fd = Application.FileDialog(msoFileDialogFilePicker)
With fd
If .Show = -1 Then
Dim vrtSelectedItem As Variant
For Each vrtSelectedItem In .SelectedItems
If Workbooks.Open(vrtSelectedItem).FileFormat = xlNormal Then
Workbooks.Open(vrtSelectedItem).SaveAs FileFormat:=xlWorkbookDefault
End If
Next vrtSelectedItem
End If
End With
Set fd = Nothing
Workbooks.Close
End Sub

下面是我的表格计算程序
sub stock_run()
。。。
。。。
。。。
End Sub
展开
 我来答
zl998100
2014-09-11 · TA获得超过730个赞
知道小有建树答主
回答量:1067
采纳率:50%
帮助的人:1078万
展开全部
Sub 表格计算()
    Application.DisplayAlerts = False
    Dim fd As FileDialog
    Dim wb As Workbook
    With Application.FileDialog(msoFileDialogFilePicker)
        If .Show = -1 Then
             Dim vrtSelectedItem As Variant
             For Each vrtSelectedItem In .SelectedItems
               
                Set wb = Workbooks.Open(vrtSelectedItem)
                 Call stock_run
                 If wb.FileFormat = 56 Then
                   newname = Replace(vrtSelectedItem, ".xls", "-" & Format(Date, "yyyy.mm.dd") & ".xlsx")
                   wb.SaveAs Filename:=newname, FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False
                   
                 Else
                   newname = Replace(vrtSelectedItem, ".xlsx", "-" & Format(Date, "yyyy.mm.dd") & ".xlsx")
                   wb.SaveAs Filename:=newname

                 End If
                ActiveWorkbook.Close True
            Next vrtSelectedItem
        End If
    End With
    Set wb = Nothing
    Application.DisplayAlerts = True
End Sub
更多追问追答
追问
按你的程序来做,不知因何事,在运行时表格自动在第一行后加了两个空行,结果后面的软件运行起始位也要由第六行开始运算,原来的是第四行开始运算的,但不能更改文件名和转换成2007格式,不知是否我只是在于2007板运行不行,一定要在于2010板才可以?
按你的程序来做,不知因何事,在运行时表格自动在第一行后加了两个空行,结果后面的软件运行起始位也要由第六行开始运算,原来的是第四行开始运算的,但不能更改文件名和转换成2007格式,不知是否我只是在于2007板运行不行,一定要在于2010板才可以?
叛逆尊0924
2014-09-10 · 超过60用户采纳过TA的回答
知道答主
回答量:109
采纳率:66%
帮助的人:103万
展开全部
按题号啊,题号唯一就可以了。查到题号之后按照题号的坐标offset就可以了
追问
我要的是代码。。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
Ynzsvt
2014-09-11 · TA获得超过6668个赞
知道大有可为答主
回答量:1.5万
采纳率:40%
帮助的人:2850万
展开全部
你很厉害的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
mfk1288
2014-09-11 · TA获得超过201个赞
知道小有建树答主
回答量:442
采纳率:0%
帮助的人:181万
展开全部
把表与目的要求发我邮箱,最好举例说一下,以便理解你的意图。mfk1288@126.com
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式