Board logo

標題: [發問] 求幫忙!有關重複輸入的資料是否可以自動覆蓋??? [打印本頁]

作者: afu9240    時間: 2018-5-10 15:24     標題: 求幫忙!有關重複輸入的資料是否可以自動覆蓋???

各位高手及超級版主大家好

               有一個問題想請教,附件如果將資料填完後 按執行存檔, 資料會儲存在工作表4,如果執行存檔遇到同樣的姓名時, 資料要如何自動覆蓋呢!!!!!!!!求幫忙  感恩[attach]28696[/attach][attach]28696[/attach]
作者: hcm19522    時間: 2018-5-10 16:20

C7:C10=LOOKUP(1,0/(工作表4!C$2:C$99=D$3)/(工作表4!B$2:B$99=F$3),OFFSET(工作表4!C$2,,ROW(A1),98))
作者: afu9240    時間: 2018-5-10 17:02

回復 2# hcm19522


    不行呢~~大大
作者: afu9240    時間: 2018-5-10 19:40

回復 2# hcm19522


    感謝h大回覆,這好像是公式,所以我不知如何用,感謝小誌版主給予建議,我以後會注意,這個網站真的是讓我受益良多,感謝前輩們的協助
作者: 准提部林    時間: 2018-5-10 22:24

如果執行存檔遇到同樣的姓名時

姓名有可能會重覆, 既然有[工號], 應是唯一的, 用[工號]來抓才是妥當吧!!
作者: 准提部林    時間: 2018-5-10 22:52

  1. Sub 登載()
  2. Dim FRng As Range, xR As Range, N%, U, T$
  3. If [F3] = "" Then MsgBox "工號未輸入!!": Exit Sub
  4. Set FRng = [工作表4!B:B].Find([F3], Lookat:=xlWhole)
  5. If Not FRng Is Nothing Then
  6.    Beep
  7.    If MsgBox("工號已存在,是否要覆蓋舊資料?   ", 4 + 32 + 256) = vbNo Then Exit Sub
  8. End If
  9. If FRng Is Nothing Then Set FRng = [工作表4!B65536].End(xlUp)(2)
  10. Set FRng = FRng(1, 0)
  11. For Each xR In [B3,F3,D3,C7,C8,C9,C10]
  12.     N = N + 1
  13.     FRng(1, N) = xR
  14. Next
  15. U = Val([C10])
  16. T = Switch(U <= 59, "丁", U >= 90, "優", U >= 80, "甲", U >= 70, "乙", U >= 60, "丙")
  17. N = N + 1: FRng(1, N) = T

  18. MsgBox "登載資料完成!!"
  19. End Sub
複製代碼

作者: afu9240    時間: 2018-5-11 08:29

回復 6# 准提部林


    感謝準大回復,我先研究一下!!!非常感謝
作者: afu9240    時間: 2018-5-11 09:02

回復 6# 准提部林


    準大 真的太感謝了 可以WORK

但請教一下下面螢光部分 我不太懂它的意思 可以請教嗎????感謝前輩

[attach]28705[/attach]
作者: 准提部林    時間: 2018-5-11 10:14

本帖最後由 准提部林 於 2018-5-12 12:05 編輯

回復 8# afu9240


http://forum.twbts.com/viewthread.php?tid=15644&rpid=84940

看七樓的說明
作者: hcm19522    時間: 2018-5-11 10:14

參考即可

http://blog.xuite.net/hcm19522/twblog/580029160
作者: imingho    時間: 2018-5-12 09:35

本帖最後由 imingho 於 2018-5-12 09:40 編輯

回復 1# afu9240
您原本程式碼的if判斷在加上一個Or Sheets("工作表4").Cells(i, 2) = Sheets("工作表1").Cells(3, 6) 就會自動覆蓋
  1. Sub EX()
  2. Dim i As Integer
  3. Dim y As Integer


  4. i = 2

  5.    Do
  6.     If Sheets("工作表4").Cells(i, 1) = "" Or Sheets("工作表4").Cells(i, 2) = Sheets("工作表1").Cells(3, 6) Then
  7.         Exit Do
  8.     End If
  9.         i = i + 1
  10.     Loop
  11.     Sheets("工作表4").Cells(i, 1) = Sheets("工作表1").Cells(3, 2)
  12.     Sheets("工作表4").Cells(i, 2) = Sheets("工作表1").Cells(3, 6)
  13.     Sheets("工作表4").Cells(i, 3) = Sheets("工作表1").Cells(3, 4)
  14.     Sheets("工作表4").Cells(i, 4) = Sheets("工作表1").Cells(7, 3)
  15.     Sheets("工作表4").Cells(i, 5) = Sheets("工作表1").Cells(8, 3)
  16.     Sheets("工作表4").Cells(i, 6) = Sheets("工作表1").Cells(9, 3)
  17.     Sheets("工作表4").Cells(i, 7) = Sheets("工作表1").Cells(10, 3)
  18.    

  19.    If Sheets("工作表4").Cells(i, 7) <= 59 Then
  20.       Sheets("工作表4").Cells(i, 8) = "丁"
  21.     End If
  22.    If Sheets("工作表4").Cells(i, 7) >= 60 Then
  23.        Sheets("工作表4").Cells(i, 8) = "丙"
  24.     End If
  25.     If Sheets("工作表4").Cells(i, 7) >= 70 Then
  26.          Sheets("工作表4").Cells(i, 8) = "乙"
  27.         End If
  28.     If Sheets("工作表4").Cells(i, 7) >= 80 Then
  29.          Sheets("工作表4").Cells(i, 8) = "甲"
  30.         End If
  31.    
  32.     If Sheets("工作表4").Cells(i, 7) >= 90 Then
  33.        Sheets("工作表4").Cells(i, 8) = "優"
  34.     End If
  35.    
  36.    
  37. End Sub
複製代碼

作者: afu9240    時間: 2018-5-14 13:46

回復 11# imingho

感謝i大回復!!!thanks*20000




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