ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 8949|回复: 11

[已解决] 如何将GoalSeek Goal:=527.585不设定为指定数值

[复制链接]

TA的精华主题

TA的得分主题

发表于 2014-9-5 16:34 | 显示全部楼层 |阅读模式
为了求一个公式的T值,采用了单变量求值和录制下面的宏我想把指定值变成某一单元格值,随着单元格的值得变化自动求得t值求各位大神指点!

Sub myGoalSeek()

Range("B3").GoalSeek Goal:=527.585, ChangingCell:=Range("C16")

End Sub


求t.zip

7.58 KB, 下载次数: 48

TA的精华主题

TA的得分主题

 楼主| 发表于 2014-9-5 17:12 | 显示全部楼层
╮(╯▽╰)╭!都没有能解决的吗?

TA的精华主题

TA的得分主题

发表于 2014-9-5 17:35 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
Range("B3").GoalSeek Goal:=Range("B18").Value, ChangingCell:=Range("C16")
===============
这样就可以把目标值设置为  B18 单元格的数值

评分

1

查看全部评分

TA的精华主题

TA的得分主题

 楼主| 发表于 2014-9-5 20:06 | 显示全部楼层
灰袍法师 发表于 2014-9-5 17:35
Range("B3").GoalSeek Goal:=Range("B18").Value, ChangingCell:=Range("C16")
===============
这样就可 ...

高手!感谢感谢!

TA的精华主题

TA的得分主题

发表于 2014-9-5 20:32 | 显示全部楼层
这种小事情……也可以自己写代码,进行逼近计算求解。

求t.rar

11.98 KB, 下载次数: 55

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2014-9-5 20:33 | 显示全部楼层
灰袍法师 发表于 2014-9-5 17:35
Range("B3").GoalSeek Goal:=Range("B18").Value, ChangingCell:=Range("C16")
===============
这样就可 ...

呵呵,我自己写了【单变量求解】的代码:
  1. Function fuc(x, y, z, k, l, t)
  2.     a = 2E-22 * t ^ 6 - 3E-18 * t ^ 5 + 0.00000000000002 * t ^ 4 - 0.00000000005 * t ^ 3 + 0.00000006 * t ^ 2 - 0.000005 * t + 0.311
  3.     b = -1E-20 * t ^ 6 + 7E-17 * t ^ 5 - 0.0000000000002 * t ^ 4 + 0.0000000003 * t ^ 3 - 0.0000003 * t ^ 2 + 0.0003 * t + 0.3844
  4.     c = 3E-20 * t ^ 6 - 2E-16 * t ^ 5 + 0.0000000000004 * t ^ 4 - 0.0000000004 * t ^ 3 + 0.0000002 * t ^ 2 - 0.000009 * t + 0.3584
  5.     d = 2E-20 * t ^ 6 - 9E-17 * t ^ 5 + 0.0000000000002 * t ^ 4 - 0.0000000002 * t ^ 3 + 0.0000001 * t ^ 2 + 0.00002 * t + 0.312
  6.     e = -5E-20 * t ^ 6 + 1E-16 * t ^ 5 - 0.00000000000005 * t ^ 4 - 0.00000000007 * t ^ 3 - 0.00000003 * t ^ 2 + 0.0002 * t + 0.414
  7.     fuc = (a * x + b * y + c * z + d * k + e * l) * t * 4.182
  8. End Function
  9. Sub myGoalSeek()
  10.     x = [c6]: y = [c8]: z = [c10]: k = [c12]: l = [c14]: s = [c16]
  11.     t0 = 0
  12.     For m = 0 To 10
  13.         t = t0 + 10 ^ m
  14.         r = fuc(x, y, z, k, l, t)
  15.         If r > s Then Exit For
  16.     Next
  17.     t = 10 ^ (m - 1) + 10 ^ (m - 15)
  18.    
  19.     For i = 1 To m
  20.         For n = 1 To 9
  21.             Mid(t, i, 1) = n
  22.             r = fuc(x, y, z, k, l, t)
  23.             If r > s Then Exit For
  24.         Next
  25.         Mid(t, i, 1) = n - 1
  26.     Next
  27.    
  28.     For i = m + 2 To 16
  29.         For n = 1 To 9
  30.             Mid(t, i, 1) = n
  31.             r = fuc(x, y, z, k, l, t)
  32.             If r > s Then Exit For
  33.         Next
  34.         Mid(t, i, 1) = n - 1
  35.     Next
  36.    
  37.     [c18] = t
  38.     MsgBox t
  39. End Sub
复制代码

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2014-9-5 20:40 | 显示全部楼层
本帖最后由 香川群子 于 2014-9-5 20:43 编辑

计算过程如下:
t     计算值r                和目标值s的差
1  1.37985080208412 -526.205149197916
10  13.8137389285253 -513.771261071475
100  139.749520439354 -387.835479560646
1000  1558.66000488  1031.07500488
100.000000000001 139.749520439355 -387.835479560645
200.000000000001 283.326726679227 -244.258273320773
300.000000000001 430.889093049489 -96.6959069505112
400.000000000001 582.387687931105  54.8026879311049


310.000000000001 445.863822567237 -81.7211774327631
320.000000000001 460.877875170209 -66.7071248297908
330.000000000001 475.931114117023 -51.6538858829775
340.000000000001 491.02339338506 -36.5616066149398
350.000000000001 506.154558183749 -21.4304418162515
360.000000000001 521.324445417613 -6.2605545823867
370.000000000001 536.532884099906  8.94788409990633


361.000000000001 522.843557358261 -4.74144264173935
362.000000000001 524.363054644386 -3.22194535561391
363.000000000001 525.882937100031 -1.70206289996906
364.000000000001 527.403204548491 -.181795451508606
365.000000000001 528.923856812322  1.33885681232186


364.100000000001 527.555252461117 -2.97475388829298E-02
364.200000000001 527.707304221719  .122304221719105


364.110000000001 527.570457464021 -1.45425359787623E-02
364.120000000001 527.585662505405  6.62505404989133E-04


364.111000000001 527.571977966428 -1.30220335719287E-02
364.112000000001 527.57349846922 -1.15015307802651E-02
364.113000000001 527.575018972396 -9.9810276038852E-03
364.114000000001 527.576539475957 -8.46052404278907E-03
364.115000000001 527.578059979903 -6.9400200969767E-03
364.116000000001 527.579580484234 -5.41951576599331E-03
364.117000000001 527.58110098895 -3.89901105052104E-03
364.118000000001 527.58262149405 -2.37850595010514E-03
364.119000000001 527.584141999535 -8.58000464972974E-04


364.119100000001 527.584294050105 -7.05949895177582E-04
364.119200000001 527.584446100678 -5.53899321630524E-04
364.119300000001 527.584598151256 -4.01848744331801E-04
364.119400000001 527.584750201837 -2.49798163054038E-04
364.119500000001 527.584902252422 -9.77475780246095E-05
364.119600000001 527.585054303011  5.43030108701714E-05


364.119510000001 527.584917457481 -8.2542519294293E-05
364.119520000001 527.584932662539 -6.73374605639765E-05
364.119530000001 527.584947867598 -5.21324016062863E-05
364.119540000001 527.584963072657 -3.69273429896566E-05
364.119550000001 527.584978277716 -2.17222840319664E-05
364.119560000001 527.584993482775 -6.51722507427621E-06
364.119570000001 527.585008687834  8.68783365604031E-06


364.119561000001 527.584995003281 -4.99671932630008E-06
364.119562000001 527.584996523787 -3.47621335095027E-06
364.119563000001 527.584998044292 -1.95570760297414E-06
364.119564000001 527.584999564799 -4.352015139375E-07
364.119565000001 527.585001085304  1.08530434772547E-06


364.119564100001 527.584999716849 -2.83151052826724E-07
364.119564200001 527.584999868899 -1.31100591715949E-07
364.119564300001 527.58500002095  2.09502104553394E-08


364.119564210001 527.584999884105 -1.15895318231196E-07
364.119564220001 527.58499989931 -1.00690385806956E-07
364.119564230001 527.584999914515 -8.54851123222033E-08
364.119564240001 527.58499992972 -7.02800662111258E-08
364.119564250001 527.584999944925 -5.50750201000483E-08
364.119564260001 527.58499996013 -3.98699739889707E-08
364.119564270001 527.584999975335 -2.46650415647309E-08
364.119564280001 527.58499999054 -9.46010914049111E-09
364.119564290001 527.585000005745  5.74516434426187E-09


364.119564281001 527.58499999206 -7.9395476859645E-09
364.119564282001 527.584999993581 -6.41887254460016E-09
364.119564283001 527.584999995102 -4.89853846374899E-09
364.119564284001 527.584999996622 -3.37786332238466E-09
364.119564285001 527.584999998143 -1.85741555469576E-09
364.119564286001 527.584999999663 -3.36854100169148E-10
364.119564287001 527.585000001184  1.18370735435747E-09


364.119564286101 527.584999999815 -1.84854798135348E-10
364.119564286201 527.584999999967 -3.27418092638254E-11
364.119564286301 527.585000000119  1.19143805932254E-10


364.119564286211 527.584999999983 -1.75077730091289E-11
364.119564286221 527.584999999998 -2.38742359215394E-12
364.119564286231 527.585000000013  1.29602995002642E-11


364.119564286221 527.584999999998 -2.38742359215394E-12
364.119564286222 527.584999999999 -9.09494701772928E-13
364.119564286223 527.585000000001  6.82121026329696E-13

因此最后结果是:t=364.119564286222


评分

1

查看全部评分

TA的精华主题

TA的得分主题

 楼主| 发表于 2014-9-5 20:57 | 显示全部楼层
本帖最后由 wwallace 于 2014-9-5 20:58 编辑
香川群子 发表于 2014-9-5 20:40
计算过程如下:
t     计算值r                和目标值s的差
1  1.37985080208412 -526.205149197916

大师!膜拜!感谢!只能评这么多分了!最大能力感谢!

TA的精华主题

TA的得分主题

 楼主| 发表于 2014-9-5 22:20 | 显示全部楼层
香川群子 发表于 2014-9-5 20:32
这种小事情……也可以自己写代码,进行逼近计算求解。

为什么数据改变后不能自动加载宏??? 求t.zip (16.68 KB, 下载次数: 5)

TA的精华主题

TA的得分主题

发表于 2014-9-6 08:23 | 显示全部楼层
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-12-29 03:54 , Processed in 0.037759 second(s), 12 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表