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

Страницы: 1 2 3 4 След.
[ Закрыто] Выпадающий список, Выпадающий список на основе Проверка данных
 
Добрый день уважаемые форумчане.

Пока не смог победить тему, поможите..

В выпадающем списке должно быть видно все строки - но выбирать в выпадающем списке можно было только строки с префиксом SVC.
Если выбрать строку без префикса SVC - выдать какое-либо сообщение.
Пример во вложении.
Изменено: Джек Восмеркин - 10.11.2023 10:25:47
Великий и могучий утес, сверкающий бой, с ногой на небе, живущий, пока не исчезнут машины.
Как переименовать созданное меню на ленте?, Создал макросом свое меню на ленте. Поменять название меню не могу.
 
Добрый день, коллеги!

Никогда такого не было, и вот опять...))

Почему то создаваемое мною меню на ленте имеет название "Надстройка". Видимо, по умолчанию...Но переименовать не получается.
Да и размеры внутри меню безобразные - можно починить?
Файл сего безобразия приложил.
Код
Sub NewMenu100()

On Error Resume Next

Application.CommandBars.Add("Отчет ТОП 100").Delete
With Application.CommandBars.Add("Отчет ТОП 100", , False, True)
    With .Controls.Add
    .Caption = "ТОП 100"
    .FaceId = 69
    .Style = 3
    .TooltipText = "Формирование отчета ТОП 100"
    .OnAction = "Start100"
    End With
.Visible = True
End With

End Sub
Великий и могучий утес, сверкающий бой, с ногой на небе, живущий, пока не исчезнут машины.
Длинный текст в ячейке., Формула ограничивает справа текст в 100 символов. Граница ограничения не должна делить слово.
 
Добрый день, друзья!

Есть формула:

=ПРАВСИМВ(ИНДЕКС(Лист1!a:a;ОТБР((СТРОКА()-4)/28)+2);13)

Ограничивает в 13 символов справа текст в ячейке.

Как сделать -  что бы ограничение не разрезало слово?

Есть какое-либо простое решение?

Файл с моими опусами прилагаю...
Изменено: Джек Восмеркин - 10.08.2022 16:57:28
Великий и могучий утес, сверкающий бой, с ногой на небе, живущий, пока не исчезнут машины.
Последовательное копирование выделенного блока с формулами, Неполное копирование выделенного блока с формулами
 
Да, оно и есть.
Спасибо!
Правда, почему то получается один пустой лишний шаблон. Разберусь.
Великий и могучий утес, сверкающий бой, с ногой на небе, живущий, пока не исчезнут машины.
Последовательное копирование выделенного блока с формулами, Неполное копирование выделенного блока с формулами
 
Добрый день, друзья!
Столкнулся с проблемой такого порядка.

Есть лист, в нем с шаблон с формулами,настроенными на формирование данных из соседней вкладки построчно.
Перебираю циклом строки в соседнем листе, все нормально, формулы отрабатывают, данные. вставляются в шаблон.
На основе строки с полями заполняются ячейки с формулами, шаблон копируется дальше вниз, после текущего.
В общем из 198 шаблонов формируется только первые 175, дальше чисто.
Вроде все проверил, но чего то не вижу...
Файл прилагаю.

Может, кто подскажет где собака порылась?...
Что бы количество шаблонов совпадало с количеством строк в соседней вкладке...
Великий и могучий утес, сверкающий бой, с ногой на небе, живущий, пока не исчезнут машины.
При копировании диапазона, формулы в ячейках меняются не так как надо, При копировании диапазона ячеек формулы в них меняются не так как надо
 
Ігор Гончаренко, тоже годное решение, спасибо.
Только руками не хочется копипастить блоки
Великий и могучий утес, сверкающий бой, с ногой на небе, живущий, пока не исчезнут машины.
При копировании диапазона, формулы в ячейках меняются не так как надо, При копировании диапазона ячеек формулы в них меняются не так как надо
 
Цитата
написал:
В блоке 19 строк. Формулу можно написать вот так (для ячейки С2)
Код
    [URL=#]?[/URL]       1      =ИНДЕКС(лист1!B:B;ОТБР((СТРОКА()-1)/19)+2)   
 
Спасибо, работает - в первом блоке для каждой ячейки формулу подкорректировал, что бы данные верные забирала.
Сейчас блок копируется, формулы вставляются в ячейки так как надо, данные забираются.
Осталось циклы, скопировать и вставить, доделать.
Великий и могучий утес, сверкающий бой, с ногой на небе, живущий, пока не исчезнут машины.
При копировании диапазона, формулы в ячейках меняются не так как надо, При копировании диапазона ячеек формулы в них меняются не так как надо
 
Добрый день, друзья!

Кратко суть проблемы:
При выделении и копировании блока A1:K19 ,в другое место, начиная со строки A20, формулы плывут.
В изначальном блоке формулы стоят правильно(=лист1!$C2), данные из соседнего листа лист1.
При копировании этого блока вниз формула в блоке встает как =лист1!$C21..
Хотя думалось что встанет =лист1!$C3
Макрорекордер не помог.
Можно ли как то сделать так что бы при копировании выделенного блока вниз -  в новом блоке формулы вставали как =лист1!$C2+1???
Во вкладке лист1 23 строки, соответственно будет 23 блока и в каждом блоке от предыдущего надо =лист1!$C2+1
Изменено: Джек Восмеркин - 01.06.2022 14:40:47 (Вложить файл)
Великий и могучий утес, сверкающий бой, с ногой на небе, живущий, пока не исчезнут машины.
Как в ячейке из рублей получить целочисленные копейки?
 
Ок, все получилось.
Благодарю vikttur за разьяснение и долготерпение...)))

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

Нужно только 139375
Великий и могучий утес, сверкающий бой, с ногой на небе, живущий, пока не исчезнут машины.
Как в ячейке из рублей получить целочисленные копейки?
 
Вот наглядный пример - что есть и что надо:
1393,75      -       139375
Изменено: Джек Восмеркин - 04.03.2020 14:42:30
Великий и могучий утес, сверкающий бой, с ногой на небе, живущий, пока не исчезнут машины.
Как в ячейке из рублей получить целочисленные копейки?
 
Мне кажется, что углУбились немного не туда.
С умножением нет проблем
Вопрос остается тот же - как  получить целочисленный формат в копейках..
Великий и могучий утес, сверкающий бой, с ногой на небе, живущий, пока не исчезнут машины.
Как в ячейке из рублей получить целочисленные копейки?
 
Пример уже готов, с одной записью, прикреплен
Великий и могучий утес, сверкающий бой, с ногой на небе, живущий, пока не исчезнут машины.
Как в ячейке из рублей получить целочисленные копейки?
 
Приложил то, о чем писал в сообщении.
Сейчас  проверю - дальнейший этап воспримет ли  значения  вместо вместо формул
Великий и могучий утес, сверкающий бой, с ногой на небе, живущий, пока не исчезнут машины.
Как в ячейке из рублей получить целочисленные копейки?
 
Прикрепил пример
Великий и могучий утес, сверкающий бой, с ногой на небе, живущий, пока не исчезнут машины.
Как в ячейке из рублей получить целочисленные копейки?
 
Дело в том, что это предполагается использовать далее - и именно в целочисленном формате числа.
Умножить на 100 не проблема - нужно вычисленное значение подставить вместо формулы
Великий и могучий утес, сверкающий бой, с ногой на небе, живущий, пока не исчезнут машины.
Как в ячейке из рублей получить целочисленные копейки?
 
Не.
3 класса церковно-приходской.
Могу только отнять и поделить...
Может, меня переклинило - но 1393,75 Х 100 = 139375,00
Но мне надо целое число в формате 139375
Великий и могучий утес, сверкающий бой, с ногой на небе, живущий, пока не исчезнут машины.
Как в ячейке из рублей получить целочисленные копейки?
 
Добрый день, форумчане!

Совсем запутался..
Как в ячейке  из 1393,75 получить 139375 в формате число.
И потом его использовать в дальнейших операциях
Изменено: Джек Восмеркин - 04.03.2020 14:12:36
Великий и могучий утес, сверкающий бой, с ногой на небе, живущий, пока не исчезнут машины.
Проверить наличие в каталге файлов XML и их список и содержимое поместить на лист
 
Имя xml файла - это само собой.
В файле содержаться табличные данные - таблицу сунули в файл.

До последнего надеюсь, что есть какие то  иные, простые способы, кроме парсинга...
Великий и могучий утес, сверкающий бой, с ногой на небе, живущий, пока не исчезнут машины.
Проверить наличие в каталге файлов XML и их список и содержимое поместить на лист
 
Добрый день, форумчане!

Есть потребность проверить средствами VBA каталог(любой) на наличие xml файлов.
Если xml файлы есть - их наименование и содержимое скопировать на лист.

С VBA знаком, но с xml не работать не приходилось.
Великий и могучий утес, сверкающий бой, с ногой на небе, живущий, пока не исчезнут машины.
Обход(или множественный выбор) комбобоксов(с занесением данных в переменные) на форме, с подготовкой переменных для запроса, Обойти контролы с выбором на форме, занести их данные в переменные, по кнопке подготовленные переменные использовать в запросе
 
В личке
Великий и могучий утес, сверкающий бой, с ногой на небе, живущий, пока не исчезнут машины.
Связь(фильтр) данных между комбобоксами, Организация взаимосвязи между двумя комбобоксами
 
1. Да не, в комбобокс идет весь результат запроса - из которого можно выбирать любое значение.
2.Связи действительно не видно...)))... Ее надо сделать. ID1, ID2 - это просто поля одной таблицы и никаких условий там нет.
Если в ComboBox1 выбрать 1элемент "Иванов", то в ComboBox2 должны отобразиться соответствующие 4 "Иван".
Вот как то вот так...)))
3. Мне кажется, не стоит. Хотя возможно и ошибаюсь.
4. Данные для комбобоксов запрашиваются с сервера SQL - так что каждый раз при инициализации формы приходится запрашивать заново, во избежание.
Великий и могучий утес, сверкающий бой, с ногой на небе, живущий, пока не исчезнут машины.
Связь(фильтр) данных между комбобоксами, Организация взаимосвязи между двумя комбобоксами
 
Не то.
Me.ComboBox1.Value просто не попадает в sSQL
Великий и могучий утес, сверкающий бой, с ногой на небе, живущий, пока не исчезнут машины.
Обход(или множественный выбор) комбобоксов(с занесением данных в переменные) на форме, с подготовкой переменных для запроса, Обойти контролы с выбором на форме, занести их данные в переменные, по кнопке подготовленные переменные использовать в запросе
 
Доброго времени суток, коллеги!

Обращаюсь к вам - так как VBA занимаюсь раз в год, а ЭТО у самого получилось неважно.
Суть вроде простая...
0.  Форма инициализирована, контролы заполнены данными из таблицы на SQL-сервере.
1.  Прошелся на форме по контролам мышкой, выбрал из них то, что надо.
1.1 На контроле висит событие Change, при  его срабатывании значение контрола заносится в переменную.
1.2 Переменные предполагается использовать как условие  после where, запрос типа select * from xxx where a & b & c & d
1.2.1 Использовал ActiveControl.Name  - это если фокус на контроле,но видимо переборщил....)))
2.  Кнопка "получить результат" собирает переменные, обрабатывает к удобоваримому виду -  для использование в WHERE, как в п1.2
2.1 Запускается запрос  с сформированным WHERE, примерно такой:
Код
rs.Open "SELECT * FROM Itog WHERE " & st1 & st3 & st4 & st5 & st6 & st7 & st2 & " ORDER BY 1", cn, adOpenStatic, adLockReadOnly
   Worksheets(Jnxtn gj ghjtrnfv").Range("B6").CopyFromRecordset rs
rs.Close

Вот, в общем то и все - как смог.
Есть еще несколько нюансов, но это уже по возможности

Надеюсь что результат будет лучше моего...)))
Мой "пример" прилагаю.

Буду рад если кто изъявит готовность взяться за работу, с указанием стоимости и сроков.
Связь - личка, почта, телефон, можно скайп

Заранее благодарю!
Великий и могучий утес, сверкающий бой, с ногой на небе, живущий, пока не исчезнут машины.
Связь(фильтр) данных между комбобоксами, Организация взаимосвязи между двумя комбобоксами
 
Как всегда, приветствую многоуважаемых форумчан!

Есть два комбобокса, заполненные из таблицы с сервера.
Выглядят так:

Код
'Соединение с базой и получение данных в Combobx-ы'
cn.Open    
sSQL = "Select distinct id1 From Itog Where id1 IS NOT NULL Order by 1"    
Set rs = cn.Execute(sSQL)    
If Not cn.State = 1 Then Exit Sub    
a = rs.GetRows   
 Me.ComboBox1.List = Application.Index(a, 1, 0)
rs.Close:     
cn.Close
'-------------------
cn.Open    
sSQL = "Select distinct id2 FROM Itog ORDER BY 1"    
Set rs = cn.Execute(sSQL)
    If Not cn.State = 1 Then Exit Sub
    a = rs.GetRows
    Me.ComboBox2.List = Application.Index(a, 1, 0)
rs.Close:
cn.Close

Как организовать связь между комбобоксами?
Что бы при выборе данных в комбобоксе подтягивались данные из другого комбобокса, если они есть?
Изменено: Джек Восмеркин - 14.01.2020 08:12:45
Великий и могучий утес, сверкающий бой, с ногой на небе, живущий, пока не исчезнут машины.
Вычисление последней строки, столбцы могут быть заполнены по разному
 
Мне бы надо сориентироваться что быстрее - особенно в высоконагруженных  листах(10000х100), коих может быть не один десяток.
Если разница будет небольшая - то да, не стоит городить огород, надо брать то, что попроще.

Ну и тренировки, да, никто не отменял...)))
Может, код удастся вылизать до того, что его можно будет совать всегда и везде...)))
Великий и могучий утес, сверкающий бой, с ногой на небе, живущий, пока не исчезнут машины.
Вычисление последней строки, столбцы могут быть заполнены по разному
 
Цитата
RAN написал: Не работает потому, что пропущена запятая
Да, так точно...)))  Заработало так как надо...
Но потом все равно надо будет(через массивы попробовать) сделать так, как
Цитата
vikttur написал: Цикл по столбцам...
Великий и могучий утес, сверкающий бой, с ногой на небе, живущий, пока не исчезнут машины.
Вычисление последней строки, столбцы могут быть заполнены по разному
 
Цитата
Sanja написал: А вариант с .Find("*"....) ?
Пробовал - не работает так как надо  в моем случае, выдает А2 - при пустом B1,B2, B3 и A3(а там диапазон A1:BB57 - забит плотненько...)
Код
СПОСОБ 4:
Определение последней строки и столбца, а так же адрес ячейки методом Find    Dim rF As Range
    Dim lLastRow As Long, lLastCol As Long
    'ищем последнюю ячейку на листе, в которой хранится хоть какое-то значение
    Set rF = ActiveSheet.UsedRange.Find("*", , xlValues, xlWhole, xlPrevious)
    If Not rF Is Nothing Then
        lLastRow = rF.Row    'последняя заполненная строка
        lLastCol = rF.Column 'последний заполненный столбец
        MsgBox rF.Address 'показываем сообщение с адресом последней ячейки
    Else
        'если ничего не нашлось - значит лист пустой
        'и можно назначить в качестве последних первую строку и столбец
        lLastRow = 1
        lLastCol = 1
    End If
Великий и могучий утес, сверкающий бой, с ногой на небе, живущий, пока не исчезнут машины.
Вычисление последней строки, столбцы могут быть заполнены по разному
 
Ознакомился - и с дебатами, и сторонним ресурсом...)))
Дебаты - вычисление последней заполненной строки идет по 1 или последнему столбцу.
Не хотелось бы такой привязки - поскольку они могут быть пустые, и тогда полное фиаско...)))
Вот если бы искался и  вычислялся столбец с максимальным количеством строк...

Сторонний ресурс - нужный код не работает так как надо.

Вариант с UsedRange.Rows - вполне себе рабочий
Но опять же, встречалось что UsedRange принимает во внимание и учитывает удаленные данные.

Может перебор столбцов, вычисление последней заполненной ячейки в каждом столбце,сравнение всех последних ячеек - ячейка с максимальным значение строки и будет самой последней строкой?

Какие еще есть варианты?
Великий и могучий утес, сверкающий бой, с ногой на небе, живущий, пока не исчезнут машины.
Вычисление последней строки, столбцы могут быть заполнены по разному
 
Как, средствами VBA, надежно вычислить последнюю строку, заполненную данными -  при разном заполнении столбцов?
Какие есть методы, способы, решения?
Великий и могучий утес, сверкающий бой, с ногой на небе, живущий, пока не исчезнут машины.
Страницы: 1 2 3 4 След.
Наверх