返回列表 上一主題 發帖

[發問] 請問如何由一個儲存格判斷去更改連結的儲存格

[發問] 請問如何由一個儲存格判斷去更改連結的儲存格

請問如何由一個儲存格判斷去更改連結的儲存格

Book1.rar (3.29 KB)

c7552993

回復 1# c7552993
  1. Option Explicit
  2. Sub Ex() '請將所有下拉清單的巨集,都指定為此巨集.
  3.     Dim A
  4.     With ActiveSheet.Shapes(Application.Caller)
  5.         A = .OLEFormat.Object.Value             '下拉清單的數值
  6.         .TopLeftCell.Offset(, -1) = IIf(.Parent.[G1] <> "", .TopLeftCell.Offset(, 2), A)
  7.    End With
  8. End Sub
複製代碼
但是F欄的公式 :=IF(G$1="",C3,H2), 會使 Sub Ex() 這巨集白作工

TOP

回復 2# GBKEE


抱歉沒說詳細,如果G1等於空白
F欄等於C欄,G1不等於空白,C欄要等於H欄,我需要二種輸入,由表單輸入,與資料帶入,由資料帶入,表單與F欄要一至。 Book1.rar (8.18 KB)
c7552993

TOP

回復 3# c7552993
  1. Option Explicit
  2. Sub Ex() '請將所有下拉清單的巨集,都指定為此巨集.
  3. Dim A, A1, AA As String
  4.     With ActiveSheet.Shapes(Application.Caller)
  5.         A = .OLEFormat.Object.List(.OLEFormat.Object.ListCount) '下拉清單最後的數值
  6.         .Parent.Range(.OLEFormat.Object.LinkedCell) = IIf(.Parent.[G1] <> "", A, .OLEFormat.Object.Value)
  7.    End With
  8. End Sub
複製代碼

TOP

回復 4# GBKEE


    謝謝GBKEE版主耐心的指導,
抱歉還是沒說詳細,只需要C1=if(G1<>"",H1,C1)
C3=if(G1<>"",H3,C3)
C5=if(G1<>"",H5,C5)
C7=if(G1<>"",H7,C7)
因為C1,C3,C5,C7不能下公式,所以需要函式解決。 Book1.rar (8.07 KB)
c7552993

TOP

回復 5# c7552993
工作表函數 if(G1<>"",H1,C1)   = VBA 函數  IIf(.Parent.[G1] <> "", A, .OLEFormat.Object.Value)

H欄的數字不是每一個下拉清單 最後的數字
C欄的數字:  .OLEFormat.Object.Value
  1. A = .OLEFormat.Object.List(.OLEFormat.Object.ListCount) '下拉清單最後的數值
  2. .Parent.Range(.OLEFormat.Object.LinkedCell) = IIf(.Parent.[G1] <> "", A, .OLEFormat.Object.Value)
複製代碼


    .

TOP

        靜思自在 : 道德是提昇自我的明燈,不該是呵斥別人的鞭子。
返回列表 上一主題