欢迎来到皮皮网官网

【linux源码】【聊天室源码】【微网站源码】vba源码翻译

时间:2024-12-24 02:52:28 来源:网站登录界面设计源码

1.VBA代码翻译
2.VBA 代码翻译
3.VBA程序翻译
4.Excel VBA代码翻译
5.vba代码翻译,越详细越好

vba源码翻译

VBA代码翻译

       Sub Macro1()

           Dim Fso As Object,源译 a, i&, j&, n&, brr()

           Application.ScreenUpdating = False  '关闭屏幕更新

           Set Fso = CreateObject("Scripting.FileSystemObject")    '创建FSO对象

           p = ThisWorkbook.Path & "\-3-1" '当前路径下的文件夹

           sFileType = "*.pdf" '类型为PDF文件

           Call GetFiles(p, sFileType, Fso)    '调用getfiles程序

           ReDim brr(1 To m, 1 To 4)   '定义二维数组

           [a1].CurrentRegion.Offset(1).ClearContents  'a1所用区域整体向下清除内容

           With ActiveSheet    '以下激活的表内进行

               For i = 1 To m  'i从1到m循环

                   a = Split(arr(i), "\")  '将数组arr(i)用\分开写入数组a

                   n = 0

                   For j = UBound(a) - 3 To UBound(a) - 1  'j在数组a内的最后三个数循环

                       n = n + 1   'n自加一次

                       brr(i, n) = a(j)    '为brr赋值

                   Next

                   brr(i, 4) = Replace(a(j), ".pdf", "") '删除.pdf

                   .Hyperlinks.Add Anchor:=Cells(i + 1, 4), Address:=arr(i)    '建立超连接

               Next

           End With

           [a2].Resize(m, 4) = brr '将数组brr赋到a2的扩展区域

           m = 0

           Erase arr   '清除arr

           Set Fso = Nothing   '清除fso

           Application.ScreenUpdating = True   '开启屏幕更新

       End Sub

       Private Sub GetFiles(ByVal sPath$, ByVal sFileType$, Fso As Object)

           Dim Folder As Object

           Dim SubFolder As Object

           Dim File As Object

           Set Folder = Fso.GetFolder(sPath)

           

           For Each File In Folder.Files   '历遍spath下的文件

               If File.Name Like sFileType Then    '如文件名和sfiletype相仿

                   m = m + 1   'm自加

                   ReDim Preserve arr(1 To m)  '重新定义数组arr,保留原有数据

                   arr(m) = sPath & "\" & File.Name    '为数组的新增数据赋值

               End If

           Next

           If Folder.SubFolders.Count > 0 Then '如果存在子文件夹

               For Each SubFolder In Folder.SubFolders '历遍所有子文件夹

                   Call GetFiles(SubFolder.Path, sFileType, Fso)   '再次运行些程序

               Next

           End If

           Set Folder = Nothing

           Set File = Nothing

           Set SubFolder = Nothing

       End Sub

VBA 代码翻译

       Sub test()

        Dim oDic As Object

        Dim i As Long

        Dim Dsum

        Dim Arr

        Arr = Range("A1:C" & [A].End(xlUp).Row) '把A,B,C列的数值读入数组

        Set oDic = CreateObject("Scripting.Dictionary") '创建字典对象,字典对象的最大特点就是key不重复,利用这个特点进行分类汇总

        With oDic

        For i = 1 To UBound(Arr) '从数组arr的第一行循环到最后1行

        oDic(Format(Arr(i, 1), "yy-m-d") & "@@" & Arr(i, 2)) = oDic(Format(Arr(i, 1), "yy-m-d") & "@@" & Arr(i, 2)) + Arr(i, 3) '把数组的前两列链接成1个字符串,通过字典把前两列相同的第3列数据累计

        Next

        End With

        Dsum = oDic(Format("-8-5", "yy-m-d") & "@@" & "A") '"-8-5"这个是你求和的日期,"A"是名称根据需要自己设置(查找特定日期特定名称的数量的和)

       End Sub

VBA程序翻译

       Sub Macro1()

        Dim rng As Range, c As Range, myPath$, myFile$, wb As Workbook, sh As Worksheet '定义对象,分别定义的是单元格,地址,文件以及工作簿!

        Set sh = Sheets("1") '设置工作表1,即SHEETS1

        Set rng = sh.Range("A2:A" & sh.Range("A").End(xlUp).Row) 'SHEET1选中非空行

        Application.ScreenUpdating = False '屏幕更新为假

        Application.DisplayAlerts = False '区域更新为假

        myPath = ThisWorkbook.Path & "\" '当前文件下路径

        myFile = Dir(myPath & "*.xls") '列举EXCEL文件

        Do While myFile <> " '执行循环体

        If myFile <> ThisWorkbook.Name Then '条件以为文件名为标准

        Set c = rng.Find(Split(myFile, ".")(0), , , xlWhole) 'FIND查找

        If Not c Is Nothing Then

        Set wb = GetObject(myPath & myFile)

        With wb.Sheets(1)

        .Range("e2").Resize(.Range("A").End(xlUp).Row - 1) = c.Offset(, 1).Value '找到内容写到E列

        If d.Exists(c.Offset(, 1).Value) Then .Range("g2").Resize(.Range("A").End(xlUp).Row - 1) = d(c.Offset(, 1).Value) '文件长度

        End With

        Windows(wb.Name).Visible = True

        wb.SaveAs Filename:=ThisWorkbook.Path & "\" & c.Offset(, 1).Value & "_" & myFile '保存文件

        ActiveWorkbook.Close '关闭工作簿

        End If

        End If

        myFile = Dir

        Loop

        Application.DisplayAlerts = True '区域更新

        Application.ScreenUpdating = True '屏幕可变

        MsgBox "完成"

       End Sub

Excel VBA代码翻译

       这代码出来是透视表或者 Sumifs 公式的效果, 直接一个公式就搞定的码翻linux源码事 还写这么复杂

       你这人 也是, 一毛不拔 还 找人翻译

Sub test()

       Dim arr,源译聊天室源码 brr

       Dim d As Object

       Dim k%, i%, m%, str$, str1$

       arr = Sheets("sheet1").Range("a1").CurrentRegion 'Sheet1数据存入数组

       brr = Sheets("sheet2").Range("a2").CurrentRegion 'Sheet2  数据存入数组

       Set d = CreateObject("scripting.dictionary") '创建字典对象

       For k = 2 To UBound(arr)

       str = arr(k, 1) & arr(k, 3) & arr(k, 2) 'sheet1 A列 C 列 B列每行内容合并

       If Not d.exists(str) Then

       d(str) = arr(k, 4) '这里写的是 废话多余

       Else

       d(str) = d(str) + arr(k, 4) '对A 列C 列B列 合并后的字符串 对应的第4列数字 求和

       End If

       Next k

       For i = 2 To UBound(brr)  'Sheet2 的第2行开始 到最后一行

       For m = 3 To UBound(brr, 2) 'sheet2的第3列 开始到最后一列,列数为m

       str1 = brr(i,码翻微网站源码 1) & brr(i, 2) & brr(1, m) '合并内容为 A列+B列+ 第一行横向的m列

       brr(i, m) = d(str1)  '之前对应字符 求和的数据写入 数组对应位置

       Next m

       Next i

       Sheets("sheet2").Range("a2").Resize(UBound(brr), UBound(brr, 2)) = brr'输出求和结果

       End Sub

vba代码翻译,越详细越好

       Private Sub Worksheet_Activate() 当激活工作表时执行

        Application.ScreenUpdating = False 软件的窗口停止刷新

        ActiveSheet.PivotTables("透视表").PivotCache.Refresh 刷新透视表的数据

        ActiveSheet.PivotTables("透视表").PivotSelect "", xlDataAndLabel, True 选择透视表

        Selection.RowHeight = '设置行高

        Rows("4:5").Select '选中第2行

        Selection.EntireRow.Hidden = True '隐藏

        Range("a1").Select 选择a1æ ¼

        Application.ScreenUpdating = True 刷新窗口

       End Sub

copyright © 2016 powered by 皮皮网   sitemap