excel中vba中用FileDialog以记事本打开文本文件

sub打开文件()Setdig=Application.FileDialog(msoFileDialogOpen)Withdig.AllowMultiSelect=Tru... sub 打开文件()
Set dig = Application.FileDialog(msoFileDialogOpen)
With dig
.AllowMultiSelect = True
.Filters.Add "文本文件", "*.txt", 1
.InitialFileName = "g:\123\"
.InitialView = msoFileDialogViewDetails
.Title = "打开"
.Show
.Execute
End With
Set dig = Nothing
End Sub

我以用记事本来打开文本文件,但系统是默认的excel,请问如何用记事本来打开文本文件?
我想用记事本来打开文本文件,但系统是默认的excel,请问如何用记事本来打开文本文件?
展开
 我来答
2724421
2013-10-23 · TA获得超过2493个赞
知道大有可为答主
回答量:1551
采纳率:71%
帮助的人:949万
展开全部
Sub 打开文件()
With Application.FileDialog(msoFileDialogOpen)
    .AllowMultiSelect = True
    .Filters.Add "文本文件", "*.txt", 1
    .InitialFileName = "g:\123\"
    .InitialView = msoFileDialogViewDetails
    .Title = "打开"
    If .Show = 0 Then Exit Sub
    Filename = .SelectedItems(1)
End With
Shell "notepad " & Filename, vbNormalFocus
End Sub
追问

我加了一个多选打开的循环,但发现一个怪现象,在对话框里选择的顺序和打开的顺序是反的,for要倒着循环才是和对话框里的选择顺序一样的,为什么呢?

(也就是说在对话框里先选的文件是SelectedItems的最后一个序号,不明白原因)

追答
选择写入Selecteditems 应该像往弹夹里压子弹一样,后入先出.应该是这样吧,这个问题我也没深究过.
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式