1

У меня есть электронная таблица, в которой я ежедневно вводю значение в ячейки F58 и F59.

В F81 - начало столбца ячеек, содержащего значение ячейки F59 для каждого данного дня.

    F   
58  390.74  Dynamic Data

81  366.07  Static Data
82  363.98  
83  362.17  
84  360.74  
85  364.25  
86  363.5   
87  362.93  
88  365.05  
89  365.79  
90  368.56  
91  368.89  
92  368.32  
93  364.1   
94  ??????  Next Empty Cell

Есть ли способ, которым значение данных, введенное в ячейку F58, может быть автоматически добавлено в следующую пустую ячейку в столбце F?

2 ответа2

0

Вы можете написать простой макрос Excel для этого (поиск в Google, чтобы увидеть существующие) или просто использовать горячие клавиши Excel. + (клавиша "конец"), за которой следует клавиша "стрелка вниз" (или клавиша курсора). Переход к концу пробела в столбце. Поскольку между f58 и приведенным ниже столбцом есть пробел, вам придется дважды нажимать эти клавиши. Затем один раз в нижней части столбца (пока ваш палец все еще находится на клавише со стрелкой) еще раз нажмите клавишу со стрелкой, чтобы перейти к пустому пространству. Конечно, перед перемещением скопируйте значение ячейки с помощью ctrl-C и вставьте его в пустую ячейку с помощью ctrl-V.

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

0

Я думаю, что для этого вам понадобится VBA. Я предлагаю реализовать это, используя событие Worksheet_Change. Для этого откройте редактор VBA в Excel, нажав Alt+F11. Оттуда найдите редактируемый лист в списке объектов Microsoft Excel в левой части окна и дважды щелкните его.

Затем вставьте следующий код в текстовое поле, которое открывается справа (как показано выше).

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Me.Range("F58")) Is Nothing Then
    Range("F81").End(xlDown).Offset(1, 0) = Range("F58").Value
End If
End Sub

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

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .