鱼C论坛

 找回密码
 立即注册
查看: 1805|回复: 1

用VB写了个程序,但是出问题了,求助

[复制链接]
发表于 2020-10-10 16:51:19 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 oppear 于 2020-10-10 16:54 编辑

用Excel做了一个收益率评估模型,想再写一个敏感性分析的表,但是表格第一行算的没问题,从第二行开始之后,只有变量显示对了,其他两个因变量都保持不变,请各位大佬帮我康康

Sub plus()
    a = Sheet1.Cells(5, 3)  '定义a=单位千瓦造价
    b = Sheet1.Cells(23, 12) '定义b=自有资金收益率
    c = Sheet1.Cells(7, 3) '定义c=小时数
    d = Sheet1.Cells(5, 3) '记录原始单位千瓦造价
   
    k = 2
    n = 2
    Z = 2
   
    Sheet1.Cells(1, 24) = "小时数"
    Sheet1.Cells(1, 25) = "千瓦造价(静态)"
    Sheet1.Cells(1, 26) = "自有资金内部收益率(税后)"
   
    inc_zaojia = Sheet1.Cells(1, 18) '定义inc=造价增加量
    Max_zaojia = Sheet1.Cells(2, 18) '定义MAX=目标收益
    inc_xiaoshishu = Sheet1.Cells(3, 18) '定义ina=小时数增加量
    Max_xiaoshishu = Sheet1.Cells(4, 18) '定义小时数区间上限

   
    ActiveWorkbook.RefreshAll '刷新表格
    While (c <= Max_xiaoshishu)
        If (b < Max_zaojia) Then   '如果当前收益率<目标收益率,那么小时数不变的时候,增加造价会使收益率变低,因此造价应使其自减
            While (Abs(Max_zaojia - b) > 0.0005) '循环开始,判断(目标收益率和计算收益率之间的绝对差值)是否小于(目标收益率与计算收益率之间的最大差值)
                    a = a - inc_zaojia '造价减少
                    Sheet1.Cells(5, 3) = a '将新增造价赋予表格
                    ActiveWorkbook.RefreshAll '刷新表格
                    b = Sheet1.Cells(23, 12) '新的收益率计算值赋予b
            Wend '结束循环
        Else
            While (Abs(Max_zaojia - b) > 0.0005) '循环开始,判断(目标收益率和计算收益率之间的绝对差值)是否小于(目标收益率与计算收益率之间的最大差值)
                    a = a + inc_zaojia '造价增大
                    Sheet1.Cells(5, 3) = a '将新增造价赋予表格
                    ActiveWorkbook.RefreshAll '刷新表格
                    b = Sheet1.Cells(23, 12) '新的收益率计算值赋予b
            Wend '结束循环
        End If
        
        Sheet1.Cells(Z, 25) = a '将此时的单位千瓦造价赋予空表格
        Sheet1.Cells(k, 26) = b '将接近目标收益率的计算收益率赋予空表格
        Sheet1.Cells(n, 24) = c '将此时的小时数赋予空表格
        ActiveWorkbook.RefreshAll  '刷新表格
        
        c = c + inc_xiaoshishu  '小时数增加
        Sheet1.Cells(7, 3) = c  '将新增小时数赋予表格
        Sheet1.Cells(5, 3) = d  '将造价重置
        ActiveWorkbook.RefreshAll  '刷新表格
               
           
        n = n + 1
        Z = Z + 1
        k = k + 1
            
    Wend
End Sub
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-10-10 17:17:02 | 显示全部楼层
看这个太麻烦了,你直接给模版,给个需求比较简单
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-1-18 09:44

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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