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

Страницы: 1 2 3 След.
Проблема с формулами в умной таблице
 
Jack Famous, ок.
Но сути моего поста это не меняет.
Проблема с формулами в умной таблице
 
Jack Famous, создай умную таблицу с данными и формулами, после этого очисти все строки, отключи пересчет и вставь данные в таблицу. Формулы пересчитаются. если добавишь новую строку в умную таблицу, то по ней данные тоже пересчитаются сразу после добавления.

То, что ты указал в скриншоте не работает на умную таблицу, при добавления строки - формулы автоматически протягиваются. это работает только тогда, когда в 1ой строке есть формулы, а дальше нет.
Проблема с формулами в умной таблице
 
БМВ, тут скорее вопрос не в формулах а в объеме. данные же вставляются в умную таблицу построчно, потом протягиваются на эту строчку формулы, пересчитываются и на новую строку. А если в файле 20 умных таблиц и они взаимосвязаны? нужно вставить данные, во все таблицы и только потом пересчитать.
Умная таблица нужна 100%, но вот мгновенный пересчет при вставке данных - не нужен.
Проблема с формулами в умной таблице
 
Добрый день.
Создана умная таблица с заранее сохраненными формулами. после вставки данных в таблицу - форумы автоматически протягиваются и пересчитываются (пересчет производится для каждой новой строки отдельно).
Проблема в том, что чем больше информации вставляется, там дольше занимает процесс (иногда более часа). Если вставлять данные вне умной таблицы и вручную протягивать формулы, то процесс занимает в разы меньше времени.
В связи с этим у меня к вам вопрос: возможно ли как-то отключить автопересчет формул в умной таблице или отключить автоматическое протягивание формул?

З.Ы. Выставление ручного пересчета, отключение пересчета конкретного листа, отключение автопротягивания формулы - не помогает.

заранее спасибо!
Отключения пересчета формул в умной таблице
 
,  нет, как я уже писал выше - это не работает. Если вставляется новая строка (т.е. вы вставляете данные в умную таблицу заставляя ее протягиваться ниже) - формулы при создании автоматически пересчитываются. и если данных много, то и формулы считаются для каждой из строк. То как установлен расчет формул (автоматический режим или ручной) ни как не влияет на этот расчет.
Отключения пересчета формул в умной таблице
 
Добрый день.
Столкнулся с проблемой, что при вставке данных в уже существующую умную таблицу (с заранее прописанными формулами), то формулы автоматически пересчитываются по всей таблице. это связано с тем, что на каждую новую строку данных создается новая строка умной таблицы, в которую протягиваются формулы.
Возможно ли отключить этот самый пересчет? изменения параметров вычисления не помогает. Отключение пересчета конкретного листа тоже не дает результатов.
Заранее спасибо!
Gif в форме
 
Всем привет!
Потребовалось запихнуть в форму GIF, которая должна активироваться при "обработке данных". Форма преимущественно работает через SQL.
Гугл сказал мне, что запихнуть Gif можно только через WebBrowser, что я и проделал, но при запуске формы и начале обработки столкнулся с проблемой - в процессе работы кода Gif не работает. До активации кода и после его работы - пожалуйста, но в процессе это просто картинка.
Возможно вы сможете подсказать, как решить эту проблему?
Заранее спасибо!
Открытие нового процесса Excel 2016
 
Всем привет!
У нас на работе решили обновиться до 16 офиса (боже мой, спустя 5 то лет), но как автоматизатор процессов я столкнулся с проблемой - Excel 2016 открывает все книги в 1ом процессе. Т.е. если нужно параллельно запустить 2 приложения Excel с работающими в ними макросами - то получается пшик.
Ранее в 2010 офисе я сделал открытие Файла в новом приложении через "Отправить" для ручного открытия и создание объекта для создания нового процесса через код, но теперь все пропало.
Лично моя проблема в том, что у меня есть макрос, который содержат в себе тонны кода и работает 24\7, но из-за периодических глюков Экселя у меня есть файл помощник, который периодически запускается и контролирует работу 1ого файла, а т.к. теперь невозможно открыть 2 разных процесса - вся система рухнула =(
Возможно кто-то может подсказать, как через код открыть 2ой процесс Excel в 2016 офисе?
Надеюсь у вас есть ответ на мой вопрос, заранее спасибо!)  
Работа с анонимайзером через WinHTTPRequest
 
Всем привет.
Пытаюсь сделать код, который открывал бы ссылку через анонимайзер и получал json.
Прокси не работает (админский запрет)
Изначально пытался делать это через IE (просто управлением элементами сайта анонимайзера и по итогу клик на кнопку), но как выяснилось IE может получать json только в виде файла для скачивания (у меня нет доступа админа, по этому я не могу изменить данные реестра, чтобы поменять метод открытия json у ie)
в итоге я пришел к WinHTTPRequest, но, к сожалению, не представляю как можно заставить анонимайзер открыть нужную мне ссылку.
Не могли бы вы мне помочь?
ссылка на анонимайзер : https://ultrafun.ne

Заранее спасибо за помощь!

заготовка :
Код
Set HTTPR = CreateObject("WinHTTP.WinHTTPRequest.5.1")
HTTPR.Open "GET", "https://ultrafun.net/", False
HTTPR.Send
Удаление не активных стилей книги
 
sokol92, забыл уточнить, речь идет об Excel 2010.
К сожалению на рабочем ПК нельзя устанавливать даже доп. надстройки.
Удаление не активных стилей книги
 

Добрый день.
Часто сталкивался с "перенасыщением" книги стилями. В итоге в книгу нельзя скопировать новую информацию, да и в весе она прибавляет значительно.
Раньше пытался использовать макросы для удаления стилей непосредственно в книге, но они такие медленные...
в итоге написал сие:

Скрытый текст


Макрос делает копию книги, сохраняет ее как архив в TEMP, удаляет файл стилей, после чего возвращает файл в изначальную папку и переносит только используемые стили из основной книги.

Но есть проблема, сколько не искал, так и не не нашел рабочего способа удалить файл напрямую из архива.
Возможно вы знаете способ? желательно через 7-zip т.к. на рабочем компе отсутствуют иные архиваторы. Это бы ускорило работу данного макроса.

Макрос сам по себе рабочий, и в разы быстрее чем макрос удаляющий стили непосредственно из книги, если понравится - пользуйтесь =)

Имитация клика мыши при заблокированной системе
 
Если кому интересен ответ:
Справится помог Autoit,а точнее его библиотека. Функция controlclick не обязательно должна ссылаться на кнопку, можно ориентироваться на окно программы и дополнительно прописать координаты места, на которое нужно кликнуть.
Жаль не получилось понять, как делать то же самое, но через SendMessage....
Имитация клика мыши при заблокированной системе
 
БМВ, Верно, интерфейс блокирован для работы с мышкой, но другие функции, обращающиеся непосредственно к элементам ( тот же SendMessage) работают, вот я и подумал, а вдруг есть что-то на подобии, имитирующее клик по координатам, но при этом не затрагивающее мышку.....фантазия..
Имитация клика мыши при заблокированной системе
 
БМВ, по ссылке описывается метод через GetCursorPos, а он как раз и не работает при блокировке
Имитация клика мыши при заблокированной системе
 
БМВ, макросы сами по себе, и взаимодействие с элементами управления через тот же SendMessage работает при блокированном компьютере, проблема только с взаимодействием мышки. Вопрос как раз и стоит в ином методе имуляции мыши, т.е. совершить клик не задействуя мышку, но спасибо за ссылку, почитаю на работе.
Имитация клика мыши при заблокированной системе
 
Jungl, доброй ночи.
Да, пользовательская программа предположительно написанная на C#. Tab и горячие клавиши не работают
Имитация клика мыши при заблокированной системе
 
Добрый день!
Требуется ваша помощь!
Пытаюсь автоматизировать некий процесс через VBA.
В 1ом из пунктов требуется нажать кнопку в другой программе, но проблема в том, что эта кнопка не определяется как элемент управления (ни через PostMessage ни через  SendMessage активировать ее не выйдет, у нее попросту отсутствует hwnd)
Я решил эту проблема имитацией клика мыши по определенным координатам, но дописав код понял, что имитация клика не работает при заблокированном компьютере, а для меня это критично (макрос должен будет запускаться ночью, а компьютер запрещено держать не заблокированным)
Возможно вы сможете подсказать как произвести имитацию клика при заблокированном компьютере?
Заранее спасибо!
Дубль темы
Изменено: Exzem - 22.05.2019 15:51:51
Создание правил Outlook через Excel
 
Цитата
БМВ написал: тогда уж и с  этим
Не вариант, далеко не все могут и будут этим пользоваться, инструмент должен быть прост в использовании.
Да и под каждый частный случай придется делать новые правила и Экспортировать набор
Создание правил Outlook через Excel
 
Этот вариант хорош для "Оформления" рабочего места новому сотруднику. Нажал и все готово.

Дмитрий(The_Prist) Щербаков, спасибо, обязательно ознакомлюсь!
Создание правил Outlook через Excel
 
Если кому интересно, проблему удалось решить подключением библиотеки :Microsoft Outlook 14.0 Object Library
Как выяснилось стандартный тип данных присваиваемый папке не подходит для Outlook'a ему нужен свой.
т.е. после подключения библиотеки требуется прописать :
Код
Dim oMoveTarget As Outlook.Folder

в макрос можно вставить код, подключающий библиотеку сам:

Код
Sub ref_check() Dim i As Integer With ThisWorkbook.VBProject.References  For i = 1 To .Count    Debug.Print .Item(i).GUID, .Item(i).Description, .Item(i).Major, .Item(i).Minor    GoTo q1    End If  Next i  .AddFromGuid "{00062FFF-0000-0000-C000-000000000046}", 1, 0End Withq1:End Sub

Создание правил Outlook через Excel
 
Ну так я и не требую ни с кого решения, вдруг кто-то в курсе или уже сталкивался с такой проблемой или просто дадут совет.
P.S. На форуме существуют темы затрагивающие работу с другими ресурсами через Excel.
Создание правил Outlook через Excel
 

Всем привет.
Хочу сделать макрос по настройке Outlook (создание нужных папок и правил).
Все шло хорошо, но столкнулся с проблемой настройки правила, которое копирует элемент в нужную папку: папка не хочет добавляться в условия, как я думаю из-за несоответствия типов данных, но как обойти проблему не могу понять... по этому прошу у вас помощи! заранее спасибо!)
код:

Код
Sub qwe()
    Set ns = CreateObject("Outlook.Application")
    Set objNamespace = ns.GetNamespace("MAPI")
    Set oInbox = objNamespace.GetDefaultFolder(6)
    Set oMoveTarget = oInbox.Folders("Сервис")
    
    Set colRules = objNamespace.Session.DefaultStore.GetRules()
    Set oRule = colRules.Create("Правило", olRuleReceive)
    
    'Set oFromCondition = oRule.Conditions.From   ' от кого
    '    With oFromCondition
    '        .Enabled = True
    '        .Recipients.Add ("123")
    '        .Recipients.ResolveAll
    '    End With
    
    Set oMoveRuleAction = oRule.Actions.MoveToFolder  ' элемент переноса
    With oMoveRuleAction
        .Enabled = True
        .Folder = oMoveTarget
    End With
    
    Set oExceptSubject = oRule.Exceptions.Subject   ' тема
    With oExceptSubject
        .Enabled = True
        .Text = Array("Что-то", "куда-то")
    End With
    
    colRules.Save
    
End Sub
Настроить связь с файлом. Формирование "Связующего пути"
 
Решил проблему.
если вдруг кому интересно, то в надстройке прописывается следующий блок:
Код
Private WithEvents app As Application

Private Sub Workbook_Open()
    Set app = Application
    
End Sub


Private Sub app_WorkbookOpen(ByVal Wb As Workbook)
    Dim name As String
    On Error Resume Next
    Dim nmName As Workbook
    For Each nmName In Workbooks
        b2 = Split(Environ("appdata"), "\")
        b = b2(2)
        With nmName
            aLinks = .LinkSources(xlExcelLinks)
            If Not IsEmpty(aLinks) Then
                For i = 1 To UBound(aLinks)
                    If InStr(1, aLinks(i), "AppData\Roaming\Microsoft\AddIns\Имя_надстройки.xlam") <> 0 Then
                        name1 = "C:\Users\" & b & "\AppData\Roaming\Microsoft\AddIns\Имя_надстройки.xlam"
                        .ChangeLink name:=aLinks(i), NewName:=name1, Type:=xlExcelLinks
                        If ActiveWorkbook.LinkInfo(name1, xlLinkInfoStatus) <> 9 Then
                            b2 = Split(Environ("temp"), "\")
                            b = b2(2)
                            name1 = "C:\Users\" & b & "\AppData\Roaming\Microsoft\AddIns\Имя_надстройки.xlam"
                            .ChangeLink name:=aLinks(i), NewName:=name1, Type:=xlExcelLinks
                        End If
                    End If
                Next i
                .UpdateLinks = xlUpdateLinksUserSetting
                .RefreshAll
            End If
        End With
    Next
End Sub

надеюсь кому-то поможет =)

Изменено: Exzem - 14.11.2018 11:50:55
Настроить связь с файлом. Формирование "Связующего пути"
 
БМВ, прописыват полный логин пользователя

Казанский, Спасибо за идею, она сработает в новых книгах, если прописать в надстройке при открытии новой книги создание связи с новой книгой. Но работать это будет только с новыми книгами, в старых книгах так и останутся связи, которые нужно обновлять. Для того, что бы формула работала на основе папки "References" старые связи нужно разорвать, что приведет к удалению старых функций, и прописать функции по новой. Но в нашем случае это не выход =(
Настроить связь с файлом. Формирование "Связующего пути"
 
Спасибо за информацию.
Сейчас протестировал у коллеги, логин которого имеет большую длину символов - вышел полный путь связи, без ~, т.е. это не автоматическое сокращение системой.....

Доработка Надстройки не поможет, т.к. формирование связи происходит автоматически, при обращении к любой формуле надстройки.
Изменено: Exzem - 13.11.2018 17:51:00
Настроить связь с файлом. Формирование "Связующего пути"
 
Это возможно, но это не поможет решить проблему.
Я упорно не понимаю причину, по которой связь работает только с сокращенным именем или только с полным, на разных компах работает по разному, к примеру на моем исключительно полный путь.
возможно где-то есть возможно переключения? или же возможность определения какому компу какой путь нужно прописать.
Настроить связь с файлом. Формирование "Связующего пути"
 
на данный момент в надстройку заложено обновление связи по полному пути при открытии любого файла в котором содержатся связь с элементом "AppData\Roaming\Microsoft\AddIns\Ваша надстройка.xlam", но ,как выяснилось, на разных компах нужно по разному прописывать логин.
Отсюда и попытка разобраться в причине расхождении =)
Настроить связь с файлом. Формирование "Связующего пути"
 
При обращении к функции заложенной в надстройке, в файле автоматом создается связь с надстройкой, которая находится у вас на компе. После сохранения файла связь остается.
Если файл открывается с другого компьютера, в файле все еще остается связь со старым компом (путь прописан с другим логином) и с ячейке, где прописана формула, перед формулой встает путь к файлу надстройки прошлого компа.
пример: ='C:\Users\******\AppData\Roaming\Microsoft\AddIns\книга1.xlsm'!TEXTJOIN("@";"True";D1:F1
Для того что бы у открывшего файл и имеющего такую же надстройку формула сработала - нужно обновить связь, поменять путь связи на надстройку пользователя.
И вот тут возникает проблема с разным требованием прописывания пут на разных системах.
Настроить связь с файлом. Формирование "Связующего пути"
 
При 1ом обращении к надстройке путь автоматом ставится с Тильдой, если в дальнейшем пытаться в ручную обновить связь (выбрать связующий файл), то ставится путь с полным логином и ни чего не работает. Если просто ставить путь с полным логином пользователя, то в ячейке просто прописывается путь к надстройке и все (т.е. не работает)
Настроить связь с файлом. Формирование "Связующего пути"
 
Пробовал, метод определяет полный путь (без Тильды), а на некоторых машинках требуется прописать связь именно с формате "C:\Users\Пользо~1\AppData\....."
Страницы: 1 2 3 След.
Наверх