By การ์ดิน9044 ในวันอังคารที่ 10 พฤษภาคม 2022
โพสต์ใน Excel
ตอบกลับ 1
การกดไลค์ 0
เข้าชม 5.7K
โหวต 0
ฉันใช้รหัสต่อไปนี้ตามรายการด้านล่าง ฉันทำงานได้ดี แต่จะล้างสูตรในเซลล์ใดเซลล์หนึ่งของฉัน ฉันจะแก้ไขรหัสนี้เพื่อข้ามหนึ่งเซลล์ในชีตของฉันได้อย่างไร

Sub MoveRowBasedOnCellValue ()
'ปรับปรุงโดย Extendoffice 2017/11/10
Dim xRg เป็นช่วง
Dim xCell เป็นช่วง
มืดมนตราบนานเท่านาน
Dim J ตราบ
หรี่ K ตราบ
i = แผ่นงาน ("ข้อมูล") ใช้ช่วง.Rows.count
J = แผ่นงาน ("เสร็จสิ้น") UsedRange.Rows.count
ถ้า J = 1 แล้ว
ถ้า Application.WorksheetFunction.CountA(Worksheets("Completed")).UsedRange) = 0 แล้ว J = 0
End If
ตั้งค่า xRg = แผ่นงาน ("ข้อมูล") ช่วง ("A1:A" & i)
เกี่ยวกับข้อผิดพลาดต่อไป
Application.ScreenUpdating = เท็จ
สำหรับ K = 1 ถึง xRg.count
ถ้า CStr(xRg(K).Value) = "เสร็จสิ้น" แล้ว
xRg(K).EntireRow.Copy Destination:=Worksheets("Completed")).Range("A" & J + 1)

xRg(K).แถวทั้งหมด.ล้างเนื้อหา


เจ = เจ + 1
End If
ถัดไป
Application.ScreenUpdating = จริง
คอลัมน์ ("A:A") เลือก
ActiveWorkbook.Worksheets("Data").Sort.SortFields.Clear
ActiveWorkbook.Worksheets("Data") .Sort.SortFields.Add2 Key:=Range("A3:A16") _
, SortOn:=xlSortOnValues, ลำดับ:=xlAscending, DataOption:=xlSortNormal
ด้วย ActiveWorkbook.Worksheets("Data").Sort
.SetRange Range("A2:Q16")
.Header = xlใช่
.MatchCase = เท็จ
.การวางแนว = xlTopToBottom
.SortMethod = xlPinYin
.นำมาใช้
Application.Goto Reference:=Worksheets("Data")).Range("A3")
จบด้วย
สวัสดี,

คุณตั้งใจคัดลอกโค้ดที่ใช้งานได้จริงเพียงบางส่วนโดยไม่ได้ตั้งใจใช่หรือไม่ เนื่องจากรายการที่คุณให้มานั้นไม่สมบูรณ์

อย่างไรก็ตาม หากต้องการข้ามหนึ่งเซลล์ในชีตของคุณ คุณสามารถเพิ่มสตริงตามที่แสดงในภาพด้านล่าง อย่าลืมแทนที่เซลล์ $A$2 ด้วยเซลล์จริงที่จะข้ามไปในชีตของคุณ
ข้าม cell.png


หากคุณมีคำถามเพิ่มเติม โปรดอย่าลังเลที่จะถามฉัน

อแมนดา
·
1 ปีที่ผ่านมา
·
0 ชอบ
·
0 คะแนน
·
0 คอมเมนต์
·
ดูโพสต์แบบเต็ม