返回列表 上一主題 發帖

複製公式

複製公式

各位前輩你們好!!   
    假設A3=1,A4=2,A5=3
    Sub Ex()
        Dim Rng As Range, e As Range
        If [A3] = "" Then
           [AH1] = "=SUM(INDIRECT(""AH3:AH1200""))"
           [AH2] = "=$A3&""筆"""
        ElseIf [A3] <> "" Then
           With Sheet3
              Set Rng = .Range("AH1", .Range("ZZ1").End(xlToLeft))
              Set e = Rng(1, Rng.Columns.Count + 1)
           End With
           Set Rng = Range("AH1:AH2")
           Rng.Copy e
        End If
   End Sub
   執行結果AI1與AH1公式都相同
           AI2與AH2公式也相同
   應該如下
   當第一次按鈕
        AH1=SUM(INDIRECT("AH3:AH1200"))
        AH2=$A3&"筆"
   第二次按鈕
        AI1=SUM(INDIRECT("AI3:AI1200"))
        AI2=$A4&"筆"
   第三次按鈕
        AJ1=SUM(INDIRECT("AJ3:AJ1200"))
        AJ2=$A5&"筆"
   以此類推請問程式如何修改?
   請知道的前輩,不吝賜教謝謝再三!!

回復 2# GBKEE
良師!謝謝!!不能為值要的是公式
          範例的 AI1=SUM(INDIRECT("AI3:AI1200"))
                       AI2=$A4&"筆"
                      AJ1=SUM(INDIRECT("AJ3:AJ1200"))
                      AJ2=$A5&"筆"
           請再麻煩指導!!
          再請教另一問題與本問題是相關連的
         辛苦囉!請不吝賜教謝謝再三!!

LeoV78.rar (273.26 KB)

TOP

回復 4# GBKEE
良師!謝謝!!不知結算程式是否有解??
        請不吝賜教謝謝再三!!

TOP

回復 6# GBKEE
良師!
     不好意思!因為電腦的硬碟掛了!
     換新重灌所以耽誤了時間抱歉
     小弟已附上檔案請參考看看
     只請半天假,趕上班掰掰!!
     辛苦囉!謝謝再三!!

LeoV78-2.rar (15.95 KB)

TOP

回復 8# GBKEE
良師!謝謝!!
        程式錯誤1004?
        錯誤!!在此列  Rng(2).Offset(, i) = "=ROUND(R" & ii & "c6 *" & [M3] & ",2)"
       小弟能力不足無法修改請麻煩修正辛苦囉!謝謝再三!!

TOP

回復 8# GBKEE
良師!謝謝!!
       抱歉!!因為硬碟掛了最近的資料全毀
      無奈!請將就吧!辛苦囉謝謝再三!!

LeoV78-2A.rar (15.62 KB)

TOP

回復 11# GBKEE
良師!謝謝!!
        抱歉!急著復原資料卻忘了M3的數據
         M3為任意數字範例為0.0254
        現在程式可以執行但結果並非所需
        差異之處附檔說明LeoV78-2B表示
       測試檔LeoV78-2A
       請不吝賜教真的辛苦囉謝謝再三!!

LeoV78-2B.rar (581.15 KB)

LeoV78-2A.rar (16.9 KB)

TOP

回復 13# GBKEE
良師!謝謝!!
     #假設投入每月配息基金,且配息額非固定額#
     在5月4日與5月9日分別買入2筆基金
     在5月底配息所以AH3:AI3是2筆的各別配息額
     Z3為配息日期
     在6月14日再買入1筆基金
     在6月底配息所以AH4:AJ4是共3筆的各別配息額
     Z4為配息日期
     以此類推...詳記投資狀態
     模擬8月贖回5月9日的(第2筆)基金
     所以程式會將A4(編號2)變成 0
     也就是說每當任何被贖回的基金編號都會變為 0
     好讓AI2=0組做為程式參照用
     恰巧8月份也沒有買入基金
     在8月底沒贖回的基金息照樣配
     贖回的就沒有配所以AH6:AK6是共3筆的各別配息額
     A4=0(AI2=0組已贖回)所以AI6="",所以只配3筆
     話到此是否納悶?!!為何要建立AH,AI..等等欄的目的
     因為當投資的時間久遠與筆數變多
     當贖回時到底是損益多少??
     尤其是每月有配息且非固定額真的是不道配多少息..
     唯有將數字變成數據才能找到獲利的不二法則
     然而學Excel最迷人的地方就是"模擬"
     透過"精準的數據模擬"就能看到未來值!!
     這是心得.....晚安!!謝謝再三!!

TOP

回復 15# GBKEE
良師! 謝謝!!請看清楚動畫                                       
請按5月鈕再請看清楚AH3:AI3的數據                                       
AH3:AI3是同時有數據 , 再清除資料                                       
請按良師鈕再請看清楚AH3:AI3的數據                                       
AH3有數據 , 但是AI3卻是空白的                                       
別忘了5月份是買2筆                                       
但卻只配1筆息,請問另一筆息在哪裡???                                       
因為良師的程式是階梯式的方式                                       
只要遇到當月份同時有2筆以上登入會出錯                                       
是程式錯誤的地方你是否注意到呢?                                       
程式不能單單A3對AH3 , A4對AI4 , A5對AJ5                                       
這對每月只買1筆適用,如果每月買多筆是錯誤的                                       
不是嗎?良師明白否?
再附檔試看看辛苦囉!謝謝再三!!

LeoV78.gif (239.11 KB)

LeoV78.gif

LeoV78-2C.rar (16.01 KB)

TOP

回復 17# GBKEE
良師! 非常的謝謝!!
        程式對囉!但卻遺漏 0筆的狀況
                Cells(R, C) = "=ROUND(r" & i & "c6 *" & [M3] & ",2)" 此列
        修改如下
               If Cells(2, C) <> "0筆" Then  Cells(R, C) = "=ROUND(r" & i & "c6 *" & [M3] & ",2)"
         即可真是辛苦你囉!!小弟由衷感激....盡在不言中
              在此誠摯的祝福..... 您與各大版主及各位前輩們!
                                                 新年快樂!!
                一馬當先  躍望一整年.....   感謝大家的教導讓小弟不斷的成長
              謝謝再三!!

TOP

        靜思自在 : 不要隨心所欲,要隨心教育自己。
返回列表 上一主題