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

Страницы: 1
Выгрузить из листа картинки (Shape) в папку и переименовать картинку в наименование соседней ячейки с картинкой
 
Добрый день!
Имеется лист с картинками в столбце А:А (картинка находится в ячейке) и артикулом в столбце В:В. Как с помощью цикла пройтись по листу и выгрузитьв папку картинки с именем артикула из столбца B:B?
Суть проблемы - адрес картинки. Как узнать ячейку в которой находится картинка?
работа с библиотеками (Tools-References), подключение надстроек в качестве библиотек
 
Добрый день.

На  работе, до моего прихода, были установлены 2 надстройки и все ими пользуются. Для выполнения своих задач я создал книгу макросов. Ранее она конфликтовала с этими надстройками. То есть, когда подключена книга макросов, надстройки, в которых хранятся формулы не работали. Приходилось закрывать книгу макросов, и уже после открывать нужные файлы, чтобы в них корректно работали надстройки.

Недавно, я подключил данные надстройки в качестве библиотек к своей книге макросов (Tools-References). И конфликты прекратились :)))
Зато, когда я закрываю книгу макросов выскакивает сообщение: "На эту книгу имеются ссылки из других книг, так что закрыть её нельзя." Также перестали выполняться действия, которые должны происходить во время открытия и закрытия книги макросов (Workbook_BeforeClose, Workbook_Open)

Кто-нибудь сталкивался с подобной проблемой?
Название функции с помощью маски
 
Добрый день!

Возникла необычная задача.

Имеется множество кнопок в имени которых имеется номер. Их можно перебирать в цикле с помощью Object("But" & a1). При нажатии любой кнопки выполняется однотипная операция над свойствами данной  кнопки.
Для нажатия кнопки необходимо описать все действия в макросах типа Private Sub but1_Click(). А кнопок много  :D

Можно ли внести переменную в название функции , или назвать функцию неявно, с помощью маски?
Принимаются любые варианты. ;)
Выравнивание кода VBA (структурирование кода)
 
Добрый день.

Для того, чтобы код был читабельным, я его структурирую, делаю лесенки и т.д. Но на это уходит много времени, и нудная эта работа. Может есть механизм позволяющий автоматически структурировать код VBA в самом редакторе?
Набор критериев для формирования массива по CheckBox
 
Добрый вечер, форумчане! Возникла следующая задача. Имеются книги с данными. Из них необходимо вытащить данные по критериям, указанным в CheckBox, которых 5. Если CheckBox=True, то данные критерии сшиваются через разделитель в единый критерий и по нему подтягиваются данные(цифры). Данные из книг забираются с помощью сurrentRegion.Value

Проблема в том, что если я хочу выбрать не все CheckBox а несколько, то при сшивании необходимо выстраивать  лесенку if-else, а критериев 5, т.е. 25 вариантов и лестница большая получается. Например:

If CheckBox1 = True And CheckBox2 = True And CheckBox3 = True And CheckBox4 = True And CheckBox5 = True Then
        t = a(i, l2) & "|" & a(i, l8) & "|" & a(i, l7) & "|" & a(i, l20) & "|" & a(i, l21)
else if
....
          End If
, где a - массив, сформированный из листа через  a=[a1].сurrentRegion.Value;
l - номер столбца критерия в каждом массиве а;
i - номер строки.


И на выходе процедуру придется повторить. Порекомендуйте варианты как обойти такое неудобство.
Добавить на листе 2 и более столбцов относительно указанной ячейки
 
Добрый вечер! Необходимо добавить несколько столбцов перед указанной ячейкой. Добавить 1 столбец легко:  
Sub aa()  
Columns(k).Insert  
End Sub  
где вместо к можно указать нужное число. А вот что делать, если надо добавить несколько столбцов и не известно, как они показаны в буквенном выражении. Причем заранее неизвестно сколько столбцов. Т.е. нужно что-то типа: Columns(k:(k+5)).Insert  
 
Как это сделать?
Количество дней в текущем месяце формулой
 
Добрый вечер! Меня давно мучает этот вопрос, сколько дней в месяце, да еще и если в феврале их переменное кол-во. При переходе в новый месяц постоянно нужно переделывать формулы, под нужное кол-во дней. А лень:) Подскажите как справиться с этой проблемой раз и навсегда.  
 
Условие: В ячейке А1 стоит текущая дата. Найти: кол-во дней в текущем месяце.
Как узнать количество не пустых элементов в массиве
 
Добрый день!    
Имеется динамический массив Mass(), размер которого меняется (цикл). Из данного массива некоторые элементы попадают в динамический массив mass2(). Как узнать кол-во элементов в массиве mass2()?    
как вариант можно выгружать на лист и оттуда снова вносить в массив. Но хотелось бы узнать, есть ли другие методы.  
 
Читал http://www.planetaexcel.ru/forum.php?thread_id=8548, там описано про коллекции, но я не понял как с ними работать. Хотелось бы пример.
цикл. Открыть файл в названии которого стоит дата заданая неявно
 
Добрый вечер. Я написал макрос, который открывает файл с датой в названии на вчера и выполняет затем действия. Беда в том, что есть выходные, и в понедельник макрос работать не будет.Решил бороться с этой проблемой с помощью цикла. Типа:  
Sub первый()  
For a = 1 To 10  
On Error Resume Next  
 
b = Format(Now() - a, "dd-mm-yyyy")  
Workbooks.Open ("D:\первый " & b & ".xls")  
Workbooks.Open ("D:\Результат.xls")  
Next a  
End Sub  
 
Но On Error Resume Next, к сожалению, выполняет действия после ошибки, т.е., например, открывает другие файлы и работает с ними.  
 
а  макрос  
Sub первый1()  
For a = 1 To 10  
On Error GoTo Leo:  
 
b = Format(Now() - a, "dd-mm-yyyy")  
Workbooks.Open ("D:\первый " & b & ".xls")  
Workbooks.Open ("D:\Результат.xls")  
Leo:  
Next a  
End Sub  
 
выдает ошибку во втором цикле. Подскажите как решить проблему
задача на Смещ() или Впр()
 
Добрый вечер!    
На листе 1 имеется таблица, в которую каждый день(кроме выходных) добавляется 2 столбца справа. Вверху дата в объединенных ячейках. Данные из последнего столбца учавствуют в формировании показателей на листе 2 в нижней таблице. Приходится каждый раз перетягивать формулы. Как сделать так чтобы в таблицу на листе 2 всегда подтягивались данные из последнего столбца таблицы на листе 1?  
Строки с критериями добавлять нельзя, данные добавлять тоже нельзя, т.к. таблицы свой внешний вид менять не должны.
нужна формула типа ВПР по 3-м критериям или транспонирование
 
Добрый вечер! Возникла задача.  
Имеются данные продаж товаров по месяцам. Товары 9 сортов. На листе Исходник между данными то месяцам разное кол-во столбцов,есть строки с лишней информацией.  
Необходимо преобразовать таблицу в вид как на листе "Результат"
Как определить цвет(код цвета) ячейки?
 
Добрый день! Помогите, пожалуйста, решить задачу.  
на листе есть ячейки окрашеные в несколько цветов и неокрашеные. Угадать код цвета не удалось - видимо нестандарные  
Необходимо узнать код цвета.
преобразовать таблицу: поменять местами критерий и подчиненный справочник
 
Добрый день! Есть следующая задачка.    
У каржого жителя деревни Виларибо (представлены в табличке столбец А:А) были фрукты (столбец В:В), перечисленные через точку с запятой (встречаются случаи и через ;;). Помогите изменить табличку так, чтобы в первом столбце были фрукты, а во втором жители деревни, причем не через точку с запятой, а как указано в примере.  
Уточнение: фруктов до 200, жителей тоже.  
 
Расшить по столбцам я это могу, но что делать дальше? Буду рад если раскажете алгоритм, как это можно сделать.
макрос в каждом листе заносит данные в массив, сравнивает с базой-массивом и выдает результат
 
Добрый вечер!  
на первом листе база, которую мы вносим в массив. в других листах находятся товары, под номером, по которым нужно обновлять данные. как база так и кол-во товаров на листах может меняться.    
Мы поочередно обращаемся к каждому листу, загоняем товары (критерии) в массив и сравниваем с базой-массивом, формируем 3 массив. После чего вставляем его на лист, отчищаем массив. И так до последнего листа. Но данный макрос не работает. Он может обновить 1 лист, а после выдает ошибку.
поставить кол-во первой продажи
 
Добрый вечер.  
Задачка. Есть таблица с реализацией товара за период. Необходимо выяснить:  
1)Кол-во первой продажи  
2)Месяц продажи
Поиск по двум критериям- один точное совпадение, другой неточное
 
Добрый день! Возникла следующая проблема.  
За определенный промежуток времени клиенту отгружалась продукция. Начали сверять. У каждого товара свой код. Код точен. А вот накладные не совпадают. У накладной есть дата.  
Необходимо к перечню карточек с датой отгрузки подтянуть близжайшую к ней накланую и цену из накладной. Именно близжайшую а не верхнюю или нижнюю.Как это сделать?  
Файл прилагаю.
Как быстрее работает: создать массив данных и потом его обрабатывать или брать данные с листа
 
Добрый вечер!  
Собственно, название темы сама говорит за себя. Я работаю с большим объемом данных. Коллеги утверждают что для обработки информации правильней стачала из таблицы сформировать массив, а после из него циклом вытягивать нужную информацию. У меня создается впечатление,что действуя таким образом мы задваиваем работу: сначала данные попадают в массив, а потом из массива в мою таблицу.    
Вопрос: Кто прав? Если я, то для чего нужны массивы?
VBA цикл. Перенос данных на другой лист по критерию
 
Добрый день!    
Есть исходный файл. В нем в первом столбце стоит карточка. Её свойства во втором столбце. Свойств может быть несколько, поэтому количество строк между двумя карточками разное. Колчество строк в файле не известно.    
Необходимо: перенести карточки со свойствами на лист "итог" так, чтобы картока и её свойства были в обной строке.  
 
Я не представляю как это сделать. Вероятно, с помощью Do While, но я не могу понять логику
VBA замена части текста в ячейке на другой по критерию. Регистр
 
Добрый вечер! Возникла проблема при переводе текста. Часть пришлось допереводить руками, в связи с чем написал макрос, который заменяет часть текста на другой по критерию. Проблема в том, что макрос учитывает регистр. Т.е. воспринимает "Москва", "москва", "мОСКВА" как 3 разных слова. А хочется чтобы такого не было. Заранее спасибо.  
Прилагаю пример и макрос  
 
 
Private Sub Перевести_Click()  
 
Dim x&  
Dim y As Integer  
   For x = 2 To 30  
       For y = 2 To 7  
           Worksheets("рабочий").Cells(x, 2) = Replace(Worksheets("рабочий").Cells(x, 2), Worksheets("Критерии").Cells(y, 1), Worksheets("Критерии").Cells(y, 2))  
       Next y  
   Next x  
End Sub
VBA циклы, переход между книгами
 
Добрый вечер!:)  
Сочинил такой макрос:  
Sub klen()  
Dim x, y As Integer  
y = 4  
For x = 1 To ActiveSheet.UsedRange.Rows.Count  
If Cells(x, 1) = 1 Then Cells(y, 5) = Cells(x, 2)  
If Cells(x, 1) = 1 Then Cells(y, 6) = Cells(x, 3)  
If Cells(x, 1) = 1 Then Cells(y, 7) = Cells(x, 4)  
If Cells(x, 1) = 1 Then y = y + 1 Else y = y  
Next x  
End Sub  
 
который переносит данные, при условии соответствия критерия в нужное место того же листа.  
Если столбцов с данными много, то можно ли переносить данные не по ячейке, а целыми массивами, ограничив массив точно указав размер его или что еще лучше, указав столбец через переменную, найденную посредством ActiveSheet.UsedRange.Colums.Count?  
Заранее спасибо!
VBA: макрос который создает книги с именами ячеек выбранносго столбца
 
Добрый вечер! Возникли трудности в написании макроса.  
Задача.  
В столбце А находятся фамилии менеджеров. Необходимо создать файлы с именами=фамилия менеджера.    
Пример.
Посчитать максимальное кол-во строк между критерием в столбце
 
Добрый день! Возникла проблема с подсчетом кол-ва строк между критерием. Необходимо узнать максимальное кол-во строк между критериями. В идеале было бы в столбце В:В напротив критерия сделать подсчет, пустых строк(или пустых строк + строка с первым критерием) до следующего критерия.
VBA пример функции минимум
 
Добрый вечер! Я начал изучать VBA, и столкнулся с рядом проблем. Поэтому обращаюсь к вам с просьбой помочь мне разобраться.  
Я хочу получить функцию Минимум из диапазона ячеек, которые можно указать с помощью открывающегося окна 1)с помощью циклов, и 2)с помощью функции min.  
Также не  могу понять что нужно писать в inputBox.  
 
Заранее багодарю за помощь:)
Сборка книг в одну книгу VBA
 
Доброе утро, жители планеты!  
Извиняюсь, что обращаюсь по избитой теме, но воспользоваться предложеными макросами не смог :(  
Задача следующая. Имеется несколько (52) книг, содержащих 1 лист. Книги именованые, листы именованые. Их нужно собрать в одну книгу в алфавитном порядке.  
Подскажите код.
Макрос отправки по почте (Outlook) файла txt, не открывая его в экселе
 
Добрый день, жители Планеты!  
У меня есть txt файл, который нужно переслать по почте через Outlook. При открытии файла в экселе и порследующей его пересылке в файле появляются дополнительные кавычки (возможно это связано с большой длиной каждой строки).    
Вопрос: можно ли с помощью VBA отправить по почте txt файл имеющий имя (например "украина"), и находящийся в папке L:\09_Results&Rules\REM TITLES. Если можно, то как?
Изменение формата файлов при сохранении названия
 
Имеется большое количество файлов "Инет-10-09-08.txt", где дата меняется.  
необходимо, сохранить их в формате xls. Можно один, а лучше все :)
Создать макросом сводную таблицу с именованого листа
 
Добрый день! Каждый день я получаю датированый файл, в нем датированый лист с табличкой. На основании него я делаю сводную таблицу с помощью макроса. Проблема:  
VBA расценивает название листа как текст и не позволяет вставить переменную в название, чтобы каждый день выполнять макрос. Из за этого приходится каждый день заходить в код и менять дату. Подскажите как задать переменную. Заранее спасибо!
Проблема с отображением UserForm в модальном режиме
 
На время выполнения макроса вывожу на экран простенькую UserForm в модальном режиме с текстом типа «Подождите, работаю..»  
Для вывода формы на экран в начале макроса использую UserForm1.Show (0), в конце макроса использую UserForm1.Hide  
В свойствах UserForm1, в ShowModal стоит значение True.  
В простеньком примере все работает безукоризненно.  
Но когда вставляю эту же UserForm с этими же командами в свои готовые макросы, то UserForm появляется в виде рамки с чистым полем внутри, без надписи. Причем в одних макросах поле Caption активное (синий цвет), а в других – не активное (серый).  
 
Кто-нибудь знает, в чем может быть дело?
Страницы: 1
Наверх