Продолжение темы кросс:My WebPage Макрос №2: Если оператору потребуется добавить (№ п/п) то он нажимает кнопку (ДОБАВИТЬ ПОЗИЦИЮ) и макрос №2 копирует диапазон строк 39:58 (со всеми данными) и вставляет ниже (как бы добавляет). Оператор потом перебивает значения (данные) показания по другому конструктиву. С каждым добавлением он должен добавлять ниже предыдущего. Макрос №4: Если оператору потребуется добавить (№ п/п) в таблице №2 то он нажимает кнопку (ДОБАВИТЬ ПОЗИЦИЮ) и макрос №4 копирует диапазон строк 80:82 (со всеми данными) и вставляет ниже (как бы добавляет). Оператор потом перебивает значения (данные) показания по другому конструктиву. С каждым добавлением он должен добавлять ниже предыдущего. Возможно ли прописать подобные макросы??? Просто уже надоели КУЧИ файлов на 7 и 28 сутки да еще и на разные схемы и приборы (((( посидел по объединял показания и свел все в едино, осталось лишь прописать эти макросы чтоб еще и облегчить работу операторам (ускорить процесс так сказать). После чего еще пропишу формулы в зависимости от выбранных схем расчеты и получится самый безумный проект )))). Заранее вам спасибо огромное!!!
Продолжение темы кросс:My WebPage Макрос №2: Если оператору потребуется добавить (№ п/п) то он нажимает кнопку (ДОБАВИТЬ ПОЗИЦИЮ) и макрос №2 копирует диапазон строк 39:58 (со всеми данными) и вставляет ниже (как бы добавляет). Оператор потом перебивает значения (данные) показания по другому конструктиву. С каждым добавлением он должен добавлять ниже предыдущего. Макрос №4: Если оператору потребуется добавить (№ п/п) в таблице №2 то он нажимает кнопку (ДОБАВИТЬ ПОЗИЦИЮ) и макрос №4 копирует диапазон строк 80:82 (со всеми данными) и вставляет ниже (как бы добавляет). Оператор потом перебивает значения (данные) показания по другому конструктиву. С каждым добавлением он должен добавлять ниже предыдущего. Возможно ли прописать подобные макросы??? Просто уже надоели КУЧИ файлов на 7 и 28 сутки да еще и на разные схемы и приборы (((( посидел по объединял показания и свел все в едино, осталось лишь прописать эти макросы чтоб еще и облегчить работу операторам (ускорить процесс так сказать). После чего еще пропишу формулы в зависимости от выбранных схем расчеты и получится самый безумный проект )))). Заранее вам спасибо огромное!!!lebensvoll
Попытался сам записать как показывают ролики (типа учат) вот что получилось (((( тож не работает (((( [vba]
Код
Sub ДобавитьПозицию() ' ' ДобавитьПозицию Макрос ' При нажатии кнопки ДОБАВИТЬ ПОЗИЦИЮ копирует диапазон ячеек и вставляет их ниже '
' ActiveWindow.SmallScroll Down:=0 Rows("39:58").Select Selection.Copy Rows("59:59").Select Selection.Insert Shift:=xlDown End Sub
[/vba] Я то с этим не могу справиться не говоря уже о том что при каждом нажатии оператором добавление должно происходить после предыдущего (т.е. ниже каждого вставленного добавленного ранее)
Попытался сам записать как показывают ролики (типа учат) вот что получилось (((( тож не работает (((( [vba]
Код
Sub ДобавитьПозицию() ' ' ДобавитьПозицию Макрос ' При нажатии кнопки ДОБАВИТЬ ПОЗИЦИЮ копирует диапазон ячеек и вставляет их ниже '
' ActiveWindow.SmallScroll Down:=0 Rows("39:58").Select Selection.Copy Rows("59:59").Select Selection.Insert Shift:=xlDown End Sub
[/vba] Я то с этим не могу справиться не говоря уже о том что при каждом нажатии оператором добавление должно происходить после предыдущего (т.е. ниже каждого вставленного добавленного ранее)lebensvoll
Вроде бы я малость понимаю что у меня не так (((( В одной теме ТЕЗКА мне пояснял My WebPage
Цитата
Дата: Вторник, 22.03.2016, 12:51 | Сообщение № 8
Цитата
Тезка, там все просто - если первая строка кода содержит Private Sub Workbook..., то код должен находиться в модуле "ЭтаКнига" (розовый), иначе ищем Private Sub Worksheet..., если оно есть, то этот макрос должен быть в модуле листа (зеленый), а если нет и этого слова, то макрос может находиться где угодно (и в обычном модуле (голубой) тоже). Это все в общем случае и не учитывает "особо продвинутые" названия макросов типа Private Sub Worksheet_Moy_Makros, которые нормальные люди макросам не дают.
может я тут что путаю (((( ПРИ ПИСАНИИ???
Вроде бы я малость понимаю что у меня не так (((( В одной теме ТЕЗКА мне пояснял My WebPage
Цитата
Дата: Вторник, 22.03.2016, 12:51 | Сообщение № 8
Цитата
Тезка, там все просто - если первая строка кода содержит Private Sub Workbook..., то код должен находиться в модуле "ЭтаКнига" (розовый), иначе ищем Private Sub Worksheet..., если оно есть, то этот макрос должен быть в модуле листа (зеленый), а если нет и этого слова, то макрос может находиться где угодно (и в обычном модуле (голубой) тоже). Это все в общем случае и не учитывает "особо продвинутые" названия макросов типа Private Sub Worksheet_Moy_Makros, которые нормальные люди макросам не дают.
может я тут что путаю (((( ПРИ ПИСАНИИ???lebensvoll
Public Sub Add39_58() Dim r Application.ScreenUpdating = False r = Range("B:B").Find(What:="Примечание:", LookAt:=xlWhole).Row - 1 Range("A" & r & ":A" & r + 19).EntireRow.Insert Range("B39:B58").EntireRow.Copy Range("A" & r) Application.ScreenUpdating = True End Sub
[/vba] Файл заменила
Может, так подойдёт [vba]
Код
Public Sub Add39_58() Dim r Application.ScreenUpdating = False r = Range("B:B").Find(What:="Примечание:", LookAt:=xlWhole).Row - 1 Range("A" & r & ":A" & r + 19).EntireRow.Insert Range("B39:B58").EntireRow.Copy Range("A" & r) Application.ScreenUpdating = True End Sub
Pelena, Добрый вечер!!! Макрос ваш сработал, но как то что не то. Смотрите [img][/img] после нажатия кнопки, получается вот так вот (((( [img][/img] А куда изначально делись эти данные которые должны были добавляться после нажатия кнопки??? [img][/img] Подскажите мне нужно просто к своему файлу использовать макрос ВАШ МАКРОС и тогда они будут работать???
Pelena, Добрый вечер!!! Макрос ваш сработал, но как то что не то. Смотрите [img][/img] после нажатия кнопки, получается вот так вот (((( [img][/img] А куда изначально делись эти данные которые должны были добавляться после нажатия кнопки??? [img][/img] Подскажите мне нужно просто к своему файлу использовать макрос ВАШ МАКРОС и тогда они будут работать???lebensvoll
Кто бы ты ни был, мир в твоих руках
Сообщение отредактировал lebensvoll - Суббота, 16.04.2016, 23:17
Pelena, добрый день!!! Скопировал ваш макрос и изменил копируемые строки для таблицы №2 [vba]
Код
Public Sub Add39_58() Dim r Application.ScreenUpdating = False r = Range("B:B").Find(What:="Примечание:", LookAt:=xlWhole).Row - 1 Range("A" & r & ":A" & r + 19).EntireRow.Insert Range("B39:B58").EntireRow.Copy Range("A" & r) Application.ScreenUpdating = True End Sub
[/vba] [img][/img] И у меня не получилось ((( [vba]
Код
Public Sub Add39_58() Dim r Application.ScreenUpdating = False r = Range("B:B").Find(What:="Примечание:", LookAt:=xlWhole).Row - 1 Range("A" & r & ":A" & r + 3).EntireRow.Insert Range("B80:B82").EntireRow.Copy Range("A" & r) Application.ScreenUpdating = True End Sub
[/vba] Я так понимаю что скорее всего именно эта кнопка не привязана к данному макросу??? Или я вообще ни че не понимаю (((( что я не так сделал???
Pelena, добрый день!!! Скопировал ваш макрос и изменил копируемые строки для таблицы №2 [vba]
Код
Public Sub Add39_58() Dim r Application.ScreenUpdating = False r = Range("B:B").Find(What:="Примечание:", LookAt:=xlWhole).Row - 1 Range("A" & r & ":A" & r + 19).EntireRow.Insert Range("B39:B58").EntireRow.Copy Range("A" & r) Application.ScreenUpdating = True End Sub
[/vba] [img][/img] И у меня не получилось ((( [vba]
Код
Public Sub Add39_58() Dim r Application.ScreenUpdating = False r = Range("B:B").Find(What:="Примечание:", LookAt:=xlWhole).Row - 1 Range("A" & r & ":A" & r + 3).EntireRow.Insert Range("B80:B82").EntireRow.Copy Range("A" & r) Application.ScreenUpdating = True End Sub
[/vba] Я так понимаю что скорее всего именно эта кнопка не привязана к данному макросу??? Или я вообще ни че не понимаю (((( что я не так сделал???lebensvoll
Не надо просто копировать, попробуйте разобраться. В первом макросе я привязалась к слову Примечание под таблицей. Во втором макросе привяжитесь к слову Заключение
Не надо просто копировать, попробуйте разобраться. В первом макросе я привязалась к слову Примечание под таблицей. Во втором макросе привяжитесь к слову ЗаключениеPelena
"Черт возьми, Холмс! Но как??!!" Ю-money 41001765434816
Public Sub Add39_58() Dim r Application.ScreenUpdating = False r = Range("B:B").Find(What:="Заключение:", LookAt:=xlWhole).Row - 1 Range("A" & r & ":A" & r + 3).EntireRow.Insert Range("B80:B82").EntireRow.Copy Range("A" & r) Application.ScreenUpdating = True End Sub
[/vba] [img][/img]
Я привязался к ЗАКЛЮЧЕНИЮ [vba]
Код
Public Sub Add39_58() Dim r Application.ScreenUpdating = False r = Range("B:B").Find(What:="Заключение:", LookAt:=xlWhole).Row - 1 Range("A" & r & ":A" & r + 3).EntireRow.Insert Range("B80:B82").EntireRow.Copy Range("A" & r) Application.ScreenUpdating = True End Sub
Pelena, Все равно не получается (((( Смотрите что я заметил еще на самом листе "СКЛЕРОМЕТР" вы указали наименование своего макроса (если я правильно понял). [img][/img] Далее вы создаете модуль 1 и там прописываете его действие [vba]
Код
Public Sub Add39_58() Dim r Application.ScreenUpdating = False r = Range("B:B").Find(What:="Примечание:", LookAt:=xlWhole).Row - 1 Range("A" & r & ":A" & r + 19).EntireRow.Insert Range("B39:B58").EntireRow.Copy Range("A" & r) Application.ScreenUpdating = True End Sub
[/vba] Я должен просто продолжить в модуле 1 следующий макрос для другой кнопки [vba]
Код
Public Sub CommandButton3_Click() Dim r Application.ScreenUpdating = False r = Range("B:B").Find(What:="Заключение:", LookAt:=xlWhole).Row - 1 Range("A" & r & ":A" & r + 3).EntireRow.Insert Range("B80:B82").EntireRow.Copy Range("A" & r) Application.ScreenUpdating = True End Sub
[/vba] Но должен ли я на листе "СКЛЕРОМЕТР" указать CommandButton3 [img][/img]
Pelena, Все равно не получается (((( Смотрите что я заметил еще на самом листе "СКЛЕРОМЕТР" вы указали наименование своего макроса (если я правильно понял). [img][/img] Далее вы создаете модуль 1 и там прописываете его действие [vba]
Код
Public Sub Add39_58() Dim r Application.ScreenUpdating = False r = Range("B:B").Find(What:="Примечание:", LookAt:=xlWhole).Row - 1 Range("A" & r & ":A" & r + 19).EntireRow.Insert Range("B39:B58").EntireRow.Copy Range("A" & r) Application.ScreenUpdating = True End Sub
[/vba] Я должен просто продолжить в модуле 1 следующий макрос для другой кнопки [vba]
Код
Public Sub CommandButton3_Click() Dim r Application.ScreenUpdating = False r = Range("B:B").Find(What:="Заключение:", LookAt:=xlWhole).Row - 1 Range("A" & r & ":A" & r + 3).EntireRow.Insert Range("B80:B82").EntireRow.Copy Range("A" & r) Application.ScreenUpdating = True End Sub
[/vba] Но должен ли я на листе "СКЛЕРОМЕТР" указать CommandButton3 [img][/img]lebensvoll
Проще было бы сделать по аналогии: создать в модуле макрос с названием, скажем ADD80_82 и вызвать его из процедуры CommandButton3_Click() (из модуля листа)
Так как кнопка находится на листе, то и процедура CommandButton3_Click() должна быть в модуле листа, а не в модуле1
Моё сообщение №12 прочитали?
Проще было бы сделать по аналогии: создать в модуле макрос с названием, скажем ADD80_82 и вызвать его из процедуры CommandButton3_Click() (из модуля листа)
Так как кнопка находится на листе, то и процедура CommandButton3_Click() должна быть в модуле листа, а не в модуле1