Поиск  Пользователи  Правила 
Закрыть
Логин:
Пароль:
Забыли свой пароль?
Регистрация
Войти
 
Выбрать дату в календареВыбрать дату в календаре

Страницы: 1
Макрос работает с ошибками или перестает работать, если открыты другие книги
 
Спасибо большое за ответы. И прошу прощение за такое краткое описание проблемы. Мой код макроса очень большой, я его не могу скопировить в форум. Мой основной макрос пропускает через встроенную  кнопку insert нужный файл для анализа данных. Этот файл генерируется как временный и я его могу сохранить или удалить. Основной макрос при загрузке нужного файла закрывается. Если же у меня открыты любые другие эксель файлы, то происходит ошибка, после того как я пытаюсь второй раз запустить макрос. Основной макрос как бы за кулисами работает и пытается обратиться к открытым файлам. Выход только один: закрыть ВСЕ и открыть только то что необходимо.
в интернете не нашла прямого решения, пыталась использовать application.EnableEvents, application ontime.

буду премного благодарна, если у кого- то есть другие альтернативные решения.
спасибо...
Макрос работает с ошибками или перестает работать, если открыты другие книги
 
Привет любителям экселя,

можете дать подсказку, где искать ошибку. Мой макрос очень большой, чтобы его высылать. Попробую описать ситуацию.
если у меня открыты другие ексель файлы, то макрос выдает ошибку или если работает, то выполняет неверные действия.
на что мне в коде нужно обратить внимание?

заранее благодарю,
Екатерина  
Макрос сравнить две таблицы на разных листах и выделить цветом несовпадение, Макрос сравнение двух таблиц на разных листах
 
Уважаемые любителя экселя,
прошу Вас помочь расширить код Mershik. Код работает прекрасно, но необходимо его немного расширить.

Моя проблема заключается в том что функция Find находит первое значение в ячейке и выделяет его цветом. Если в ячейке несколько слов. то они уже не выделяются цветом, а мне нужно, чтобы маркировались все значения в столбце А, на листе В. лист "как длжно быть" показан в примере в приложении.

что делает код описаный выше: (пример  example 3 в приложении)
в каждом листе первай столбец (всегда столбец А) в листе А и В содержит текст. Этот текст разбивается по словам начиная со второй колонки(всегда со второй колонки и и так несколько колонок в зависимости от того,сколько слов в ячейке. Слова в ячейке всегда разбиты новым абзацом.
код сравнивает столбцы начиная с второго столбца в двух листах А и В. Таким обазом сравнивает лист А ячейку В1 с ячейкой В1 листа В, затем ячейку В2 лист А с ячейкой В2 листа В, затем ячейку С3 лист А с ячейкой С3 листа В и тд по всем ячейкам. Если код не находит совпадение то маркирует несовпадающее слово зеленым цветом в листе В.

Код должен также обращать внимание на порядок слов. Так например в листе В в строке 5, слово watermelon два раза разбито, в листе А один раз, только второе слово должно выделяться цветом, так как первое слово совпадает с листом А.

Надеюсь не запутала.

Огромное спасибо за помощь.
пример в приложении.
макрос на смещение ячеек со словамии влево, так чтобы не оставались пустые ячейки, макрос на смещение ячеек влево, так чтобы не оставались пустые ячейки
 
Спасибо большое! Оба варианта работают хорошо теперь.
С уважением,
Екатерина
макрос на смещение ячеек со словамии влево, так чтобы не оставались пустые ячейки, макрос на смещение ячеек влево, так чтобы не оставались пустые ячейки
 
спасибо большое за ответы. Я поменяла строку в коде, как написал Kuzmich.Код работает только на пример 2. Как только я меняю количество пустых ячеек между словами, макрос сдвигает слова,но пустые ячейки все равно остаются. Вкладываю новый пример и как должно быть.
Макрос от Andrey VG -также огромное спасибо!- выдает ошибку, когда я запускаю макрос
ReDim arrOut(1 To UBound(vData, 1), 1 To UBound(vData, 2))
что то в этой строке ему не нравится.
Благодарю за помощь
макрос на смещение ячеек со словамии влево, так чтобы не оставались пустые ячейки, макрос на смещение ячеек влево, так чтобы не оставались пустые ячейки
 
Proshu procheniya, srazu ne ponyala. Visilayu primer, v nem list kak dolzhno bit.
макрос на смещение ячеек со словамии влево, так чтобы не оставались пустые ячейки, макрос на смещение ячеек влево, так чтобы не оставались пустые ячейки
 
Макрос переносит последние два слова watermelon на строчку выше
макрос на смещение ячеек со словамии влево, так чтобы не оставались пустые ячейки, макрос на смещение ячеек влево, так чтобы не оставались пустые ячейки
 
primer do primeneniya makrosa
applesapplesapples
xxxstrawberrywatermelon
strawberrywatermelon
pears
appleswatermelonwatermelon
kak dolzhno bit:
applesapplesapples
xxxstrawberrywatermelon
strawberrywatermelon
pears
appleswatermelonwatermelon
Изменено: Екатерина - 11 окт 2020 17:55:44 (nekorrektoe kopierivanie)
макрос на смещение ячеек со словамии влево, так чтобы не оставались пустые ячейки, макрос на смещение ячеек влево, так чтобы не оставались пустые ячейки
 
Спасибо большое за ответ, Kuzmich! К сожалению, код не совсем смещает слова, а перемещает на другие строчки. Допустим если в строке A5 три слова через пустую ячейку, он перемещает слово на другую строку. Код не должен переписывать слова, а лишь сдвигать влево на первую свободную ячейку в строке. Так чтобы в итоге не было пустых ячеек между словами в строке.
заранее благодарю за ответ!
макрос на смещение ячеек со словамии влево, так чтобы не оставались пустые ячейки, макрос на смещение ячеек влево, так чтобы не оставались пустые ячейки
 
stranno on dolzhen bit vo vlozhennom faile:


Sub smeshenie_slov()
Dim i As Integer
Dim k As Integer
Dim lr As Long
Dim lcol As Long


lr = Worksheets("A").cells(Rows.Count, 1).End(xlUp).Row
For i = 1 To lr

lcol = Worksheets("A").cells(i, Columns.Count).End(xlToLeft).Column
For k = 2 To lcol

If cells(i, k) = "" And cells(i, k + 1) <> "" Then
Range(cells(i, k + 1).Address).Select
Selection.Cut
Range(cells(i, k).Address).Select
ActiveSheet.Paste

Else
End If

Next k
Next i


End Sub
макрос на смещение ячеек со словамии влево, так чтобы не оставались пустые ячейки, макрос на смещение ячеек влево, так чтобы не оставались пустые ячейки
 
Уважаемые форумчане,

прошу помочь дописать код. Пример с кодом в приложении.
Мне бы хотелось, чтобы макрос смещал слова влево и повторял действие до тех пор,пока все слова не окажутся в одной строчке без пустых ячеек между словами. и так по всем строчкам.
на данный момент макрос смещает слова влево, но не повторяет действие несколько раз. мне кажется здесь надо как-то вписать Do until Loop. Я пыталась, но не получилось. Может кто-то может помочь?

Заранее благодарю
Екатерина
Макрос сравнить две таблицы на разных листах и выделить цветом несовпадение, Макрос сравнение двух таблиц на разных листах
 
Спасибо большое, Mershik! Второй вариант работает как я и хотела!
с уважением,
Екатерина
Макрос сравнить две таблицы на разных листах и выделить цветом несовпадение, Макрос сравнение двух таблиц на разных листах
 
Вы бы не могли мне еще раз помочь? если в колонке А содержаться еще другие слова. Мне бы хотелось, чтобы код искал только те слова, которые даны в колонке начиная с B.пример приложила к письму и выделила зеленым как должно быть. на данный момент код выделяет всю строку, а не искомое слово.
То есть все тоже самое только с учетом что в колонке А страница В могуть быть и друие слова.
Вы бы не могли написать комментарий в коде чтобы его можно было легче читать.

Спасибо огромное за помощь.
Макрос сравнить две таблицы на разных листах и выделить цветом несовпадение, Макрос сравнение двух таблиц на разных листах
 
Обалдеть! Супер! Спасибо огромнейшее, Mershik Гениально!
Изменено: Екатерина - 7 окт 2020 17:20:31
Макрос сравнить две таблицы на разных листах и выделить цветом несовпадение, Макрос сравнение двух таблиц на разных листах
 
Мы сравниваем каждое слово начиная с B1 листа А и B1 влисте B, и последующих колонках если есть значениеи и несоответствие выделяем цветом в А1 листа B и так далее по ячейкам.  
Макрос сравнить две таблицы на разных листах и выделить цветом несовпадение, Макрос сравнение двух таблиц на разных листах
 
na vsykiy sluchay visilayu ehe raz dokument s primerom. Perviy dokumnet bil vislan v forum  s telefona.
Макрос сравнить две таблицы на разных листах и выделить цветом несовпадение, Макрос сравнение двух таблиц на разных листах
 
Да, именно сравнение по ячейкам. Так чтобы он нашел слово которое отсутсвует во втором листе и выделил его другим шрифтом.
думаете, невозможно такой код написать?
Макрос сравнить две таблицы на разных листах и выделить цветом несовпадение, Макрос сравнение двух таблиц на разных листах
 
Привет любителям экселя:-)

Прошу помочь с написанием макроса. Пример я вложила.
макрос должен найти отличия между двумя листами. В первой колонке содержаться разные слова через абзац, в последующих колонках
эти слова разбиты по абзацам. В зависимости от того сколько в ячейке абзацов, столько колонок со словами. Макрос должен сравнить лист B с листом А, и выделить цветом отличительное слова в первой колонке, как показано в примере. Эти слова я веделила зеленым, так как этих слов нет в первой колонке в листе А.
огромное спасибо за помощь!
Скопировать столбец В со всех листов книги на Общий лист
 
Хорошо, я поняла. В след раз обязательно 😁
Скопировать столбец В со всех листов книги на Общий лист
 
Спасибо New.  Я с удовольствием доработала😁и все получилось с Вашей помощью👍Мне было важно узнать сам принцип☺️

P.S. По поводу примера, у меня нет личного ноутбука с экселем чтобы выслать.а с рабочего я не имею права что либо высылать.
спасибо за помощь!
Скопировать столбец В со всех листов книги на Общий лист
 
Уважаемый модератор. Не понимаю вопроса.  Я ведь тему и описание задала в самом начале.
Екатерина
Скопировать столбец В со всех листов книги на Общий лист
 
Спасибо большое Mershik. У меня нет русскоязычной раскладки. Только в телефоне.
отличного дня.
попробую доиграть код.
Скопировать столбец В со всех листов книги на Общий лист
 
Спасибо большое за макрос. к сожалению не знаю Вашего имени. Я вставила код, пока «играюсь», уже что то получается, но пока не идеально.
можно попросить Вас скопировать код в ответ? Я к сожалению, не вижу Ваши комментарии(зеленым цветов), они закодированы.
хотелось бы прочитать очень.

заранее благодарю
Екатерина
Скопировать столбец В со всех листов книги на Общий лист
 
дорогие любители экселя,

я знаю что мою проблему можно решить с помощью PowerQuery, но мне необходимо написать код в макрос.

мой документ содержит несколько разных таблиц, я хочу соединить эти таблицы в одну. Код должен ссылаться на листы и копировать только одну колону(Range B:B) и переносить ее на другой лист. И так пройтись по всем листам и копировать в каждую последующую колону на общем листе, в итоге должна получиться таблица.

Буду очень признательна за помощь!

Заранее благодарю за ответы
Екатерина
Страницы: 1
Наверх