Макрос Excel для автоматического ввода данных - PullRequest
0 голосов
/ 16 марта 2012

Мне нужен макрос, чтобы помочь мне с вводом данных в Excel.В основном я хочу sheet 1 для ввода данных и sheet 2 для вводимых данных.Sheet 1 будет иметь только одну строку для ввода данных, и как только эта строка будет заполнена, вы нажмете Enter.Строка автоматически добавляется в таблицу в sheet 2, а строка очищается в sheet 1.Теперь вы готовы ввести еще одну запись в sheet 2.

Таким образом, для суммирования sheet 2 будет иметь несколько строк для введенных данных, а sheet 1 будет иметь только 1 строку, поскольку он автоматически очищает свою строку послекаждая запись.

Возможно ли что-то подобное ??Если вы, ребята, можете опубликовать какой-нибудь код для меня, это действительно поможет, и помните, что я никогда не программировал на VBA раньше.Заранее спасибо !!

Ответы [ 4 ]

2 голосов
/ 16 марта 2012

Поместите кнопку на листе 1, затем поместите этот макрос в обычный модуль кода и прикрепите его к своей кнопке.Предполагая, что вы вводите значения в строке 2 (строка 1 - заголовки или что-то подобное), данные из строки 2 будут перенесены в следующую пустую строку на листе 2:

Sub Transfer()
    Rows(2).Copy Sheets("Sheet2").Range("A" & Rows.Count).End(xlUp).Offset(1)
    Rows(2).ClearContents
End Sub
1 голос
/ 16 марта 2012

Я не совсем уверен в сценарии использования, но рассматривали ли вы вместо этого использование пользовательских форм Excel.

Вводом будет форма, которая на самом деле появляется перед пользователем и которая собирает данные. Когда они нажимают кнопку ввода, вы можете получить базовый код для обновления основного листа, Лист 2.

http://www.excel -vba-easy.com / VBA-UserForm-первенствует-vba.html

0 голосов
/ 17 марта 2012

Чтобы не «нажимать» на кнопку, я бы посоветовал изучить эту функцию:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

End Sub

Этот макрос будет запускаться каждый раз, когда что-то на вашем листе изменяется.Возможно, вам придется проверить, есть ли данные в ячейке A1, так как этот VBA может быть запущен как после нажатия Enter, так и после переноса данных на другой лист.

0 голосов
/ 16 марта 2012

Вы также можете использовать форму базы данных. настройте свой лист базы данных, затем Данные> Форма (в 2003 году)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...