我有一个损坏的Excel vbaproject.bin从.xlam加载项中提取。 我怎样才能读取从这个bin文件提取的VBA代码作为hexstream的模块? 我正在使用oletools ,在这个线程的更多细节: https://bitbucket.org/decalage/oletools/issues/38/extracted-vba-hex-files-from-vbaprojectbin
列A中列出了不同的path。我在B和C中列出了一些细节。 我怎么能在一个新的表:1)拉每个独特的path,2)为每个path编译B * C的值,并删除重复。 3)在最后一行完成后重复下一个path。 我确实有一个错误的macros观,但为了简洁和准确,我不会发布。 除非有人想阅读,否则请申请 任何帮助将不胜感激。 这是我所拥有的(我理解它的长期,我会试着去清理它): Sub FileDetail() 'Does not fill down, go to bottom to unleased fill down 'Skips unreadable files 'This Macro retrieves data from files picked. The data is based on header. Data is also filtered for unique values. 'You must make sure headers are in the first row […]
我通过将combobox从用户窗体工具栏拖到我的工作表上创build了一个下拉菜单。 我从书中的一些单元格中分配了一些值。 现在我想要一些VBA代码以string的forms访问选定的下拉项目的值。 我的下拉列表仅包含文本。 另外我怎样才能find这个新创build的下拉列表的名称(这是在属性!)?
在一个子程序中,我想打开一个工作簿,从中读取并closures它。 出于某种原因,我得到一个错误: Run-time error '1004': Method 'Close' of object _Workbook failed 我已经确定了一个最小的代码片段来重现这个问题。 创build一个新的Excel文件。 在其中创build一个用户窗体。 在此,使用以下Click事件代码创build一个命令button: Private Sub CommandButton1_Click() Dim filename As String Dim opened_workbook As Workbook filename = Application.GetOpenFilename() ' User selects valid Excel file Set opened_workbook = Application.Workbooks.Open(filename) ' File operations would occur here opened_workbook.Close ' Exception thrown here MsgBox "If you got here, […]
我有这个由macroslogging器生成的vba代码。 它将csv文件导入到当前的Excel表格中,并具有一些特定的列设置。 现在,csv文件的path被硬编码为“C:\ Users \ myuser \ Desktop \ logexportdata.csv”。 我怎样才能改变这一点,以便有一个对话框提示要求用户find.csv文件进行导入? Sub Import_log() With ActiveSheet.QueryTables.Add(Connection:= _ "TEXT;C:\Users\myuser\Desktop\logexportdata.csv", Destination:=Range( _ "$A$2")) .Name = "logexportdata" .FieldNames = True .RowNumbers = False .FillAdjacentFormulas = False .PreserveFormatting = True .RefreshOnFileOpen = False .RefreshStyle = xlInsertDeleteCells .SavePassword = False .SaveData = True .AdjustColumnWidth = True .RefreshPeriod = 0 .TextFilePromptOnRefresh = […]
我想请求您的帮助,如下所示: 我有从Excel中导入的软件应用程序导出的CSV文件来分析数据。 每日生成40-50个CSV。 现在我通过“从文本中获取外部数据”来手动完成此操作。 导入期间logging的代码是: With ActiveSheet.QueryTables.Add(Connection:= _ "TEXT;SYSTEM:Users:catalin:Documents:LINELLA:WH Analytics:data:pick 01-18:050:Inquiry closed lists SKU_0142.csv" _ , Destination:=Range("A1704")) .Name = "Inquiry closed lists SKU_0142" .FieldNames = True .RowNumbers = False .FillAdjacentFormulas = False .RefreshOnFileOpen = False .BackgroundQuery = True .RefreshStyle = xlInsertDeleteCells .SavePassword = False .SaveData = True .AdjustColumnWidth = True .TextFilePromptOnRefresh = False .TextFilePlatform = […]
我最近从Windows迁移到pclinuxos似乎喜欢它。 我面临的唯一问题是,libreoffice,默认的电子表格包不兼容的Excelmacros。 下面是我有的vba代码: Option VBASupport Sub DeleteToLeft() Selection.SpecialCells(xlBlanks).Delete shift:=xlToLeft End Sub Function SinceLastWash() Application.Volatile WashCount = 0 WearCount = 0 CurrentRow = Application.ThisCell.Row For i = 3 To 35 If Range(Cells(CurrentRow, i), Cells(CurrentRow, i)).Value = "a" Then WearCount = WearCount + 1 End If If Range(Cells(CurrentRow, i), Cells(CurrentRow, i)).Value = "q" Then WashCount = WashCount […]
这应该是简单的,但我不能find一个明确的答案。 如果我正在读/写一个范围,我什么时候使用范围名称,什么时候需要使用range.value? 如果范围是一个单元格或多个单元格,这有关系吗? 这个variables的types是什么? 或者范围内的数据的types? 有这个最好的做法吗? 例如,我应该写 `a = Range("Test")` 或者我应该写 `a = Range("Test").value` 同样的, `Range("Test") = a` 要么 `Range("Test").value = a`
我有一个Excel工作簿(1),大约有9张工作表,它们是从第二个工作簿(2)中提取和操作数据。 从工作簿(2)中拉出数据后,我需要能够将工作簿(1)中的公式replace为公式生成的结果值,从这里我将保存工作簿(1)与结果。 有没有一个macros可以为我做这个?
我有一个数组数组arrAggregatedArrays(1 to 8) 我可以这样调用一个子类: call sub(ArrNewClient) 但是我得到一个编译错误:“types不匹配”,如果我试试这个: call sub(arrAggregatedArrays(1)) 为什么? 有没有办法呢? 为什么它不认识arrAggregatedArrays(1)作为一个数组,虽然它会像正常一样执行像UBound这样的函数? Public arrAggregatedArrays() As Variant '/ Holds all the sheet-Data Arrays '/在一个单独的模块中声明 ReDim arrAggregatedArrays(1 To 8) arrAggregatedArrays(1) = arrNewClient arrAggregatedArrays(2) = arrExistingClient arrAggregatedArrays(3) = arrGroupSchemes arrAggregatedArrays(4) = arrOther arrAggregatedArrays(5) = arrMcOngoing arrAggregatedArrays(6) = arrJhOngoing arrAggregatedArrays(7) = arrAegonQuilterArc arrAggregatedArrays(8) = arrAscentric Call FilterSheetArrayForColumns(arrAggregatedArrays(1)) Public Sub […]