Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 22.08.2014, 16:12   #11
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

там вроде немного кода и по смыслу все довольно очевидно))
закомментируйте (или удалите)
Код:
If Target.Column <> 4 Then Exit Sub
и этот макрос начнет срабатывать по двойному клику по любой ячейке (а надо-ли???)
а в чем проблема - вставить формулу, не понимаю... например так:
Код:
Cells(r, 22).formula = "=today()"
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Старый 22.08.2014, 21:49   #12
smz1
Новичок
Джуниор
 
Регистрация: 22.08.2014
Сообщений: 3
По умолчанию

Цитата:
Сообщение от IgorGO Посмотреть сообщение
там вроде немного кода и по смыслу все довольно очевидно))
закомментируйте (или удалите)
Код:
If Target.Column <> 4 Then Exit Sub
Спасибо за ответ.
Попіытаюсь обьяснить.
Например.
Есть строки.
Наименование, размер, материал, и.т.д.
В какой то части таблицы мне необходимо добавить строку с таким же материалом,остальные(размер, наименование) очистить. "Кликаю" материал.
Где то добавить строку схожую по размеру остальные(наименование, материал) оставив пустыми. "Кликаю" размер
И.т.д.
Т.е. разные но назначенные ячейки - разные условия.
Из скрипта я понял как менять кликабельную ячкйку и как добавить очищаемые ячейки.
Я не рзобрался как на тот же лист поставить еще один скрипт с двойным кликом.
Может это невозможно?
.....
С формулой разобрался. Спасибо. Просто я "турист"
Когда увидел понял свою ошибку.

Последний раз редактировалось smz1; 22.08.2014 в 21:59.
smz1 вне форума Ответить с цитированием
Старый 23.08.2014, 02:14   #13
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

Цитата:
Я не рзобрался как на тот же лист поставить еще один скрипт с двойным кликом.
Может это невозможно?
1. это исключено
2. а зачем это нужно?

после того как получена копия исходной строки под ней
1) удаляем из нее все константы, включив обработку ошибок на случай отсутсвия констант в исходной строке
Код:
  On Error Resume Next
  Rows(target.Row + 1).SpecialCells(xlCellTypeConstants).ClearContents
  If Err Then Err.Clear
  On Error GoTo 0
2) копируем содержимое ячейки, в которой был двойной клик, в новую строку
Код:
  target.Offset(1, 0) = target
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Старый 23.08.2014, 10:21   #14
smz1
Новичок
Джуниор
 
Регистрация: 22.08.2014
Сообщений: 3
По умолчанию

Цитата:
Сообщение от IgorGO Посмотреть сообщение
1. это исключено
2. а зачем это нужно?
Большое спасибо, Игорь.
Вы меня поняли!
Именно это я и имел ввиду!
smz1 вне форума Ответить с цитированием
Старый 24.08.2014, 00:55   #15
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,166
По умолчанию

Цитата:
Сообщение от smz1 Посмотреть сообщение
как на тот же лист поставить еще один скрипт с двойным кликом.
Может это невозможно?
Невозможно, но возможно в одном скрипте анализировать target, и соответственно выполнять разные действия.
webmoney: E265281470651 Z422237915069 R418926282008
Hugo121 вне форума Ответить с цитированием
Старый 22.08.2017, 12:24   #16
aleksen
Новичок
Джуниор
 
Регистрация: 22.08.2017
Сообщений: 1
По умолчанию

Добавьте в скрипт

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim r As Long
If Target.Column <> 4 Then Exit Sub
Cancel = True: r = Target.Row + 1: Rows(r).Insert Shift:=xlDown
Target.EntireRow.Copy: Cells(r, 1).PasteSpecial Paste:=xlPasteValues
Cells(r, 9).ClearContents: Cells(r, 22) = Date: Cells(r, 26).Select
End Sub

условие - добавить 2 ячейки, после столбик I = 694.
По всему листу.
Без копирования данных.
Спасибо.
aleksen вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Копирование данных между листами с условием igorMalov Microsoft Office Excel 3 24.02.2012 11:03
Макрос: копирование строки с условием MaxxVer Microsoft Office Excel 9 05.12.2011 21:54
Копирование с условием (Макрос Excel) Gvaridos Microsoft Office Excel 0 09.12.2010 11:44
Автоматическое добавление строки или условное копирование формул. Возможно ли? PhilAT Microsoft Office Excel 8 24.04.2010 23:15
Копирование данных в другой документ с условием oleg544 Microsoft Office Excel 2 05.04.2010 11:12