Tensorflow 编译加速器 XLA 源码深入解读
XLA是Tensorflow内置的编译器,用于加速计算过程。码分然而,码分不熟悉其工作机制的码分开发者在实践中可能无法获得预期的加速效果,甚至有时会导致性能下降。码分本文旨在通过深入解读XLA的码分app源码新闻简易源码,帮助读者理解其内部机制,码分以便更好地利用XLA的码分性能优化功能。
XLA的码分源码主要分布在github.com/tensorflow/tensorflow的多个目录下,对应不同的码分模块。使用XLA时,码分可以采用JIT(Just-In-Time)或AOT( Ahead-Of-Time)两种编译方式。码分JIT方式更为普遍,码分对用户负担较小,码分只需开启一个开关即可享受到加速效果。码分本文将专注于JIT的实现与理解。
JIT通过在Tensorflow运行时,从Graph中选择特定子图进行XLA编译与运行,实现了对计算图的加速。Tensorflow提供了一种名为JIT的使用方式,它通过向Tensorflow注册多个优化PASS来实现这一功能。这些优化PASS的执行顺序决定了加速效果。
核心的优化PASS包括但不限于EncapsulateXlaComputationsPass、MarkForCompilationPass、EncapsulateSubgraphsPass、BuildXlaOpsPass等。EncapsulateXlaComputationsPass负责将具有相同_xla_compile_id属性的算子融合为一个XlaLaunch,而XlaLaunch在运行时将子图编译并执行。
AutoClustering则自动寻找适合编译的子图,将其作为Cluster进行优化。XlaCompileOp承载了Cluster的所有输入和子图信息,在运行时通过编译得到XlaExecutableClosure,管理系统JAVAweb源码最终由XlaRunOp执行。
在JIT部分,关键在于理解和实现XlaCompilationCache::CompileStrict中的编译逻辑。此过程包括两步,最终结果封装在XlaCompilationResult和LocalExecutable中,供后续使用。
tf2xla模块负责将Tensorflow Graph转化为XlaCompilationResult(HloModuleProto),实现从Tensorflow到XLA的转换。在tf2xla中定义的XlaOpKernel用于封装计算过程,并在GraphCompiler::Compile中实现每个Kernel的计算,即执行每个XlaOpKernel的Compile。
xla/client模块提供了核心接口,用于构建计算图并将其转换为HloModuleProto。XlaBuilder构建计算图的结构,而XlaOpKernel通过使用这些基本原语描述计算过程,最终通过xla_builder的Build方法生成HloComputationProto。
xla/service模块负责将HloModuleProto编译为可执行的Executable。该过程涉及多个步骤,包括LLVMCompiler的编译和优化,最终生成适合特定目标架构的可执行代码。此模块通过一系列的优化pass,如RunHloPasses和RunBackend,对HloModule进行优化和转换,最终编译为目标代码。
本文旨在提供XLA源码的深度解读,帮助开发者理解其工作机制和实现细节。如有问题或疑问,欢迎指正与交流,共同探讨和学习。期待与您在下一篇文章中再次相遇。
别人用excel表格做的叮咚买菜程序源码管理系统怎么查看此管理系统的源码?
如何查看使用Excel表格制作的管理系统的源码?
1. 打开Excel,按下Alt + F键进入VBA编辑器。
2. 在VBA编辑器中,点击“插入”菜单,选择“模块”选项。
3. 在新模块中,复制并粘贴以下代码:
```vba
Sub MoveProtect()
Dim FileName As String
FileName = Application.GetOpenFilename("Excel文件(*.xls & *.xla),*.xls;*.xla", , "VBA破解")
If FileName = CStr(False) Then
Exit Sub
Else
VBAPassword FileName, False
End If
End Sub
Private Function VBAPassword(FileName As String, Optional Protect As Boolean = False)
If Dir(FileName) = "" Then
Exit Function
Else
FileCopy FileName, FileName & ".bak"
End If
Dim GetData As String * 5
Open FileName For Binary As #1
Dim CMGs As Long
Dim DPBo As Long
For i = 1 To LOF(1)
Get #1, i, GetData
If GetData = "CMG=""" Then CMGs = i
If GetData = "[Host" Then DPBo = i - 2: Exit For
Next
If CMGs = 0 Then
MsgBox "请先对VBA编码设置一个保护密码...", , "提示"
Exit Function
End If
If Protect = False Then
Dim St As String * 2
Dim s As String * 1
Get #1, CMGs - 2, St
Get #1, DPBo + , s
For i = CMGs To DPBo Step 2
Put #1, i, St
Next
If (DPBo - CMGs) Mod 2 > 0 Then
Put #1, DPBo + 1, s
End If
MsgBox "文件解密成功......", , "提示"
Else
Dim MMs As String * 5
MMs = "DPB="""
Put #1, CMGs, MMs
MsgBox "对文件特殊加密成功......", , "提示"
End If
Close #1
End Function
```
4. 按下F5键运行代码。
5. 选择你想查看源码的Excel文件,并执行上述代码。
6. 代码执行成功后,再次按下Alt + F键进入VBA编辑器,你应该能够看到该Excel文件的VBA源码了。
TensorFlow XLA优化原理与示例
TensorFlow XLA优化原理与示例 一、XLA概述 XLA,加速线性代数,是一个专注于优化TensorFlow计算的领域特定编译器。旨在提升服务器和移动设备的性能、内存使用效率和代码移植性。初期,大部分用户可能不会立即感受到显著的优化效果,但通过尝试XLA的即时编译(JIT)或预编译(AOT)模式,探索针对新硬件加速器的XLA应用,可以显著提升性能。 二、构建XLA XLA与TensorFlow合作以实现以下目标:提高执行速度:编译子图以减少短暂操作的执行时间,消除TensorFlow运行时的开销,融合流水线操作以减少内存开销,针对已知张量形状优化,允许更积极的恒定传播。
改善内存使用:分析和规划内存使用情况,理论上消除许多中间存储缓冲区。
减少自定义操作依赖:通过改进自动融合低级操作的产品过期源码性能,减少对大量自定义操作的需求,匹配手工融合操作的性能。
移动足迹减少:通过提前编译子图,生成可以直接链接到另一个应用程序的对象/头文件,从而消除TensorFlow运行时的占用空间,结果可以大幅减少移动推断的占用空间。
提高可移植性:为新硬件编写新的后端程序相对容易,大多数TensorFlow程序将在该硬件上无修改地运行,与针对新硬件的个体单片操作方法形成对比,后者需要重写TensorFlow程序以利用这些操作。
三、XLA如何工作? 输入语言为“HLO IR”(高级优化程序),XLA将HLO中的图形(计算)编译成各种体系结构的机器指令。XLA模块化设计,易于插入替代后端以定位新颖硬件架构。支持x和ARM CPU后端,以及NVIDIA GPU后端。 编译过程包含多个与目标无关的优化和分析,如循环节省、独立于目标的操作融合,以及为计算分配运行时,内存的缓冲区分析。在独立于目标的步骤后,XLA将HLO计算发送到后端。后端执行进一步的HLO级别分析和优化,针对具体目标信息和需求。例如,XLA GPU后端可以执行专用于GPU编程模型的算子融合,并确定如何将计算划分为流。此时,后端也可以模式匹配某些操作或其组合来优化库调用。直播app源码间下一步是目标特定的代码生成,XLA附带的CPU和GPU后端使用 LLVM进行低级IR优化和代码生成。 四、XLA开发后端 XLA提供了一个抽象接口,新体系结构或加速器可以实现创建后端,运行TensorFlow图形。重新定位XLA通常比实现每个现有TensorFlow Op针对新硬件更简单和可扩展。实现可分为以下几种情况:现有CPU架构,尚未正式由XLA支持。通过使用LLVM,XLA可以轻松将TensorFlow重定向到不同的CPU,因为主要区别在于LLVM生成的代码。
具有现有LLVM后端的非CPU类硬件。可以基于现有CPU或GPU实现创建新的实现,共享大量代码。
没有现有LLVM后端的非CPU类硬件。需要实施StreamExecutor、xla::Compiler、xla::Executable和xla::TransferManager等关键类。
五、使用JIT编译 TensorFlow必须从源代码编译为包含XLA。使用即时(JIT)编译可以将多个算子(内核融合),融合到少量的编译内核中,减少内存带宽要求并提高性能。通过XLA运行TensorFlow图表有多种方法,包括通过JIT编译算子放置在CPU或GPU设备上,或通过将算子在XLA_CPU或XLA_GPU设备上运行。 六、打开JIT编译 可以在会话级别或手动打开JIT编译。手动方法涉及标记算子以使用属性进行编译完成。在会话级别打开JIT编译,会导致所有可能的算子贪婪地编译成XLA计算。受限于一些限制,如果图中有两个相邻的算子都具有XLA实现,编译为单个XLA计算。 七、使用示例 以MNIST softmax为例,在开启JIT的情况下进行训练。当前仅支持在GPU上进行。 确保LD_LIBRARY环境变量或ldconfig包含$CUDA_ROOT/extras/CUPTI/lib,其中包含CUDA分析工具界面(CUPTI)的库。TensorFlow使用CUPTI从GPU中提取跟踪信息。 八、代码流程 实现流程包括图优化Pass(MarkForCompilation)、EncapsulateSubgraphs和BuildXlaOps,将子图转化成XLA HLO Computation、XLA Function子图、Xla节点和最终的GPU可执行代码或PTX。 九、总结 通过使用XLA,TensorFlow的性能、内存使用效率和代码移植性得到了显著提升。实现XLA后端相对简单,支持从现有CPU架构到非CPU类硬件的各种优化,同时提供JIT编译和手动控制的灵活性。通过实例和代码示例,可以深入理解XLA在TensorFlow中的应用和优化策略。电脑代码视频文件代码电脑文件类型代码
A. 怎么查寻网页上视频的源代码
方法一、在源代码中搜索视频格式为FLV、MP4等视频格式,可以找到视频文件的绝对路径或相对路径,将其复制到下载工具中就可以下载了。
方法二、有的视频在源代码中是直接找不到的,他们是通过播放器调用JS代码中的视频地址,这种情况就要找到被调用的JS代码,在JS代码里面就可以搜索到视频文件的地址。
方法三、还有一种情况是页面嵌入的另外一个视频播放页面,需要找到另外一个页面的源代码,在其中去搜索视频地址。
总之要根据实际情况去分析视频地址隐藏于何处,找到它就可以下载了。
源代码主要有以下2种作用:
生成目标代码,即计算机可以识别的代码。
对软件进行说明,即对软件的编写进行说明。
为数不少的初学者,甚至少数有经验的程序员都忽视软件说明的编写,因为这部分虽然不会在生成的程序中直接显示,也不参与编译。但是说明对软件的学习、分享、维护和软件复用都有巨大的好处。因此,书写软件说明在业界被认为是能创造优秀程序的良好习惯,一些公司也硬性规定必须书写。
(需要指出的是,源代码的修改不能改变已经生成的目标代码。如果需要目标代码做出相应的修改,必须重新编译。 )
版权
如果按照源代码类型区分软件,通常被分为两类:自由软件和非自由软件。自由软件一般是不仅可以免费得到,而且公开源代码;相对应地,非自由软件则是不公开源代码。所有一切通过非正常手段获得非自由软件源代码的行为都将被视为非法。
参考链接:网络_源代码 (示例源程序)
B. 电脑文件类型代码
Windows系统文件类型概览[推荐]
大家知道,Windows系统文件按照不同的格式和用途分很多种类,为便于管理和识别,在对文件命名时,是以扩展名加以区分的,即文件名格式为: "主文件名.扩展名"。这样就可以根据文件的扩展名,判定文件的种类,从而知道其格式和用途。例如:
"文件名1.DOC"的扩展名"DOC"表示本文件是一个"Microsoft Word 文档",
"文件名2.XLS"的扩展名"XLS"表示本文件是一个"Microsoft Excel 工作表",
"文件名3.BMP"的扩展名"BMP"表示本文件是一个"BMP格式图像",
"文件名4.MP3"的扩展名"MP3"表示本文件是一个"MP3 格式声音",
"文件名5.MPEG"的扩展名"MPEG"表示本文件是一个"**文件(MPEG)"。
下面列出Windows系统文件的扩展名及其分类对照表,以备查阅:
1. "" "H. Internet 电话技术"
2. "" "虚拟设备驱动程序"
3. "ACA" "Microsoft Agent Character File (HTTP format)"
4. "ACF" "Microsoft Agent Character File (HTTP format)"
5. "ACG" "Microsoft Agent 预览文件"
6. "ACL" "自动更正列表文件"
7. "ACS" "Microsoft Agent Character File"
8. "ACW" "辅助功能向导设置"
9. "ADE" "Microsoft Access 项目扩展"
. "ADN" "Microsoft Access 空白项目模板"
. "ADP" "Microsoft Access 项目"
. "AIF" "AIFF 格式声音"
. "AIFC" "AIFF 格式声音"
. "AIFF" "AIFF 格式声音"
. "ANI" "动画光标"
. "ASA" "活动服务器文档"
. "ASD" "ASF Stream Description File"
. "ASF" "Windows Media 音频/视频文件"
. "ASP" "活动服务器文档"
. "ASX" "Windows Media 音频/视频快捷方式"
. "AU" "AU 格式声音"
. "AUDIOCD" "AudioCD"
. "AVI" "视频剪辑"
. "AW" "应答向导文件"
. "BKF" "Windows 备份文件"
. "BLG" "性能监视器文件"
. "BMP" "BMP 图像"
. "CAT" "安全编录"
. "CDA" "CD 音频曲目"
. "CDF" "频道文件"
. "CDX" "活动服务器文档"
. "CER" "安全证书"
. "CHK" "还原了文件碎片"
. "CHM" "已编译的 HTML 帮助文件"
. "CLP" "剪贴板剪贴"
. "CNF" "快速拨号"
. "COL" "HTML 帮助文件"
. "CPL" "控制面板扩展"
. "CRL" "证书吊销列表"
. "CRT" "安全证书"
. "CSS" "级联样式表文档"
. "CSV" "Microsoft Excel 逗号分隔值文件"
. "CUR" "光标"
. "DB" "数据库文件"
. "DCS" "数据库内容源"
. "DER" "安全证书"
. "DESKLINK" "DESKLINK 文件"
. "DET" "Office Data File"
. "DIB" "BMP 图像"
. "DIC" "文本文档"
. "DIF" "Microsoft Excel 数据交换格式"
. "DOC" "Microsoft Word 文档"
. "DOCHTML" "Microsoft Word HTML 文档"
. "DOCMHTML" "DOCMHTML 文件"
. "DOT" "Microsoft Word 模板"
. "DOTHTML" "Microsoft Word HTML 模板"
. "DQY" "Microsoft Excel ODBC 查询文件"
. "DRV" "设备驱动程序"
. "DSN" "数据源名称"
. "DUN" "拨号网络文件"
. "DVD" "DVD"
. "ECS" "Exchange Server 内容源"
. "ELM" "Microsoft Office 主题文件"
. "EMF" "EMF 图像"
. "EML" "Outlook Express 邮件消息"
. "EXC" "文本文档"
. "FAD" "Office 数据文件"
. "FAV" "FAV 文件"
. "FCS" "文件共享内容源"
. "FFA" "文件检索索引"
. "FFL" "文件检索索引"
. "FFT" "文件检索索引"
. "FFX" "文件检索索引"
. "FON" "字体文件"
. "FPDOCLIB" "Microsoft FrontPage Document Library"
"FPHOMEOP" Microsoft FrontPage Home Page Open"
. "FPHOMEPG" "Microsoft FrontPage 主页"
. "FPHTML""Microsoft FrontPage HTML 文档"
. "FPLIST" "Microsoft FrontPage List"
. "FPNOPUB" "Microsoft FrontPage Dont Publish"
. "FPOPEN" "Microsoft FrontPage 打开文件"
. "FPSURVEY" "Microsoft FrontPage Survey"
. "FPWEB" "FPWEB 文件"
. "FRG" "FRG 文件"
. "GIF" "GIF 图像"
. "GRA" "Microsoft Graph 图表"
. "GRP" "Microsoft 程序组"
. "HLP" "帮助文件"
. "HOL" "Microsoft Outlook Holidays"
. "HT" "超级终端文件"
. "HTA" "HTML Application"
. "HTC" "HTC 文件"
. "HTM" "HTML Document"
. "HTML" "HTML Document"
. "HTT" "HyperText 模板"
. "HTX""用于 Internet 数据库的 HTML 模板"
. "ICC" "ICC 配置文件"
. "ICM" "ICC 配置文件"
. "ICO" "图标"
. "ICS" "iCalendar 文件"
. "IDC" "IDC 文件"
. "III" "Intel IPhone 兼容"
. "INF" "安装信息"
. "INI" "配置设置"
. "INS" "Internet 通讯设置"
. "IQY" "Microsoft Excel Web 查询文件"
. "ISP" "Internet 通讯设置"
. "ITS" "Internet Document Set"
. "ITSS" "Microsoft Infotech Storage System File"
. "IVF" "Indeo 视频文件"
. "JFIF" "JPEG 图像"
. "JOB" "任务对象"
. "JOD" "Microsoft.Jet.OLEDB.4.0"
. "JPE" "JPEG 图像"
. "JPEG" "JPEG 图像"
. "JPG" "JPEG 图像"
. "JS" "JScript Script File"
. "JSE" "JScript Encoded Script File"
. "LDB" "Microsoft Access 记录锁定信息"
. "LEX" "词典文件"
. "LOG" "文本文档"
"LWV" Microsoft Linguistically Enhanced Sound File"
. "M1V" "**文件(MPEG)"
. "M3U" "M3U 文件"
. "MAD" "Microsoft Access 模块快捷方式"
. "MAF" "Microsoft Access 窗体快捷方式"
. "MAG" "Microsoft Access 图表快捷方式"
. "MAM" "Microsoft Access 宏快捷方式"
. "MAPIMAIL" "MAPIMAIL 文件"
. "MAQ" "Microsoft Access 查询快捷方式"
. "MAR" "Microsoft Access 报表快捷方式"
. "MAS"Microsoft Access 存储过程快捷方式"
. "MAT" "Microsoft Access 表快捷方式"
. "MAU" "MAU 文件"
. "MAV" "Microsoft Access 视图快捷方式"
"MAW"Microsoft Access 数据访问页快捷方式"
. "MDA" "Microsoft Access 加载项"
. "MDB" "Microsoft Access 应用程序"
. "MDBHTML" "Microsoft Access HTML 文档"
. "MDE" "Microsoft Access MDE 数据库"
. "MDN""Microsoft Access 空白数据库模板"
. "MDT" "Microsoft Access 加载项数据"
. "MDW" "Microsoft Access 工作组信息"
. "MDZ""Microsoft Access 数据库向导模板"
. "MGC" "媒体目录文件"
. "MHT" "MHTML Document"
. "MHTML" "MHTML Document"
. "MID" "MIDI 序列"
. "MIDI" "MIDI 序列"
. "MML" "媒体目录文件"
. "MMM" "媒体剪辑"
. "MMW" "媒体目录文件"
. "MP2" "**文件(MPEG)"
. "MP2V" "**文件(MPEG)"
. "MP3" "MP3 格式声音"
. "MPA" "**文件(MPEG)"
. "MPE" "**文件(MPEG)"
. "MPEG" "**文件(MPEG)"
. "MPF" "Media Package 文件"
. "MPG" "**文件(MPEG)"
. "MPV2" "**文件(MPEG)"
. "MSC" "Microsoft 通用管理文档"
. "MSG" "Outlook 项目"
. "MSI" "Windows Installer 软件包"
. "MSP" "Windows Installer 修补程序"
. "MSRCINCIDENT" "Microsoft 远程访问事件"
. "MSSTYLES" "Windows 可视化风格文件"
. "MSWMM" "Windows Movie Maker 项目"
. "NCS" "Lotus Notes 内容源"
. "NFO" "MSInfo 文档"
. "NICK" "Office 数据文件"
. "NK2" "Office 数据文件"
."NMW""Microsoft NetMeeting T 兼容白板文档"
. "NWS" "Outlook Express 新闻消息"
. "OBD" "OBD 文件"
. "OBT" "OBT 文件"
. "OBZ" "OBZ 文件"
. "OCX" "ActiveX 控件"
. "ODC" "Microsoft Office 数据连接"
. "ODCCUBEFILE" "ODCCUBEFILE 文件"
. "ODCDATABASEFILE" "ODCDATABASEFILE 文件"
. "ODCNEWFILE" "ODCNEWFILE 文件"
. "ODCTABLEFILE" "ODCTABLEFILE 文件"
. "OFT" "Outlook 项目模板"
. "OPC" "Microsoft 清理向导文件"
. "OPS" "Office 设置文件"
. "OQY" "Microsoft Excel OLAP 查询文件"
. "OSS" "Office 搜索"
. "OST" "Office 数据文件"
. "OTF" "OpenType 字体文件"
. "P" "证书申请"
. "P" "Personal Information Exchange"
. "P7B" "PKCS #7 证书"
. "P7C" "数字标识文件"
. "P7M" "PKCS #7 MIME 消息"
. "P7R" "PKCS #7 证书"
. "P7S" "PKCS #7 签名"
. "PAB" "Office 数据文件"
. "PBK" "拨号电话簿"
. "PCB" "PCB 文件"
. "PCD" "Photo CD 图像"
. "PCX" "PCX 图像"
. "PFM" "Type 1 字体文件"
. "PFX" "Personal Information Exchange"
. "PIP" "Microsoft Office 设置文件"
. "PKO" "公钥安全对象"
. "PMA" "性能监视器文件"
. "PMC" "性能监视器文件"
. "PML" "性能监视器文件"
. "PMR" "性能监视器文件"
. "PMW" "性能监视器文件"
. "PNG" "PNG 图像"
. "POT" "Microsoft PowerPoint 模板"
. "POTHTML" "Microsoft PowerPoint HTML 模板"
. "PPA" "Microsoft PowerPoint 加载项"
. "PPS" "Microsoft PowerPoint 幻灯片放映"
. "PPT" "Microsoft PowerPoint 演示文稿"
. "PPTHTML" "Microsoft PowerPoint HTML 文档"
. "PPTMHTML" "PPTMHTML 文件"
. "PRF" "msrating.dll,-"
. "PST" "Office 数据文件"
. "PSW" "Password Backup"
. "PWZ" "Microsoft PowerPoint 向导"
. "QDS" "目录查询"
. "RAT" "msrating.dll,-"
. "RDP" "远程桌面连接"
. "REG" "注册表项"
. "RMI" "MIDI 序列"
. "RNK" "拨号快捷方式"
. "RQY" "Microsoft Excel OLE DB 查询文件"
. "RTF" "RTF 格式"
. "RWZ" "Office 数据文件"
. "SC2" "Microsoft Schele+ 应用程序"
. "SCD" "Microsoft Schele+ 应用程序"
. "SCH" "Microsoft Schele+ 应用程序"
. "SCP" "文本文档"
. "SCT" "Windows Script Component"
. "SDB" "Appfix 软件包"
. "SHB" "将快捷方式插入到文档"
. "SHS" "片段对象"
. "SHTM" "HTML Document"
. "SHTML" "HTML Document"
. "SLK" "Microsoft Excel SLK 数据导入格式"
. "SLL" "SLL 文件"
. "SND" "AU 格式声音"
. "SNP" "Snapshot 文件"
. "SPC" "PKCS #7 证书"
. "SPL" "Shockwave Flash Object"
. "SST" "Microsoft 系列证书存储"
. "STF" "Microsoft 安装文件"
. "STL" "证书信任列表"
. "STM" "HTML Document"
. "SWF" "Shockwave Flash Object"
. "SYS" "系统文件"
. "TCS" "Tahoe Server 内容源"
. "THEME" "Windows 主题文件"
. "TIF" "TIF 图像"
. "TIFF" "TIF 图像"
. "TTC" "TrueType Collection 字体文件"
. "TTF" "TrueType 字体文件"
. "TXT" "文本文档"
. "UDL" "Microsoft 数据链接"
. "ULS" "Internet 定位服务"
. "URL" "Internet 快捷方式"
. "VBE" "VBScript Encoded Script File"
. "VBS" "VBScript Script File"
. "VCF" "vCard 文件"
. "VCS" "vCalendar 文件"
. "VXD" "虚拟设备驱动程序"
. "WAB" "数字标识文件"
. "WAV" "波形声音"
. "WAX" "Windows Media 音频快捷方式"
. "WBK" "Microsoft Word 备份文档"
. "WCS" "Web 站点内容源"
. "WEB" "Office 数据文件"
. "WEBPNP" "Webpnp"
. "WHT" "Microsoft NetMeeting 旧白板文档"
. "WIZ" "Microsoft Word 向导"
. "WIZHTML" "Microsoft Access HTML 模板"
. "WLL" "WLL 文件"
. "WM" "Windows Media 音频/视频文件"
. "WMA" "Windows Media 音频文件"
. "WMD" "Windows Media Player 下载软件包"
. "WMF" "WMF 图像"
. "WMP" "Windows Media Player 文件"
. "WMS" "Windows Media Player 外观文件"
. "WMV" "Windows Media 音频/视频文件"
. "WMX" "Windows Media 音频/视频快捷方式"
. "WMZ" "Windows Media Player 外观程序包"
. "WPS" "WPS 文件"
. "WRI" "写入文档"
. "WSC" "Windows Script Component"
. "WSF" "Windows Script File"
. "WSH" "Windows Script Host Settings File"
. "WTX" "文本文档"
. "WVX" "Windows Media 音频/视频快捷方式"
. "XLA" "Microsoft Excel 加载宏"
. "XLB" "Microsoft Excel 工作表"
. "XLC" "Microsoft Excel 图表"
. "XLD" "Microsoft Excel 5.0 对话框编辑表"
. "XLK" "Microsoft Excel 备份文件"
. "XLL" "Microsoft Excel XLL 加载宏"
. "XLM" "Microsoft Excel 4.0 宏"
. "XLS" "Microsoft Excel 工作表"
. "XLSHTML" "Microsoft Excel HTML 文档"
. "XLSMHTML" "XLSMHTML 文件"
. "XLT" "Microsoft Excel 模板"
. "XLTHTML" "Microsoft Excel HTML 模板"
. "XLV" "Microsoft Excel VBA 模块"
. "XLW" "Microsoft Excel 工作区"
. "XML" "XML 文档"
. "XNK" "Exchange 快捷方式"
. "XSL" "XSL 样式表"
. "ZAP" "软件安装设置"
. "ZIP" "压缩(zipped)文件夹"
一文带你从零认识什么是XLA
揭开XLA神秘面纱:深度解析加速线性代数在PyTorch中的应用 让我们深入探索XLA,一个在深度学习世界中悄然崛起的编译器,它如何通过Tensorflow和PyTorch实现性能飞跃。 首先,了解一下XLA,全称Accelerated Linear Algebra,它的目标是加速线性代数运算,最初作为Tensorflow的实验特性,如今已正式融入主流。PyTorch社区也积极响应,推出了PyTorch/XLA,专为谷歌TPU平台优化,旨在提供更快的训练速度和更好的内存管理。 说起编译器,不得不提LLVM,这个强大的框架由C++编写,包括前端、优化器和后端三个核心组件。前端负责源代码到中间表示的转换,优化器负责优化代码,后端则生成可执行代码。XLA正是在此基础上构建,它将计算图作为输入,通过即时编译(JIT)和超前编译(AOT)技术,优化存储使用和运算性能,进而摆脱计算库的限制,实现跨硬件的高效移植。 XLA的优化流程涉及目标无关优化和目标相关优化,通过HLO(High Level Optimizer)表示计算图。其中,编译子计算图技术显著减少短暂运算时间,流水线融合则降低了内存需求。XLA致力于提高内存使用效率,通过分析内存分配,消除不必要的存储,并减少对自定义运算的依赖,使得自动生成的算子代码在多硬件上表现优异。 让我们通过一个简单的计算图示例,理解XLA如何介入。当XLA检测到适合编译的计算区域,会将其封装为一个Cluster,并通过Node Attribute标识。随后,Cluster被转化为TensorFlow函数,通过XlaRun执行编译后的Executable,再由LLVM进一步转化为GPU Kernel,最终生成CuBin代码。 AOT和JIT的区别在于编译时机,AOT在训练前完成编译,为训练过程带来显著速度提升。在PyTorch/XLA中,通过新增的xla设备类型,用户可以轻松创建和操作XLA张量,即使是模型转换到XLA设备上运行,也只需少许改动,如添加获取设备和标记步骤的代码。 总的来说,XLA以卓越的性能优化和跨平台兼容性,正在重塑深度学习训练的效率。未来,随着PyTorch/XLA的进一步发展,我们有理由期待更多深度学习模型在XLA的加持下,运行得更快、更高效。ExcelVBAç¼ç¨ä¸å®è·µçèª åº
寻ï¼æ¯ä¸ç§å°ºåº¦ãå¤æ¶å «å°ºä¸ºä¸å¯»ï¼çå®ç³è¯äºâé£æ¥å³°ä¸å寻å¡ï¼é»è¯´é¸¡é¸£è§æ¥åâï¼å½¢å®¹é£æ¥å³°ä¸å¡ä¹æé«ã寻ï¼æ¯ä¸ç§æå·§ãä»æ¥ç½ç»ä¸ºèªå¦è æä¾äºé常巨大çèµæºå¹³å°ï¼ä½ç¼ºä¹æå·§çæ¥è¯¢åæ±å©ï¼å¾å¾âä¼é寻ä»åç¾åº¦âå´é¾æâè¦ç¶åé¦âçé¡¿æãèåç¨å ³é®è¯æç´¢ï¼å常å¯ä½¿äººä½ä¼å°âç¯ç«éçâä¹ç¾æ¯ã
寻ï¼æ¯ä¸ç§è¿½æ±ãç½ç»ä¸æ´»è·çè¿ä¹ä¸ç¾¤äººï¼ä»ä»¬æ¾ç»ä¹æ¯æµæçèé¸ï¼å¨å¯»è§£è·å©æ¶å¿åææ¿ï¼å¨å¯»å¸é®éæ¶å¿æå´æ¬ãæ¸æ¸å°ï¼ä»ä»¬å äºå©çç念èèéï¼ç¸äºæ¶æï¼åæä¸æå°å¦ä¹ ãå®è·µä¸åæ°ãé¢å¯¹ä¸ä¸ªä¸ªææ¯çæ®é«ç¹ï¼ä»ä»¬æ¯ç¿æºèæ ç§çâ寻è âï¼å£ç«å寻æ¢ç»æï¼å¯»æ ¹ç©¶åºè§£çé¾ï¼
寻ï¼æ¯ä¸ç§å¿å¢ãæ±ç¥æ¢ç§å½å¿åå山论åä¹é«è¿ï¼è§£å³é®é¢åºæå®æ åæ æä¹å¯»å¸¸ï¼è¿ä¾¿æ¯â寻è âä¿®ç¼çå¿å¢ãæ¥è æ¯å®¢ï¼æé®å¿ çï¼ä¸æ å丽çæå¼ï¼ä½æ±ç´å»é®é¢ä¹æ ¹æºï¼ç¨ç®åçæ¹æ³å®æå¤æçäºæ ã
æ¬ä¸ä¹¦çä½è å°±æ¯è¿æ ·çä¸ç¾¤â寻è âãå¨é¿æç线ä¸ççå线ä¸äº¤æµãå¹è®æ´»å¨ä¸ï¼ä»ä»¬æ¥è§¦è¿é对åä¸ç±»é®é¢åå¥ç¾æªçæé®ï¼æ·±ç¥è®¸å¤äººè¦å¯»èä¸å¾çè¦å®³ï¼çè³ç»å°±äºä¸æä» æ ¹æ®å«æ··ä¸æ¸ çæé®è¿è¡çé¢ã解é¢çæ¬é¢ãéè¿ä¸æå°ç§¯ç´¯ä¸æ´çï¼Excelæå·§ç½ï¼ææ¯ç¤¾åºï¼çç主们æ¨åºäºâExcelçé¾å寻å解âä¸ä¹¦ï¼è¿äºâçé¾âé½æ¯è®¸å¤äººæ¾ç»æç´¢åæé®è¿çï¼ä¹æ¯å¤§å¤æ°ç¨æ·å¨å·¥ä½ä¸å¯è½ä¼éå°çä¸äºå¯»å¸¸é®é¢ã书ä¸æ¡ä¾æ¶åè¡æ¿åå ¬ã人åèµæºãéèè´¢å¡ãç»æµç»è®¡ãå¦æ ¡æè²ãå·¥ç¨ææ¯ãå»çå«çãè´¨é管çãç产管ççå¤ä¸ªé¢åï¼å¹¶æ ¹æ®Excelç主è¦åè½ååå°æ´çæ书ã
å¨ä¸ä¹¦ç¼èè¿ç¨ä¸ï¼âå®ç¨ä¸ºä¸»âçåå贯彻å§ç»ï¼æææ¡ä¾é½éµå¾ªå®é å·¥ä½åºæ¯åç¥è¯ç¹è§£è¯´ç´§å¯ç»åç主线ï¼æå¼ä¸äºåèä¸å®ãè°é¾æ¦æ¶©çé«æ·±è§£æ³ï¼èå°åºç¡ç论å解å³æ¹æ¡å¯äºå¯»å¸¸æå·§ä¹ä¸ï¼è®©è¯»è è½å¾å ¶ç¨ãæå ¶çï¼ä»¥æå®ç°ä¸ºæ´å¤ç人解å³æ´å¤é®é¢çç®åæ¿æ¯ã
寻è
æè°¢æ¨éæ©âExcel çé¾å寻å解âä¸ä¹¦ä¹ãExcel VBAç¼ç¨ä¸å®è·µãï¼
Excel å ·æ强大çè¿ç®ä¸åæè½åãä»Excel å¼å§ï¼æ¹è¿çåè½åºä½¿æä½æ´ç´è§ãæ´å¿«æ·ï¼å®ç°äºè´¨çé£è·ãä¸è¿éè¦è¿ä¸æ¥æåæçåå®ç°èªå¨ååä» é åè½åºçèååè½æ¯è¿è¿ä¸å¤çï¼æ£å å¦æ¤ï¼å¾®è½¯å ¬å¸å¨Excelä¸å¼è¿äºVBAç¨åºï¼ä¸é¦æ¬¡å¨Excelä¸å级VBAå° 7.0çæ¬ãéè¿VBAå¯ä»¥è®©å¤æçæ¥è¡¨ç®ååï¼ä¸å¯ä»¥è®©é¨åæä½å ¨èªå¨å®æï¼ååæè ç¾åçå¶è¡¨æçæ为å¯è½ã
ä¸ä¹¦ä»ç»
âExcel çé¾å寻å解âä¸ä¹¦æ¯ç±Excelæå·§ç½çè´è´£äººã微软ææä»·å¼ä¸å®¶ï¼MVPï¼é»æé³å ççå并ç»ç»ç¼åçä¸å¥ç³»å书ç±ã
Excelæå·§ç½æ¨å¨éç¹æ¨å¹¿Excel åä»åæ´é«çæ¬çåºç¨ï¼å¹¶ä¸ºå¹¿å¤§çExcelç±å¥½è æä¾ä¸ä¸ªå 容å å®ãåç±»æ¸ æ°ãç»å ¸å®ç¨ã精彩纷åãäºæ å¦ä¹ ãå好交æµçå¹³å°ã社åºæç«ä¸ä¹ 便å¸å¼äºä¼å¤å¾®è½¯MVPåæå¿äºæ¨å¹¿çµåè¡¨æ ¼åºç¨ææ¯çé«æ驻足ï¼é¿æ为ç½åå 费解ççé¾é®é¢ï¼å¹¶å¤äºå°ç²¾å½©çççå¸åæå ¶ææ¶åçç¥è¯ååºç¨ä¸¤ä¸ªç»´åº¦ï¼æ´çæ为ååææ¯æç« ã
社åºè®¾æ讨论ãæç« ãèµæºä¸å¤§ææ¯ä¸åºï¼å¹¶æç §Excelçåè½å½å±å°ä¸»é¢åå为åºç¡åºç¨ãæ°æ®éè§è¡¨ãæ¡ä»¶æ ¼å¼ãå½æ°ä¸å ¬å¼ãå¾è¡¨ä¸å¾å½¢ãVBAãSQL in Excelã综ååºç¨çæ¹é¢ï¼æ¬ä¸ä¹¦çå读æ¬æ£æ¯åºäºç¸è¿ç主é¢åç±»ã
æ¬ä¸ä¹¦ç±é»æé³ãç建åãéå½è¯ç微软MVP以åç½ååãè£èåãææ¯å½¬ãæççãéæ éãç« å °æ°çå¤ä½ç¤¾åºèµæ·±ç主èææé ï¼å°æ¥è¿å°é请æ´å¤é«çº§ä¼åå çåä¸ä¸ä¹¦å ¶ä»è¯»æ¬çåä½ãå ¶ä¸ãExcel æä½ä¸æå·§ãããExcel å½æ°ä¸å ¬å¼ãããExcel VBAç¼ç¨ä¸å®è·µãå·²å äºç¬¬ä¸æ¹åºçï¼è¿æè¿å°éç»æ¨åºãExcel å¾è¡¨ä¸å¾å½¢ãããSQL in Excel ãçå ¶ä»è¯»æ¬ã
å¾çäºå¤å¹´æ¥å¨ç¤¾åºççä¸çç£¨ç ºï¼ä½è 们å°ä¸°å¯çå®æç»éªä»è¯¸ç¬ç«¯ï¼ç²¾å¿è®¾è®¡äºä¸åæ¡ä¾ï¼å°Excelæ¹æ¹é¢é¢çç¥è¯ç¹èå ¥å ¶ä¸ãæ¯ä¸ªæ¡ä¾é½éç¨ä¸è¬ç¨æ·éå°çé¾æ¶æå¯è½çæé®æ¹å¼ååºç¨åºæ¯å¯¹é®é¢è¿è¡æè¿°ï¼æä¾å ·æé对æ§ç解å³æ¹æ¡å详尽çæä½æ¥éª¤ï¼å¹¶é å以åçåæåç¥è¯æ©å±ç¯èï¼æ¢æ人以鱼ï¼åæ人以æ¸ãä¸ä¹¦éç¨âçé¾âå âç¥è¯ç¹âçç¹è²ç®å½ç´¢å¼ï¼æ¹ä¾¿è¯»è æ ¹æ®éè¦å¿«éå°æ¥æ¾ã对äºæ¸´æå¦ä¹ åææ¡æ°ç¥è¯çExcelç¨æ·æ¥è¯´ï¼ä¸å ¶åç¾æ¬¡å°æ¾å¯»é®é¢çæ¡ï¼ä¸å¦éå¿å°è¯»æ¤ä¸ä¹¦ä¸å·ã
读è 对象
æ¬ä¹¦ä½¿ç¨Microsoft Office Excel çé¢è¿è¡ç¼åï¼ä½æ¯å¨ç¼åè¿ç¨ä¸ä½è ç¹æ注éç¨åºçéç¨æ§ï¼ç¡®ä¿æ¯ä¸ªæ¡ä¾ç解å³æ¹æ¡é½éç¨äºExcel ãåãèä¸ä¸ºäºæ¹ä¾¿è¯»è ï¼é书å çä¸ä¸»è¦æ两ç§æ ¼å¼çæ¡ä¾æ件ï¼å æ¬xlsæ ¼å¼åxlsmæ ¼å¼ï¼å¦ææ¯å è½½å®åå æ¬xlaæ ¼å¼åxlamæ ¼å¼ãä¸ç®¡è¯»è 使ç¨Excel ãè¿æ¯é½å¯ä»¥ç´æ¥ä½¿ç¨ï¼ä¸éè¦è½¬æ¢ï¼ä¹ä¸éè¦ä¿®æ¹ä»£ç å°±å¯ä»¥é¡ºå©çå¨å¤çä¸ä½¿ç¨æ¬ä¹¦çæææ¡ä¾ã
æ¬ä¹¦éè¿ä¸ªæ¡ä¾å1个大å综ååºç¨å±ç¤ºVBAç¼ç¨æå·§ï¼éåææåå ¬å¶è¡¨äººå£«ï¼ç¹å«æ¯éè¦æåå·¥ä½æçåéè¦æ·±å ¥ç 究VBAè å¦ä¹ ä¹ç¨ãå¦ææ¨æ²¡æVBAåºç¡ï¼é£ä¹æ¬ä¹¦å¯ä»¥ä¸ºæ¨è§£å³å·¥ä½ä¸ççé¾ã书ä¸å¯¹å¸¸è§é®é¢æä¸ä¸ªæè å¤ä¸ªè§£å³æ¹æ¡ï¼å¹¶è¾ 以解é¢æè·¯ä¸åçåæï¼è¯»è å¯ä»¥éè¿ä¹¦ä¸çç°ææ¡ä¾è¿è¡æå±ï¼è§£å³æ´å¤ç类似é®é¢ãè对äºå·²æVBAåºç¡è ï¼åå¯ä»¥å¦ä¹ æ¬ä¹¦ç解é¢æè·¯ä¸ä»£ç é²éææ¯ã代ç ä¼åä¹éãæ¬ä¹¦çæ¡ä¾æ¶ååºç¡åºç¨ãæ¥æ¾å¼ç¨ãæ°æ®å¤çãæ¥è¡¨æå°ãå½æ°å¼åãæ件ç®å½ãå¾è¡¨è®¾è®¡ãå¾å½¢å¯¹è±¡ãçªä½æ§ä»¶ãæ件å¼åã代ç å°è£ åå¨å·¥èµç®¡çç³»ç»ç诸å¤æ¹é¢ï¼å¯ä»¥å ¨æ¹ä½çæåVBAç¼ç¨çååºï¼è®©æ¨å°VBAç论æå ¥å°å·¥ä½ä¸è½¬æ¢ææçã
é 读æå
æ¬ä¹¦å æ¬ç« ï¼æ¶åå¶è¡¨çæ¯ä¸ªæ¹é¢ãåç« åå«ä¸ºåºç¡ç论ç¯ãæ¥æ¾å¼ç¨ç¯ãæ°æ®å¤çç¯ãæ¥è¡¨æå°ç¯ãå½æ°å¼åç¯ãæ件ç®å½ç¯ãå¾è¡¨è®¾è®¡ç¯ãå¾å½¢å¯¹è±¡ç¯ãçªä½æ§ä»¶ç¯ãæ件å¼åç¯ï¼æ¯ç« ææ°å个æ¡ä¾ï¼ä¸ä¸ºäºè®©è¯»è è½å¦ä»¥è´ç¨ï¼æ¯ç« æä¾3个æèä¸ç»ä¹ é¢ãæåä¸ç« 为综ååºç¨ï¼è®²è¿°éè¿VBAå¼åå·¥èµç®¡çç³»ç»çæè·¯ã
详ç»çç« èå 容å¦ä¸ï¼
第1ç« ï¼åºç¡ç论ç¯
æ¬ç« å æ¬5个å°èââå¿«éè·å帮å©ãç¨åºé²éè¦ç¹ã代ç ä¼åä¹éãæå代ç çå ¼å®¹æ§ã主è¦ä»ç»VBAç¼ç¨çä¸äºåºç¡ç¥è¯ã代ç ççº éä¸ä¼åï¼ä¸è¿æ¯ä»¥æ¡ä¾å½¢å¼åç°åºæ¥ï¼éè¿å®é çåºç¨è®©ç论æè¿°æ´æ说æåã
第2ç« ï¼æ¥æ¾å¼ç¨ç¯
æ¬ç« å æ¬4个å°èââæ¬è¡¨æ¥æ¾ã跨表åå¤è¡¨æ¥æ¾ãæ件æ¥æ¾ä¸è½¬æ¢åå¾çæ¥æ¾ä¸å¼ç¨ã主è¦è®²è¿°æ°æ®å¼ç¨ãå¾çå¼ç¨çç»å ¸æ¡ä¾ãå ¶ä¸å¯¹äºæ¥æ¾æä¾äºå¤ç§æè·¯ï¼å°½éå±ç¤ºæçæé«ä¸å ·æ容éæ§ç代ç ä¸æå·§ãæ¬ç« æ¯å ¨ä¹¦çä¸å¤§éç¹ä¹ä¸ï¼éè¿å¤§éçå®ä¾ä¼ æç¬é´æ¥æ¾æ°æ®çæå·§ã
第3ç« ï¼æ°æ®å¤çç¯
æ¬ä¾å æ¬7个å°èââå®ä½çæå·§ãæ°æ®å¤çåæ ¼å¼è½¬æ¢ãåå æ ¼å并æå·§ãæ¥è¡¨å并ä¸æåãåå æ ¼é¢è²ç综ååºç¨ãéå¤æ°æ®å¤çåæ°æ®éè§ãæ¬ç« æ¯ç¬¬äºä¸ªéç¹ï¼å ¨é¢éè¿°VBA对æ°æ®å¤ççæå·§ãExcelæ¬èº«å ·å¤æ°æ®å¤ççåè½ï¼èå©ç¨VBAå¯ä»¥å¤§å¤§æåæ°æ®å¤ççé度ï¼æ¬ç« å±äºåå ¬å¶è¡¨äººåå¿ å¦èç´ã
第4ç« ï¼æ¥è¡¨æå°ç¯
æ¬ç« å æ¬2个å°èââæå°è®¾ç½®åç¹æ®æå°æ ¼å¼è®¾è®¡ã主è¦è®²è¿°ä¸æå°æè æå°æ ¼å¼è®¾ç½®æ¹é¢ççé¾å¤çæå·§ï¼å æ¬å·¥èµæ¡è®¾è®¡ãå页å°è®¡ãæ¹éæå°ååºç«¯æ é¢ççç¸å½å¸¸ç¨çä¸äºçé¾å¤çã
第5ç« ï¼å½æ°å¼åç¯
æ¬ä¾å æ¬3个å°èââèªå®ä¹å½æ°åºç¡ãå¼åèªå®ä¹å½æ°åèªå®ä¹å½æ°ç管çãæ¬ç« éè¿°å¼åå½æ°çæå·§ä¸å½æ°ç管çæè·¯ï¼ä»è强åExcelçè¿ç®è½åã
第6ç« ï¼æ件ç®å½ç¯
æ¬ç« å æ¬2个å°èââæ件管çåç®å½ç®¡çãæ¬ç« å 容ä¸å¶è¡¨æ¬èº«æ ç´æ¥å ³ç³»ï¼ä½å¯ä»¥å¯¹æ件åæ件夹è¿è¡å é¤ãå¤ä»½ãå建ã转æ¢ãå½åççæä½ï¼å¯¹å·¥ä½å¤§æ裨çã
第7ç« ï¼å¾è¡¨è®¾è®¡ç¯
æ¬ç« å æ¬2个å°èââå¾è¡¨ç¼è¾åå¤è¡¨ç®¡çã设计åºæ¬çå¾è¡¨æ¯è¾éåæå·¥æä½ï¼è对äºå¾è¡¨æè å¾è¡¨ä¸çæ ç¾æ¹éæä½æ¶ï¼VBAå°±æç¨æ¦ä¹å°äºï¼å¯ä½¿æä½æç大大æåã
第8ç« ï¼å¾å½¢å¯¹è±¡ç¯
æ¬ç« å æ¬3个å°èââå¾å½¢å¯¹è±¡çåºæ¬æä½ãæ¹æ³¨çé«çº§åºç¨åå¾å½¢å¯¹è±¡ç»¼ååºç¨ãä¸å¾å½¢å¯¹è±¡ç¸å ³çé«çº§åºç¨ä¸éåæå·¥æä½ï¼æ¬ç« éè¿ä¸ªæ¡ä¾æ¼ç¤ºVBAæä½å¾å½¢å¯¹è±¡çæå·§ï¼å æ¬å¯¼å ¥ã导åºãå¼ç¨ãæµè§ççæä½ã
第9ç« ï¼çªä½æ§ä»¶ç¯
æ¬ç« å æ¬4个å°èââActiveXæ§ä»¶åºç¨ãçªä½è®¾è®¡æå·§ãçªä½ä¸å·¥ä½è¡¨ä¹æ°æ®äº¤äºåå¼åå¨ç»çªä½ãå ¶ä¸éç¹å¨äºçªä½ä¸å·¥ä½è¡¨æ°æ®äº¤äºçæ¡ä¾æ¼ç¤ºï¼éè¿çªä½å¤çæ°æ®å¹¶å¯¼å ¥ã导åºï¼å¯ä»¥å®ç°å¾å¤Excelæ¬èº«æ æ³å®æçåè½ãæå对çªä½çç¾åæå·§æä¾6ç§æè·¯ã
ç¬¬ç« ï¼æ件å¼åç¯
æ¬ç« å æ¬3个å°èââ订å¶èåä¸å·¥å ·æ ãå¼åéç¨æ件åå°è£ DLLæ件ãæ¬ç« æ¯æ¬ä¹¦ç¬¬ä¸ä¸ªéç¹ç« èï¼éè¿æ¡ä¾å±ç¤ºVBAå¼åæ件ç强大åè½ï¼å¹¶é带å¼ååè½åºçæ¥éª¤ä¸æå·§ï¼ä½¿è¯»è æä¸æåè½åºçå¼åæè¿ä¸æ¥è®¤è¯ãéè¿æ¬ç« çæ¡ä¾ï¼è¯»å¾å¯ä»¥å¼åèªå·±éè¦çæ件ï¼å æ¬å°æ件å°è£ ï¼ä»èå®ç°ä»£ç éèã
ç¬¬ç« ï¼å·¥èµç®¡çç³»ç»
æ¬ç« 讲述å©ç¨VBAå¼åä¸ä¸ªä¸åç³»ç»çè¿ç¨ä¸æè·¯ï¼å±äºVBAç综ååºç¨ã
æ¬ä¹¦çº¦å®
为äºçææ¬ä¹¦å¯¹é¼ æ æä½ãé®çæ令çæè¿°æ¹å¼ï¼ä»èæ´é¡ºç å°é 读æ¬ä¹¦ï¼æ¨æå¿ è¦äºè§£ä»¥ä¸å 容ï¼
èå
æ¬ä¹¦ä¸è¡¨ç¤ºè¿ç»å¤ä¸ªèåæ令æ¶ï¼ä½¿ç¨å³ç®å¤´âââè¿è¡è¿æ¥ï¼ä¾å¦ï¼åå»âæ件âé项å¡ââé项âââå ¬å¼âï¼è¡¨ç¤ºä¾æ¬¡åå»âæ件âé项å¡çâé项âæé®ï¼å¨å¼¹åºçâExcel é项â对è¯æ¡ä¸åå»âå ¬å¼âé项å¡ã
é¼ æ
æ¬ä¹¦ä¸è¡¨ç¤ºé¼ æ æä½æ¶ï¼å使ç¨æ åç表示æ¹æ³ãå ¶ä¸âæåâ表示å°é¼ æ æé移å°å¯¹è±¡ä¹ä¸ï¼ä¸ä¸åå»ä»»ä½æé®ï¼èâåå»âç¹æå©ç¨é¼ æ å·¦é®åå»ç®æ ï¼âå³é®åå»â表示å©ç¨é¼ æ çå³é®åå»å¯¹è±¡ï¼âåå»â表示快éæä¸é¼ æ å·¦é®ä¸¤æ¬¡ï¼âææ¾âå表示æä¸é¼ æ å·¦é®ä¸æ¾å¼çç¶æä¸æå¨é¼ æ ï¼æå°ç®æ åºåååæ¾å¼é¼ æ å·¦é®ã
é®ç
æ¬ä¹¦ä¸è¡¨ç¤ºæé®æ¶ä½¿ç¨å°æ¬å·âããâå·å å«ï¼ä¾å¦âæãCtrl+Shift+Enterãç»åé®â表示åæ¶æä¸é®çä¸çCtrlé®ãShifté®åEnteré®ãå ¶ä»æé®ç表示æ¹æ³ç¸åï¼å¦æéè¦ç¹æ®æä½æ¹æ³ï¼ä¼å¨ç¸å ³å 容ä¸è¯¦ç»è¯´æã
代ç
æ¬ä¹¦çVBA代ç åä¸åºå大å°åï¼å¨ç¼å代ç å¯ä»¥éæï¼ä½ä»£ç å½å ¥å°ä»£ç çªå£åï¼VBAä¼å°ä»£ç èªå¨è½¬æ¢æé¦å符大åå½¢å¼ï¼å¸¦å¼å·çå符串ååéåé¤å¤ã
æ¬ä¹¦ç¹ç¹
æ¬ä¹¦ä¸å¸åºä¸å ¶ä»Excel书ç±æå¾å¤§çä¸åï¼æä½ç»ææ°é¢ï¼æ¡ä¾è´´è¿å®é ï¼è®²è§£æ·±å ¥éå½»ï¼è¡¨ç°ä¸ºä»¥ä¸å 个æ¹é¢ï¼
åºæ¯å¼æé®
æ¬ä¹¦ä»æåä¸ä¸ç½åæé®ä¸ç²¾å¿å½çº³ãæç¼åºåç±»é®é¢ï¼å¹¶è¿å为贴è¿çå®çæ±å©è¯è¨åæ¡ä¾ï¼æ¹ä¾¿è¯»è æ寻ä¸å®é å·¥ä½ç¸ä¼¼é®é¢ã
å¢å¼ºå¼ç®å½
æ¬ä¹¦æ»ä½ç« èåå以âåºç¡ç论âåç±»åºç¨â综åå®æâ为主线ï¼å°VBAç主è¦ç¥è¯ç¹åç»å ¸è§£å³æ¹æ¡è®¾è®¡å°æ¯ä¸ªçé¾çæ¡ä¾ä¸ï¼å¹¶éç¨âçé¾âå âç¥è¯ç¹âçç¹è²ç®å½ç´¢å¼ï¼æ¹ä¾¿è¯»è æ ¹æ®éè¦ç¿»é åæ¥æ¾ã
å¼åå¼ç»æ
æ¬ä¹¦æ¡ä¾ä¸çâ解å³æ¹æ¡âç¯èæ¯å¯¹é®é¢çæ路解说ï¼ç»åâæä½æ¹æ³âç¯èä¸çæ¥éª¤è®©äººæ´å®¹æç解ãâåçåæâç¯èå主è¦è§£éæ使ç¨ä»£ç çå·¥ä½åçãâç¥è¯æ©å±âç¯èå æ¬ä¸æ¡ä¾ç¸å ³çç¥è¯ç¹è¡¥å ï¼å¯æå±è¯»è çè§éï¼åæ¶ä¹æå©äºç解æ¡ä¾æ¬èº«ç解å³æè·¯ã
æ¬ä¹¦ç代ç è¿æ两个æ¾èçç¹ç¹ï¼æå«äºå¸åºä¸å ¶å®å类书ç±ï¼å³å¤å¤ç¡®ä¿ä»£ç çé²éä¸éç¨æ§ã
é²é
é²éæ¯æç¼å代ç æ¶å°½å¯è½èèææå¯è½åºéçæ åµï¼å¹¶å¨ä»£ç ä¸å 以é²èãæè æ ¹æ®ä¸åæ½å¨çè¿è¡ç¯å¢æä¾ä¸åçæ§è¡æ¹æ¡ï¼è®©ä»£ç å¯ä»¥å¤ç§æ åµä¸é¡ºå©æ§è¡ï¼èä¸ä¼å¼¹åºé误æ示æ¡å¯¼è´ç¨åºä¸æã
éç¨
éç¨æ§æ¯æ代ç å¯ä»¥éåºä¸åç¯å¢ãç¯å¢æ¯æ软件çä¸åçæ¬ï¼ä¾å¦WIN XPãVISTAåWIN 7æä½ç³»ç»é½å¯ä»¥é¡ºåºæ§è¡æ¬ä¹¦æææ¡ä¾ç代ç ï¼Excel ãåçæ¬çç¨æ·ä¹å¯ä»¥é¡ºå©æ§è¡æ¯ä¸ªæ¡ä¾ç代ç ï¼ä¸ä¸éè¦åä»»ä½ä¿®æ¹ã
ç¯å¢è¿å æ¬è¡¨æ ¼çåºåãæ¬ä¹¦å°½å¯è½ä¸éç¨ç¡¬ç¼ç å¼ç¨å·¥ä½è¡¨å¯¹è±¡ååºåå°åï¼èéç¨å ·å¤èªå¨éåºååç代ç ä½ä¸ºæ°æ®å¤ççå¼ç¨æºï¼ä»è使代ç éåºä¸åç¨æ·æè½æ¯åä¸ç¨æ·ä½å·¥ä½è¡¨æ°æ®åºåååæ¶çå¯ä½¿ç¨ãä¾å¦Range(A1:D)å¼ç¨åºåå±äºç¡¬ç¼ç ï¼å½æ°æ®åºååååï¼ä»£ç å¿ é¡»ä¿®æ¹æå¯æ§è¡ï¼èéç¨ActiveSheet.UsedRangeæè ActiveCell.CurrentRegion两ç§æ¹æ³å¼ç¨åºååå¯ä»¥éåºæ°æ®åºåçå¢åååï¼ä»èæå代ç çéç¨æ§ã
å¦ä¹ æ¹æ³
æ¬ä¹¦æ¯VBAç¼ç¨çæ¡ä¾éç²¹ï¼å ¶å®æ¨å¨äºä¸ºè¯»è 解å³å®é å·¥ä½ççé¾ï¼ä»¥å对åç±»çé®é¢æä¾è§£å³æè·¯ã
书ä¸åç« èçç»æè½ç¶æ¯ä»æå°é¾ï¼ä½ç« èä¹é´ç¸äºç¬ç«ï¼å³å¯ä»¥ä»ä»»æç« èå¼å§å¦ä¹ ï¼ä¸éè¦éµç §ä»åè³åç顺åºé 读ã
æ¬ä¹¦æ¯ä¸ªæ¡ä¾ä¸çâ解å³æ¹æ¡âé¨å表示对é®é¢çæ路解说ï¼é åâæä½æ¹æ³âä¸çæ¥éª¤å代ç æ´å®¹æç解ãâåçåæâé¨åå主è¦å æ¬ä¸¤æ¹é¢å 容ï¼ä»£ç ä¸é¨åæ¹æ³æè è¯å¥çè¯æ³è§£éï¼ä»¥å解å³æ¬çé¾çç论ä¾æ®ãâç¥è¯æ©å±âé¨åå æ¬ä¸æ¬ä¾é®é¢æè æ¬ä»£ç ç¸å ³çç¥è¯è¡¥å ï¼ç¨äºæ©å±è¯»è çç¥è¯èå´ï¼åæ¶ä¹æå©äºç解æ¬ä¾ä»£ç çæè·¯ã
æ¬ä¹¦æ¯âExcelçé¾å寻å解âä¸ä¹¦ä¹ä¸ï¼å¯ä¸ºè¯»è 解å³VBAç¼ç¨ççé¾ï¼åæ¶ä¹æ¯ä½è ç½ååçå¦ä¸æ¬èä½ãExcel VBAç¨åºå¼åèªå¦å®å ¸ãçå级çä¸é å¥ææããExcel VBAç¨åºå¼åèªå¦å®å ¸ãéç¹å¨äºè®²è¿°VBAç¼ç¨çåºç¡ç论åè¯æ³ï¼å¹¶é æâExcelç¾å®ç®±â大åæ件ç设计è¿ç¨è¯¦è§£ï¼è¯¥ä¹¦éåå®å ¨æ²¡æVBAåºç¡è å¦ä¹ ï¼èæ¬ä¹¦æ¯è¯¥ä¹¦é å¥çæ¡ä¾ï¼å¯ä»¥ä½¿è¯»è å°ç论ä»è¯¸å®è·µï¼è§£å³å®é å·¥ä½ä¸ççé¾åå¼åå±äºèªå·±çæ件ã
å®åæå¡
æ¬ä¹¦ç±Excelæå·§ç½ï¼ææ¯ç¤¾åºï¼åºåï¼è¯»è å¨é 读ä¸æä»»ä½çé¾æè 建议ãBUGåé¦çé½å¯ä»¥å°ç¤¾åºåè´´ï¼å æ¬æ±å©ã交æµï¼ä¹å¯ä»¥å¨ç¤¾åºä¸è½½ä¸æ¬ä¹¦ç¸å ³çææ¡£ã社åºä¸ºæ¬ä¸ä¹¦å¼è¾äºä¸ä¸ªä¸é¨ççé¢ç¨äºç¼è¯»å¾æ¥ï¼åæ¶æ¬ä¹¦ä¹é å¤äºä¸å±çQQ群ä½ä¸ºå®åæå¡çèç³»æ¹å¼ï¼ç¾¤å·å ¬å¸äºä¸è¿°ç½åï¼è¯»è å¯ä»¥ç³è¯·å°ç¾¤ä¸ä¸ä½è é¢å¯¹é¢äº¤æµã
è´ä¹°æ¬ä¹¦é¤å¯ä»¥è·åé书å çä¸çæææ¡ä¾æ件å¤ï¼è¿æ两项æå¡ï¼å æ¬å®ç¨æ件åExcelç¾å®ç®±ã
å®ç¨æ件æ¯æé书å çä¸ç8个æ件ï¼ä½äºâèµ åâæ件夹ä¸ã8个æ件å¯ä»¥å®ç°8个åè½ï¼åæ¶å¦ä¹ æ件çå¼åæè·¯ãæ¯ä¸ªæ件éææºä»£ç ï¼æ¯å¥ä»£ç é½æå«ä¹æ³¨éï¼ä¸é æ使ç¨è¯´æãæ件å称å¦ä¸ï¼
1ï¼äºçº§éå
å¯ä»¥åæ°æ®æææ§ä¸æ ·äº§çä¸æå表ï¼ä½æ´å¼ºå¤§ï¼å¯ä»¥äº§çäºçº§éåã
2ï¼æ¹æ³¨æ¿æ¢å·¥å ·
å¯ä»¥æ¹éæ¿æ¢æ¹æ³¨ææ¬çå·¥å ·ï¼ä¸å¯è®¾å®åºå大å°åä¸å¹é æ¹å¼ã
3ï¼é项èå设计
éå®æ¢å¯æ§å¶æäºè§å¾å¯¹è±¡çæ¾ç¤ºä¸éèï¼åå¯å¦ä¹ é项èåç设计æè·¯ã
4ï¼ä¸é®å½å ¥ä»£ç
ç¨äºæåç¼å代ç çé度ä¸å确度ï¼åå»èåå³å¯å½å ¥å¸¸è§ä»£ç ã
5ï¼å¤éæ¡ç®¡ç
å¯ä»¥æ¹éçæå¤éæ¡ï¼ä¹å¯ä»¥æ¹éå é¤ãå¾éå¤éæ¡ï¼åè½å¼ºå¤§ï¼æä½æ¹ä¾¿ã
6ï¼åå²æ°æ®è®°å½å¨
å°æå®åºåä¸æ¯ä¸ä¸ªåå æ ¼çä¿®æ¹é½è®°å½å¨æ¡å¤æ¥ï¼ä¸åæ¶è®°å½ä¿®æ¹æ¶é´ã
7ï¼å¢å¼ºåè§å¾æ§å¶
æ¯å ç½®çè§å¾å·¥å ·ç强åçæ¬ï¼æ´éè¦çæ¯å¯ä»¥å¦ä¹ å¦ä½å¼åååè½åºã
8ï¼èªå®ä¹å½æ°å°è£
èªå®ä¹å½æ°Connectæ¯&è¿ç®ç强åçæ¬ï¼åè½å¼ºå¤§ï¼ä¸é å¤ä»£ç å°è£ ææã
é¤ä»¥ä¸æå¡å¤ï¼å¦æ读è åæ¶è´ä¹°æ¬ä¹¦åãExcel VBAç¨åºå¼åèªå¦å®å ¸ãï¼é£ä¹é¢å¤èµ éä¸ä¸ªå®ç¨æ件åä¸ä¸ªç¾å®ç®±8.0æ£å¼çãæ件å æ¬ï¼
1ï¼éèç£ç
å¯ä»¥å°æå®çç£çéèèµ·æ¥ï¼å¹¶ç¦ç¨ä½¿ç¨ï¼ä»èç¡®ä¿æ件å®å ¨ã
2ï¼éèé误å¼
å¯ä»¥å°å·¥ä½è¡¨ä¸çææé误å¼å¨éèä¸æ¾ç¤ºä¹é´ç¬é´åæ¢ã
3ï¼å·¥ä½ç°¿æ ç¾
å¨èå产çå·¥ä½ç°¿æ ç¾çæ件ï¼è®©å·¥ä½ç°¿åæ¢æ´æ¹ä¾¿ãå¿«æ·ã
ç¾å®ç®±8.0æ¯å©ç¨VBAå¼åç大åæ件ï¼ç¾å®ç®±æ£çå æ¬ä¸ªåè½ï¼å¯ä»¥å¤§å¤§å¼ºåExcelçåè½ï¼åä»·å éå®ã对äºè¯»è å¯ä»¥å è´¹èµ éï¼å¯è¿å ¥ä½è QQ群ååä½è å è´¹ç³è¯·ã
æ¬ä¹¦ç±é»æé³çåï¼ç½åååç« å °æ°è´è´£ç¼åãå ¶ä¸ç¬¬1ã2ã3ã4ã8ã9ãåç« ç±ç½ååç¼åï¼ç¬¬5ã6ã7ç« ç±ç« å °æ°ç¼åï¼æåç±ç½ååãé»æé³å®æç»ç¨¿ã
ç¼èè
å¹´8ææ¥
------------------------------------------------------------------------------------------------------------------------
ç³æ:æ¬ä¹¦çæææ¡ä¾å讲解é½å 许ä½ä¸ºè§é¢æé¢æå¹è®çææï¼ä½ä½¿ç¨è å¿ é¡»éµå¾ªçº¦å®ï¼å¨å¹è®ææçææ¾å¤æ³¨æâå ¨é¨ï¼æé¨åï¼æ¡ä¾åºèªâExcelçé¾å寻å解âä¸ä¹¦ä¹ãExcel VBAç¼ç¨ä¸å®è·µãâçåæ ·ï¼ä»¥ç¡®ä¿ä½è èä½æä¸åä¾µç¯ã
2024-11-30 14:00
2024-11-30 13:04
2024-11-30 12:39
2024-11-30 12:05
2024-11-30 11:57