返回列表 上一主題 發帖

[發問] 請問如何將sheet1的輸入資料貼上sheet2特定儲存格

[發問] 請問如何將sheet1的輸入資料貼上sheet2特定儲存格

如題要如何將學生成績>60的,例如輸入80分,判斷及格後貼到sheet2的B5儲存格,第二筆及格的貼到B6儲存格,第三筆及格貼至B7儲存格,最多貼三筆,當下一次再輸入新的成績時,先清空sheet2的三筆資料,並從第一筆B5再開始貼上,如此反覆執行!如附件.請前輩協助.thanks!!
apple

回復 8# Hsieh


    測試可以使用,謝謝ashan0418大及Hsieh大的協助,謝謝~
apple

TOP

回復 9# ashan0418


傳回兩個儲存格範圍的交集
詳細請參考Intersect說明
學海無涯_不恥下問

TOP

回復 8# Hsieh

Hsieh版主 :

    請問『Intersect(Target, Columns("C:C"))』這一段的功能是什麼??

TOP

回復 4# hpmatri

工作表1模組
  1. Private Sub Worksheet_Change(ByVal Target As Range)
  2. With 工作表2
  3. If Target.Count = 1 And Not Intersect(Target, Columns("C:C")) Is Nothing Then
  4.     If Target >= 60 Then
  5.        k = Application.CountA(.Range("B5:B7"))
  6.        If k = 3 Then .Range("B5:D7").ClearContents: k = 0
  7.        Target.Offset(, -2).Resize(, 3).Copy .[B5].Offset(k)
  8.     End If
  9. End If
  10. End With
  11.       
  12. End Sub
複製代碼
play.gif
學海無涯_不恥下問

TOP

回復 6# hpmatri


抱歉,忘了說明,是要貼在Sheet1的分頁中!!
如圖,請再試試!!

Snap1.jpg

TOP

回復 5# ashan0418


    大大您好:我有把您程式碼貼到excel測試,不過sheet1 輸入成績後不會copy 在sheet2,可否請大大再幫我測試看看,謝謝!!
apple

TOP

  1. Dim i As Integer, last_row As Integer
  2. Private Sub Worksheet_Change(ByVal Target As Range)
  3.     With Target
  4.         last_row = Selection.SpecialCells(xlCellTypeLastCell).Row
  5.         
  6.         If Selection.Column = 3 And Cells(last_row, 3).Value >= 60 Then
  7.                 i = i + 1

  8.                 Sheets("sheet2").Select
  9.                 If i Mod 3 = 1 Then
  10.                     Sheets("sheet2").Cells.Delete Shift:=xlUp
  11.                     Sheets("sheet2").Range("B5").Activate
  12.                 End If
  13.                 Sheets("sheet1").Select
  14.                 Range(Cells(last_row, 1), Cells(last_row, 3)).Copy
  15.                
  16.                 Sheets("sheet2").Select
  17.                 ActiveCell.PasteSpecial
  18.                 ActiveCell.Offset(1).Select
  19.                
  20.                 Sheets("sheet1").Select
  21.         End If
  22.     End With
  23. End Sub
複製代碼
回復 4# hpmatri

TOP

回復 2# ashan0418


    您好:輸入資料是一筆一筆輸入,採先進先出,第一筆及格填入b5,第二筆及格填入b6,第三筆填入b7,第四筆及格時先將sheet2前三筆清空,第四筆再填入b5,第五筆 填入b6,第六筆填入b7,第七筆及格後再將sheet2前三筆清空,再將第七筆填入b5,依此類推!
    謝謝你的回答,我目前權限不足無法下載檔案,可否請你貼上來這,我在copy到excel test,謝謝!!
apple

TOP

本帖最後由 ashan0418 於 2014-12-11 17:59 編輯

回復 1# hpmatri

取前三名用

test.zip (8.36 KB)

TOP

        靜思自在 : 有多少力量就做多少事,不要心存等待,等待才會落空。
返回列表 上一主題