ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 234|回复: 4

学习FileDialog.SelectedItems 属性的笔记

[复制链接]

TA的精华主题

TA的得分主题

发表于 2024-8-30 13:15 | 显示全部楼层 |阅读模式
学习FileDialog.SelectedItems 属性的笔记



SelectedItems 接口 (EnvDTE) | Microsoft Learn  https://learn.microsoft.com/zh-c ... tudio-2010/w83cceaw(v=vs.100)


SelectedItems 接口
  • 项目
  • 2011/08/12


本文内容
  • [color=var(--theme-hyperlink)]语法
  • [color=var(--theme-hyperlink)]属性
  • [color=var(--theme-hyperlink)]方法
  • [color=var(--theme-hyperlink)]备注
显示另外 2 个
包含 [color=var(--theme-hyperlink)]SelectedItem 对象,它们表示所选项目或项目项。
命名空间:  [color=var(--theme-hyperlink)]EnvDTE
程序集:  EnvDTE(在 EnvDTE.dll 中)
语法
[backcolor=var(--theme-code-header)][size=0.8]C#复制[color=var(--theme-success-invert) !important][backcolor=var(--theme-success-base) !important][size=1.125]

[GuidAttribute("6CAA67CF-43AE-4184-AAAB-0200DDF6B240")]public interface SelectedItems : IEnumerable
SelectedItems 类型公开以下成员。
属性
[size=0.875em]展开表
名称
说明

[color=var(--theme-hyperlink)]Count
获取指示 SelectedItems 集合中的对象数的值。
[color=var(--theme-hyperlink)]DTE
获取顶级扩展性对象。
[color=var(--theme-hyperlink)]MultiSelect
获取指示当前选定内容是否包含多个项的值。
[color=var(--theme-hyperlink)]Parent获取 SelectedItems 集合的直接父对象。
[color=var(--theme-hyperlink)]SelectionContainer获取表示承载所选项的设计器的 [color=var(--theme-hyperlink)]SelectionContainer 对象。
页首
方法
[size=0.875em]展开表
名称
说明

[color=var(--theme-hyperlink)]GetEnumerator()
返回一个循环访问集合的枚举数。 (继承自 [color=var(--theme-hyperlink)]IEnumerable
。)
[color=var(--theme-hyperlink)]GetEnumerator()
获取集合中项的枚举。
[color=var(--theme-hyperlink)]Item返回 SelectedItems 集合中的一个 [color=var(--theme-hyperlink)]SelectedItem 对象。
页首
备注
即使没有项目项,也总是有一个 SelectedItems 集合。 例如,如果**“解决方案资源管理器”**具有焦点并且一个项目节点被选中,则有一个 [color=var(--theme-hyperlink)]SelectedItem 对象。 所选项的 [color=var(--theme-hyperlink)]Project 属性引用所选项目,而所选项的 [color=var(--theme-hyperlink)]ProjectItem 属性为 Null。
示例
[backcolor=var(--theme-code-header)][size=0.8]VB复制[color=var(--theme-success-invert) !important][backcolor=var(--theme-success-base) !important][size=1.125]

Sub SelectedItemsExample()   Dim SelItems As SelectedItems   Dim SelItemObj As SelectedItem   Dim SelContain As SelectionContainer   Dim SelItem As SelectedItem   Dim NameStr As String   SelItems = DTE.SelectedItems   ' List the number of items selected.   If SelItems.MultiSelect = True Then      MsgBox("You have " & SelItems.Count & " items selected in Solution Explorer.")   End If   ' Set a reference to the first selected item.   SelItemObj = SelItems.Item(1)   ' List the names of the project or project items under the selected    ' item.   For Each SelItem In SelItemObj.Collection      NameStr = NameStr & SelItem.Name      If TypeOf SelItem.Project Is Project Then         NameStr = NameStr & " Project-" & SelItem.Project.Name & vbCrLf      Else         If TypeOf SelItem.ProjectItem Is ProjectItem Then             NameStr = NameStr & SelItem.ProjectItem.FileNames(1) & vbCrLf         End If      End If   Next   MsgBox("You selected: " & NameStr)End Sub


TA的精华主题

TA的得分主题

 楼主| 发表于 2024-8-30 13:16 | 显示全部楼层
  1. Sub ReadPhotoInfo()
  2.     Dim Fso As Scripting.FileSystemObject
  3.         Set Fso = New Scripting.FileSystemObject
  4.     Dim fDia      As FileDialog
  5.     Dim oFiles As Files, oFile As file
  6.     Dim Str, sItem
  7.          Set fDia = Application.FileDialog(msoFileDialogFilePicker)
  8.          With fDia
  9.              .Title = ""
  10.              .AllowMultiSelect = True
  11.              .InitialFileName = "F:"
  12.              .Show
  13.              Debug.Print .SelectedItems.Count
  14.             
  15.             
  16.              For Each sItem In .SelectedItems
  17.                   Debug.Print sItem
  18.                   'Str = .SelectedItems(ii)
  19.                   Set oFile = Fso.GetFile(sItem)
  20.                   'Debug.Print Fso.GetExtensionName(oFile.Path)
  21.                   If Fso.GetExtensionName(oFile.Path) = "jpg" Then
  22.                        Debug.Print oFile.Name, oFile.Path
  23.                   End If
  24.              Next sItem
  25.              Stop
  26.              Stop
  27.          End With
  28.          Stop
  29. End Sub
复制代码


TA的精华主题

TA的得分主题

 楼主| 发表于 2024-9-8 20:05 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
  1. Private Sub SelectFileChangeShtName()
  2.    Dim Str
  3.    Dim oFile As Scripting.File
  4.    Dim FileDia As FileDialog
  5.    
  6.       Set FileDia = Application.FileDialog(msoFileDialogFilePicker)
  7.       
  8.       With FileDia
  9.           .AllowMultiSelect = True
  10.           .Show
  11.           Str = .SelectedItems(1)
  12.       End With
  13.       
  14.       
  15.    
  16.        Str = Mid(Str, InStrRev(Str, "") + 1, 40)
  17.       
  18.        Str = Replace(Str, ".pptm", "")
  19.    Dim Rng As Range
  20.        Set Rng = Selection
  21.    Dim Sht As Worksheet
  22.        Set Sht = Rng.Parent
  23.        Sht.Name = Str
  24.        Stop
  25.        Stop
  26.        Stop
  27. End Sub
复制代码

TA的精华主题

TA的得分主题

 楼主| 发表于 2024-9-9 09:07 | 显示全部楼层
  1. Private Sub ShtNameChangeFolderName()
  2.    Dim Str
  3.    Dim Fso As Scripting.FileSystemObject
  4.        Set Fso = New Scripting.FileSystemObject
  5.    Dim oFile As Scripting.File, oFolder As Folder
  6.    Dim FileDia As FileDialog
  7.    
  8.       Set FileDia = Application.FileDialog(msoFileDialogFolderPicker)
  9.       
  10.       With FileDia
  11.           .AllowMultiSelect = True
  12.           .Show
  13.           Str = .SelectedItems(1)
  14.           Set oFolder = Fso.GetFolder(Str)
  15.          
  16.       End With
  17.   Dim Rng As Range
  18.       Set Rng = Selection
  19.   Dim Sht As Worksheet
  20.       Set Sht = Rng.Parent
  21.       oFolder.Name = Sht.Name
  22.       Stop
  23.       

  24.        Stop
  25.        Stop
  26. End Sub
复制代码

TA的精华主题

TA的得分主题

 楼主| 发表于 2024-9-9 11:12 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
学习,学习再学习

  1. Sub SelectRngChangeSldName()
  2.     Dim Rng As Range
  3.         Set Rng = Selection
  4.     Dim Sht As Worksheet
  5.         Set Sht = Rng.Parent
  6.     Dim Fso As Scripting.FileSystemObject
  7.         Set Fso = New FileSystemObject
  8.     Dim Pres As Presentation
  9.     Dim Ppt As PowerPoint.Application
  10.         Set Ppt = New PowerPoint.Application
  11.     Dim Sld As Slide, SldRng As SlideRange
  12.     Dim PathName
  13.         Set SldRng = Ppt.ActiveWindow.Selection.SlideRange
  14.         SldRng.Name = Rng
  15.         Debug.Print SldRng.Name
  16.    
  17. End Sub
复制代码
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-11-18 22:59 , Processed in 0.041530 second(s), 10 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表