返回列表 上一主題 發帖

註解為何次數受限呢?

註解為何次數受限呢?

各位前輩你們好!!   
      早安!
      為何?註解只容許9筆呢?
      如附檔說明
      請知道的前輩,不吝賜教謝謝再三!!
     上班囉!掰掰!!
  1. Sub 增資註解(註解 As String)
  2.     Dim S(), AR(), E As Variant, i As Integer, M As Variant
  3.     With Range("G2")
  4.         .NoteText .NoteText & IIf(.NoteText <> "", Chr(10), "") & 註解
  5.         i = 1
  6.         For Each E In Split(.NoteText, vbLf)
  7.              If E <> "" Then
  8.                  ReDim Preserve S(1 To i)
  9.                  S(i) = E
  10.                  ReDim Preserve AR(1 To i)
  11.                 AR(i) = CDbl(CDate(Split(E, "增資")(0)))
  12.                 i = i + 1
  13.             End If
  14.         Next
  15.         For i = 1 To UBound(AR)
  16.           M = Application.Large(AR, i)
  17.           M = Application.Match(M, AR, 0)
  18.             If i = 1 Then
  19.                 .NoteText ""
  20.                 .NoteText S(M)
  21.             Else
  22.                 .NoteText .NoteText & vbLf & S(M)
  23.             End If
  24.         Next
  25.         .Comment.Shape.TextFrame.AutoSize = True
  26.     End With
  27.     [F2].Select '暫借用
  28. End Sub
複製代碼

LeoV73-1.rar (16.45 KB)

回復 6# GBKEE
良師!! 謝謝!
         不好意思..真的很歹勢啦!!
         小弟疏忽囉!又讓你忙壞
         深感抱歉....!!謝謝再三!!

TOP

回復 5# myleoyes
有錯當改,不夠細心
  1. Dim S As Variant, E As Variant, A As Long
  2.     S = Split([G2].Comment.Text, vbLf)
複製代碼
感恩的心......(在麻辣家族討論區.用心學習會有進步的)
但資源無限,後援有限,  一天1元的贊助,人人有能力.

TOP

回復 4# GBKEE
良師!!
     雖然註解可以寫入但另一程式 sub 合計 ( )還是受限最多9筆
     如附檔LeoV73-2 與 LeoV73-2A說明
     請再修改sub 合計 ( )辛苦囉!謝謝再三!!
  1. Sub 增資註解(註解 As String)
  2.     With Range("G2")
  3.         If .Comment Is Nothing Then
  4.            .NoteText .NoteText & IIf(.NoteText <> "", Chr(10), "") & 註解
  5.         ElseIf [G2] <> "" Then
  6.            .Comment.Text .Comment.Text & IIf(.Comment.Text <> "", Chr(10), "") & 註解
  7.         End If
  8.         .Comment.Shape.TextFrame.AutoSize = True
  9.     End With
  10. End Sub
  11. Sub 合計()
  12.     [G1] = [G2].FormulaR1C1
  13.     [G1].NumberFormatLocal = """台""""幣"""
  14.     [G2].NumberFormatLocal = "#,##0_ ;[紅色]-#,##0 "
  15.     Dim S As Variant, E As Variant, A As Long
  16.     S = Split([G2].NoteText, vbLf)
  17.     For Each E In S
  18.         E = Replace(Replace(E, "增資", ","), "匯率", ",")
  19.         A = A + Val(Split(E, ",")(1)) * Val(Split(E, ",")(2))
  20.     Next
  21.     [G2] = A
  22.     Application.OnTime Now + TimeValue("00:00:03"), "恢復"
  23. End Sub
複製代碼

LeoV73-2A.rar (17.29 KB)

LeoV73-2.rar (17.71 KB)

TOP

回復 3# myleoyes
要新增到註解中的文字 (不超過 255 個字元)
     實太可惜也就是說無解囉!
     只好將就嚕!謝謝再三!!

怎會無解,不是改成如此
  1.   .Comment.Text .Comment.Text & IIf(.Comment.Text <> "", Chr(10), "") & 註解
複製代碼
感恩的心......(在麻辣家族討論區.用心學習會有進步的)
但資源無限,後援有限,  一天1元的贊助,人人有能力.

TOP

回復 2# GBKEE
良師!
     原程式是將最後寫入的註解放在最上面
     目的是方便日後資料龐大時
     比較容易對帳但
     卻受限 選擇性的 Variant
     要新增到註解中的文字 (不超過 255 個字元)
     實太可惜也就是說無解囉!
     只好將就嚕!謝謝再三!!

TOP

本帖最後由 GBKEE 於 2014-4-9 10:20 編輯

回復 1# myleoyes
詳看說明
  1. NoteText 方法
  2. expression.NoteText(Text, Start, Length)
  3. expression     必選。該運算式傳回 Range 物件。
  4. Text     選擇性的 Variant。要新增到註解中的文字 (不超過 255 個字元)。
複製代碼
  1. Sub 增資註解(註解 As String)
  2.     Dim S(), AR(), E As Variant, i As Integer, M As Variant
  3.     With Range("G2")
  4.         '.NoteText .NoteText & IIf(.NoteText <> "", Chr(10), "") & 註解
  5.         .Comment.Text .Comment.Text & IIf(.Comment.Text <> "", Chr(10), "") & 註解
  6.         .Comment.Shape.TextFrame.AutoSize = True
  7.     End With
  8.     [F2].Select '暫借用
  9. End Sub
複製代碼
感恩的心......(在麻辣家族討論區.用心學習會有進步的)
但資源無限,後援有限,  一天1元的贊助,人人有能力.

TOP

        靜思自在 : 謊言像一朵盛開的鮮花,外表美麗,生命短暫。
返回列表 上一主題