Новости:

Название темы должно отражать суть задачи.
Темы типа "ПОМОГИТЕ!!!", "Срочно!" и т.п. будут удаляться без объяснения причин

Главное меню

Последние сообщения

#11
Добрый день.
У меня похожая задачка:
Нужно при помощи макроса вставлять из скопированной ячейки только значение и примечание в выбранную ячейку. Вставку вызывать, к примеру, кнопкой из контекстного меню.
Как это реализовать?
#12
Вопросы по Excel и VBA / Re: Excel 2003 на Win10 каждый...
Последний ответ от McConst - 06.05.2025, 11:44:50
Проблема периодически возникает и всё время приходится её решать.
Поставил Windows 11. Здесь простой правкой реестра уже не обойтись. Windows 11 перестаёт открывать файлы через книгу или ярлык книги. Только через запуск приложения.

Долго мучал ИИ, прежде чем получил готовое решение. Приведу его здесь. Решение для Excel 2003

Создаём .reg файл для правки реестра:
Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\Excel.Sheet.8.Separate]
@="Microsoft Excel Worksheet (Separate Instance)"

[HKEY_CLASSES_ROOT\Excel.Sheet.8.Separate\shell]

[HKEY_CLASSES_ROOT\Excel.Sheet.8.Separate\shell\open]

[HKEY_CLASSES_ROOT\Excel.Sheet.8.Separate\shell\open\command]
@="\"C:\\Program Files (x86)\\Microsoft Office\\OFFICE11\\EXCEL.EXE\" /x \"%1\""

Кликаем на файл. В реестр добавятся новые ветки-клоны стандартной Excel.Sheet.8 (Excel 2003)
Запускаем cmd в режиме Администратора.
Выполняем
assoc .xls=Excel.Sheet.8.Separate
Тем самым меняем действия приложения Excel, ассоциированные с файлами .xls
Если нужно восстановить способ открытия Excel обратно, в cmd запускаем
assoc .xls=Excel.Sheet.8

У меня сработало.
#13
Всем привет, подскажите пожалуйста, как реализовать выборку данных с разных листов одной книги, через функции или же с помощью скрипта?
С учетом того, что структура столбцов в этих листах немного отличается (названия при этом одинаковые)
ссылка на файл: https://docs.google.com/spreadsheets/d/1uh4ILEiDXlX-n-iKr4Iho9wz9ujX-_TPR6B5kFWeacY/edit?gid=1718507152#gid=1718507152

#14
У меня значения в ячейках рассчитываются. Если напишите, что должно быть и почему текущий результат не верный - будет проще помочь. А так, я бы как минимум пару строк изменил (комментарии над ними проставил):
'dd - это даты. Значит объявлять надо тоже как даты, чтобы сравнение шло в итоге корректно
Function define_stat(ws As String, dd As Date, dta_rng As Range, pls_tank As String, pls_salt, option1 As String, def_ As String)
On Error Resume Next

Dim mass_(100) As Variant
Dim result As Double

j = -1

For Each r In dta_rng

pos = Split(r.Address, "$")
'у объекта Range есть свойства Row и Column, которые отвечают за номер строки и столбца.
'   поэтому их и надо ипользовать
If r.Row >= 3 Then

If r.Value = "" Then
 rng_fin = CStr(mass_(0)) & ":" & CStr(mass_(j))
 
 'Здесь можно задать дополнительные функции для вывода данных, например Average
 If def_ = "max" Then result_ = WorksheetFunction.Max(Sheets(ws).Range(rng_fin))
 If def_ = "aver" Then result_ = WorksheetFunction.average(Sheets(ws).Range(rng_fin))
 If def_ = "min" Then result_ = WorksheetFunction.Min(Sheets(ws).Range(rng_fin))
 
 
 'Debug.Print result_
 GoTo stp
End If

    a = Split(r.Value, " ")
    dd_now = CDate(a(0))
   
    If dd_now = dd Then
        'явно указываем поиск по значениям и по части ячейки (LookIn и lookat)
          w = Sheets(ws).Range(pls_tank & CInt(pos(2))).Find(option1, LookIn:=xlValues, lookat:=xlPart) 'признак резервуаров
             If w <> "" Then
              j = j + 1
              mass_(j) = Sheets(ws).Range(pls_salt & CInt(pos(2))).Address 'столбец, в котором находятся значения солей
              'Debug.Print mass_(j)
              'Debug.Print j
             End If
    End If
End If

Next

stp:
define_stat = result_ 'вывод результата функции

End Function
#15
Без примера данных разговор ни о чем. По сути, здесь все расписано уже: Как получить список уникальных(не повторяющихся) значений?
#16
Здравствуйте!
Есть задача выбрать уникальные значения из строки в Excel и вывести эти значения также в строку с любого указанного столбца, ячейки.
Допустим, данные (в моем случае это даты) находятся в строке A1:W1.
Результат требуется вывести в строку, начиная с ячейки AA1.
#17
Вопросы по Excel и VBA / Не могу понять почему неправил...
Последний ответ от MaMSo - 24.04.2025, 06:11:32
Добрый день, товарищи.
Столкнулся с проблемой, которую не могу решить своими силами.
Смысл функции: необходимо из реестра за определённую дату выбрать минимальное цифровое значение, которое соответствует определённым условиям.Вот формула

=define_stat("БУОС №4 КП-63";H5;'БУОС №4 КП-63'!B:B;"E";"F";"КДМНУ";"min")

Лист называется БУОС №4 КП-63;
В Н5 находится дата;
На листе БУОС №4 КП-63 в столбце В находятся даты;
В столбце Е находятся название типа "КП-63 ВтЛУ / КДМНУ" и "КП-63 ВтЛУ / РГС-3" (номера РГС меняются);
В столбце F находятся искомые данные в числовом виде
Нужно минимальное значение из 4-5 штук, которые находятся в столбце F. Данные нужно брать при условии, что в столбце Е будет "КП-63 ВтЛУ / КДМНУ".
В данный момент берёт минимальное значение за определённую дату из всех, находящихся в столбце F. И вот что интересно - в другой таблице работает правильно, хотя условия похожие.
В столбце В пустых ячеек нет. В другом месте эта формула работает правильно, но в том случае вместо слова "КДМНУ" стоит слово "нефть". В прилагаемом файле рабочее выделено зелёным цветом, а не рабочее желтым.
Это прямо загадка Вселенной - слово изменилось и формула работать перестала...
Любое изменение кода приводит к тому, что работать перестаёт. Вообще.
#18
Вопросы по Excel и VBA / Re: Доброго дня, прошу помощи ...
Последний ответ от kosteg - 24.04.2025, 03:51:38
Судя по всему, у вас при активации поиска открывается какая-то форма, на которой есть поле TextBox для ввода кода. Можно  попробовать повесить TextBox1.Value = "" на событие UserForm_Initialize или UserForm_Activate, или в конец вашего кода с поиском... В зависимости что у вас там происходит.
#19
Добрый день есть сводный отчет Power Query ,выгружает в сводный отчет данные из файлов,расположенных папке "данные для отчета".Сводный отчет выгружает список матчей и коэффициенты к каждому матчу.Мне нужно обновить код так чтобы дополнительно в сводный отчет начали выгружаться данные в числовом формате из столбцов SK,SL,SM из файлов расположенных в папке "данные для отчета".
Помогите пжлста
#20
Сообщу сразу, я в Скриптах не разбираюсь, и макрос записывал через "макрос - расширение - записать".
Поэтому могу какие то вещи не знать, но если чуть подробнее распишите, то я думаю разберусь.

Теперь собственно к вопросу по теме.
Есть лист, назовем его "шаблон" в нем хранятся разные области данных с флажками формулами, условным форматированием.

Необходимо вставлять одну из областей в заранее заданные ячейки на выбранном листе. ( т.е. условно выбранною область с листа "шаблон" помешать в область A2:B5 на выбранном листе, другой макрос в те же ячейки помещать уже другую область все с того же листа "шаблон").

Я как не крутился, не смог сделать макрос который копировал бы область в выбранный лист, только в тот который указан в макросе.

А т.к. областей в необходимых для копирования штук 10, и листов в которые их надо вставлять штук пять, то просто записать по 10 макросов на лист - очень муторно + добавление 11 области заставить писать отдельный макрос на каждый лист.

Поэтому и вопрос, возможно ли сделать так, что бы при нажатии кнопки (или совершения другого действия) в выбранный лист помещалась область со всем-всем-всем из другого листа в заранее заданные ячейки.
Яндекс.Метрика Рейтинг@Mail.ru