返回列表 上一主題 發帖

如何在sheet1輸入資料指定到sheet2或sheet3

按鈕問題



請問我該如何設定「按下按鈕」
金額2000元就會自動跑到B9儲存格?

TOP

本帖最後由 flutist 於 2012-11-20 15:47 編輯

圖片中綠色部份是我要輸入的地方
而當我輸入2月和豐源和3000
則金額3000會自動跑到C10儲存格,但B9的2000仍然要在哦

TOP

本帖最後由 GBKEE 於 2012-11-20 16:53 編輯

回復 2# flutist
試試看
  1. Option Explicit
  2. Sub Ex()
  3.     Dim 月份 As Range, 廠商 As Range
  4.     With [A8]
  5.         Set 月份 = Range(.Cells, .Cells.End(xlToRight)).Find([A2], LookAT:=xlWhole)
  6.         Set 廠商 = Range(.Cells, .Cells.End(xlDown)).Find([B2])
  7.         Cells(廠商.Row, 月份.Column) = [C2]
  8.     End With
  9. End Sub
複製代碼

TOP



請問它出現這個字樣,我應該貼這裡對嗎?

TOP

回復 4# flutist
可能是貼上時沒貼到。
  1. Option Explicit
複製代碼

TOP

回復 4# flutist


Option Explicit
放在最上面

  多做多想多學習,少看少錯少迷途

  多做=多多練習,多多編寫。
  多想=想想為什麼人家程式要那樣寫,如果換成自己,又會怎寫。
  多學習=學習人家的發問並解答,學習人家的寫法

  少看=只看不做也枉然

TOP

回復 4# flutist
不好意思,如 5# c_c_lai 說的我少貼一個 O,關於程式碼你尚需多練習程式是如何寫的
以下程式碼同2#的程式碼
  1. Option Explicit '在模組層次中強迫每個在模組裏的變數都必須明確的宣告。
  2. 'Option Explicit 請注意 Option Explicit 陳述式必出現在模組裏,且在任何程序之前
  3. '程序中間不可再宣告其他的Sub程序
  4. Sub 按鈕_Click()  '宣告Sub 程序名稱為"按鈕_Click"
  5. 'Sub Ex()   '宣告Sub 程序名稱為"Ex"
  6. 'End Sub    'End 陳述式 結束一個程序或區塊
  7.     Dim 月份 As Range, 廠商 As Range
  8.     With [A8]
  9.         Set 月份 = Range(.Cells, .Cells.End(xlToRight)).Find([A2], LookAT:=xlWhole)
  10.         Set 廠商 = Range(.Cells, .Cells.End(xlDown)).Find([B2])
  11.         Cells(廠商.Row, 月份.Column) = [C2]
  12.     End With
  13. End Sub
複製代碼

TOP

謝謝解答,我的問題解決了

但還有另外一個問題

假設我的報表如圖A8~D11是分佈在3個Sheet

我要如何做修改,剛剛想了好久都沒想出來

TOP

如何在sheet1輸入資料指定到sheet2或sheet3

1.JPG





請問
我在sheet1(圖一)綠色地方輸入月份、廠商名稱、金額
按下按鈕之後
金額會跑到sheet2(圖二)和sheet3(圖三)符合相同廠商的名字的儲存格

這樣設計會出現沒有設定物件變數,需修改哪裡?

Sub 按鈕1_Click()
    Dim 月份As Range,廠商As Range
    With Sheets("Sheet2").Range("A8")
        Set 月份 = Sheets("Sheet2").Range(.Cells, .Cells.End(xlToRight)).Find([A2], LookAT:=xlWhole)
        Set 廠商 = Sheets("Sheet2").Range(.Cells, .Cells.End(xlDown)).Find([B2])
        Sheets("Sheet2").Cells(廠商.Row,月份.Column) = Sheets("Sheet1").Range("C2")
    End With
   
    With Sheets("Sheet3").Range("A8")
        Set 月份 = Sheets("Sheet3").Range(.Cells, .Cells.End(xlToRight)).Find([A2], LookAT:=xlWhole)
        Set 廠商 = Sheets("Sheet3").Range(.Cells, .Cells.End(xlDown)).Find([B2])
        Sheets("Sheet3").Cells(廠商.Row, 月份.Column) = Sheets("Sheet1").Range("C2")
    End With
End Sub

TOP

        靜思自在 : 犯錯出懺悔心,才能清淨無煩惱。
返回列表 上一主題