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

Страницы: 1 2 След.
Суммирование ячеек в зависимости от даты
 
Здравствуйте. Подскажите, можно ли средствами эксель произвести суммирование ячеек по следующему условию.
Имеется таблица:

В зависимости от числа месяца, необходимо суммировать ячейки выделенные красным цветом. Т.е., если сегодня третье июля, к примеру, то 5+5, четвертое - 5+5+20.
Или в VBA, как крайний вариант решения.  
Выбор и суммирование значений в ячейках по условию
 
Здравствуйте. Помогите решить задачу: если в ячейке значение, например, 4, то, начиная с ячейки с порядковым номером 4 и менее, т.е. 3, 2, 1, 0, все значения соседних ячеек суммируются. Как можно решить задачку посредством эксель и vba по-отдельности? Пример для ясности:
Копирование диапазона по условию
 
Здравствуйте. Подскажите решение следующей задачи. Имеется несколько диапазонов с данными. Под диапазонами указано количество непустых ячеек в каждом среднем столбце диапазона. Необходимо по условию, если это количество равно 6, скопировать каждый из таких диапазонов и вставить в другое место таблицы, как показано
на скриншоте:
 
Код
Private Sub CommandButton1_Click()
For i = 3 To 16 Step 4
If Cells(17, i) = 6 Then

End If
Next i
End Sub
Изменено: Обамка - 09.12.2018 12:33:09
Присвоить имя листу при его добавлении в книгу.
 
Задача следующая. При выполнении следующего макроса в книгу добавляются листы.
Код
Sheets.Add After:=Sheets(Sheets.Count)
Подскажите, как присвоить имя листу, типа: Лист № ... - а номер должен быть равен подсчитанному количеству листов: Sheets.Count?

ActiveSheet.Name=? Вот как дальше?
Рандом в ячейках по условию
 
Здравствуйте. Помогите решить следующую задачу. Имеются диапазоны, в которых часть ячеек заполнена какими-то значениями, необходимо в них добавить еще по 3 значения "500" рандомно, по условию: если ячейка не пустая, то не заменять ее содержимое.  
Объяснить target(1,2)
 
Подскажите, что значит target(1,2), а именно (1,2)? Я извиняюсь, возможно потребуется контекст. Если так, то немного позже добавлю весь макрос.  
Изменено: Обамка - 24.11.2016 13:27:49
Присвоить имя листа переменной без кавычек.
 
Здравствуйте. Подскажите, чего не хватает в коде.

Пусть имя листа будет "5".Подскажите, как исправить макрос:  

Код
Private Sub CommandButton1_Click()

MonthDay = DatePart("d", Now)
SName = ActiveSheet.Name
If SName.Value = MonthDay Then
 MsgBox "Получилось"
End If

End Sub

Имя листа в кавычках, а день месяц обычное число. Как имя листа сделать числом, чтобы не было кавычек?

Извиняюсь. Условие поменял, было неверно.  
Изменено: Обамка - 05.06.2016 22:09:52
Вычислить сколько прошло секунд после определенного действия.
 
Помогите. Не могу никак решить задачу. Задача следующая. Необходимо вычислить за какое время набрано слово. В файле примера, запустив форму нажатием на кнопку, в форме нужно будет набрать слово "привет". Время начала набора слова показывается в ячейке А1, время окончания - в А2, и разница по времени должна показываться в А3. Как присвоить значение времени, чтобы потом можно было производить расчеты? Не получается. Оно все время меняется.


Код
Private Sub TextBox1_Change()

    Dim n As String
    
    n = "привет"
    
    If TextBox1.Value <> "" Then
    
        Cells(1, 1).Value = Time()
        
        Application.ScreenUpdating = False
        
        If TextBox1.Value = n Then
        
            Cells(2, 1).Value = Time()
            
            SoTImeVal = Cells(2, 1).Value - Cells(1, 1).Value
            
            Cells(3, 1).Value = SoTImeVal
            
            Application.ScreenUpdating = True
            
            MsgBox "вы набирали со скоростью " & SoTImeVal

        End If
    End If

End Sub
Изменено: Обамка - 07.04.2016 04:34:06
Макрос копирования содержимого ячейки в буфер обмена с помощью PutInClipboard
 
Вот обычное копирование:
Код
If Not Intersect(Target, Range("H7:H300")) Is Nothing Then
Selection.Copy

End If
Но оно не совсем подходит.
Как проделать копирование только содержимого с помощью PutinClipboard?

Задача избавиться от рамки, которая появляется при копирование и остается в таблице. И еще .Copy копирует содержимое ячейки с рамкой.
Изменено: Обамка - 04.04.2016 17:50:15
Макрос работы с определенным диапазоном ячеек.
 
Есть условие, если активная ячейка не в диапазоне, допустим, E7:E20, то Msg Box "Неверный диапазон".

Подскажите макрос, привязанный не к событию на листе, а к кнопке. Файл примера не даю, т.к. нечего пока еще загружать.
Изменено: Обамка - 30.03.2016 18:14:09
Одновременная сортировка ячеек в двух столбцах с помощью макроса.
 
В одном одном столбце производится сортировка ячеек по цвету, цвет по условному форматированию. Откройте загруженный файл, введите какое-нибудь слово в ячейки столбца F. Ячейка примет розовую заливку и отсортируется к остальным розовым.

Задача: как организовать сортировку в двух столбцах одновременно или привязать ячейки столбца Е к ячейкам столбца F. Например, если вы удалите пару "приветов" над "значение", то "значение" отсортируется наверх, а "Планета" в E-столбце останется на месте. Вот как "планету" привязать к "значению", чтобы она следовала за ним, за "значением"?

Хочу дополнить. Слово "значение" использовано в качестве примера. В ячейках может быть любое слово, выражение, значение.

Еще одно дополнение. Сделать одновременную или единую сортировку не удается по той причине, что в одном столбце ячейки объединены.  
Изменено: Обамка - 23.03.2016 10:48:16
Меняется текущее время во всех ячейках, что противоречит формуле.
 
Для каждой ячейки выполняется условие: =ЕСЛИ(D5<>"";ТДАТА();""). Только вот при вводе текста в любую из ячеек, почему-то изменяется текущее время во всех. См. файл.
Условное форматирование по двум условиям: в определенной ячейке "Февраль" и текущий день
 
Подскажите, как изменить формулу в условном форматировании для D$7, чтобы для каждого месяца не прописывать его номер в формуле.

=И(МЕСЯЦ(СЕГОДНЯ())=2;D$7=ДЕНЬ(СЕГОДНЯ()))

А чтобы формула работала по содержимому ячейки C7. Т.е. выбрал в ячейке месяц "Январь", например, - условие не работает, выбрал "Февраль" - работает, т.к. "Февраль" совпадает с текущим месяцем (февраль) -истина, день сегодня - истина. Т.е. совпадение должно быть именно с текущим месяцем.
Изменено: Обамка - 08.02.2016 15:20:34
При снятии галочки на листе присваивать ячейке определенное значение, макрос
 
Извиняюсь, создать тему не получилось, т.к. не помещается. Вот задача, может кто поможет.

Имеется энное кол-во чекбоксов. Если они не активны, то определенной ячейке или диапазону ячеек присваивается определенное значение. В прилагаемом файле G15 должно быть равно, скажем, пяти. Как это сделать? C CheckBox_Change не вышло. Подскажите?
Заливка при совпадении даты и месяца, условное форматирование
 
Задача следующая. Имеются две таблицы: за Январь и за Февраль. В определенных ячейках каждой таблицы выполняется определенное условие, а именно, выполняется заливка ячейки под текущей датой. Пример:
Сегодня 23-е число, ячейка ниже этой даты заливается в синий цвет по текущей . В условном форматировании используется формула:
=B$12=ДЕНЬ(СЕГОДНЯ())
где B$12 - строка с датами.
 
Но, две таблицы практически идентичны и заливка производится в них одновременно. Можно ли в условном форматировании для каждой таблицы указать условие, типа, если сегодня Январь, то B$12=ДЕНЬ(СЕГОДНЯ()). Чтобы заливка не производилась в двух таблицах? А только в той, которая к Январю относится.

Я написал: =ЕСЛИ(B7="Январь";B$12=ДЕНЬ(СЕГОДНЯ())). Эксель принимает данную формулу, но она не работает. Подскажите, что нужно измненить?
Выбор данных из ячеек в столбце по условию.
 

Подскажите, как использовать условие или массив, чтобы при вводе уровня в ячейку столбца D в ячейке E отображался процент соответствующий этому уровню в ячейках столбца G и H? Т.е., например, третьему уровню, соответствует 0,4%, восьмому - 2%. При вводе этих уровней, соответствующий процент должен отображаться вместо знака вопрос.
Изменено: Обамка - 18.12.2015 10:34:09
Изменение фона или размера шрифта в ячейке, если она выделена
 
Файл не прикладываю, т.к. нечего прикладывать. Подскажите макрос. Например, я использую поиск ctrl+F. Он выделяет ячейку. Как изменить фон этой ячейки?
"Ячейка или диаграмма защищена от изменений" - о какой ячейке идет речь в ошибке?
 
Ячейка или диаграмма защищена от изменений. А о какой ячейке идет речь, как узнать? Ячеек много. Книгу не могу выложить из-за ее содержимого. Может кто подскажет ответ без примера?  
Авторазвертывание таблицы при защите лист не работает.
 
Есть несколько таблиц с авторазвертыванием. Но стоит защитить лист, как это авторазвертывание перестает работать, хотя ячейки таблиц незащищены. Можно ли как-то обойти эту проблему?
Помогите удалить строки в таблице.
 
Один макрос выполняет удаление строк (активных) в таблице, а другой удаляет все строки в таблиц (-ах) на листе. Не получается у меня. Вторая задача у меня на половину получилась с циклом, но ошибку выдает, когда все строки удаляются. Подскажите, как решить?
If: добавить это же условие к другому диапазону,
 
Пример кода:
Код
If Not Intersect(Target, Range("B7:B600")) Is Nothing Then


Как в этом коде добавить условие это же условие к другому диапазону, с помощью AND или в Range можно? У меня не получилось.  
Бегущая строка и множество макросов.
 
Такой вопрос. Создал бегущую строку, но она выполняется со всеми макросами одновременно. И, если во время "бега" заполнять ячейки, то бег прекращается. Можно ли этого избежать и заставить макрос бегущей строки работать в фоновом режиме?  
Запрет ввода букв в ячейки или удаление их сразу после ввода
 
Нашел неплохой макрос:
Код
PrivateSub Worksheet_Change(ByVal Target As Range)
ForEach cl In Target.Cells
If WorksheetFunction.IsText(cl) Then cl.ClearContents
Next
End Sub

Отлично работает. Но не с объединенными ячейкам. Как обойти проблему, подскажите, кто знает?  
Помогите преобразовать числа в часы и минуты
 
Столкнулся с такой задачей. В ячейки вводятся числа, типа: 1235. И далее они должны преобразоваться в формат времени: 12:45. Так сказать для ускоренного ввода.
Попробовал использовать функцию Mid. Если ввести числа и нажать на кнопку, то макрос работает. А вот через worksheet_change не хочет. Да и по нажатию энтера тоже все ломается. Ячейка автоматически переводится в формат времени и показывает 0:00. Подскажите, что убрать, что добавить или другие функции использовать?
Код
Private Sub CommandButton1_Click()

Dim Chislo, Chasy, Minuty

If Not Cells(1, 1) = "" Then

Chislo = Cells(1, 1)
Chasy = Mid(Chislo, 1, 2)
Minuty = Mid(Chislo, 3, 2)
Cells(1, 1) = ""
Cells(1, 1) = Chasy & ":" & Minuty
Else
Cells(1, 1) = ""
End If

End Sub
Сумма времени и числового значения. Как?
 
Подскажите, как прибавить ко времени, например 13:26, число 56?
Операторы ветвления, какая-то ошибка, зависание
 
Здравствуйте. Имеется такой код:
Код
Private Sub Worksheet_Change(ByVal Target As Range)
m = Cells(16, 9).Value
c = Cells(8, 9).Value

n = m - c
If n < 0 Then
Cells(12, 9).Value = "Норма"
Else
Cells(12, 9).Value = Cells(16, 9).Value - Cells(8, 9).Value
End If

If Cells(8, 9).Value > Cells(6, 9).Value Then
Cells(27, 9).Value = "Избыток"
End If

End Sub
И он почему-то зависает. Если один If...Then убрать, то все нормально. Подскажите в чем тут ошибка.  
Если имеется выделение в диапазоне
 
Наверное мне никто не подскажет из-за постановки вопроса. В общем имеется макрос, который выполняется в определенном диапазоне.
Подскажите, как прописать условие для этого диапазона, если имеется выделение в таком-то диапазоне, то код выполняется?  
Некорректно работает код "листания" книги.
 
Создал форму, на форме две кнопки "prev" и "next", при нажатии на которые осуществляется переход на следующий или предыдущий лист. Код вот такой:
Код
Private Sub Button_prev_Click()
Dim i&
i = ActiveSheet.Index
On Error Resume Next
Sheets(i - 1).Select
Форма_листания.Caption = ActiveSheet.Name
End Sub
Private Sub Button_next_Click()
Dim i&
i = ActiveSheet.Index
On Error Resume Next
Sheets(i + 1).Select
Форма_листания.Caption = ActiveSheet.Name
End Sub
 
Только вот с первого листа книги не работает. Остальные нормально и туда, и обратно. В чем может быть ошибка?
Изменено: Обамка - 02.02.2015 21:21:41
Перемещение содержимого ячеек по нажатию кнопки
 
Помогите с макросом перемещения содержимого ячеек по нажатию кнопок вверх и вниз.
Я не могу. "Полуперемещение" сделал. Но нужно чтобы содержимое ячеек лишь менялось местами при нажатии кнопок. Причем сколько нажатий, столько и изменений.
Изменено: Обамка - 29.01.2015 20:51:09 (Изменил макрос. Перемещение сделал непрерывным. Но не могу перестановку местами организовать в коде. )
Указание определенного листа книги в коде при открытии книги.
 
Подскажите, как правильно указать в коде конкретный лист. Пусть это будет Лист1 и весь код должен работать только для этого листа. А то "Выбрать" на всех листах отображается.
Код
Private Sub Workbook_Open() 
   Range("F1", "G1").ClearContents 

   If Cells(1, 6).Value = "" Then
       Cells(1, 6).Value = "Выбрать"
      End If   
End Sub
 
Страницы: 1 2 След.
Наверх