By gardin9044 у вівторок, 10 травня 2022 р
Опубліковано в перевершувати
відповіді 1
симпатії 0
думки 5.5K
Голосів 0
Я використовую наступний код, наведений нижче. Я працюю добре, але це стирає формулу в одній із моїх клітинок. Як змінити цей код, щоб пропустити одну клітинку на моєму аркуші?

Sub MoveRowBasedOnCellValue()
'Оновлено Extendoffice 2017/11/10
Dim xRg As Range
Dim xCell As Range
Dim i As Long
Dim J As Long
Dim K As Long
i = Worksheets("Data").UsedRange.Rows.count
J = Worksheets("Completed").UsedRange.Rows.count
Якщо J = 1, то
Якщо Application.WorksheetFunction.CountA(Worksheets("Completed").UsedRange) = 0, тоді J = 0
End If
Установіть xRg = Worksheets("Data").Range("A1:A" & i)
On Error Resume Next
Application.ScreenUpdating = Невірний
Для K = 1 До xRg.ліч
Якщо CStr(xRg(K).Value) = "Завершено", Тоді
xRg(K).EntireRow.Copy Destination:=Worksheets("Completed").Range("A" & J + 1)

xRg(K).EntireRow.ClearContents


J = J + 1
End If
МАЙБУТНІ
Application.ScreenUpdating = True
Стовпці("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")
.Заголовок = xlYes
.MatchCase = помилково
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Застосувати
Application.Goto Reference:=Worksheets("Data").Range("A3")
Кінець з
Привіт там,

Ви випадково скопіювали лише частину коду, яка справді працювала? Оскільки наданий вами неповний.

У будь-якому випадку, щоб пропустити одну клітинку на аркуші, ви можете додати рядок, як показано на малюнку нижче. Не забудьте замінити клітинку $A$2 фактичною клітинкою, яку потрібно пропустити на аркуші.
пропустити cell.png


Якщо у вас є додаткові запитання, будь ласка, не соромтеся запитати мене.

Аманда
·
1 рік тому
·
0 Любить
·
0 голосів
·
0 Коментарі
·
Переглянути повне повідомлення