Tag: 优化

在20k行表中导入400行并在导入之前进行操作

我有2张只有2列: 旧的url 新的url 一张纸(主)包含这两列20k行,我有另一张(toImport)约400行这两列相同。 由于它是一个redirect文件发送到Apache,我这样做是因为在我们的networking环境中的一个大的结构变化,在20k行表中导入这些400行之前,我想评估一些情况: 如果toImport文件中的旧对和新对已经在主文件中,则不执行任何操作 如果toImport文件中的旧URL位于主文件的新URL列中,请执行以下操作: 将来自toImport文件的新URL值放入主站点的新URL值(为了不创build级联redirect) 还要从主导文件中导入新导入的旧/新对(为了让用户在知道最后一个活动URL的情况下访问新页面)。 换句话说,如果我有,在主文件中 a – > b 并在toImport文件中 b – > c 我希望能够在主文件中执行以下操作 a – > c b – > c 什么是最好的办法呢? VBA我想,或数据透视表? 有人能给我一些关于如何解决这个问题的想法。 知道20k排可以打400次,他们必须是一个快速的工作方式,但我不知道。 谢谢你的帮助。

优化c#excel读取/写入文件

所以我有大约2200行 ,我需要读取和写入到一个TXT文件这个Excel,问题是,它需要太多的时间,我被告知读/写文件通常需要时间,因为这是自然 ,所以我试着只读一次的Excel文件,使用一个stringBuilder和每行写(还没有尝试存储所有的文本和写入整个.txt文件) 但是,有什么办法可以加快速度? select较小的范围,如只有一行? 用\ n作为换行符来填充一个巨大的string,然后写所有的.txt文件? 这是我的代码示例 using Excel = Microsoft.Office.Interop.Excel; […] xlApp = new Excel.Application(); xlWorkBook = xlApp.Workbooks.Open("C:/Users/MyUser/Desktop/SomeFolder/my_excel.xlsx", 0, true, 5, "", "", true, Microsoft.Office.Interop.Excel.XlPlatform.xlWindows, "\t", false, false, 0, true, 1, 0); xlWorkSheet = (Excel.Worksheet)xlWorkBook.Worksheets.get_Item(1); Excel.Range allRange = xlWorkSheet.UsedRange; try { System.IO.StreamWriter file = new System.IO.StreamWriter("C:\\test.txt"); String line = ""; //StringBuilder line; for […]

batch file删除csv中的列

我写了这段代码,所以我可以从csv文件中删除一列。 @echo off setlocal enableextensions enabledelayedexpansion type nul > tmp.txt SET /A COUNT=0 for /F "tokens=*" %%A in (d.csv) do ( set LINE="%%A" set /A COUNT+=1 for /F "tokens=1,2,3,4,5,6,7,8,* delims=," %%a in (!LINE!) do ( set row[0]=%%a set row[1]=%%b set row[2]=%%c set row[3]=%%d set row[4]=%%e set row[5]=%%f set row[6]=%%g set row[7]=%%h ) echo !row[0]!,!row[2]!,!row[3]!,!row[4]!,!row[5]!,!row[6]! >>tmp.txt […]

Excel中的非线性非光滑优化

我正试图解决一个非线性,非光滑的优化在Excel中。 GRG和演化algorithm都不能给出合理的结果(在某些情况下它们不会收敛)。 约束的数量在build议的极限范围内,模型构造是正确的。 什么是下一个最好的select,我必须在Excel中运行这个优化问题? 前线高级求解器平台(有更多的求解器引擎比Excel解算器)还是有更好的第三方解算器加载项更好? 请给出build议。 PS:把这个移出Excel不是我的select。

如何优化在大量logging上运行的macros?

我已经想出了一个用于对付员工的超级pipe理器的macros。 我无法对大型数据集和Excel挂起执行此macros。 我假设这个代码没有被优化。 一些要求和先决条件: 经理ID列将是第一列,即列A,而雇员ID列是第二列,即工作表中的列B. 超级pipe理人员不会填写在表1中,即超出pipe理人员的logging不应该存在于表格1中,除了他们的ID映射到其他员工的经理ID 超级pipe理者将填写在表2中,其顺序与附表中相同。 超级经理Id | 超级经理姓名| 无论需要额外的数据字段。 一旦先决条件被照顾,请点击“macros”button并运行名为Main_Function_SuperManager的macros。 超级经理的细节将分别列在表1的S和T列。 这是我的macros: Option Explicit Sub Main_Function_SuperManager() Dim i, re Root_Parent Replace Replace_Name i = 1 While Cells(i, 22) <> "" Cells(i, 22) = "" Cells(i, 23) = "" i = i + 1 Wend End Sub Sub Root_Parent() Dim i, re, k i […]

有什么我可以“释放”,使这个更快?

因此,这段代码将遍历演示文稿中的每个图表,并查看内部值的查找/replace。 我的演示文稿通常有100-300个图表,当代码到达演示文稿中的第300个图表时,需要10-30秒来完成所有操作(当我最初运行程序。) 所以我的问题是:有没有办法让这个更快? 我正在考虑一些“从内存中释放”东西的东西,如果VBA拥有它,那将是解决scheme,但是我找不到任何东西。 我补充说 Set c = Nothing Excel.Application.ScreenUpdating = True Excel.Application.EnableEvents = True Excel.Application.DisplayAlerts = True Application.DisplayAlerts = True 我认为压制一切正在帮助一点点,但我不能告诉Set c = Nothing 。 必须有一些东西可以“刷新”或“释放”,使每个循环运行相同,而不是减速。 任何帮助感激! Option Explicit Private Sub findAndReplaceChrt() 'Timer start Dim StartTime As Double Dim SecondsElapsed As Double StartTime = Timer ' use & vbLF & for alt + enter […]

VBA:跨所有工作簿工作表使用类似于查找的function,无需循环

我有一些代码循环通过工作簿中的一系列工作表,并试图find一个匹配的另一个工作表中的值。 Private Sub MatchData(NewMIARep As Worksheet, MaxRow As Long, wkbFinalized As Workbook) Dim wksFinalized As Worksheet Dim lCount As Long Dim lFinMaxRow As Long Dim DataRange As Variant Dim SearchRange As Variant Dim FoundRange As Range Application.Calculation = xlCalculationManual With NewMIARep DataRange = .Range("J2:K" & MaxRow) SearchRange = .Range("A2:A" & MaxRow) For Each wksFinalized In […]

如何build立一个matrix乘法的简单优化模型?

我已经使用标准的求解器在Excel中创build了一个优化模型,现在我想在R中创build一个类似的模型,这样我可以制作更大的模型。 不幸的是,我有点难以find可以模拟我的概念的好例子。 因此,我想问你们有没有人能给我一些关于如何在R做出类似模型的暗示。 我已经将我的Excel工作表上传到http://dl.dropbox.com/u/9641130/R/Positioning%20Optimization%20R.xlsx 基本思想是通过将范围E10:L19中的最大8个单元更改为1来使单元B3最大化。 B3单元包括范围E10:L19的一个副产品()和许多类似的范围。 我期待看到如何在R中build立一个类似的模型的一些提示。 谢谢! Jochem ======== 更新以下蔡斯的build议 我想用一些repoducable R代码来澄清我的问题。 这与您在上面Excel代码中find的模型大致相同。 最初的一组matrix: A <- as.matrix(structure(list(X0 = c(0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L), X0.1 = c(0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L), X0.2 = c(0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L, 0L), X0.3 = c(0L, 0L, 0L, […]

Excel VBA优化周期

我很抱歉,如果已经存在类似的问题,但如果是的话,我没有find。 我是VBA编程的新手,现在还不太了解,现在我试着运行一个函数来validation在列“B”中是否有重复的velores,如果存在,将会在列“C”其中最高的值,将最低值复制到另一个表并删除它。 代码已经完成,但是需要在65000行的表中运行,并且需要很长时间,从来没有运行这些表,因为即使在5000或10000行的表中运行大约需要6到15分钟。 我的问题是,如果有什么方法来优化我正在使用的循环,最好使用For Each或保持Do While Loop? 这是我正在使用的代码: Function Copy() Worksheets("Sheet1").Range("A1:AQ1").Copy _ Destination:=Worksheets("Sheet2").Range("A1") Dim lRow As Long Dim lRow2 As Long Dim Row As Long Dim countA As Long Dim countB As Long Dim t As Double lRow = 5000 Row = 2 countA = 0 countB = 0 Application.ScreenUpdating = False ViewMode = ActiveWindow.View […]

优化VBA文本search

我为文本分析创build了一个VBA代码,但在运行时遇到了一个问题。 我刚刚在Google上find了使用excel内置函数的build议,但是并没有改善运行时间。 这是我使用VBA的问题。 我有一个包含文本(平均一个或两个句子)的〜30k单元列表和一个1k关键字列表,所有这些关键字都有一个数字分数。 对于每个30k单元格,我想查看单元格包含哪些关键字,并计算find的关键字的总和。 这是我现在正在处理这个问题的方法: 在30k文本单元上循环 循环关键字 检查关键字是否在文本单元格中,如果是,则添加关键字的分数 我也尝试使用内置的function: 循环关键字 在包含30k文本单元的整个工作表中search关键字 find关键字后,在相应的单元格上添加分数。 运行时间没有显着变化。 下面你可以find我的第一种方法的代码: 'Loop on all the 30k text cells For i = 2 To last_textcell 'loop on the number of different category of scores, setting intial scores to zero. For k = 1 To nb_score – 1 Score(k) = 0 Next k […]