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

Страницы: 1 2 3 След.
Пропускная способность памяти
 
Добрый день. Подскажите пож где можно посмотреть использование Пропускной способности оперативной памяти. В диспетчере задач Windows 10 отображается загруженность процессора, также вижу по жестким дискам скорость записи, а вот по оперативной памяти - отображается только сколько занято объёма, а насколько занята пропускная способность оперативной памяти - не могу найти информацию
Изменено: Ливиан - 06.05.2022 15:31:26 (уточнил)
Запуск нескольких макросов одновременно с помощью кода
 
Добрый день.
Помогите, пож, по следующему вопросу.
Имеется файл "1.xlsm" с макросом "Primer".  Этот файл скопирован в 3 папки и запускается в отдельных приложениях Excel.  Как можно автоматизировать запуск нескольких макросов одновременно (все копии уже открыты в отдельных приложениях Excel)
Перепробовал макросы, но все макросы запускают один макрос и ждут его выполнения (а это очень долго) и только когда он выполнится запускают следующий... а нужно одновременно запустить все макросы. Если VBA такое не может, может скрипт или еще что-нибудь сможет решить эту задачу.
Изменено: Ливиан - 22.01.2021 09:00:26 (прикрепил файлы)
Проблемы с Группировкой в сводной таблице при ручной настройке
 
Добрый день
Подскажите пож, по ситуации. Сводная таблица автоматически группирует нормально, но если руками выставить параметры группировки, то выдает не то что ожидаешь... например числа с большим количеством знаков после запятой, хотя знаком максимум 4-5
Как сделать стандартную группировку с шагом в сводной таблице из модели данных?
 
Добрый день
Подскажите, пож, как сгруппировать числовое поле в сводной таблице, построенной на модели данных так, чтобы получилась стандартная (привычная) группировка обычной сводной построеной на диапазоне ячеек (например от 1 до 3, от 4 до 6... с шагом скажем 2). Пробовал MRound, но это просто округление, а не то что хотелось бы получить  
Изменено: Ливиан - 24.08.2020 08:53:34 (опечатка)
VBA. Как изменить диапазон ячеек со значениями выносок рядов графика
 
Добрый день. Помогите пож с графиком.
Есть график с произвольным  количеством рядов, у некоторых рядов есть выноски, у некоторых нет. Значения выносок берутся из диапазонов ячеек. Требуется заменить макросом диапазоны значений выносок на новые, из того же столбца. Прикладываю пример с исходным графиком и графиком-результатом.
Изменено: Ливиан - 07.08.2020 11:06:18
VBA. Списки диапазонов, построенных на основных и вспомогательных осях графика
 
Добрый день. Помогите пож с задачей, есть график с основной и вспомогательной осью У. Как можно получить (вытащить) списки диапазонов на которых построены графики для каждой оси? В примере есть диапазоны и график, также есть ответ который нужно получить с помощью VBA.
Изменено: Ливиан - 13.06.2020 07:53:35 (отредактировал)
vba. Изменение минимального и максимального значения оси У графика
 
Добрый день
Помогите с изменением минимального и максимального значения оси У графика, так чтобы убрать пустые ненужные деления. В примере хотелось бы убрать ось ниже 150 и выше 270, так как эти области  не несут никакой смысловой нагрузки. Пример прилагаю, макрос почему то не работает корректно
Изменено: Ливиан - 12.06.2020 09:13:10 (Уточнил)
VBA. Как узнать размерность диапазона графика
 
Добрый день. Подскажите пож, как макросом получить количество строк и столбцов в диапазоне построения графика. Или первую и последнюю строку/столбец, используемый для построения графика. Графики разные, всегда меняются.  
VBA. Как в массив загнать диапазон ячеек так, чтобы в дробных числах знаком была точка, а не запятая
 
Добрый день
Помогите, пож, по ситуации
Загоняю диапазон ячеек в массив, конкатенирую и применяю evaluate, выдает ошибку 2015 - из-за запятой, которая отделяет дробную часть от целой.
Нашел временный выход - Replace (меняю запятую на точку)...
Пока работает, но так как таблиц много и они меняются, в будущем это может не сработать (могут заменяться запятые, которые нужны)
Подскажите, пож, как в массив можно загнать диапазон ячеек без запятых, а с точками? Т.е. как получить массив в котором числа находятся с точкой?
Пример прилагаю (см. в собщении ниже)
Изменено: Ливиан - 09.03.2020 13:31:47 (отредактировал)
VBA, массив условий для оператора if
 
Добрый день
Подскажите, пож, по следующему вопросу
Возможно ли создать массив, словарь, переменные или еще что-нибудь, где возможно хранить условия для оператора if? Не знаю, понятно ли описал задачу, ниже код для наглядности, что примерно хотелось бы получить. Не знаю существует ли что-то подобное или это мои фантазии...
Код
Sub aаaaa()

    Dim s As Variant
    Dim a As Long
    
    ReDim s(1 To 2)
    s(1) = "2=2 and 4>3"
    s(2) = "3=2"
    
    If s(1) Or s(2) Then a = 1
    
End Sub
Изменено: Ливиан - 01.03.2020 14:59:48 (исправил орфографическую ошибку)
Как из макроса закрыть все процессы Excel?
 
Добрый день
Как из макроса закрыть все процессы Excel?  Есть несколько отдельных процессов, в каждом процессе открыто по несколько файлов. Возможно есть скрытые процессы - их тоже закрыть все и полностью очистить память
Нашел такой код, по описанию к нему код должен был решить задачу, но при запуске зависает и ничего не закрывает. Возможно код не решает моих задач, описание было на английском, поэтому возможно что-то не так понял:
Код
Sub CloseAllExcel()
    Dim xlApp As Excel.Application
    
    Do
        On Error Resume Next
        Set xlApp = GetObject(, "Excel.Application")
        If Err <> 0 Then Exit Do '-- no more Excel instant
        On Error GoTo CloseAllExcel_Error
        xlApp.DisplayAlerts = False
        xlApp.Quit
    Loop
    Set xlApp = Nothing
    Exit Sub
    
CloseAllExcel_Error:
    MsgBox Err.Number & ": " & Err.Description
End Sub
Изменено: Ливиан - 21.02.2020 13:15:34 (отредактировал)
Как обращаться из макроса к книгам, открытым в других, параллельных сессиях
 
Добрый день.
Помогите пож по ситуации. Запущенно несколько параллельных отдельных процессов Excel, в каждом процессе открыто несколько книг (имена книг часто совпадают, пути разные). Нужно макросом обращаться к ним, активировать...
нашел в интернете такое:
Код
dim objExcel As Variant
Set objExcel = GetObject("путь и имя файла")
objExcel.Activate 

Ошибок не выдает, но и не активирует нужную книгу - не переключается на нее

Изменено: Ливиан - 20.02.2020 11:02:13 (отредактировал)
Правильное создание двумерного массива из произвольных столбцов плоской таблицы в VBA
 
Добрый день.
Помогите пож по ситуации.
Есть таблица, скажем, из 100 строк и 10 столбцов. Как правильно (в плане быстродействия и лаконичности кода) одним движением сформировать двумерный массив из, например, 100 строк и 3 выбранных столбцов. Например, массив из 2-го, 4-го, 7-го столбцов.
Искал какой-нибудь красивый и быстрый способ аналогичный: arr(1 to 100, 1) = range(cells(1,2),cells(100,2)) - (сам придумал, понимаю, что ерунда), т.е. столбец за столбцом загонять в массив, но не нашел нигде ничего подобного.
Возможно, кроме перебора ячеек нет другого способа... Жаль, но это тоже устраивает, т.к. не буду тратить время на поиски красивой и быстрой альтернативы перебору ячеек, которой не существует
VBA. Простые способы сравнения 2 таблиц
 
Добрый день.
Помогите, пож, по ситуации.  Раньше когда сравнивал несколько одинаковых таблиц (с одинаковыми столбцами, пусть и последовательность столбцов разная, и одинаковым количеством строк) делал простую проверку контрольной суммой, это хоть и не точно, но устраивало на больших таблицах - числа дробные и вероятность случайного совпадения итоговых сумм была небольшая и меня устраивала
Этот подход и сейчас бы меня устраивал, особенно меня очень подкупает его простота, незамороченность и универсальность (можно применять на любых достаточно больших числовых таблицах). Но теперь появились еще и столбцы с текстовыми ячейками... и их тоже надо проверить. Единственное, что мне приходит в голову это каждый текстовый столбец проверять ячейка за ячейкой... И придется так и поступить, если вы не поможете мне найти другой подход... Было очень хорошо, если бы каким-то образом сохранить старый подход и его плюсы, только обойти как-то эту проблему с текстовыми столбцами в VBA
Изменено: Ливиан - 23.10.2019 09:12:53 (уточнил)
VBA. Сортировка столбцов таблиц по списку
 
Добрый день
Помогите, пожалуйста, по следующей ситуации
Есть разные таблицы в которых одинаковые столбцы (яблоки, груши, клубника...). Различаться таблицы могут порядком этих столбцов (например, 1 таблица: яблоки, груши, клубника; 2 таблица: груши, яблоки, клубника) и количеством столбцов (например, 1 таблица: яблоки, груши, клубника; 2 таблица: груши,  клубника)
Есть список порядка сортировки. Как отсортировать столбцы таблиц, различающихся по количеству столбцов по этому списку макросом?
В дальнейшем из таблиц будут макросом строиться сводные, поэтому в первой строке нужны заголовки столбцов.
Как в VBA указывать или менять путь к папкам
 
Добрый день. Подскажите, пожалуйста, есть ли возможность изменить значение глобальной константы, не открывая модуль макросов. Есть несколько глобальных констант, например, Public Const SourceFolderPath As String = "C:\Склад\". Чтобы выбрать другую папку - приходится изменять путь в модуле макросов, что хочется избежать, с целью защиты макросов от случайного изменения. Я объявил константы на отдельном модуле, чтобы уменьшить вероятность случайного изменения макросов, но хотелось бы полностью убрать этот риск.

У меня есть некоторые мысли:
1. запоролить все модули, кроме модуля с константами - это возможно? Если да, подскажите, пож, как это сделать.
2. присваивать значения глобальных констант через User Forms - это возможно? С User Forms опыта нет, поэтому этот вариант порождает вопросы: каждый раз придется заполнять с нуля все глобальные константы в User Forms? Констант сейчас под 15 шт., будет больше и с нуля заполнять их - время и ошибки возможные. Или в User Forms возможно запоминать последние значения?

Но возможно это бред и есть лучше способы.
Как присвоить значение глобальной переменной вне процедуры, функции
 
Добрый день
Объявил глобальную переменную в начале модуля, потом создал отдельную процедуру с присвоением значения переменной = значение ячейки
Столкнулся с тем, что каждый раз изменив значение ячейки - вызываю процедуру присвоения ей нового значения. Возможно ли избежать этого, чтобы значение переменной обновлялось каждый раз, когда обновляется ячейка, без дополнительной процедуры. На данный момент это выглядит так
Код
Option Explicit
Private i As String

Sub VarSetting ()
i = Workbooks("Склад.xlsm").Worksheets("Parameters").Cells(2, 2).Value
End Sub
Не владею предметом глобальных переменных, констант... может что то не так называю, простите если что
Как прервать работу макроса из другого макроса?
 
Добрый день
Подскажите пож как прервать работу одного макроса из другого? Что-то вроде:
Код
Sub aaa()
 Call bbb
End Sub

Sub bbb()
 exit sub aaa
End Sub
Список файлов в папке с одинаковыми именами
 
Добрый день, уважаемые гуру
Помогите, пожалуйста, с макросом, который выводит список файлов в  папке с одинаковыми именами, например: ряженка.csv, ряженка.txt, ряженка.xlsx, ряженка.xlsb, ряженка.doc...
Изменено: Ливиан - 19.08.2019 09:06:30 (переименовал)
[ Закрыто] Оптимизация конкретного кода с целью ускорения его выполнения
 

Добрый день

Подскажите, пож, как ускорить найденный в интернете макрос, который преобразует CSV в XLSB. Работает отлично, но медленно: 250 мб 3000 файлов пересохраняет около 30 мин. Разными путями пытался его ускорить.  И получил неожиданные результаты.

Если сохранять в xlsx, то быстрее на 10-20% чем xlsb (ожидал наоборот). При Application.ScreenUpdating = False – каждый раз возникает тот или иной «сбой». Чаще всего работа макроса прерывается из-за того, что Excel ожидает ответа на предупреждение: «Сохранение в этом формате возможно приведет к  потери части функциональности» - точно не процитирую, нажал, не подумав больше не показывать и теперь макрос если прерывается, то без предупреждений. Каждый раз на разных файлах прерывается. Хорошо бы на одном и том же, тогда причина в конкретном csv. Или вылетает предупреждение что не хватает памяти. И один файл как минимум отсутствует в результатах обработки (видимо тот на котором произошла заминка). Но самое удивительное, время обработки файлов при отключении обновления экрана не уменьшается, а увеличивается. Без Application.ScreenUpdating = False, все файлы нормально обрабатываются и никаких предупреждений, заминок, ожиданий моих действий... не появляется и еще время обработки сокращается

Буду очень благодарен за любые пути ускорения данного макроса

Скриншоты прилагаю, но это происходит очень редко. в основном останавливается макрос без ничего и только при Application.ScreenUpdating = False

Код
Sub CommandButton2_Click()
'Application.Calculation = xlCalculationManual
'Application.ScreenUpdating = False  'приводит к остановке макроса: "сохранение в этом формате приводит к потере данных продоложить?" 
'так же была остановка с недостатком памяти, но что жд что оперативы много было свободной, также один файл не сохранился и время выполнения макроса увеличивалось на 50%
'Application.DisplayStatusBar = False
'Application.EnableEvents = False
'ActiveSheet.DisplayPageBreaks = False
'Application.DisplayAlerts = False 'подавляет почти все системные сообщения Excel, все равно останавливается с пустым окном

Dim CSVfolder As String, _
    XlsFolder As String, _
    fname As String, _
    wBook As Workbook

 CSVfolder = "D:\csv\"
 XlsFolder = "D:\Charts\"

 fname = Dir(CSVfolder & "*.csv")

 Do While fname <> ""
    Set wBook = Workbooks.Open(CSVfolder & fname, Format:=6, Delimiter:=",")
    'wBook.SaveAs XlsFolder & Replace(fname, ".csv", ""), FileFormat:=50  Эта строка приводила к тому что файлы типа trk.kz.csv преобразовывались в trk.kz с расширением.kz
    wBook.SaveAs XlsFolder & Replace(fname, ".csv", ".xlsb"), FileFormat:=50 'FileFormat:=50 сохраняет в xlsb, 51 xlsx, 52 xlsm...
    'On Error Resume Next 'добавил строку чтобы прекратилось прерывание выполнения макроса, из-за того что выскакивает предупреждение что потеря части данных, не хватает памяти и т.д.
    wBook.Close False 'равнозначно wBook.Close SaveChanges:=False
    'wBook.Close True
    'On Error Resume Next  'добавил строку чтобы прекратилось прерывание выполнения макроса, из-за того что выскакивает предупреждение что потеря части данных, не хватает памяти и т.д.
    fname = Dir
 Loop

 
'Application.Calculation = xlCalculationAutomatic
'Application.ScreenUpdating = True
'Application.DisplayStatusBar = True
'Application.EnableEvents = True
'ActiveSheet.DisplayPageBreaks = True
'Application.DisplayAlerts = True

End Sub
Изменено: Ливиан - 27.05.2019 08:46:07 (уточнил)
В каком формате Excel лучше хранить данные
 
Добрый день, уважаемые гуру Excel.
Подскажите пож в каком формате Excel (xlsx, xlsm, xlsb, csv, txt...) лучше сохранять данные в плане скорости сохранения на ЖД, обработки в Excel и открытия в Excel.
Поступает много исходных файлов excel с данными (значения). Исходные файлы  нужно последовательно загрузить в Excel, последовательно обработать и результаты последовательно сохранить (значениями) на ЖД. Обработанные файлы опять нужно последовательно загрузить в Excel, последовательно обработать и последовательно сохранить результаты на ЖД (значениями). Несколько циклов.
Нужна скорость сохранения файла на ЖД и скорость открытия файла (или скорость получения данных) Excel'ем.
До баз данных не дорос пока, сложно это.
Power Query Power Pivot - возможности
 
Добрый день. Щупаю Power Query Power Pivot, Базы данных. Знания - теоретические минимальные, практических нет , особенно, к моему сожалению, по Базам данных.
Нахожусь на этапе что для чего, какие дает преимущества и какой результат можно получить с затраченных усилий - поэтому возможно задам глупые вопросы. Натолкнулся в статье https://www.planetaexcel.ru/techniques/24/5854/ на такую информацию:

"Поскольку "под капотом" у Power Pivot, по сути, полноценный движок базы данных, то с большими объемами информации он справляется очень быстро. Нужно проанализировать 10-15 млн. записей и построить сводную? И все это на стареньком ноутбуке? Без проблем"

Возникло несколько вопросов и предположений:
1. Если "под капотом" у Power Pivot, по сути, полноценный движок базы данных,  - то можно ли говорить что Excel при включенном Power Pivot  превращается в полноценное хранилище больших объемов информации? И отпадает необходимость прибегать  к сторонним Базам данных (Access, MS SQL...) для хранения данных
2. Возможно ли организовать примерно следующую модель обработки и хранения данных только средствами Excel:
  • загружать большой объем исходных данных из различных источников в Power Pivot (возможно с помощью Power Query)
  • из Power Pivot частями копировать исходные данные на обычный рабочий лист Excel, делать расчеты новых столбцов (как  обычными формулами листа так и макросами)
  • частями заменять/добавлять полученные результаты (столбцы) в Power Pivot (желательно макросами)
  • делать сводную на больших объемах данных (где то читал что до 2 гб размер данных может доходить в Power Pivot)
3. Или возможно прямо в  Power Pivot использовать VBA и обычные формулы Excel для вычислений значений ячеек столбцов?  
Переход по гиперссылке в VBA
 
Добрый день
Помогите пож по следующей ситуации
В ячейке С2 находится формула генерирующая ссылку. По шелчку мыши все работает, макрорекодер записал следующее:

Sub Макрос2()
'
   Range("C2").Select
End Sub

Однако макрос не срабатывает
Восстановление "битого" файла Excel с макросом
 
Добрый день
Не понятно почему перестал открываться файл с макросом. Находился на флешке
Помогите восстановить, пож, (если получится весь файл, если нет то извлечь макрос)
Какую базу данных сейчас перспективнее изучать новичку
 
Добрый день
Посоветуйте, пож, новичку Базу Данных с точки зрения затраченные усилия по изучению / функционал БД
Порылся в интернете, вроде как лучше Access (интеграция с Ексель + VBA), но его не развивают, он устарел (интерфейс только красивее от версии к версии)... пишут что с каждым годом все сложнее получить помощь по изучению Access - т.к. все меньше людей им занимается... нет сайтов профессиональных (как Планета Ексель, например). Отставание от других БД функционально увеличивается.  И изменений вроде не предвидится, т.к. MS развивает другой продукт MS SQL Express. Есть конечно и фанаты свои, но такое сложилось ощущение - может ложное, что это больше люди которые когда то изучили, им хватает и другого они не знают... И все это с каждым годом по нарастающей.  
Office 365 и Office 2019 - в чем преимущества и различия?
 
Добрый день
Рассматриваю покупку одного из вариантов. Помогите определиться

Что привлекает в Office 365:
1. Постоянные обновления, улучшения, изменения (интерфейса...), добавление новых возможностей и т.д.
На этом все

Что не нравится
1. Файлы на сервере (тут вопрос можно ли запретить любое копирование на сервер? чтобы только локально на жестком или флешке)
2. Подключение к интернету (кажется минимум раз в месяц ноутбук должен быть подключен)
3. Платить периодически
На этом все (ввиду отсутствия опыта работы с 365), может я ошибаюсь и можно обойти минусы?

В чем для Вас минусы и плюсы
Перевод даты в текст
 
Добрый день, уважаемые специалисты
Подскажите пож, в чем проблема (файл в приложении).
В ячейке В2 не тот результат что требуется. Должна быть таже дата что и в А1 только в текстовом формате
Изменено: Ливиан - 03.03.2018 11:10:29 (не удалось прикрепить скриншот)
Удобно ли работать в Excel на планшете Windows?
 
Добрый день.
Поделитесь пож, опытом работы в Excel на планшете Windows. Хочу приобрести Samsung Galaxy Book 12 или Asus Transformer 3 Pro. Но сомневаюсь в удобстве работы скажем в метро или автобусе.
На работе компьютер с сенсорным экраном и excel 2010. Попробовал пальцем поработать в excel - не удобно, нужно по несколько раз тыкать пальцем, контекстные меню отличаются от контекстных меню вызванных правым щелчком мыши, не удалось протянуть формулу на весь столбец двойным кликом на нижнем правом углу ячейки и т.д.
Возможно работа в excel посредством пера/ручки дело обстоит лучше? Как реализован двойной клик левой мыши, правый? Т.е. насколько полноценно и удобно  перо заменяет мышь в excel?
Может у Вас есть еще какие-то хорошие/плохие впечатления от работы с планшетами  Windows, Excel и пером?
Изменено: Ливиан - 26.08.2017 11:55:32 (сократил)
Загрузчик котировок с Yahoo Finance: помогите "починить" файл
 
Добрый день
Давно нашел в интернете загрузчик котировок с Yahoo Finance. Прекрасно работали все функции (опции).
Давно не пользовался им, сегодня открыл - перестал работать, архивные версии тоже не работают. Файл очистил от всех "украшательств", сумел вес уменьшить до 150 кб, больше не получается, простите

Если не трудно, покажите, пож, в чем была загвоздка
Правильный синтаксис функции VBA
 
Добрый день
Помогите, пож, с функцией (определяет 2 наибольшее значение из массива цифр, например, 1,2,3,4,5 - должно вернуть 4)

a = Application.WorksheetFunction.LARGE(1;2;3;4;5,2)
Страницы: 1 2 3 След.
Наверх