Выбрать дату в календареВыбрать дату в календаре

Страницы: 1
Остановка выполнения VBA, Постоянно останавливается выполнение программы печати ценников.
 
Здравствуйте. Когда то давным-давно была приобретена программа для печати ценников в Excel. Это надстройка. На скрине их логотип и видно в меню "Печать ценников". И исправно работала. Мы к ней привыкли. Но вдруг выполнение сценариев стало останавливаться. Вылезает окно, нажимаем продолжить, работает дальше, опять остановка - продолжить и всё заканчивается. Т.е. программа работает как надо, но с остановками. В меню VBA нажимал Clear All BreakPoints - без толку. Как поправить дело. Обращаться к авторам бесполезно, там всё изменилось.
Генератор кодов EAN-13 и EAN-8, EAN-13 работает, EAN-8 - нет.
 
Добрый вечер. Нашёл такую формулу для генерации кода в ячейку. Замечательно работает. Но если цифр меньше, а бывает и 8 и 12, то сократив формулу, получаем код, который не читается сканером и по виду отличается от исходного. Приложил файл, всего два кода, для EAN-8 ещё и оригинал в виде картинки в ячейке. Где ошибка? Как уменьшить формулу? Если не уменьшать - не работает с EAN-8 вообще, а неумело сокращённая - работает неправильно..
Условное форматирование, Условное форматирование в ячейке по наличию или отсутствию данных в др. ячейках
 
Здравствуйте.
Есть таблица. В ней строки. Возьмём одну строку. например 2. В ней в ячейке B2 есть какое то число. Но это не важно. Необходимо не макросом, а условным форматированием окрасить эту ячейку, если: в ячейка С2 не пустая, а ячейка D2 пустая, а также E2 не пустая, а F2 пустая и т.д до AI2 и AJ2
Вообще условным форматированием такое получится или только макросом?
Или может так понятнее. Ячейки в строке разбиты на пары. Если первая не пустая, а вторая пустая - ячейку во втором столбце надо окрасить. Во всех других случаях - обе пустые, обе заполнены, первая пустая, а вторая заполнена - окрашивать не надо.
Изменить поиск по строкам на поиск по столбцам
 
Здравствуйте. С помощью подсказок с этого форума был из кусочков составлен макрос, который вполне работает.. основная функция - поиск гиперссылок и собирание их в один столбец. Ищет в диапазоне. Сначала проверяет строку в столбце 7, потом 8 и т.д. Потом берётся за сл. строку и т.д. Как переделать, чтоб сначала проверял на наличие гиперссылок весь столбец 7, потом 8 и так до конца диапазона? Дело в том, что эти гиперссылки ещё распределены по годам сверху вниз  - старые - в начальных столбцах, потом всё новее и новее. Это для меня важно. Тогда и в итоговом столбце 6 они сразу получатся по годам по возрастанию, а сейчас вперемешку. Эта часть макроса:
Код
'Сочетание клавиш: Ctrl+z
lLastRow = Cells.SpecialCells(xlLastCell).Row
diapazon = Range("G2:P" & lLastRow) 'диапазон, где ищутся коды из ЧЗ.
'Первая ячейка и последний столбец
For r = 2 To UBound(diapazon) '2-начальная строка поиска
        For c = 7 To 15 ' 7 и 15 начальный и конецный столбец поиска
        'определение ячейки с гиперссылкой
            If Get_Hyperlink_Address(Cells(r, c)) <> "" Then
            'если ячейка найдена, поместить результат в первую свободную
            'строку столбца 6
            lLastRowA = Cells(Rows.Count, 6).End(xlUp).Row
            Cells(lLastRowA + 1, 6) = Cells(r, c)
        End If
        'перебор c и r до конца диапазона
    Next c
Next r
Изменено: vet4 - 04.03.2023 18:09:52
Лишние нули при сравнении пустых ячеек
 
Есть формула в столбце С   =ЕСЛИ(СЧЁТЕСЛИ($D:$D; $F2)=0; F2; "") находит совпадения  в D и F и выдаёт пустую строку, если есть совпадения и копирует содержимое ячейки из F в С, если нет совпадений. Т.е. в результате получится в столбце С те же значения, что и в F, но с пропусками по строкам, если содержимое ячейки в F совпало с любым значение из D. Работает замечательно. Если в D  есть данные и в F они есть, то в С пустая ячейка. Это правильно. А если в F данных уже нет и в D  тоже нет, то формула выдаёт ноль, а не пустую строку.
Короче: Почему эта формула при совпадении значений выдаёт пустую строку " ", как и написано в ней, а если обе сравниваемые строки пустые, тоже ведь - это совпадение, формула выдаёт ноль?
Макрос на лету., чтоб работал непрерывно
 
Пример условный. 100 товаров в куче. Надо оставить в этой корзине по одному образцу. Товары с штрих-кодом. Одинаковый ШК - это дубль товара. Пикаем все товары из корзины. Макрос потом ищет дубли. Нашёл. И что? Опять перебирать товары?
А хорошо бы на лету, без никакого нажатия кнопок. Пикаем ШК, постепенно заполняется столбец А, как только дубль - выделяет красным и может быть даже пищит. Выкидываем в другую корзину дубль товара, удаляем последний ШК и снова продолжаем до сл. дубля. Но это предполагает, что макрос запускается с каждой записью в ячейку. Т.е ищет дубли до последней заполненной строки (этих макросов полно в качестве образца, и тут на форуме тоже), но запускаясь при добавлении. Конечно, можно- добавил ШК - нажал кнопку - макрос сработал - снова ШК и т.д. Но сканер радио, к клавиатуре бегать не будешь каждый раз. надо чтоб с ходу.
Изменено: vet4 - 12.02.2023 12:30:11
Очистить диапазон., но оставить границы.
 
Подскачите чайнику.
Range("A2:A1000").Clear  очистит всё.
Range("A2:A1000").ClearContents  очистит данные.
А если надо очистить всё, но не совсем? Например Clear  сотрёт и границы ячеек. Их надо оставить.
А ClearContents границы оставит, но оставит и ненужные цвета заливки, шрифта , а их надо удалить.
Как оставить только границы?
Изменено: vet4 - 11.02.2023 22:04:24
Копирование в открытый файл., Копировать. что в закрытый. что в открытый файл одним макросом.
 
Сейчас так. Но копирует только в закрытый файл. В открытый - вылезает обычное предупреждение. Можно чуть переделать - будет в открытый. А как чтоб не глядя - что открыт, что закрыт - работало, но в конце, как и сейчас, закрывался?
Код
.........
Selection.Copy
ChDir "C:\"Папка" 'путь к папке с нужным файлом
Workbooks.Open Filename:="Имя.xlsx" ' имя файла в этой папке
Range("A1").Select
ActiveSheet.Paste
Range("A1").Select' снова сделать активной только А1
ActiveWorkbook.Save
ActiveWorkbook.Close
End Sub
Изменено: vet4 - 11.02.2023 18:26:25
Поиск гиперссылок с копированием в другой столбец.
 
Реальная задача в принципе та же самая. только таблица побольше. Но т.к я ничего не понимаю, а хочется, то решил потренироваться на маленькой. Приложил файл  с нужным результатом работы нужного макроса в столбце А. Но сначала в этом столбце пусто.
По порядку: хотел сначала найти "яблоки". Потом научиться найти гиперссылки. Потом копировать найденные ячейки с гиперссылками (только значения) в столбец А. Чтоб в итоге получилось, как в приложенном файле. И застрял сразу. Вот маленький макрос. Он ищет яблоки только в столбце "А". А надо в B2:D11. Потом там же вместо яблок буду искать гиперссылки. И т.д.
Код
Sub test()
Dim i&, iCnt1&, iCnt2&, arr()
For i = 1 To 100
    If UCase(Cells(i, 1).Value) Like UCase("яблоко") Then iCnt1 = iCnt1 + 1
Next i
MsgBox "На листе " & iCnt1 & "  яблок."
End Sub
Макрос на другом компьютере., Работает - не работает. - снова работает..
 
Два компа.На одном Windows 10. На другом 7. Везде Excel 2010. На 7-ке ещё есть надстройка для печати ценников."CennikiExcel".
Простой макрос в котором есть копирование столбца А в столбец А другого файла. На 10-ке всё работает. На 7-ке показывает ошибку - жёлтая строка "ActiveSheet.Paste". При пошаговом выполнении - по другому. На этом месте вылезает окно (см. скрин) если я это окно хочу закрыть, при этом всплывает "This command will stop the debugger", нажимаю ОК. Закрывается. И в дальнейшем всё работает нормально. Макрос работает автоматом от начала до конца сколько угодно раз. Пока снова не перезагрузишь Excel. По моему какой то конфликт с надстройкой "CennikiExcel"? Больше ведь разницы нет...Может как то подлечить макрос? Что дописать?
Поиск кодов сигарет., Найти в таблице недостающие коды.
 
Есть такая таблица. В колонках D, E, F и т.д (до 10 столбцов, но всегда по-разному, последний столбец может быть неполным.) Количество строк всегда одинаково. Нужные данные находятся всегда в одних и тех же строках, а именно 4,16,28,40 т.е через 12 строк, последняя всегда 112.
Эти коды из нужных ячеек копируются в столбец С подряд. Неважно по столбцам выбираются или по строкам - всё равно. В столбце В коды со сканера Штрих-кодов. Нужно в столбец А записать подряд (прядок неважен) все коды из столбца С, которые не совпали с А. Брать надо только первые 21 символ.
Я сделал это вручную. Как бы немного автоматизировать? А именно:
В столбце В я копирую просто с прямой адресацией, т.к нужные ячейки всегда в одном и том же месте. Но не нужны нули, если таблица закончилась.
Как вывести список несовпадений в столбец А подряд, сравнивая по порядку ячейки в С с В, пока С не закончится.
В макросах я не смыслю, мне бы формулу подобрать.
Необходимый конечный результат - это тот самый столбец А с несовпадениями.
Медленно открываются файлы.
 
Поиск "медленно открывается" просмотрел. Не нашёл ответа. Там в основном про проблемы с файлами - форматирование, принтеры, макросы и пр. Тут ничего нет.
Проблема: Excel 2010 открывается мгновенно. Этот же пустой файл сохраняю. Открываю снова - 10 секунд. Файлы с данными - то же самое. Любые другие офисные программы работают как надо.
Программа для печати ценников в Excel, Пациент скорее жив, чем мёртв?
 
Сразу по характеру форума - никакой халявы не надо. Просто с 2012 года пользуюсь http://www.cennikiexcel.ru/download.html , за это время накопились шаблоны на все случаи жизни, но сменил комп и, пишет, что лицензия истекла. Ладно, хотя обещали когда то на 2 или даже три, пусть будет и заново. Оплачу. Но вопрос в том, что давно нет никакой информации по этой программе, может уже сгинула вместе с авторами. Что толку платить в никуда?
Отсюда вопрос. На столь продвинутом форуме, где многие корифеи друг друга знают, может есть информация, что программа жива, лицензии высылаются и т.д.? Может и авторы на этом форуме живут иногда? На почту писал и в обратную связь - глухо. Или посоветуете какую другую программу, желательно сразу в Excel? От всех других (пробовал разные) упомянутая отличается тем, что меняет размер шрифта  для, того, чтоб помещался в нужном поле.  
График. Вертикальные линии сетки.
 
Как на простом графике (даты- показатель) провести вертикальные линии сетки по определённым дням недели? Например по воскресеньям. Или выделить в подписях эти дни цветом. В исходных данных, в таблице, даты выделяются условным форматированием. Но в подписях они всё равно одноцветные. Хотя вертикальные линии для меня нагляднее и важнее. В общем смысл - видеть на графике наглядно отдельные недели. Ещё лучше выделить точку на самом графике попадающую на воскресенье цветом. Тогда и подписи не важны и вертикальная сетка не нужна. В общем, что-то одно из трёх.
Выбор случайного рисунка.
 
Допустим на листе имеются 10 рисунков одинакового размера , неважно как расположенных. В строку, в столбик. На другом листе необходимо поместить копию рисунка, выбранную случайно,
Можно ли сделать так - закрепить каждый рисунок за своей ячейкой, подряд, в одну строку При копировании выбрать ячейку случайным числом в диапазоне 0-9. Ячейка скопируется вместе с рисунком? Предварительно - размер ячейки для рисунка везде одинаковый.
как выглядит макрос для выбора случайной ячейки и копирования в нужную? Может можно обойтись формулой ?
Страницы: 1
Наверх