Все сервисы Хабра

Сообщество IT-специалистов

Ответы на любые вопросы об IT

Профессиональное развитие в IT

Удаленная работа для IT-специалистов

Хабровчане vs. цифровые сервисы банков: итоги
Войти на сайт
  • Все вопросы
  • Все теги
  • Пользователи

Хабр Q&A — вопросы и ответы для IT-специалистов

Получайте ответы на вопросы по любой теме из области IT от специалистов в этой теме.

Узнать больше
другие проекты хабра
  • Хабр
  • Карьера
  • Фриланс
Задать вопрос
bopoh13

Дѣаволъ

VBA, Ruby (noob), analytic
  • 95
    вклад
  • 6
    вопросов
  • 178
    ответов
  • 35%
    решений
Ответы
  • Информация
  • Ответы
  • Вопросы
  • Комментарии
  • Подписки
  • Нравится
  • Достижения
  • Как с помощью VBA открыть файл с динамическим именем?

    bopoh13
    Дѣаволъ @bopoh13
    VBA, Ruby (noob), analytic
    1. Назначаете переменную str as String
    2. Заменяете в коде Date на str
    3. Перед открытием книги назначаете переменной str значение
    Ответ написан 02 мар.
    Комментировать
    Нравится Комментировать
  • Где найти Excel ParserXg статистики?

    bopoh13
    Дѣаволъ @bopoh13
    VBA, Ruby (noob), analytic
    pogugli.com/?361577
    Ответ написан 09 февр.
    2 комментария
    Нравится 2 комментария
  • Как переместить файл в папку на github с помощью веб-интерфейса?

    bopoh13
    Дѣаволъ @bopoh13
    VBA, Ruby (noob), analytic
    https://habr.com/ru/post/173063/
    Ответ написан 12 янв.
    Комментировать
    Нравится 1 Комментировать
  • Как исправить проблему c распознавании текста в речь?

    bopoh13
    Дѣаволъ @bopoh13
    VBA, Ruby (noob), analytic
    "SPEECH.SpVoice" - скорее всего SAPI4. Танцы с бубнами для Win7 не помогли запустить SpeechPlatformRuntime. Рабочий вариант для SAPI5 - поставить один из готовых пакетов RHVoice https://tiflohelp.ru/synthesizers/sapi-5/rhvoice-s...
    Можно проверить, какие голоса установлены программой https://aloys.narod.ru/sof/1/demagog.htm#2 или макросом https://www.cyberforum.ru/vbscript-wsh/thread22813...

    Option Explicit
    ' https://docs.microsoft.com/en-us/previous-versions/windows/desktop/ms723609(v=vs.85)
    
    Const SAFT48kHz16BitStereo = 39
    ' Creates file even if file exists and so destroys or overwrites the existing file
    Const SSFMCreateForWrite = 3
    
    Dim oFileStream, oVoice
    Dim message, mobilegaming
    Dim MessageBox, Title, Default
    
    MessageBox = "Enter your Text" ' Set prompt.
    Title = "Text to Speech" ' Set title.
    
    Default = "Привет, комрад! Как твои дела?" ' Codepage source - ANSI: CP1251
    message = InputBox(MessageBox, Title, Default, 100, 100)
    
    Set mobilegaming = CreateObject("SAPI.SpVoice")
    mobilegaming.Speak message
    
    
    Set oFileStream = CreateObject("SAPI.SpFileStream") ' Save Steam
    oFileStream.Format.Type = SAFT48kHz16BitStereo
    oFileStream.Open "C:\Users\User\Desktop\Output.mp3", SSFMCreateForWrite
    
    Set oVoice = CreateObject("SAPI.SpVoice")
    Set oVoice.AudioOutputStream = oFileStream
    oVoice.Speak message
    
    oFileStream.Close
    Ответ написан 12 янв.
    Комментировать
    Нравится 1 Комментировать
  • Как исправить некорректное отображение кодировки CP1251 в GitHub Desktop?

    bopoh13
    Дѣаволъ @bopoh13
    VBA, Ruby (noob), analytic
    Удалённый репозиторий по умолчанию содержит файлы в кодировке UTF-8.
    1. Для git 2.18+ настраивается в .gitattributes (на локальном ПК будет необходимая кодировка)
      *.* working-tree-encoding=CP1251 eol=CRLF
    2. Для git более старых версий только UTF-8 с применением клиентского хука.
    Ответ написан 21 дек. 2020
    Комментировать
    Нравится 1 Комментировать
  • Макрос автозамены в word?

    bopoh13
    Дѣаволъ @bopoh13
    VBA, Ruby (noob), analytic
    ' Автозамена используется при вводе данных (значение не может быть пустым)
    With AutoCorrect.Entries
      .Add Name:="км.", Value:=" "
      .Add Name:="ул.", Value:=" "
    End With
    '12345678901234567890123456789012345bopoh13@ya67890123456789012345678toster56789
    ' Есть стандартные функции автозамены. Вот некоторые из них:
    With Options
      .AutoFormatAsYouTypeReplaceQuotes = False ' Автозамена ковычек
      .AutoFormatAsYouTypeReplaceFractions = False ' Автозамена дробей
    End With

    Простая замена текста представлена в вопросе: Быстрый поиск и замена в Word?
    Ответ написан 05 дек. 2020
    Комментировать
    Нравится Комментировать
  • Как в Excel найти ВСЕ одинаковые значения в разных листах?

    bopoh13
    Дѣаволъ @bopoh13
    VBA, Ruby (noob), analytic
    Я бы использовал коллекции, в которых можно отсекать дубликаты значений. Раз вы привыкли к выделению блоков, то вот пример перебора выделенных блоков в листах справа от активного.
    Option Explicit
    '12345678901234567890123456789012345bopoh13@ya67890123456789012345678toster56789
    Private IndexColors As New Collection, CurrentColor As Integer, BaseSheetIndex As Byte
    
    Sub DuplicatesColoring()
      Dim cell As Range, selected As Range
      
      Set selected = Selection
      If BaseSheetIndex = 0 Then _
        BaseSheetIndex = ActiveSheet.Index: CurrentColor = 3 ' Начальные значения
      selected.Interior.ColorIndex = -4142 ' Убрать заливку
      
      For Each cell In selected
        If Not IsEmpty(cell.Value) Then
          On Error Resume Next ' Включить обработку исключений
            If BaseSheetIndex = ActiveSheet.Index _
            And WorksheetFunction.CountIf(selected, cell.Value2) > 1 Then
              IndexColors.Add CurrentColor, CStr(cell.Value2) ' Заполнить коллекцию
              If Not Err.Number = 457 Then CurrentColor = CurrentColor + 1
            End If
            
            cell.Interior.ColorIndex = IndexColors(CStr(cell.Value2))
          On Error GoTo 0
        End If
      Next cell
      
      Do Until ActiveSheet.Index > ActiveWorkbook.Sheets.Count - 1
        ActiveWorkbook.Sheets(ActiveSheet.Index + 1).Activate
        DuplicatesColoring
        Exit Sub ' Предотвратить бесконечную рекурсию
      Loop
      
      Worksheets(BaseSheetIndex).Activate
    End Sub
    Ответ написан 22 мая 2020
    5 комментариев
    Нравится 1 5 комментариев
  • Что писать в "README.md" (GitHub)?

    bopoh13
    Дѣаволъ @bopoh13
    VBA, Ruby (noob), analytic
    Правил нет, но попытку стандартизации можно найти. Например:
    https://github.com/RichardLitt/standard-readme
    Ответ написан 20 мая 2020
    Комментировать
    Нравится 1 Комментировать
  • Автоматическое создание ссылки при вводе в ячейку ключевого слова?

    bopoh13
    Дѣаволъ @bopoh13
    VBA, Ruby (noob), analytic
    Нужно составить алгоритм и написать макрос.
    Ответ написан 16 мая 2020
    Комментировать
    Нравится 2 Комментировать
  • Как определить кол-во человек онлайн на сервере discord?

    bopoh13
    Дѣаволъ @bopoh13
    VBA, Ruby (noob), analytic
    https://web-answers.ru/php/poluchit-obshhee-kolich...
    Ответ написан 14 мая 2020
    Комментировать
    Нравится Комментировать
  • Как определить направление ветра по deg?

    bopoh13
    Дѣаволъ @bopoh13
    VBA, Ruby (noob), analytic
    Метрологические градусы* - направление, откуда дует ветер
    snowfence.umn.edu/Components/winddirectionanddegre...
    Ответ написан 07 мая 2020
    Комментировать
    Нравится Комментировать
  • Как в Calc или Excel сделать из текста ссылки?

    bopoh13
    Дѣаволъ @bopoh13
    VBA, Ruby (noob), analytic
    В Excel - формула ГИПЕРССЫЛКА
    Ответ написан 04 мая 2020
    Комментировать
    Нравится Комментировать
  • Как удалить подстроку из другой колонки в Excel?

    bopoh13
    Дѣаволъ @bopoh13
    VBA, Ruby (noob), analytic
    Можно сделать интереснее, если нужно выделить подстроки в виде октетов из IPv4-адрес (например, можно встретить формат 090.088.112.223). Будем применять формулу =ПОДСТАВИТЬ(), которая имеет 4-ый необязательный параметр для замены вхождения по счёту (используем как счётчик).

    Для этого нужно отделить сначала правую часть, и превратить её в число. Для первого октета формула будет сложнее, чем =ЛЕВБ() (чтобы можно было отследить этапы замены), где 1 - счётчик вхождений точки:
    =ЗНАЧЕН(ЛЕВБ(ПОДСТАВИТЬ(A1;".";ПОВТОР(" ";15);1);15))

    Для выбора остальных октетов нужно будет ещё отбросить и левую часть. Теперь первый счётчик имеет значение вхождения точки 2 (сначала нужно отсечь правую часть за 2-ой точкой), а второй счётчик имеет значение точки 1 (затем нужно отсечь левую часть до 1-ой точки):
    =ЗНАЧЕН(ПРАВБ(ПОДСТАВИТЬ(
      СЖПРОБЕЛЫ(ЛЕВБ(ПОДСТАВИТЬ(A1;".";ПОВТОР(" ";15);2);15));
    ".";ПОВТОР(" ";15);1);3))

    По аналогии нужно изменить последнюю формулу, чтобы выделить остальные октеты.

    Задача схожа с "Excel — как вытащить из относительной ссылки содержимое между двух последних «/»?".
    Ответ написан 29 апр. 2020
    Комментировать
    Нравится Комментировать
  • Как из одной переменной взять два значение?

    bopoh13
    Дѣаволъ @bopoh13
    VBA, Ruby (noob), analytic
    Добавить разделитель регулярками https://www.planetaexcel.ru/techniques/7/4844/ и написать функцию для вывода массива (тип Variant).
    Ответ написан 20 апр. 2020
    Комментировать
    Нравится 1 Комментировать
  • Как сделать по часовой счетчик в excel?

    bopoh13
    Дѣаволъ @bopoh13
    VBA, Ruby (noob), analytic
    Если формулами в течение дня, то можно задать начальное время: A1 = "12:00:00" (формат ячейки Время), тогда формула: =(ЧАС(ТДАТА())-ЧАС(A1))*3 (формат ячейки с формулой всегда Общий)
    Ответ написан 20 апр. 2020
    3 комментария
    Нравится 1 3 комментария
  • Как вызвать диалоговое окно с определенным текстом?

    bopoh13
    Дѣаволъ @bopoh13
    VBA, Ruby (noob), analytic
    MsgBox "Критическая ошибка", 16
    Справка: https://docs.microsoft.com/ru-ru/office/vba/langua...
    Ответ написан 11 апр. 2020
    Комментировать
    Нравится 1 Комментировать
  • Как сделать статус бота discord.js?

    bopoh13
    Дѣаволъ @bopoh13
    VBA, Ruby (noob), analytic
    https://www.npmjs.com/package/discord-rich-presence
    Ответ написан 10 апр. 2020
    Комментировать
    Нравится 1 Комментировать
  • Как посмотреть все сообщения конкретного человека в Steam?

    bopoh13
    Дѣаволъ @bopoh13
    VBA, Ruby (noob), analytic
    Найти на форуме автора, щёлкнуть по нику и выбрать в выпадающем списке "Показать все сообщения". Или
    https://steamcommunity.com/profiles/<PROFILE_ID>/posthistory/
    https://steamcommunity.com/id/<USERNAME_ID>/posthistory/

    Свои проще: Сообщество -> Обсуждения (затем выбрать любой игровой форум) -> История сообщений (справа)
    Ответ написан 09 апр. 2020
    Комментировать
    Нравится 1 Комментировать
  • Как правильно работать с форком github в данном случае?

    bopoh13
    Дѣаволъ @bopoh13
    VBA, Ruby (noob), analytic
    Правило простое: не работай в ветке master https://github.com/bopoh13/docs/wiki/Teamwork-Git
    Ответ написан 16 мар. 2020
    Комментировать
    Нравится Комментировать
  • Как исправить ошибку несоответствия типов аргументов функции?

    bopoh13
    Дѣаволъ @bopoh13
    VBA, Ruby (noob), analytic
    1. Всегда объявляйте перемененные и тип Dim l As Single, m As Single
    2. Оператор If имеет конструкцию If...Else...End If
    3. Function f(ByVal x As Single) As Single
    Ответ написан 16 мар. 2020
    Комментировать
    Нравится 1 Комментировать
Оценили как «Нравится»
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • Следующие →
Самые активные сегодня
  • Василий Банников
    • 11 ответов
    • 0 вопросов
  • vesper-bot
    Максим Гришин
    • 11 ответов
    • 0 вопросов
  • rPman
    • 9 ответов
    • 0 вопросов
  • Dr. Bacon
    • 7 ответов
    • 0 вопросов
  • DanceM
    Dance Macabre
    • 6 ответов
    • 0 вопросов
  • galaxy
    • 6 ответов
    • 0 вопросов
  • © Habr
  • О сервисе
  • Обратная связь
  • Блог

Войдите на сайт

Чтобы задать вопрос и получить на него квалифицированный ответ.
Войти через центр авторизации