Переместите значение ячейки в альтернативных строках в следующую и удалите пустую строку с помощью VBA / Excel - PullRequest
0 голосов
/ 26 февраля 2019

User Selection Before processing Selection After processing

Основываясь на изображениях выше, я хочу выбрать диапазон, который выглядит как первое изображение динамически и обрабатыватьэто в макет второго изображения.

Ниже приведен код, который я пытался выполнить, чтобы сделать это динамически.

Dim Myrange As Range
Dim Myrow As Range
Set Myrange = Selection
Dim strVal As String

For Each Myrow In Myrange.Rows
If Myrow.Row Mod 2 = 0 Then
strVal = Myrow.Columns(1).Cells
Myrow.Columns(1).Value = ""
Myrow.Offset(1, -1).Value = strVal
End If
Next Myrow

Нежелательный результат

Последнее изображение - это то, что я получаю при обработке выделения.Три ячейки вместо одной заменяются значениями в предыдущем ряду.

1 Ответ

0 голосов
/ 26 февраля 2019

Предполагая, что Участники - это столбец A, поместите эту формулу в A1 и перетащите вниз.

 =IF(ISNUMBER(LEFT(B1,1)), OFFSET(B1,-1,0),"")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...