Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 21.10.2015, 09:50   #1
Haguro
 
Регистрация: 29.09.2015
Сообщений: 9
По умолчанию Помогите с кодом макроса

Как в макросе прописать для экселя код

1. "Если лист содержит текст "Прямые затраты", то вставляет текст "Сводная таблица" в ячейку выше.
2. "Если лист содержит текст "Всего с НР и СП", то вставляем блок текста на 2 ячейки ниже и на 1 слолбец влево.
Haguro вне форума Ответить с цитированием
Старый 21.10.2015, 09:59   #2
AleksandrH
Заблокирован
 
Регистрация: 15.02.2010
Сообщений: 148
По умолчанию

Код:
Sub Макрос1()
'
' Макрос1 Макрос
'

'
    Dim oFind As Range
    Set oFind = Cells.Find(What:="Прямые затраты", After:=ActiveCell, LookIn:= _
        xlFormulas, LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:= _
        xlNext, MatchCase:=False, SearchFormat:=False)
    If Not (oFind Is Nothing) Then
        If oFind.Row > 1 Then Cells(oFind.Row - 1, oFind.Column) = "СВОДНАЯ"
    End If
    Set oFind = Cells.Find(What:="Всего с НР и СП", After:=ActiveCell, LookIn:= _
        xlFormulas, LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:= _
        xlNext, MatchCase:=False, SearchFormat:=False)
        If Not (oFind Is Nothing) Then
            If oFind.Column > 1 Then Cells(oFind.Row + 3, oFind.Column - 1) = "БЛОК ТЕКСТА"
    End If
End Sub

Последний раз редактировалось AleksandrH; 21.10.2015 в 10:19.
AleksandrH вне форума Ответить с цитированием
Старый 21.10.2015, 13:32   #3
Haguro
 
Регистрация: 29.09.2015
Сообщений: 9
По умолчанию

спасибо большое, все получилось. Теперь нужно научиться выделять ячейки с нужным содержимым в рамку и задавать им нужный размер шрифта
Haguro вне форума Ответить с цитированием
Старый 21.10.2015, 13:57   #4
AleksandrH
Заблокирован
 
Регистрация: 15.02.2010
Сообщений: 148
По умолчанию

Ищите...

Код:
With Range("A1:M50")
        .Font.Name = "calibri"
        .Font.Size = 24
        .Font.ColorIndex = 1
        .Interior.ColorIndex = 15
        .Borders(xlEdgeLeft).LineStyle = xlContinuous
        .Borders(xlEdgeLeft).Weight = xlThin
        .Borders(xlEdgeTop).LineStyle = xlContinuous
        .Borders(xlEdgeTop).Weight = xlThin
        .Borders(xlEdgeBottom).LineStyle = xlContinuous
        .Borders(xlEdgeBottom).Weight = xlThin
        .Borders(xlEdgeRight).LineStyle = xlContinuous
        .Borders(xlEdgeRight).Weight = xlThin
        .Borders(xlInsideVertical).LineStyle = xlContinuous
        .Borders(xlInsideVertical).Weight = xlThin
        .Borders(xlInsideHorizontal).LineStyle = xlContinuous
        .Borders(xlInsideHorizontal).Weight = xlThin
    End With
AleksandrH вне форума Ответить с цитированием
Старый 21.10.2015, 14:25   #5
Haguro
 
Регистрация: 29.09.2015
Сообщений: 9
По умолчанию

With Range не годится, нужно прописать конкретный текст и изменить размер его шрифта и взять в рамку
Haguro вне форума Ответить с цитированием
Старый 21.10.2015, 14:57   #6
AleksandrH
Заблокирован
 
Регистрация: 15.02.2010
Сообщений: 148
По умолчанию

это было не решение, а, если хотите, подсказка куда искать
AleksandrH вне форума Ответить с цитированием
Старый 21.10.2015, 15:07   #7
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,170
По умолчанию

Искать нужно кнопку записи макроса.
webmoney: E265281470651 Z422237915069 R418926282008
Hugo121 вне форума Ответить с цитированием
Старый 21.10.2015, 16:33   #8
Haguro
 
Регистрация: 29.09.2015
Сообщений: 9
По умолчанию

запись макроса не катит, потому что он пишет действия на текущем листе, а надо чтобы они распространялись на все листы
Haguro вне форума Ответить с цитированием
Старый 21.10.2015, 16:47   #9
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,170
По умолчанию

Как уверенно и безаппеляционно
webmoney: E265281470651 Z422237915069 R418926282008
Hugo121 вне форума Ответить с цитированием
Старый 21.10.2015, 17:02   #10
Haguro
 
Регистрация: 29.09.2015
Сообщений: 9
По умолчанию

может я не так сформулировал, но поверьте я уже этот метод пробовал
Haguro вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите с кодом judge_arm Microsoft Office Excel 2 01.07.2009 11:48
Помогите с кодом lewka-serdceed Общие вопросы Delphi 1 22.06.2009 00:25
Помогите с кодом eu8cc Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 12 07.06.2009 01:05
Помогите с кодом Кронос Общие вопросы Delphi 6 04.05.2008 21:13