Board logo

標題: [發問] 如何指定輸出的欄位 [打印本頁]

作者: acdx    時間: 2015-3-25 17:54     標題: 如何指定輸出的欄位

輸出欄位可否設定為讓使用者自行決定
例如:
計算2*3+5
A使用者想讓答案輸出在B5,
B使用者想輸出在C3
程式可以讓使用者在每一次執行時自行決定要輸出的欄位

請版上先進幫忙解惑了
作者: mark15jill    時間: 2015-3-25 18:26

1.共用? 不共用?
2.可考慮在開啟時,增加一個表單 或 提示訊息框 讓 使用者設定
作者: stillfish00    時間: 2015-3-25 20:19

懶得用自訂表單可以改用Application.InputBox
  1. Sub Test()
  2.     Dim rngTarget As Range
  3.    
  4.     On Error Resume Next
  5.     Set rngTarget = Application.InputBox(prompt:="選擇輸出儲存格", Type:=8)
  6.     If Err.Number <> 0 Then Exit Sub    'avoid cancel/esc error
  7.     On Error GoTo 0
  8.         
  9.     rngTarget.Value = 2 * 3 + 5
  10. End Sub
複製代碼
回復 1# acdx
作者: acdx    時間: 2015-3-27 10:13

回復 3# stillfish00
請問stillfish00, Type:=8的意思是?
作者: stillfish00    時間: 2015-3-27 10:57

回復 4# acdx
F1 , Application.InputBox的說明有寫
  1. 下列表格列出可以在 Type 引數中傳遞的值,它可以是單一值或值的總和。例如,對於同時可以接受文字及數字的輸入方塊,Type 就設定為 1 + 2。

  2. 值 意義
  3. 0 公式
  4. 1 數字
  5. 2 文字 (字串)
  6. 4 邏輯值 (True 或 False)
  7. 8 儲存格參照,視為 Range 物件
  8. 16 錯誤值,例如 #N/A
  9. 64 陣列值
複製代碼
Type設為8 , 表示只能輸入儲存格參照
你可以在跳出的視窗後 , 輸入框打入A1 , 或直接點選A1儲存格都可以
作者: GBKEE    時間: 2015-3-27 11:00

本帖最後由 GBKEE 於 2015-3-27 11:02 編輯

回復 4# acdx

VBA要精進 要多多 詳看VBA 的說明
InputBox  使用有分兩種  (方法,函數)
  1. InputBox 函數 顯示一對話方塊來做為提示,等使用者輸入文字或按下按鈕,並傳回包含文字方塊內容的String。
  2. 語法 InputBox(prompt[, title] [, default] [, xpos] [, ypos] [, helpfile, context])
  3. InputBox 函數的語法具有以下幾個指名引數:
  4. 單元 說明
  5. prompt 必要引數。用來做為對話方塊訊息的字串運算式。prompt 的最大長度大約是 1024 個字元,由使用字元的寬度來決定。如果 prompt 超過一行,您可以在各行之間用復位字元(Chr(13))、換行字元(Chr(10))或是復位字元與換行字元的組合 (Chr(13) & Chr(10)) 來做區隔。
  6. title 選擇性引數。顯示在對話方塊標題列的字串運算式。如果沒有 title,則以應用程式的名稱做為標題。
  7. default 選擇性引數。顯示在文字方塊中的字串運算式,在沒有提供其他輸入時做為預設值。如果沒有 default,則文字方塊就是空白的。
  8. xpos 選擇性引數。成對指定的數值運算式,用來指定對話方塊的左緣與螢幕左緣的水平距離。如果沒有 xpos,則對話方塊會出現在水平方向的中間。
  9. ypos 選擇性引數。成對指定的數值運算式,用來指定對話方塊的上緣與螢幕的上緣的距離。如果沒有 ypos,對話方塊會放置於螢幕垂直方向三分之一的位置。
  10. helpfile 選擇性引數。字串運算式,用來指定對話方塊文字感應說明的說明檔案。如果指定了 helpfile,則您也必須指定 context。
  11. context 選擇性引數。數值運算式,由說明檔案的作者指定給某個說明主題的說明主題代碼 。如果指定了 context,則也必須指定 helpfile。
複製代碼

作者: acdx    時間: 2015-3-27 12:12

感謝GBKEE與stillfish00
受益良多
作者: acdx    時間: 2015-7-6 18:13

為何會出現只能在儲存格內輸入參照而不能直接點選儲存格?這是在哪邊設定?
懶得用自訂表單可以改用Application.InputBox回復  acdx
stillfish00 發表於 2015-3-25 20:19

作者: acdx    時間: 2015-7-7 10:52

回復 8# acdx
後來發現前面有些了一行
Application.ScreenUpdating = False
將它改為
Application.ScreenUpdating = True
已可解決




歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)