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

Страницы: 1 2 3 4 5 6 7 8 9 10 11 ... 327 След.
Окошко, где вписать два значения и получить ответ, Программка
 
Цитата
isteriKA написал:
на которых нету Эксель
Пишите в любом компиляторе свое приложение exe. Но данный форум здесь уже никоим боком, это факт.
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
Как защитить элемент управления
 
Цитата
Fayct27 написал:
мог снимать ставить только один пользователь
Назначьте связь с ячейкой, а эту ячейку включите в диапазон именно только для этого пользователя. Остальные пользователи тогда не смогут изменить состояние флажка без пароля.
Хотя нет, так не сработает - глобальная защита листа не даст. Но зато в нужную ячейку пользователь может вводить ИСТИНА или ЛОЖЬ :) Но проще действительно макросом - просто вешаете его на этот элемент и все.
Код
Sub PrUnpr()
    Me.Protect "1", userinterfaceonly:=True
    Me.Range("A1").Value = Not Me.Range("A1").Value
End Sub
Элемент связан с ячейкой "А1" в этом коде. Замените на свой при желании. Код вставляется в модуль листа(правая кнопка мыши на листе -Посмотреть код). Потом правая кнопка мыши на флажке -Назначить макрос.
Правда, сообщение о том, что ячейка защищена все равно будет появляться, но и флажок поменяет свое значение.
Изменено: Дмитрий(The_Prist) Щербаков - 17 Июн 2019 17:14:32
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
Нестрогий поиск - не учитывать спецсимволы и пробелы
 
Так надо было хотя бы попытаться перевести текст ошибки :) Несовпадение типов. У Вас arr - тип Variant, а моя функция требует текст. Передавайте так:
Код
arr(i, 1) = DelTrash(arr(i, 1) & "")
можно и через CStr, но кто знает что там у Вас в arr - вдруг там Null откуда-то возьмется...
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
Нестрогий поиск - не учитывать спецсимволы и пробелы
 
Replace в помощь. В цикле убираете из сравниваемой строки все лишнее. Вроде того:
Код
Function DelTrash(s$)
    Dim aToFind, li&, res$
    aToFind = Array(Chr(34), " ", ".", ",", "'", "\") 'Chr(34) = кавычка
    res = s
    For li = LBound(aToFind) To UBound(aToFind)
        res = Replace(res, aToFind(li), "")
    Next
    DelTrash = res
End Function

обе сравниваемые строки обрабатываете такой функцией и сравниваете.
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
BeforeSave не срабатывает в моей надстройке, BeforeSave не срабатывает для открываемых файлов.
 
Цитата
den500 написал:
Workbook_BeforeSave не срабатывает при сохранении в моих открываемых файлах
видимо потому, что Вы используете событие самой надстройки, никоим образом не давая понять, что она должна как-то отслеживать события внутри всего приложения. Вот для ознакомления: Как отследить событие(например выделение ячеек) в любой книге?
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
Как задать константу массива
 
Если лень заморачиваться именно отдельными функциями на присвоение значений массиву каждый раз, можно классы использовать. В стандартный модуль:
Код
Option Explicit
Public aPubAr

Sub CheckTypeArr()
    Dim caa As New clsArr
    Debug.Print aPubAr(0)
End Sub

в новый модуль класса(который называется clsArr):
Код
Option Explicit

Private Sub Class_Initialize()
    aPubAr = Array(1, 2, "three")
End Sub

Private Sub Class_Terminate()
    aPubAr = Empty
End Sub
Здесь массив будет заполняться при каждом создании нового класса(Dim caa As New clsArr). Можно заполнять так сразу все массивы в одном классе, можно на каждый массив свой класс. Зависит от задач.
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
Как в кучу разных формул добавить значение или формулу
 
Здесь выкладывал готовый код подобного макроса: Как в ячейке с формулой вместо ошибки показать 0
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
ПОИСКПОЗ и ПРОСМОТР со строкой более 255 символов, не могу справиться с поиском по длинным строкам. Офис 365
 
Цитата
beginer89 написал:
когда я ставлю аналогичную ПСТР слева
Формулу artyrH надо вводить нажатием не просто Enter, а сочетанием трех клавиш - Ctrl+Shift+Enter
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
ПОИСКПОЗ и ПРОСМОТР со строкой более 255 символов, не могу справиться с поиском по длинным строкам. Офис 365
 
Здесь расписывал как можно искать этими функциями более 255 символов: Как найти значение в другой таблице или сила ВПР
Смотрите в самом конце.
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
Сбор данных из разных видов файлов
 
Вы что-то вообще непонятное накрутили в коде. Посмотрите внимательно мое последнее сообщение и сделайте правки согласно него, а не что-то там плохо вменяемое от себя.
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
Сбор данных из разных видов файлов
 
После этой строки:
Код
Sub GoData()
запишите:
Код
Dim NameFile As String
Но вообще лучше всегда использовать Option Explicit - избежите множество ошибок в будущем: Variable not defined или что такое Option Explicit и зачем оно нужно?

А эту строку:
Код
NameFile = """ & Mid(avFiles, i + 1) & """
можно записать без кавычек - зачем они? У Вас книги тоже с кавычками записаны?
Код
NameFile = Mid(avFiles, i + 1)
Да и вообще, функция написана коряво и работать не будет. Хотя бы это:
Код
Set wb = SheetName
нельзя объекту назначить тип String. Надо как минимум:
Код
Set wb = Application.Workbooks(SheetName)
хотя проще сразу передавать в качестве аргумента именно ссылку на книгу, а не её имя. Т.е. вместо этих строк:
Код
Function CheckListSub(SheetName As String) As String
Dim wb As Workbook
Set wb = SheetName
записать
Код
Function CheckListSub(wb As Workbook) As String
а функцию вызывать так:
Код
Workbooks.Open Filename:=avFiles 
Set Database = ActiveWorkbook
CheckList = CheckListSub(Database)
Изменено: Дмитрий(The_Prist) Щербаков - 16 Май 2019 12:01:18
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
Ribbon, VBA, Excel 2019, кнопка на ленте не находит функцию обратного вызова, Excel не находит функцию обратного вызова, прописанную в onAction разметки Ribbon, если в книге более 1 модуля.
 
Цитата
dolbodub написал:
К кнопке через onAction
как Вы к кнопе ribbon по onAction привязываете? В XML схеме? Лучше файл проблемный приложите - будет надежнее.
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
Сводная таблица разбивает исходный столбец на два.
 
Цитата
Maranii написал:
как можно убрать это разделение?
выделяете в заголовке ячейку "Часы" -Правая кнопка мыши -Разгруппировать. Все будет как положено.
Начиная с 2013 Excel в сводных происходит автогруппировка полей с датами и временем. чтобы это убрать(при создании новых сводных):
Файл -Параметры -Данные -снять галочку "Отключить автоматическое группирование даты и времени в сводных таблицах"
Изменено: Дмитрий(The_Prist) Щербаков - 15 Май 2019 14:31:25
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
Определение книги и листа для пользовательской функции
 
rng.Parent - лист
rng.Parent.Parent - книга
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
Транспортировать столбец таблицы в строки в PQ
 
Код
let
    Источник = Excel.CurrentWorkbook(){[Name="Таблица3"]}[Content],
    #"Измененный тип" = Table.TransformColumnTypes(Источник,{{"Название", type text}, {"Имя", type text}}),
    #"Сгруппированные строки" = Table.Group(#"Измененный тип", {"Название"}, {{"Количество", each _, type table [Название=text, Имя=text]}}),
    #"Добавлен пользовательский объект" = Table.AddColumn(#"Сгруппированные строки", "Пользовательская", each Text.Combine([Количество][Имя],"|")),
    #"Разделить столбец по разделителю" = Table.SplitColumn(#"Добавлен пользовательский объект", "Пользовательская", Splitter.SplitTextByDelimiter("|", QuoteStyle.Csv), {"Пользовательская.1", "Пользовательская.2", "Пользовательская.3", "Пользовательская.4"}),
    #"Измененный тип1" = Table.TransformColumnTypes(#"Разделить столбец по разделителю",{{"Пользовательская.1", type text}, {"Пользовательская.2", type text}, {"Пользовательская.3", type text}, {"Пользовательская.4", type text}}),
    #"Удаленные столбцы" = Table.RemoveColumns(#"Измененный тип1",{"Количество"})
in
    #"Удаленные столбцы"
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
Можно ли создать обработчик кнопки без применения программирования в VBA?
 
Цитата
borro написал:
создать кнопку, по нажатию которой будет открываться какая-то страница в дефолтном браузере
Добавляете фигуру в виде кнопки и назначаете на неё Гиперссылку(правая кнопка мыши -Гиперссылка)
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
При открытии книги необходимо указать новый путь для связей
 
Тогда проверяйте перед изменением связей:
Код
If isArray(aLinks) then
ActiveWorkbook.ChangeLink aLinks(1), Generator & "/ExpressData.xlsx", xlLinkTypeExcelLinks
end if
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
Word. Макрос экспорта примечаний с номером страницы
 
Цитата
screamizh написал:
экспорта примечаний из ворда в новый документ ворд
а Excel здесь какую роль играет? Форум вроде как по нему.
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
Вставить формулу в диапазон ячеек VBA
 
Цитата
alver92 написал:
как в заданном диапазоне формулу преобразовать в значения?
а макрорекордером не пробовали пользоваться? Он обе операции вполне себе неплохо записывает: и запись формулы, и преобразование её в значения :)
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
При открытии книги необходимо указать новый путь для связей
 
Цитата
phelex написал:
Что я пишу не так?
Вы привели всего две строки и опять не указали в какой именно ошибка. В самих этих строках эта ошибка появляется не может, все типы данных указаны верно, если только aLinks не объявлена aLinks() As String, например. Надо объявить просто:
Код
Dim aLinks
других идей нет
Изменено: Дмитрий(The_Prist) Щербаков - 13 Май 2019 14:18:19
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
При открытии книги необходимо указать новый путь для связей
 
Цитата
phelex написал:
А вот и непонятно в какой строке ошибка
это как? Вы когда Start(запуск кода) нажимаете - куда перекидывает? Наверное, ActiveWorkbook.ExpressData выделяет? Вы откуда взяли это свойство для книги? Оно что-то нигде в свойствах объекта Workbook не описано. Что Вы хотели этим получить? Закрыть книгу? Так это делается проще:
Код
ActiveWorkbook.Close
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
Возможность лицезреть имя или строку макроса в процессе выполнения
 
Цитата
artyrH написал:
есть ли возможность видеть какой именно макрос выполняется?
Цитата
artyrH написал:
много делов оказывается для этого надо
ну да. По строке добавить в имеющийся код :)
Код
Sub a()
Application.StatusBar = "Выполняется макрос zzzz1"
zzzz1 'имя макроса
Application.StatusBar = "Выполняется макрос zzzz2"
zzzz2 'имя макроса
Application.StatusBar = "Выполняется макрос zzzz3"
zzzz3 'имя макроса
Application.StatusBar = "Выполняется макрос zzzz4"
zzzz4 'имя макроса
Application.StatusBar = "Выполняется макрос zzzz5"
zzzz5 'имя макроса
Application.StatusBar = False
End Sub
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
Ошибка в формуле =ПРОСМОТР при применении в Google-таблицах, В Excel формула работает, а в гугл таблицах нет
 
А с чего Вы решили, что LOOKUP в Excel и в Google таблицах работает по одинаковому принципу? :)
Запишите в листе "Об1" формулу так, чтобы результат возвращался не из первой строки:
Код
=LOOKUP(2;1/(($A2='Тексты'!$B$2:$B$1000)*(2='Тексты'!$A$2:$A$1000));'Тексты'!$C$2:$C$1000)
и так же получите ошибку.
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
Скачать вложения с сайта finance.yahoo.com последовательно по значениям таблицы
 
Если честно, я вот даже не нашел попыток хотя бы создать ссылки на вложения для скачивания. Хотя все данные для этого вроде как есть. Я добавил в ячейку В4 формулу:
Код
="https://query1.finance.yahoo.com/v7/finance/download/"&[@Symbol]&"?period1="&$H$11&"&period2="&$H$12&"&interval=1d&events=history&crumb=K58cARccDnI"
А далее останется дело за малым: Как скачать файл из интернета по ссылке
Чутка подстраиваете под себя код из файла по ссылке и после небольших правок(чтобы ссылки брались из нужных ячеек) этот блок:
Код
If sFilePath = "" Then        'диалоговое окно выбора папки
        'подробнее: http://www.excel-vba.ru/chto-umeet-excel/dialogovoe-okno-vybora-fajlovpapki/
        With Application.FileDialog(msoFileDialogFolderPicker)
            If .Show = False Then
                Exit Function
            End If
            sFilePath = .SelectedItems(1)
        End With
    End If
меняете на такую строку:
Код
sFilePath = range("Таблица2").Cells(1,1).value
чтобы путь для сохранения всегда брался из ячейки.
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
Курсы валют. ежедневное обновление, PowerQuery PowerBI
 
Курс валют при помощи Power Query
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
Функция ЕПУСТО не срабатывает, функция ЕПУСТО не реагирует на пустые ячейки
 
Цитата
Marry написал:
на пустое ячейки функция ЕПУСТО не реагирует
вероятно, будет полезно для понимания проблемы: Пустая ячейка определяется Excel-ем как не пустая. Что за глюк?
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
Выгрузка писем Outlook по дате
 
Вы чей код подправили? От моего тут почти ничего нет. В статье приведен готовый код, который учитывает в том числе и возможность сохранения двух одинаковых файлов - для второго и последующих в этом случае будет добавлена нумерация в скобках. Но Вы эту часть либо выкинули, посчитав лишней, либо... Даже не знаю.
Всмотритесь еще раз в мой код по ссылке и обратите внимание на функцию строку:
Код
s = GetAtchName(sFolder & oAtch)
Функция GetAtchName как раз отвечает за создание уникального имени для сохраняемого вложения, если такое уже есть в конечной папке.
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
Использование макроса только к выделенным ячейкам
 
Цитата
Vladimir1336 написал:
Задание автора читаем по диагонали
Цитата
ТэнтаклсБлад написал:
Возникла необходимость применять данный макрос только к выделенным через клавишу Ctrl  ячейкам
применять для активной ячейки по отдельности очень долго
в принципе, это можно читать как: взять каждую выделенную ячейку и вычесть из неё 1. Ведь исходный код делает именно это. И автор упоминает, что делать так для каждой ячейки - утомительно.
Vladimir1336, Ваш код этого не делает. Ваш код не вычитает из каждой выделенной через Ctrl ячейки 1 - он назначает всем выделенным ячейкам значение, вычисленное по схеме: из активной ячейки вычесть 1. Просто вчитайтесь не в то, что код одобрил кто-то, а в задачу и то, что предложили Вы.
Другой вопрос, что мы совершенно не знаем - вдруг у автора все значения одинаковые? :) Что, конечно, меняет подход.
Вот, сделал небольшую GIF-ку с работой разных кодов. Вначале записано применение к нескольким ячейкам по очереди кода автора:
https://yadi.sk/i/spdDyuM4WRrn4w
P.S. эх, видюшка не проигрывается автоматом с Яндекс.Диска, надо скачивать. Попробую в другое место выложить.
Изменено: Дмитрий(The_Prist) Щербаков - 8 Май 2019 13:56:46
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
Раздать правда доступа на разные ячейки разным пользователям
 
Цитата
БМВ написал:
это другое
Если автора текучка пользователей файла напрягает - можно же попросить админов закидывать их в определенные группы сходу и тогда не надо ничего больше делать. Все остальные варианты в любом случае будут вынуждать автора файла всем "вновь прибывшим" раздавать явки и пароли. Т.е. либо говорить "твой пароль от диапазона такой-то", либо "ты должен зайти при запуске файла под тем-то" или постоянно изменять список пользователей где-то в файле, чтобы они сразу могли выбрать себя, но опять после выбора - пароль же надо знать.
Насколько помню, в той же 1С принцип тот же: завели сотрудника, дали доступ и выслали его пароль на почту. Как ни крути, но контролировать и хоть кому-то этот процесс придется.
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
Раздать правда доступа на разные ячейки разным пользователям
 
Цитата
Fayct27 написал:
не подходит этот вариант, он слишком сложен для большинства пользователей
чем, если не секрет? Если использовать "Разрешить изменение диапазонов" - пользователю нужно будет просто указать свой пароль. При этом для других ячеек этот пароль уже не подойдет. А если в доменной сети настроены группы пользователей - то можно и вообще без ввода пользователем пароля напрямую группам доступы давать(каждой группе свой диапазон). Куда уж проще?  
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
Страницы: 1 2 3 4 5 6 7 8 9 10 11 ... 327 След.
Наверх