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

Страницы: 1 2 3 След.
Корректировка макроса удаления до знака препинания, Нужно убрать все знаки после последней запятой
 
Огромнейшая всем благодарность, всё работает, вопрос решён!!!
Корректировка макроса удаления до знака препинания, Нужно убрать все знаки после последней запятой
 
Здравствуйте! Уважаемые эксперты эксель, помогите пожалуйста скорректировать макрос, сейчас макрос убирает всё перед первой запятой, а нужно чтобы удалял всё после последней запятой, макрос прилагаю, заранее спасибо
Код
Sub T_366()
    On Error Resume Next
    Dim objC As Range
    For Each objC In Selection.SpecialCells(xlCellTypeConstants)
        objC = Mid(objC, InStr(objC, ",")+1)
    Next
End Sub
Корректировка макроса (удаление знаков до первого пробела), Нужно убрать все знаки до первого пробела в выделенном столбце
 
Цитата
написал:
двоеточие затесалось случайно.
Огромная благодарность, всё работает, вопрос решён!
Корректировка макроса (удаление знаков до первого пробела), Нужно убрать все знаки до первого пробела в выделенном столбце
 
Цитата
написал:
БМВ
Жалуется почему то , скрин приложил
Корректировка макроса (удаление знаков до первого пробела), Нужно убрать все знаки до первого пробела в выделенном столбце
 
Цитата
написал:
Евгений Смирнов
Он теперь убирает всё до первого пробела и убирает всё после второго пробела )
Корректировка макроса (удаление знаков до первого пробела), Нужно убрать все знаки до первого пробела в выделенном столбце
 
Здравствуйте уважаемые эксперты эксель, помогите пожалуйста скорректировать макрос, этот макрос убирает все знаки ПОСЛЕ первого пробела, а нужно чтобы он убирал все знаки ДО первого пробела, спасибо
Код
Sub T_366()
    On Error Resume Next
    Dim objC As Range
    For Each objC In Selection.SpecialCells(xlCellTypeConstants)
        objC = Split(objC, " ")(0) & ""
    Next
End Sub
Подстановка текста из одной ячейки в другую с переносом строки, Нужно подставить текст из одной ячейки в другую
 
Всем спасибо! Вопрос решён.
Подстановка текста из одной ячейки в другую с переносом строки, Нужно подставить текст из одной ячейки в другую
 
Цитата
написал:
"7 ячейка, 25 ячейка" - как такое понимать? В Excel положение ячейки определяется двумя параметрами: имя столбца и номер строкиНа будущее - пишите правильно! Ячейка G4, ячейка Y4 - так понятноНельзя в ячейку из одного столбца, в которой уже есть текст, добавить текст из ячейки в другом столбце формулой так, чтобы это можно было протянуть вниз для всех ячеек в этом столбце. Нужен доп. столбец, в ячейках которого будет формула объединения текста из ячеек других столбцов. Формула: =G4&" Символ(10)"&Y4 протягивается вниз до конца таблицыЕсли вам затем нужно оставить только текст, выделяете столбец с формулой, копируете и вставляете туда же, но только значения. См. вложенидА
Да, ошибся, номера ячеек и столбцов, исправил, формула да работает, но объединённые тексты получаются в одну строку, а тут видите нужно чтобы один из текстов был с новой строки
Подстановка текста из одной ячейки в другую с переносом строки, Нужно подставить текст из одной ячейки в другую
 
Здравствуйте уважаемые эксперты эксель, помогите пожалуйста с проблемой, есть прайс он очень большой, поэтому прикрепляю 3 строки в файле, есть исходный текст в 7 столбце и есть текст в 25 столбце, как можно сделать так чтобы подставить текст из 7 столбца в 25 с переносом строки или правильно наверно будет с новой строки, и если можно чтобы при вставке текста, ячейки не меняли свою ширину и высоту, спасибо! Правильный пример прилагаю
Изменено: Артём Москвитин - 08.02.2024 18:06:57
Корректировка макроса отправки файла на почту, Нужно скорректировать макрос
 
Благодарю за ответ, вопрос решён!
Корректировка макроса отправки файла на почту, Нужно скорректировать макрос
 
Здравствуйте форумчане помогите пожалуйста скорректировать макрос, где подвох не могу найти. Суть такая, сделан VBS скрипт запуска макроса с Windows и повешан на планировщик, всё запускается и работает идеально, запускает вот этот вот макрос привожу его пример ниже, но этот макрос отправляет файл в формате XLSM, помогите скорректировать пожалуйста чтобы отправка была в формате XLS, XLSX либо CSV без разницы.
Код
Option Explicit
  
Sub Send_Mail()
    Dim objOutlookApp As Object, objMail As Object, Wb As Workbook
    Dim sTo As String, sSubject As String, sBody As String, sAttachment As String
  
    Application.ScreenUpdating = False
    On Error Resume Next
    '??????? ??????????? ? Outlook ???? ?? ??? ??????
    Set objOutlookApp = GetObject(, "Outlook.Application")
    Err.Clear 'Outlook ??????, ??????? ??????
    If objOutlookApp Is Nothing Then
        Set objOutlookApp = CreateObject("Outlook.Application")
    End If
    
    Set objMail = objOutlookApp.CreateItem(0)   '??????? ????? ?????????
    '???? ?? ?????????? ??????? ?????????? ??? ???????? ????????? - ???????
    If Err.Number <> 0 Then Set objOutlookApp = Nothing: Set objMail = Nothing: Exit Sub
     
    sTo = "moscva87@yandex.ru"    '????(????? ???????? ????????? ?? ?????? - sTo = Range("A1").Value)
    sSubject = "Прайс-лист1"    '???? ?????(????? ???????? ????????? ?? ?????? - sSubject = Range("A2").Value)
    sBody = "Прайс-лист1"    '????? ??????(????? ???????? ????????? ?? ?????? - sBody = Range("A3").Value)
      '????????(?????? ???? ? ????? ????? ???????? ????????? ?? ?????? - sAttachment = Range("A4").Value)
     
     
    ActiveSheet.Copy
    Set Wb = ActiveSheet.Parent
    Wb.SaveAs Filename:=sAttachment, _
              FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False
    Wb.Close (False)
     
     
    '??????? ?????????
    With objMail
        .To = sTo '????? ??????????
        .CC = "" '????? ??? ?????
        .BCC = "" '????? ??? ??????? ?????
        .Subject = sSubject '???? ?????????
        .Body = sBody '????? ?????????
        '.HTMLBody = sBody '???? ?????????? ??????????????? ????? ?????????(??????, ???? ? ?.?.)
        .Attachments.Add ActiveWorkbook.FullName  '????? ????????? ???????? ????? ?????? sAttachment ??????? ActiveWorkbook.FullName
    Set .SendUsingAccount = objOutlookApp.Session.Accounts.Item("pmsa87@mail.ru")
        .Send ', ???? ?????????? ??????????? ?????????, ? ?? ?????????? ??? ?????????
    End With
  
    Set objOutlookApp = Nothing: Set objMail = Nothing
    Application.ScreenUpdating = True
End Sub
Деление ячейки после запятой, Нужно разделить ссылки в ячейке после первой запятой и подставить в другой столбец
 
evgeniygeo
Огромная благодарность за помощь, всё работает
Деление ячейки после запятой, Нужно разделить ссылки в ячейке после первой запятой и подставить в другой столбец
 
Здравствуйте уважаемые, помогите с проблемой, есть большой объём данных, в столбце O перечислены ссылки на фото через запятую, нужно чтобы первая ссылка осталась на месте, а все последующие после первой запятой ушли в столбец P, образец как должно получится прилагаю, жёлтый цвет это результат, Функция текст по столбцам не подходит так как он все ссылки закидывает на каждый столбец, макрос был бы идеальным решением чтобы работал по выделенному столбцу O
Отправка письма через outlook, Не открывается вложение
 
Спасибо, вопрос решён
Как создать письмо "Иванов И.И. от имени Пупкина П.П." VBA
 
Здравствуйте, чтобы не создавать одну и ту же тему, помогите вставить эту строку кода в основной код, чтобы от другого имени отправлять письма
Код
Option Explicit
  
Sub Send_Mail()
    Dim objOutlookApp As Object, objMail As Object, Wb As Workbook
    Dim sTo As String, sSubject As String, sBody As String, sAttachment As String
  
    Application.ScreenUpdating = False
    On Error Resume Next
    '??????? ??????????? ? Outlook ???? ?? ??? ??????
    Set objOutlookApp = GetObject(, "Outlook.Application")
    Err.Clear 'Outlook ??????, ??????? ??????
    If objOutlookApp Is Nothing Then
        Set objOutlookApp = CreateObject("Outlook.Application")
    End If
    objOutlookApp.Session.Logon
    Set objMail = objOutlookApp.CreateItem(0)   '??????? ????? ?????????
    '???? ?? ?????????? ??????? ?????????? ??? ???????? ????????? - ???????
    If Err.Number <> 0 Then Set objOutlookApp = Nothing: Set objMail = Nothing: Exit Sub
     
    sTo = "Кому отправляем"    '????(????? ???????? ????????? ?? ?????? - sTo = Range("A1").Value)
    sSubject = "Автоотправка"    '???? ?????(????? ???????? ????????? ?? ?????? - sSubject = Range("A2").Value)
    sBody = "Прайс R8"    '????? ??????(????? ???????? ????????? ?? ?????? - sBody = Range("A3").Value)
      '????????(?????? ???? ? ????? ????? ???????? ????????? ?? ?????? - sAttachment = Range("A4").Value)
     
     
    ActiveSheet.Copy
    Set Wb = ActiveSheet.Parent
    Wb.SaveAs Filename:=sAttachment, _
              FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False
    Wb.Close (False)
     
     
    '??????? ?????????
    With objMail
        .To = sTo '????? ??????????
        .CC = "" '????? ??? ?????
        .BCC = "" '????? ??? ??????? ?????
        .Subject = sSubject 'Автоотправка
        .Body = sBody 'Прайс R8
        '.HTMLBody = sBody '???? ?????????? ??????????????? ????? ?????????(??????, ???? ? ?.?.)
        .Attachments.Add ActiveWorkbook.FullName  '????? ????????? ???????? ????? ?????? sAttachment ??????? ActiveWorkbook.FullName
        .Send ', ???? ?????????? ??????????? ?????????, ? ?? ?????????? ??? ?????????
    End With
  
    Set objOutlookApp = Nothing: Set objMail = Nothing
    Application.ScreenUpdating = True
End Sub
Отправка письма через outlook, Не открывается вложение
 
Цитата
написал:
Вероятнее всего  в отправляемом файле содержится макрос

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

1. Откройте Outlook и выберите "Файл" в верхнем левом углу.
2. Выберите "Параметры" в меню "Файл".
3. Выберите "Центр управления безопасностью" в боковом меню "Параметры Outlook".
4. Нажмите на кнопку "Настройки центра управления безопасностью".
5. Выберите "Настройки макросов".
6. Выберите "Включить все макросы" и нажмите "OK".
7. Нажмите "Ok" еще раз, чтобы закрыть настройки.
Посмотрел настройки, макросы все включены
Отправка письма через outlook, Не открывается вложение
 
Здравствуйте знатоки эксель, помогите пожалуйста скорректировать макрос, данный макрос отправляет файл на почту через программу outlook, нужно скорректировать таким образом чтобы макрос отправлял не полностью файл, а только активный лист, либо активную книгу, в самом макросе написано чтобы это сделать нужно заменить sAttachment на ActiveWorkbook.FullName, но у меня почему то не получается
Код
Sub Send_Mail()
    Dim objOutlookApp As Object, objMail As Object
    Dim sTo As String, sSubject As String, sBody As String, sAttachment As String
 
    Application.ScreenUpdating = False
    On Error Resume Next
    'пробуем подключиться к Outlook, если он уже открыт
    Set objOutlookApp = GetObject(, "Outlook.Application")
    Err.Clear 'Outlook закрыт, очищаем ошибку
    If objOutlookApp Is Nothing Then
        Set objOutlookApp = CreateObject("Outlook.Application")
    End If
    'раскомментировать строку, если в Outlook несколько учетных записей и нужно подключиться к конкретной(только если Outlook закрыть)
    '   [параметры]: Session.Logon "имя профиля","пароль",[показывать окно выбора профиля], [запускать в новой сессии]
    'objOutlookApp.Session.Logon "profile","1234",False, True
    Set objMail = objOutlookApp.CreateItem(0)   'создаем новое сообщение
    'если не получилось создать приложение или экземпляр сообщения - выходим
    If Err.Number <> 0 Then Set objOutlookApp = Nothing: Set objMail = Nothing: Exit Sub
 
    sTo = "moscva.87@yandex.ru"    'Кому(можно заменить значением из ячейки - sTo = Range("A1").Value)
    sSubject = "Прайс-лист"    'Тема письма(можно заменить значением из ячейки - sSubject = Range("A2").Value)
    sBody = "Привет от Excel-VBA"    'Текст письма(можно заменить значением из ячейки - sBody = Range("A3").Value)
    sAttachment = "D:\555\R8(пробник).xls"    'Вложение(полный путь к файлу. Можно заменить значением из ячейки - sAttachment = Range("A4").Value)
 
    'создаем сообщение
    With objMail
        .To = sTo 'адрес получателя
        .CC = "" 'адрес для копии
        .BCC = "" 'адрес для скрытой копии
        .Subject = sSubject 'тема сообщения
        .Body = sBody 'текст сообщения
        '.HTMLBody = sBody 'если необходим форматированные текст сообщения(различные шрифты, цвет шрифта и т.п.)
        'добавляем вложение, если файл по указанному пути существует(dir проверяет это)
        If sAttachment <> "" Then
            If Dir(sAttachment, 16) <> "" Then
                .Attachments.Add sAttachment 'просто вложение
                'чтобы отправить активную книгу вместо sAttachment указать ActiveWorkbook.FullName
            End If
        End If
        .Send 'Display, если необходимо просмотреть сообщение, а не отправлять без просмотра
    End With
 
    Set objOutlookApp = Nothing: Set objMail = Nothing
    Application.ScreenUpdating = True
End Sub
Изменено: Артём Москвитин - 10.05.2023 19:15:28
Убрать из ячеек лишние данные, Убрать из ячеек лишние данные после первой запятой
 
Цитата
написал:
Sub T_365()    Dim objC As Range    For Each objC In Selection        objC = Split(objC, ",")(0) & ")"    NextEnd Sub
Огромное Вам спасибо, всё работает, Вы меня всегда выручаете! Тема закрыта
Убрать из ячеек лишние данные, Убрать из ячеек лишние данные после первой запятой
 
Здравствуйте уважаемые форумчане! Поделитесь пожалуйста опытом, как можно по выделенному столбцу, убрать лишние данные из ячеек после первой запятой,
Пример: данные в ячейке(DAN444, 000056664) должен остаться (DAN444) то есть убираем всё после запятой, может макрос какой есть подскажите?
Приведение ячеек в единый формат
 
Цитата
написал:
В примере нет ни одного числа с точкой или запятой.
Извините, прикрепил не тот файл, сейчас то что надо!
Приведение ячеек в единый формат
 
Здравствуйте уважаемые форумчане, помогите решить вопрос, суть такая, приходит прайс-лист с числовыми значениями, числа разделены знаком , (запятая) мне нужно чтобы было разделение точкой, я меняю макросом на . (точку), макрос ниже, сохраняю в csv (нужен именно этот формат) и получается полная каша, числовые значения ставит дату, штрих код сокращает в непонятно что, пробовал все форматы ячеек, не могу корректно всё сделать, может есть макрос какой то который приведёт это всё в порядок или еще как то?
Код
Sub Replacer()
Dim rng As Range
Dim arr, aOne(1 To 1, 1 To 1)
Dim t!, a&, r&, c&, n&, AC&, f As Boolean
 
t = Timer: Set rng = Selection
Application.ScreenUpdating = False
AC = Application.Calculation: Application.Calculation = xlCalculationManual
 
For a = 1 To rng.Areas.Count
    arr = rng.Areas(a).Value
    If Not IsArray(arr) Then aOne(1, 1) = arr: arr = aOne
 
    For c = 1 To UBound(arr, 2)
        For r = 1 To UBound(arr, 1)
            If arr(r, c) Like "*,*" Then
                arr(r, c) = Replace$(arr(r, c), ",", ".")
                n = n + 1: f = True
            End If
        Next r
    Next c
 
    If f Then
        f = False
        rng.Areas(a).NumberFormat = "@"
        rng.Areas(a).Value = arr
    End If
Next a
 
Application.Calculation = AC
Application.ScreenUpdating = True
 
If n = 0 Then MsgBox "There is NO COMMAS in Selection", vbExclamation, Format$(Timer - t, "0.00 sec"): Exit Sub
MsgBox "Succsessfully replace the COMMAS to DOTs: " & Format$(n, "#,##0"), vbInformation, Format$(Timer - t, "0.00 sec")
End Sub
Изменено: Артём Москвитин - 13.02.2022 07:25:41
Заменить запятую на точку в выделенном столбце
 
Цитата
написал:
ещё как знаю — как раз писал, раз сказал
Благодарю Вас, Спасибо большое, всё работает! Кучу времени сэкономили )))
Заменить запятую на точку в выделенном столбце
 
Цитата
написал:
Итого: если нужно изменить, но не получить при этом дату, то только макросом (или добавлять, например, "_" перед данными, чтобы однозначно отнести их к тексту)
Макрос случаем не знаете? Макрос который я выложил он работает, но почему то с этим прайсом не хочет!  
Заменить запятую на точку в выделенном столбце
 
Со столбцом M так не получается, он выдаёт не понять что, даже если формат ячеек изменить!
Заменить запятую на точку в выделенном столбце
 
Здраствуйте уважаемые форумчане, проблема в следующем: в прайс-листе нужно заменить символ , (запятая) на . (точку) в столбцах M, P, T,  Поделитесь пожалуйста формулой или макросом, а то работала встала, вот этот макрос почему то не работает, всю голову уже сломал!
Код
Sub Символ()
Cells.Replace What:=",", Replacement:=".", LookAt:=xlPart
End Sub
Автоматическая отправка файла по почте в заданное время
 
Цитата
написал:
Самое оптимальное решение предложил Hugo Зачем держать эксель запущенным, чтобы выполнился какой–то макрос К тому программный код на VBscript и VBA будут очень похожи.
Действительно запуск скрипта через планировщик было бы идеальным решением, чтобы не держать файл открытым, может кто поделится готовым скриптом, PITBY отправил скрипт vbs запуска через windows, но он как я понимаю активирует макрос в книге, это обязательное условие чтобы был макрос в файле?
Код
Option Explicit
Dim xlApp, xlBook, iPath

Set xlApp = CreateObject("Excel.Application") 
xlApp.DisplayAlerts = False 
xlApp.Visible = False 'True
iPath = "C:\Users\moscv\OneDrive\Рабочий стол\Фото мои остатки на павильоне\Мои остатки на павильоне!!!.csv" ' Путь к файлу с макросом
Set xlBook = xlApp.Workbooks.Open(iPath, 0, False)

xlApp.Run "Создание_файлов"   'запускаем макрос из открытой книги
xlBook.Close True             'закрываем книгу с сохранением
xlApp.Quit                    'закрываем Excel

Set xlBook = Nothing
Set xlApp = Nothing

'WScript.Echo "Завершено удачно!"
WScript.Quit
Автоматическая отправка файла по почте в заданное время
 
В эксель как я понимаю файл должен быть всегда открыт и запускается макрос, этот вариант не очень подходит мне, может программа какая то существует для этого?
Автоматическая отправка файла по почте в заданное время
 
Здравствуйте уважаемые форумчане, подскажите пожалуйста существует ли какое то решение отправки файла эксель формат .csv на почтовый адрес автоматически по заданному времени, задача следующая: У меня есть файл csv мне нужно чтобы он отправлялся на почтовый ящик который укажу по времени автоматически тоесть когда я буду отсутствовать возле компьютера! Макросы есть которые отправляют при закрытии книги и т.д., но это надо заходить и делать действия, а нужно решение чтобы отправлялось когда я отсутствую, файл на выходе должен быть csv либо xlsx, но не xlm
Применить макрос ко всем файлам папки
 
Спасибо Большое!
Применить макрос ко всем файлам папки
 
МатросНаЗебре, макрос вселяет надежды, но почему то не удаляет апострофы и лишние знаки, а наоборот добавляет их на лист!
Страницы: 1 2 3 След.
Наверх