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

Страницы: 1
Выпадающий список с меняющимися данными, Выпадающий список с меняющимися данными
 
Да, все заработало именно то, что нужно. Это гениально!!! Дэвид Блэйн вы волшебник, Дэвид Блеэйн! Спасибо!!!
Выпадающий список с меняющимися данными, Выпадающий список с меняющимися данными
 
ЭЭЭ, а что изменилось? Может что не понимаю, в таблице тоже самое )
Выпадающий список с меняющимися данными, Выпадающий список с меняющимися данными
 
Привет форумчане. Помогите, пожалуйста, с такой проблемой. У меня есть табличка,  по выдаче одежды. Нужно чтобы в столбце "Наименование" был выпадающий список - это я сделал. В столбце " Артикул" сразу появлялся бы артикул если заполнена ячейка в столбце" Наименование" - это я сделал с помощью ВПР.  И еще нужно чтобы в столбце "Размер" был выпаадающий список с размерами. И вот тут как раз заминка вышла. Дело в том, что у разных вещей, разные размерные сетки. Например у куртки от XS - 4XL, а у брюк от 28 - 54. Как реализовать, чтобы если в ячейке столбца "Наименование" появятся, например, брюки, то в выпадающем списке будут только размеры от 28-54, а если куртка, то от XS - 4XL.  Сможете помочь? Файл прикладываю. Спасибо!!
Как удалить макросом все ячейки слева от выбранного с помощью фильтра значения
 
Спасибо! Работает отлично.  Прошу прощения за код не в формате, больше не буду )
Как удалить макросом все ячейки слева от выбранного с помощью фильтра значения
 
Код
Sub Макрос2()
Dim myFiltered As Range
ActiveCell.CurrentRegion.AutoFilter Field:=8, Criteria1:="Занесено"
   With ActiveSheet.AutoFilter.Range
        Set myFiltered = .Offset(1).Resize(.Rows.Count - 1).SpecialCells(xlCellTypeVisible)
   End With
myFiltered.ClearContents 'для очистки ячеек от данных
myFiltered.EntireRow.Delete 'для удаления строк, выбрать нужное
ActiveCell.CurrentRegion.AutoFilter
End Sub
Нужно удалить всю строку целиком
Макрос тормозится на этом:
Код
myFiltered.EntireRow.Delete 
'для удаления строк, выбрать нужное
Выдает сообщение " данная команда неприменима для перекрывающихся диапазонов.
Изменено: petrov777 - 08.02.2018 13:35:24
Как удалить макросом все ячейки слева от выбранного с помощью фильтра значения
 
Привет форумчане. Попробую сформулировать что нужно. Есть таблица которая периодически обновляется и в которой напротив данных, которые уже обработаны проставляется запись " занесено". Нужен такой макрос, который бы удалял все эти ячейки,  Единственное, что приходит в голову это сделать фильтр по пометке " занесено" и удалить их таким образом. Но как сделать, чтобы макрос понимал, какое количество ячеек нужно удалить в следующий раз, ведь количество записей может быть уже другим. Образец приложил. Спасибо!!
Код
Sub Макрос1()
'
' Макрос1 Макрос
'

'
    ActiveSheet.Range("$A$1:$AF$399").AutoFilter Field:=8, Criteria1:= _
        "=*Занесено*", Operator:=xlAnd
End Sub
Изменено: petrov777 - 08.02.2018 13:29:39
Compile error: procedure too large, Слишком длинный макрос, что делать
 
Проблему решило переворачивание экрана. Он у меня прямоугольный, соответственно, когда я повернул экран, в него стало помещаться в полтора раза больше информации и макрос стал работать. Спасибо! )

P/S Если серьезно, попробую решить проблему разбиением кода на части. ))
Compile error: procedure too large, Слишком длинный макрос, что делать
 
Сделал макрос, но эксель ругается,я так понимаю, на его величину.
Появляется сообщение   Compile error: procedure too large.  Что можно сделать?
Макрос не сохраняет защиту листа
 
Работает. Спасибо )
Макрос не сохраняет защиту листа
 
Прошу прощения, коряво обрезал код, 'ActiveSheet.Unprotect ,  это уже к дальнейшим действиям относилось. А так вообще, действительно на троллинг похоже. ) Но, тем не менее, проблема действительно есть.  В приложении файл пример.   С помощью макроса паролем защищаю лист от всех изменений и копирования и макрос, вроде бы выполняет действие,  но если нажать "Снять защиту листа" после действия макроса, защита слетает без всякого пароля.  
Макрос не сохраняет защиту листа
 
Формучане, проблема такого свойства. Сделал макрос, который предполагает получение файла с защищенным листом, но при выполнении макроса лист все равно получается незащищенным. Что можно сделать? Код такой

Спасибо!
Код
Sub Макрос1()
    Rows("5:5").Select
    Range("C5").Activate
    Selection.AutoFilter
    ActiveSheet.Range("$A$5:$O$232").AutoFilter Field:=2, Criteria1:="ABA"
    ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
    ActiveSheet.EnableSelection = xlNoSelection
    ChDir _
        "C:\Users\vermolin\Desktop\Моя папка \Вложенный файл\test"
    ActiveWorkbook.SaveAs Filename:= _
        "C:\Users\vermolin\Desktop\Моя папка \Вложенный файл\ABA.xlsx" _
        , FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False
        
         ActiveSheet.Unprotect   
End Sub
""
Изменено: petrov777 - 06.02.2018 11:54:07
Отправка электронной почты из Excel, Отправка электронной почты из Excel
 

Потестил, все работает супер, единственно такой момент. Подскажите, как доработать код, чтобы была возможность вставлять в копию получателя и менять отправителя – у меня два почтовых ящика в Outlook, сейчас по умолчанию, отправка идет с одного из них. Уверен, доработанный макрос будет крутым и полезным очень, очень многим. Спасибо!!

код.

""Sub Send_Mail()

Dim objOutlookApp As Object, objTemlate As Object

Dim cl As Range

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

   'Если не получилось создать приложение, выходим из процедуры

   If Err.Number <> 0 Then

       Set objOutlookApp = Nothing

       Exit Sub

   End If

   With Worksheets("Ëèñò1")

       lrow = .Cells(.Rows.Count, 1).End(xlUp).Row

   End With

   If lrow < 2 Then lrow = 2

   For Each cl In Range("A2:A" & lrow).Cells

       Set objTemlate = objOutlookApp.CreateItemFromTemplate(cl.Offset(, 2).Value)

       If Not objTemlate Is Nothing Then

           With objTemlate

               .To = cl.Value    'Кому

               .Subject = cl.Offset(, 1).Value 'Тема сообщения

               .Attachments.Add cl.Offset(, 3).Value   'вложение

               .Send 'Display, если необходимо просмотреть сообщение, а не отправлять без просмотра

           End With

           DoEvents

       End If

       Set objTemlate = Nothing

   Next

   Set objOutlookApp = Nothing

Application.ScreenUpdating = True

End Sub""

Отправка электронной почты из Excel, Отправка электронной почты из Excel
 
Все супер, это именно то, что нужно! Спасибо!!  Буду изучать матчасть ))
Отправка электронной почты из Excel, Отправка электронной почты из Excel
 
Привет форумчане!

Помогите решить  проблему отправки писем через Outlook,  используя макрос в таблице Excel, по работе прямо очень, очень нужно.
 Для начала прошу прощения, эту тему уже наверняка уже обсуждали, но я так и не нашел именно то, что мне нужно. Вообщем, смысл задачи такой.  В таблице Excel имеются четыре столбца:  

1.  Адреса e-mail ( у меня порядка 100 получателей)
2.  Тема сообщения.
3   Путь к файлу ( я делаю шаблон письма в Outlook и сохраняю его в отдельной папке. Расширение файла .oft)
4.  Путь к файлу вложению.  Было бы классно, если бы выдававалось еще какое-нибудь сообщение об ошибке отправки, но это в принципе, думаю,  не так важно.  

В приложении excel файл с этими полями, буду очень признателен, если сможете помочь.
Заранее спасибо!!! :-)
Выборка значений только из последнего заполненного столбца, необходимо чтобы в результирующей таблице на одном листе отображались данные только из последнего заполненного столбика на втором листе.
 
Да, это именно то, что и нужно!! Спасибо!!!!!
Выборка значений только из последнего заполненного столбца, необходимо чтобы в результирующей таблице на одном листе отображались данные только из последнего заполненного столбика на втором листе.
 
Прошу прощения, не уточнил все детали.
По первому листу "Сотрудники": Табельные номера  уникальны, т.е привязку можно делать к ним. Строчек может быть больше, чем в файле, но, в любом случае, это не больше двухсот.  
По второму листу. Даты  на первой горизонтальной строчке будут проставляться вручную в момент заполнения листа.
Последний столбец диапазона: по горизонтали  II , а вниз  двухсотая строчка.

Т.е, грубо говоря, задача такая:
Сегодня я заполняю таблицу на листе1 в столбце Е и эти данные попадают автоматом в таблицу "Сотрудники". Завтра я опять заполняю таблицу на листе 1, но уже в столбце F и эти данные  отображаются в таблице "Сотрудники". Т.е в таблице "Сотрудники" нужна какая-то универсальная формула, которая будет брать данные только из последнего заполненного столбца в таблице 1.
Выборка значений только из последнего заполненного столбца, необходимо чтобы в результирующей таблице на одном листе отображались данные только из последнего заполненного столбика на втором листе.
 
Добрый день мастера Excel!  
Буду очень признателен, если поможете в разрешении проблемы. На первом листе есть таблица с результирующими значениями , которые берутся из второго листа. Необходимо, чтобы в таблице на первом листе отображались данные только по последнему заполненному столбцу на втором листе. Образец файла прилагаю.

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

Обычное подставление = СУММ (А1:А17) не катит, т.к ячеек с данными  выше может  быть больше или меньше.
Нужно, чтобы формула выглядела именно так: - сумма от данного места ( плавающей ячейки, которая находится в диапазоне А~)   до, предположим, А1.
Тестовый образец в приложении. запуск ctrl+q.

Спасибо!!!
Изменено: petrov777 - 27.11.2016 10:09:02
Страницы: 1
Наверх