Board logo

標題: 如何寫~重復的資料將取代原有的資料 [打印本頁]

作者: zcxzcxz    時間: 2011-8-12 09:15     標題: 如何寫~重復的資料將取代原有的資料

請教各位高手大老們

我想用『自訂表單』方式輸入資料,
會在a2 b2 c2 d2 e2 f2 g2新增一筆資料
以此類推
a3 b3 c3 d3 e3 f3 g3
a4 b4 c4 d4 e4 f4 g4
如果在新增資料時,判斷a欄位有重復的資料時,將取代原有那『一整列』存在的資料

要那如何寫呢:dizzy:
作者: hugh0620    時間: 2011-8-12 13:16

回復 1# zcxzcxz

簡單的寫法(沒有防呆唷)
  1. Private Sub CommandButton1_Click()
  2. A = TextBox1.Text  '列數
  3. Range("A" & A) = TextBox2.Text
  4. Range("B" & A) = TextBox3.Text
  5. Range("C" & A) = TextBox4.Text
  6. Range("D" & A) = TextBox5.Text
  7. Range("E" & A) = TextBox6.Text
  8. Range("F" & A) = TextBox7.Text
  9. Range("G" & A) = TextBox8.Text
  10. End Sub
複製代碼
[attach]7382[/attach]
作者: zcxzcxz    時間: 2011-8-12 17:23

回復 2# hugh0620


    Private Sub CommandButton3_Click()
    Sheets("維修進度記錄表").Select
    Range("A1").Select
    Range("A65536").Select
    Selection.End(xlUp).Select
    ActiveCell.Offset(0, 0).Range("A2") = TextBox1.Text
    ActiveCell.Offset(0, 0).Range("B2") = TextBox2.Text
    ActiveCell.Offset(0, 0).Range("C2") = TextBox3.Text
    ActiveCell.Offset(0, 0).Range("D2") = TextBox4.Text
    ActiveCell.Offset(0, 0).Range("E2") = TextBox5.Text
    ActiveCell.Offset(0, 0).Range("F2") = TextBox6.Text
    ActiveCell.Offset(0, 0).Range("G2") = TextBox7.Text
    ActiveCell.Offset(0, 0).Range("H2") = TextBox8.Text
    ActiveCell.Offset(0, 0).Range("I2") = TextBox9.Text
    ActiveCell.Offset(0, 0).Range("J2") = TextBox10.Text
    ActiveCell.Offset(0, 0).Range("K2") = TextBox11.Text
End Sub
------------------------------------------------------
我的欄位a是主要的單號,是唯一性的,但其他欄位內容狀況常會變動,『b~k欄位』
因為筆數量太大,當有異動時,就需抓出資料列出來整筆修改,所以我設了一個表單,在輸入資料時,如果發現單號有重復
希望可以自動的取代b~k欄位的資料,而a欄單號則是不會新增一筆資料,而是將之前舊有的欄位資料做更新
------------------------------------------------------
有什麼方法可以做到嗎???麻煩您了:dizzy:
作者: hugh0620    時間: 2011-8-12 19:02

  1. Private Sub ComboBox1_Change()
  2. Set A = Sheet1.Columns("A").Find(ComboBox1.Text, LookIn:=xlValues)
  3. A = A.Row
  4. TextBox3.Text = Range("B" & A)
  5. TextBox4.Text = Range("C" & A)
  6. TextBox5.Text = Range("D" & A)
  7. TextBox6.Text = Range("E" & A)
  8. TextBox7.Text = Range("F" & A)
  9. TextBox8.Text = Range("G" & A)
  10. End Sub

  11. Private Sub CommandButton1_Click()
  12. Set A = Sheet1.Columns("A").Find(ComboBox1.Text, LookIn:=xlValues)
  13. A = A.Row
  14. Range("B" & A) = TextBox3.Text
  15. Range("C" & A) = TextBox4.Text
  16. Range("D" & A) = TextBox5.Text
  17. Range("E" & A) = TextBox6.Text
  18. Range("F" & A) = TextBox7.Text
  19. Range("G" & A) = TextBox8.Text
  20. End Sub

  21. Private Sub UserForm_Activate()
  22. UserForm1.ComboBox1.RowSource = "A1:A10"
  23. End Sub
複製代碼
回復 4# zcxzcxz



[attach]7396[/attach]
作者: zcxzcxz    時間: 2011-8-15 13:26

回復 5# hugh0620


    感謝大大不吝嗇賜教~:victory:




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