我有一个5列的电子表格,A,B,C,D和E,所有长度都包含数字数据。 列A,B和C都具有从-10到+10的值,列D是结果。 在EI列中有一个If AND公式,如果A,B或C落在一个范围内,那么它只显示D的适当结果。 范围由IF AND公式引用的单独单元格设置。 我希望求解器findA,B和C的最佳范围,通过改变A,B,C的范围来最大化E中的结果。 例如求解者可能会返回; A必须在0到5之间,B可以在-10到+10之间,C是-2到0.这个标准使相邻单元格E中的总数最大化 电子表格中的所有内容都按照其应有的方式工作,但每次运行求解器时都会popup一个不同的解决scheme,而无需更改任何数据或执行任何其他操作。 我是否错过了解算器如何工作的一些逻辑? 我相信它应该总是find最佳解决scheme,如果没有其他变化,它应该始终是相同的
任何人都可以请解释下面的代码,因为我是新的 SolverOk SetCell:="Profit_test_prem!$q$7", MaxMinVal:=3, ValueOf:="0.02", _ ByChange:="Profit_test_prem!$b$15" SolverSolve UserFinish:=True SolverFinish KeepFinal:=1 Worksheets("Profit_test_prem").Calculate
首先,我试图研究我所遇到的问题,但是我find的解决scheme(例如, 这里没有为我工作)。 我正在尝试编写一个macros,它使用(通常)解决一个值的简单Solverfunction。 我得到的代码如下: Sub SolverAEP() Dim GeneratedPower As Double GeneratedPower = Worksheets("AEP").Range("D57") SolverReset SolverOk SetCell:="$D$58", _ MaxMinVal:=3, _ ValueOf:=GeneratedPower, _ ByChange:="$D$65" _ , Engine:=1, EngineDesc:="GRG Nonlinear" SolverSolve userFinish:=False End Sub 目前的错误是Solver could not find a feasible solution. Sovler can not find a point for which all Constraints are satisified. Solver could not find a […]
我想知道我需要在Excel中的公式框中键入以解决下面的问题大纲: 关键: *Variable/Cell* IF *cellnumber* = 0 shade cells red IF *cellnumber* > (more than) 0 but < (less than) *cell number* shade cells yellow IF *cellnumber = *cellnumber* shade cells green.
这是我的2列: | C | B | | 378 | 124.14 | | 378 | 0.47 | | 378 | 125.00 | | Total | 249.61 | 我会链接另一个工作表中的总数据,但我找不到Excel适当的function。
我有一个问题,我希望有人可以帮忙。 我把一些VBA代码放在一起,让Excel的循环解算器(设置为进化的方法)。 代码如下: Sub Repeat_Solver() Worksheets("DC Ranking by CM (All DC costs)").Activate limit = 148 i = 147 Application.ScreenUpdating = True Do Until i = limit If Range("BV" & i).Value = "Y" Then SolverReset SolverOk SetCell:="$EQ$" & i, MaxMinVal:=1, ValueOf:=0, ByChange:="$CA$" & i, _ Engine:=3, EngineDesc:="Evolutionary" SolverAdd CellRef:="$CG$" & i, Relation:=3, FormulaText:="45" SolverAdd CellRef:="$CH$" & […]
我想看看是否有一个更简单的方法通过if(),VBA或数组公式来合并具有相同标题的单元格。 我想要的是,如果名称匹配,在一个单元格中将ID与“,”合并在一起,然后将房间和SF一起合并成一行。 ID Name Rooms Sf 00000121856000000 Dreadfall Apartments 123 44000 00000121865000000 Dreadfall Apartments 115 40000 00000121898000000 Clear Creek 22 11500 00000121897000000 Clear Creek 22 11500 00000121541000000 Clear Creek 23 12500 我希望它看起来像: |00000121856000000, 00000121865000000 | Dreadfall Apartments | 238 | 84000 |00000121898000000,00000121897000000, 00000121541000000| Clear Creek | 67 | 58500 假设“ID”是A1,“Sf”是D1。 非常感谢!
我想知道是否有可能控制Excel的插件,特别是从C#解决。 我已经得到了这么多: var Solver = Excel.Application.AddIns["Solver Add-in"]; 我找不到任何文档,但是当在Microsoft的Visual Studiodebugging器中探索这个COM对象时,它显示了一个名为“SOLVER.XLAM”的参数,我想这意味着我在正确的轨道上。 虽然在这个COM对象中似乎没有任何有用的方法。 有没有人知道如何重写这个VBA代码工作在C#例如? SolverOk SetCell:="$G$39", MaxMinVal:=2, ValueOf:=0, ByChange:= _ "$H$5:$H$17,$H$19:$H$22,$H$24:$H$32,$H$34:$H$37", Engine:=1, EngineDesc:= _ "GRG Nonlinear" SolverSolve
所以,我需要find10个数据点列表的组合总数,加起来至less为100.所有解决这个问题的例子我都find了等于一个数的组合数。 我怎样才能总计高于100的组合? Excel中没有VBA,这是可行的吗? 另一个想法是计算组合总数(10!)并减去1000以下的数字。 但是,又如何find一个范围内的组合总数呢? 问题陈述:10个数据点(65,52,48,44,42,41,39,38,30,18)总共可以有多less个组合至less100个? 我试过的来源(我不能发布超过2个链接) http://www.tushar-mehta.com/excel/templates/match_values/index.html 找出在一个集合中的数字的组合加起来给定的总数
我一直在探索VBA和Excel,我已经写了一些Excel解算器的基本代码。 然而,强大的Excel解算器可能会出现,它只是不够快,我的优化问题(一次迭代需要20分钟)。 我一直在环顾四周,并与更有经验的程序员交stream,并且共识是VBA不是很快,而C ++,C#,特别是CUDA语言要快得多。 在Excel中查看VBA模块,Solver模块被密码locking。 我一直在寻找这个密码,并且可以在几周内获得这个密码而无济于事。 问题:可以获得这个密码吗? 如果是这样,怎么样? 它可以从微软购买吗? 多less? 目标:使Solver VBA能够将其转换为C#或C ++,以使优化过程更快。 PS我已经看过微软Solver基金会,但它没有帮助。 谢谢。