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

Страницы: 1 2 3 4 5 6 7 8 9 10 11 ... 700 След.
vba Мониторинг директории в реальном времени, (починка кода)
 
На win7 x64, excel x32 код исправно работает.
Заполнение ячеек из буфера
 
Цитата
Tosyan12 написал:
текст вертикально на вашей картинке расположен а мне нужно горизонтально
- вот именно это и делал - то что выделено вертикально скопировал и с транспонированием вставил горизонтально.
ВПР + "выбираются только подпроцессы указанного процесса"
 
Если процессы указаны явно вручную (не формулами), то что запрещает так же вручную сделать список (выпадающий) подпроцессов? :)
Автоматически обновляемый csv файл, В файл csv вставляю данные из другого excel файла, после сохранения все формулы пропадают
 
Код
FinalCopyRn.Copy Destination:=copyWb.Sheets(1).Cells(1)
- откуда тут copyWb? Пришлось файл качнуть... там правильно!
Переход по кнопке в необходимую ячейку
 
Искать слово "итого" тоже имеет смысл если пользователь аккуратный :)
Как и надеяться что это всегда будет последней заполненной ячейкой...
Про оформление не понял.
Переход по кнопке в необходимую ячейку
 
Ещё бывает что можно использовать число строк в currentregion известной ячейки.
Автоматически обновляемый csv файл, В файл csv вставляю данные из другого excel файла, после сохранения все формулы пропадают
 
На всякий случай (вдруг кто не знает) - csv это обычный текстовый файл, в нём не живут никакие формулы/форматы/макросы, и никак этого не добиться. Можно только создавать его заново, или изменять какие-то части. Как и любой текст в блокноте.
Инициация нажатия кнопки в сторонней программе
 
Там всё внутри, при сохранении можно выбрать кажется... Давно это было...
Да, вот с сайта:
Scripts can be compiled into standalone executables
Изменено: Hugo - 22 Май 2018 22:02:17
Инициация нажатия кнопки в сторонней программе
 
Я такого типа задачи решал используя AutoIT.
Экселем можно вызывать его сценарий в виде собственно скрипта, или сделать исполняемый файл, если на машине нет инсталляции AutoIt.
макрос сохранения листа в новый файл
 
Да, нужно сделать ревизию, я честно не вникал, взял готовое что было.
Вики вот что говорит:

Запрещённые символы
Многие операционные системы запрещают использование некоторых служебных символов.

Запрещённые символы Windows (в различных версиях):

\ — разделитель подкаталогов
/ — разделитель ключей командного интерпретатора
: — отделяет букву диска или имя альтернативного потока данных
* — заменяющий символ (маска «любое количество любых символов»)
? — заменяющий символ (маска «один любой символ»)
" — используется для указания путей, содержащих пробелы
< — перенаправление ввода
> — перенаправление вывода
| — обозначает конвейер
+ — (в различных версиях) конкатенация
Частично запрещённые символы Windows:

пробел — не допускается в конце имени файла;
. — не допускается в конце имени файла кроме имён каталогов, состоящих из точек и доступа с префиксом «\\?\».
Символы, вызывающие проблемы в широко распространённых компонентах:

% — в Windows используется для подстановки переменных окружения в интерпретаторе команд, вызывает проблемы при открытии файла через стандартный диалог открытия файла;
! — в Windows используется для подстановки переменных окружения в интерпретаторе команд, в bash используется для доступа к истории[1];
@ — в интерпретаторах команд вызывает срабатывание функций, предназначенных для почты.
макрос сохранения листа в новый файл
 
Ну так кавычки и не проходят. Нужно допфункцией самописанной эти имена в порядок приводить.
Вот например так можно завершить код:

Код
ActiveWorkbook.SaveAs FileName:=NewFilePath & Replace_symbols(NewFileName) & ".xlsx", FileFormat:=51
ActiveWindow.Close
 
Application.ScreenUpdating = True
 
End Sub

Function Replace_symbols(ByVal txt As String) As String
    St$ = "~!@#$%^&*=|`'"""
    For i% = 1 To Len(St$)
        txt = Replace(txt, Mid(St$, i, 1), "_")
    Next
    Replace_symbols = txt
End Function
Изменено: Hugo - 22 Май 2018 20:21:38
макрос сохранения листа в новый файл
 
31 знак - это ограничение названия листа, имени файла это не помеха.
А почему не соблюдаете правила форума? :)
макрос сохранения листа в новый файл
 
У меня и так всё работает. Только естественно заменил отсутствующий "Y:\RU\" на то, что у меня есть.
Именно про это я и говорил. Есть у Вас каталог "Y:\RU\"?
А если не нравится только то имя файла, которое даёте - ну значит даёте негодное имя файла. Они знаете имеют некоторые ограничения...
Изменено: Hugo - 22 Май 2018 19:55:15
макрос сохранения листа в новый файл
 
Ошибка в том, что нет такого каталога.
Строка 11 лишняя.
Изменено: Hugo - 22 Май 2018 19:43:57
После отправки писем из Excel через Outlook нужно записать дату отправки в Excel.
 
Смотрю "не усекли" момент про использование j в
Код
Range("ai1" & j))

- не нужно к единице лепить справа ещё цифры, нужно эти цифры/число лепить вместо единицы!
Как построчно заполнить ячейки циклом
 
Нумерация такова: cells(строка, столбец)
Столбец можно указывать буквой в кавычках, например Cells(3, "B")
Изменено: Hugo - 20 Май 2018 23:00:18
ВПР не подтягивает значения
 
Так, но недостаточно - нужно ещё убрать воон те зелёненькие метки.
Кстати формат не обязательно ставить Number.
Извлечение текста между запятыми
 
vikttur, работает, я проверил :)
Извлечение текста между запятыми
 
Если там активно используются макросы, так может проще и удобнее UDF?
Код
Function Substring(Текст As String, Символ_разделитель As String, _
                   Начальный_Номер_фрагмента As Long, Конечный_Номер_фрагмента As Long) As String
'---------------------------------------------------------------------------------------
' URL : http://www.planetaexcel.ru/tip.php?aid=54
' Purpose : Выделяет из текста субстринг/и, ориентируясь по символам-разделителям
' Notes : Substring(текст; символ_разделитель; Начальный_Номер_фрагмента, Конечный_Номер_фрагмента), где
' текст - текст, который делим
' символ_разделитель - символ, который надо считать разделителем фрагментов
' Начальный_Номер_фрагмента - порядковый номер фрагмента, с которого нужна выборка
' Конечный_Номер_фрагмента - порядковый номер фрагмента, по который нужна выборка
'---------------------------------------------------------------------------------------
    On Error Resume Next
    Dim sArr() As String, li As Long
    sArr = Split(Application.Trim(Текст), Символ_разделитель)
    If Конечный_Номер_фрагмента > 0 Then
        Начальный_Номер_фрагмента = Начальный_Номер_фрагмента - 1
        Конечный_Номер_фрагмента = Конечный_Номер_фрагмента - 1
        For li = Начальный_Номер_фрагмента To Конечный_Номер_фрагмента
            Substring = IIf(li = Начальный_Номер_фрагмента, sArr(li), Substring & _
                                                                      Символ_разделитель & sArr(li))
        Next li
    Else
        Substring = Split(Application.Trim(Текст), _
                          Символ_разделитель)(Начальный_Номер_фрагмента - 1)
    End If
End Function

Комбинацией из двух можно в первом фрагменте выкинуть всё что до двоеточия (и его) - если конечно нужно выкинуть.
Изменено: Hugo - 20 Май 2018 12:40:39
Самоудаление книги
 
Ну так выясните ещё где-нибудь
Цитата
Novichok55 написал:
что такое ThisWorkbook.FullName
, если сообщения темы не помогают.
Самоудаление книги
 
Цитата
Novichok55 написал:
Не интересовался конечно же
- ну и зря...
А событийного такого макрос нет, есть Private Sub Workbook_BeforeClose(Cancel As Boolean)
Самоудаление книги
 
Ну и что его должно заставить выполниться, и по какому событию? На открытие, деактивацию/активацию, закрытие? Где это указано? Кому это понятно?
P.S. Не интересовались, что есть такое ThisWorkbook.FullName?
Изменено: Hugo - 19 Май 2018 12:09:01
Самоудаление книги
 
У меня второй код срабатывает, даже из модуля книги.
Самоудаление книги
 
Так во втором коде добавьте
Код
if iFullName$ = "известное полное имя исходной книги" then exit sub

Только не забудьте - если книгу куда-нибудь перенесёте, то хана... Но бекап - наше всё.
Самоудаление книги
 
Пропишите код заранее, в коде предусмотрите проверку имени. Тем более что во втором коде достаточно добавить одну строку.
Это проще чем доверять глобально доступ к проекту и изменять кодом его.
Строка "FilenamesCollection" выдает ошибку "sub or function not defined"
 
Цитата
S.K. написал:
Было выяснено длинным путем и кучей потраченного времени.
- нужно было всего лишь пройти код пошагово.
Как из одного списка , удалить дубли другого?
 
Не, я файл с личными номерами выкладывать не буду. А изготавливать пример с выдуманными данными - не моё это дело.
Как из одного списка , удалить дубли другого?
 
Ещё вариант их просто подсчитать:
Код
=СЧЁТЕСЛИ('старый файл.csv'!$A:$A;A1)

всё что не 0 - отфильтровать и удалить, или наоборот - что 0, то скопировать в результат.
А дубли я в начале удалил - так функции меньше работы.
Отличается общий итог для разных вариантов: без фильтрации и с фильтрацией, Отличается общий итог для разных вариантов: без фильтрации и с фильтрацией
 
Так я ведь написал - делите на два где суммируете всё.
Отличается общий итог для разных вариантов: без фильтрации и с фильтрацией, Отличается общий итог для разных вариантов: без фильтрации и с фильтрацией
 
И гдеж там агрегат  в  столбце D? А говорите что удалось :)
Например для столбца I:
Код
=АГРЕГАТ(9;4;I13:I59)
=АГРЕГАТ(9;5;I13:I59)

общий итог и итог с фильтрацией.
Если ничего не скрыто - совпадают.
Имхо чтоб не двоилось - делить на два общий, фильтровать без промежуточных сумм.
Изменено: Hugo - 17 Май 2018 16:02:51
Страницы: 1 2 3 4 5 6 7 8 9 10 11 ... 700 След.