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

Страницы: 1 2 3 4 5 6 7 8 9 10 11 ... 333 След.
Обработка идентичных кнопок в UserForm
 
Цитата
nak_igor написал:
написать их 9 и прокрутить по циклу 29 раз
вполне возможно, что здесь классы будут в самый раз: Работа с модулями классов
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
Почему фильтр работает только на часть таблицы?
 
Название темы: Фильтр не видит всю таблицу
Решение: снять фильтр(Данные -Фильтр), выделить полностью столбцы A-D и установить фильтр заново.
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
Сохранить в значениях только видимые ячейки., Сохранить в значениях только видимые ячейки.
 
Здесь выкладывал код прям под эту ситуацию: Как удалить в ячейке формулу, оставив значения? (процедура All_Formulas_To_Values_OnlyVisible)
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
Язык запросов 1С в VBA
 
Не зная какого вида что там возвращается сложно говорить. Но возможно, возвращается объект массива и тогда обращаться можно так:
Код
For lr = 1 to ubound(ResultTable,1)
      For lc = 1 to ubound(ResultTable,2)
              Debug.print ResultTable(lr,lc)
      Next lc
Next lr
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
Excel 2016 все открытые книги в одно окно, Excel 2016 все открытые книги в одно окно
 
Скорее всего нет. Я ей никогда не пользовался, устанавливал очень давно и уже не помню. Плюс к новым версиям может она по другому устанавливается.
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
Excel 2016 все открытые книги в одно окно, Excel 2016 все открытые книги в одно окно
 
Цитата
flower написал:
как в ранних версиях: ярлыки открытых окон под строкой формул?
это ни в одной версии не было реализовано. Для этого устанавливают отдельную надстройку Tabs for Excel. Видимо, она и была у Вас установлена на другой версии.
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
Как заставить эксель считать, что в ячейке значение одно, но отображалось бы другое
 
Цитата
borro написал:
чем вы это сделали
условное форматирование
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
Как заставить эксель считать, что в ячейке значение одно, но отображалось бы другое
 
Цитата
borro написал:
ввели 1 - в ячейке отображается текст "Su", 2 - "Ma"
ну прям так вряд ли. Форматом можно изменить либо на отрицательные, положительные и нули, либо одно условие(вроде >10) и т.д. А в таком виде лучше сделать скрытый столбец, на значения которого и будут ссылаться формулы и значения в которые будут проставляться формулами(вроде ВПР). А пользователь будет вводить данные в видимый столбец, от значений которого и будут вычисляться формулы в скрытом.
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
Определить ДЕНЬ/НОЧЬ по указанному времени
 
А точно в столбцах время записано как текст? Судя по формуле - сравниваете Вы именно с ним. Но если там не текст, а время в формате даты-времени Excel - такое не сработает. Так же не сработает, если там ЧИСЛА, обозначающие часы.
В обще нужен пример файла.
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
Как копировать страницу excell без кнопок пользователя
 
По сути Ваш код и так можно(и даже нужно) оптимизировать. Насколько понял суть кода, оптимизировать можно так:
Код
Sub Перенос_базы()
with Workbooks("Текущие оплаты.xlsm").Sheets("База клиентов")
    Workbooks("Ассортимент.xlsm").Sheets("База клиентов").Columns("A:J").Copy .Range("A1")
    .drawingobjects.delete
end with
End Sub
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
Как копировать страницу excell без кнопок пользователя
 
Можно просто в конце кода записать:
Код
Sheets("База клиентов").drawingobjects.delete
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
Как привязать форму с календарем для ввода в другие формы?
 
Цитата
Сергей Хатюшин написал:
если один из листов к которому привязана одна из форм удалена
так добавьте проверку на наличие листа с формой: Как узнать существует ли лист в книге?
Изменено: Дмитрий(The_Prist) Щербаков - 9 Авг 2019 20:53:27
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
Макрос работает только в конкретной книге
 
Есть у меня небольшое предположение, что надо такой код:
Код
Sub t()
Application.ScreenUpdating = False
dim ws as worksheet
set ws = activesheet 'запоминаем активный на момент выполнения кода лист
Workbooks.OpenText Filename:="C:\!!!_НЕ_ТРОГАТЬ_!!!\tester.txt", Origin:=1251, StartRow:=1, DataType:=xlDelimited, TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, Semicolon:=False, Comma:=False, Space:=False, Other:=False, OtherChar:="", FieldInfo:=Array(Array(1, xlTextFormat), Array(2, xlTextFormat)), DecimalSeparator:=".", ThousandsSeparator:=",", TrailingMinusNumbers:=False
Range("A1").CurrentRegion.Copy ws.Range("A1")
ActiveWorkbook.Close False
  
Application.ScreenUpdating = True
End Sub
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
Макрос работает только в конкретной книге
 
Цитата
nicex написал:
ActiveWorkbook.TDSheet
А где такое обращение в коде из первого сообщения? Там вроде просто к первому листу обращаемся. А обращение к кодовому имени листа возможно только из той книги, в которой сам код. Да и вряд ли в "любой книге" будет лист с таким кодовым именем, поэтому надо использовать отображаемое имя листа:
Код
ActiveWorkbook.Sheets("Имя листа").Range("A1")

или номер его положения в книге(как в исходном коде):
Код
ActiveWorkbook.Sheets(1).Range("A1")

Ну и задавая подобные вопросы не имея при этом начальных знаний хоть задачу описывайте: что надо копировать из любой книги и куда. Сейчас получается копирование из активной книги в неё же. Не уверен, что надо именно это...
Изменено: Дмитрий(The_Prist) Щербаков - 9 Авг 2019 20:48:47
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
Расчет выслуги лет, Процент расчета выслуги лет
 
Цитата
Мартын написал:
Не-не-не! По моей формуле 10 лет это меньше
а, ну теперь да. Но это после правки. Изначально блока +(--(D7+E7)>0) не было ;)
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
Расчет выслуги лет, Процент расчета выслуги лет
 
Цитата
Мартын написал:
Естественно!
Цитата
Мартын написал:
Так, ИМХО, будет правильнее
Тогда тут как бы нет уверенности...Вот записано в ячейке С7 20. Но кол-во месяцев и дней - больше 0. По логике это же уже БОЛЬШЕ 20, верно? Хоть на день - но больше. А по Вашей формуле это будет меньше или равно 20...Так что тут пока нет четких критериев правильно/неправильно - выбирать автору :)
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
Расчет выслуги лет, Процент расчета выслуги лет
 
=ВПР(C7;$I$7:$J$9;2)
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
Сводная таблица из динамических диапазонов
 
А поиском не пробовали пользоваться? Тема поднималась чуть более 100500 раз за все время существования форума. Решения есть на форуме, в Приемах, в сети. Приложите чуточку своих усилий для решения задачи - тем более надо-то всего лишь ПОИСКАТЬ. Например хотя бы по таким словам в яндексе: "сбор данных в Excel"
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
Сохранение форматов, формул и пересчет порядковых номеров строк таблицы при добавлении новой строки макросом
 
Цитата
grand68 написал:
Наверное, можно оптимизировать
часть оптимизированного Вам привели изначально :) А в целом:
Код
       Cells(ActiveCell.Row + 1, 3).Resize(,10).Value = Empty 'очищаем 10 столбцов, начиная с ячейки 3-го столбца
       Cells(ActiveCell.Row + 1, 15).Resize(,7).Value = Empty
       range(cells(ActiveCell.Row + 1,4), cells(ActiveCell.Row + 1,9)).locked = False 'снимаем блокировку с ячеек от 4-го столбца до 9-го
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
Как забэкапить настройки Microsoft Office которые находятся в ветках реестра?, microsoft office, реестр, резервное копирование
 
Цитата
rediffusion написал:
мне нужно решение!
Ух как категорично :) Да еще с воскл.знаком, типо ТРЕБОВАНИЕ. А уже есть основания что-то требовать? :)
Ну а вообще, откуда уверенность, что эти настройки вообще в реестре? Вы хоть напишите про какие цвета шрифта и ячеек речь. Потому что цвет шрифта и ячеек для каждого листа, зум, имена листов - все внутри XML-схемы каждого файла хранится.
Quick Access Toolbar - тоже насколько я знаю вовсе не к реестру подвязан, а к отдельному файлу в папке Excel. При этом все эти настройки можно тупо экспортировать в отдельный файл, который потом импортировать на ПК пользователя. При этом действия такие доступны прямо из самого меню(Файл Параметры -Настроить ленту -меню Импорт и экспорт).
Надстройки запрятаны в одноименной ветке - Addins(она в ветке Excel). Только учтите, что для тех же надстроек могут быть прописаны АБСОЛЮТНЫЕ пути к файлам надстройки/манифеста, который по понятным причинам может вовсе отсутствовать на конечном ПК.
Все остальное вряд ли кто Вам тут по полочкам разложит, т.к. те же настройки VBA могут быть раскиданы по многим веткам реестра и искать их надо опытным путем.

P.S. Забыл добавить: изменять эти настройки принудительно пользователю(да еще без его ведома, видимо) не очень правильно. Во-первых: не все может заработать. Во-вторых: те же настройки быстрого доступа каждый настраивает под себя и гадить его переделкой других пользователям не есть правильно. Ну и в-третьих лезть в ветки реестра, не предназначенные для правки обычным пользователем(да еще не зная всей кухни) - вообще может привести к выходу из строя не только приложения, но и ПК. Ну и не у всех есть доступ к правке реестра в принципе :) Но это если Вы решили распространять такое решение среди других пользователей, а не исключительно для себя любимого.
Изменено: Дмитрий(The_Prist) Щербаков - 8 Авг 2019 10:57:06
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
Копировать в отдельный файл все листы "1" с наименованиями: A_1, B_1, C_1, D_1
 
Вить, ну это уже обсуждалось - для себя любимого можно и через 10 строк писать :) Вдруг человеку именно так удобно? Мне нет, но я и не пытался даже вникнуть в такой код :)
Одно бросается в глаза сразу - неверное объявление переменных в надежде, что всем им через запятую будет присвоен тип, указанный для последней.
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
Сохранение форматов, формул и пересчет порядковых номеров строк таблицы при добавлении новой строки макросом
 
Цитата
grand68 написал:
как их прикрутить, именно, к вновь появившейся строке в любом месте таблицы
чуть-чуть хотя бы подумать, поприкидывать варианты и вместо r в коде Игоря поставить ActiveCell.Row + 1
Цитата
grand68 написал:
нужно сохранить форматы, а в определенных столбцах и формулы
одному Вам известно что это за определенные столбцы. Но в общем виде это примерно так:
Код
Sub Кнопка4_Щелчок()
    Application.ScreenUpdating = False
    If Application.Intersect(ActiveCell, ActiveSheet.UsedRange) Is Nothing _
        Or ActiveCell.Row < 10 Then
            MsgBox "Активная строка вне таблицы"
    Else
        Rows(ActiveCell.Row).Insert
        Rows(ActiveCell.Row + 1).Copy Rows(ActiveCell.Row)
    End If
       Cells(ActiveCell.Row + 1,1).Value = empty 'очищаем ячейку первого столбца от значений и формул, оставляя при этом форматы
       Cells(ActiveCell.Row + 1,4).Value = empty 'очищаем ячейку 4-го столбца от значений и формул, оставляя при этом форматы
       'и т.д. по аналогии
       range(cells(ActiveCell.Row + 1,4), cells(ActiveCell.Row + 1,9)).locked = False
       Application.ScreenUpdating = True
 End Sub

ячейки с формулами при этом затрагивать смысла нет, т.к. их значения зависят от значения других ячеек.
Плюс все это можно было узнать через грамотную запись макроса. когда Вы нажимаете "Очистить все"(ClearContents) - то все и очищаете. Но если это меню на панели раскрыть - там появятся другие варианты, вроде: Очистить форматы, Очистить содержимое(это как раз удаление значений и формул без очистки форматов). Или просто выделить нужные ячейки и нажать Del(при активной записи макроса, конечно).
Изменено: Дмитрий(The_Prist) Щербаков - 8 Авг 2019 10:23:39
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
Назначить макрос кнопке, находящейся внутри frame на листе/
 
Ну и в довесок во вложении Ваш пример файла с работающей кнопкой(сделано как и положено через классы)
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
Назначить макрос кнопке, находящейся внутри frame на листе/
 
Цитата
slepoi_kamin написал:
только их можно расположить в элементе frame. Обычную кнопку не получается даже наложить поверх рамки
зато можно создавать не рамку, а другую фигуру, назначив её границам нужное форматирование, поместив внутрь две таких же кнопки и применить группировку всех трех фигур. Тогда кнопки будут внутри одной большой(типа рамки) и будут перемещаться вместе с ней. И никаких танцев с бубном...
Хотя глянул пример - там все сложнее. Так не только frame, там еще MultiPage, флажки и т.п. Стандартными элементами этого не изобразить. Проще уж реально UserForm использовать, чем городить ActiveX на листе, которые не особо-то стабильные в работе.
Цитата
slepoi_kamin написал:
чтобы форма все время находилась на листе. Начиная с открытия книги, заканчивая дебагингом кода.
какое странное желание...Ну про нахождение все время на листе еще понятно, а вот про дебагинг...Что подразумевается под необходимостью нахождения формы на листе при дебагинге?
По идее Userform.Show 0 решает проблему отображения поверх окна Excel. События листа Activate и Deactivate решают проблему отображения только на конкретном листе.
Изменено: Дмитрий(The_Prist) Щербаков - 7 Авг 2019 17:11:11
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
Как преобразовать 114,45 в 114 рублей 45 копеек?
 
Поиск по форуму и по интернету по словам: сумма прописью. Тема изъезжена до невообразимости.
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
Не отображается содержимое формы, запуск .Show vbModeless происходит без отображения содержимого окна (((
 
Да, раз у Вас не отображается как положено, попробуйте записать так:
Код
Sub Zastavka()
    Dim IsRun As Boolean
    Dim ufForm As CheckConnect
    Set ufForm = New CheckConnect

IsInetPresent = True
   With ufForm
        .Show vbModeless
        .Repaint 'перерисовка формы
        DoEvents 'передаем управление системе для завершения всех ожидающих процессов
        IsInetPresent = .CreateLoad(strConn)
    End With
    Debug.Print IsInetPresent
End Sub
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
Не отображается содержимое формы, запуск .Show vbModeless происходит без отображения содержимого окна (((
 
Цитата
vitorian написал:
Эта строка уже встречается в форме в вызове .CreateLoad
а должна быть ДО этого вызова.
Цитата
vitorian написал:
окно должно само закрыться по завершению проверки связи
так оно закрывается....
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
Собрать данные с листов графиков работы в табель учета рабочего времени
 
Как вариант можете попробовать адаптировать под свою задачу код отсюда: Как собрать данные с нескольких листов или книг?
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
Не отображается содержимое формы, запуск .Show vbModeless происходит без отображения содержимого окна (((
 
А зачем Вы в коде закомментировали строку
Код
.SHOW vbModeless
?
Раскомментируйте и все будет как хотите. Я бы еще рекомендовал заголовок формы убрать для эстетики: Как убрать заголовок у UserForm VBA
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
Построение отчётов в excel подобно access'овским
 
Цитата
art013 написал:
думаю ни я один хочу быстро формирофать сгруппированные отчёты из массива данных, может были подобные темы
не один Вы и темы были. Но проблема как раз в том, что данные у всех разные и итоговый вид отчетов из них тоже отличается, что делает основную часть кода по созданию итогового отчета бесполезным на 90% в случае применения к другим отчетам. А универсального инструмента изобрести просто невозможно, ибо каждая ситуация индивидуальна. Я создавал универсальную программу для преобразования выгрузок из 1С в удобные таблицы и даже там не под все отчеты можно было применить в итоге решение.
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
Страницы: 1 2 3 4 5 6 7 8 9 10 11 ... 333 След.
Наверх