Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Не получается прописать макрос на любое количество листов - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Не получается прописать макрос на любое количество листов (Макросы/Sub)
Не получается прописать макрос на любое количество листов
kotenok-vamp Дата: Понедельник, 26.04.2021, 20:35 | Сообщение № 1
Группа: Пользователи
Ранг: Новичок
Сообщений: 24
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
Добрый день!
Никак не получается прописать макрос. необходимо, чтобы он работал на любом количестве листов и с любым количеством ячеек, в которых есть информация.
Нужно, чтобы был определенный формат:
1. Шрифт "Arial"
2.Размер 12
3.Выравнивание справа
4.Не должно быть границ
5. Не должно быть гиперссылок
и чтобы макрос создавал рядом с столбцом "Дата" столбец "Возраст" и считал его формулой...
К сообщению приложен файл: gggg.xlsx (11.5 Kb)
 
Ответить
СообщениеДобрый день!
Никак не получается прописать макрос. необходимо, чтобы он работал на любом количестве листов и с любым количеством ячеек, в которых есть информация.
Нужно, чтобы был определенный формат:
1. Шрифт "Arial"
2.Размер 12
3.Выравнивание справа
4.Не должно быть границ
5. Не должно быть гиперссылок
и чтобы макрос создавал рядом с столбцом "Дата" столбец "Возраст" и считал его формулой...

Автор - kotenok-vamp
Дата добавления - 26.04.2021 в 20:35
Kuzmich Дата: Понедельник, 26.04.2021, 22:25 | Сообщение № 2
Группа: Проверенные
Ранг: Ветеран
Сообщений: 711
Репутация: 156 ±
Замечаний: 0% ±

Excel 2003
А где ваши попытки написания макроса? Что не получается?
 
Ответить
СообщениеА где ваши попытки написания макроса? Что не получается?

Автор - Kuzmich
Дата добавления - 26.04.2021 в 22:25
kotenok-vamp Дата: Вторник, 27.04.2021, 11:03 | Сообщение № 3
Группа: Пользователи
Ранг: Новичок
Сообщений: 24
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
упс, пардон.
Вот макрос:
[vba]
Код
Sub Macros()
With Selection.Font
.Name = "Arial"
.Size = 12
.Color = vbblack
End With
With Selection
.Borders.LineStyle = False
.HorizontalAlignment = xlVAlignLeft
End With

End Sub
[/vba]

Но эта зараза не хочет работать и не выдает даже где ошибка(((
И не получается, чтобы убирал гиперссылки, вставлял столбец и работал на всех листах


Сообщение отредактировал kotenok-vamp - Вторник, 27.04.2021, 11:42
 
Ответить
Сообщениеупс, пардон.
Вот макрос:
[vba]
Код
Sub Macros()
With Selection.Font
.Name = "Arial"
.Size = 12
.Color = vbblack
End With
With Selection
.Borders.LineStyle = False
.HorizontalAlignment = xlVAlignLeft
End With

End Sub
[/vba]

Но эта зараза не хочет работать и не выдает даже где ошибка(((
И не получается, чтобы убирал гиперссылки, вставлял столбец и работал на всех листах

Автор - kotenok-vamp
Дата добавления - 27.04.2021 в 11:03
китин Дата: Вторник, 27.04.2021, 11:32 | Сообщение № 4
Группа: Модераторы
Ранг: Экселист
Сообщений: 7014
Репутация: 1073 ±
Замечаний: 0% ±

Excel 2007;2010;2016
kotenok-vamp, - Прочитайте Правила форума
- Оформите код тегами (в режиме правки поста выделите код и нажмите кнопку #, пояснялка здесь)


Не судите очень строго:я пытаюсь научиться
ЯД 41001877306852
 
Ответить
Сообщениеkotenok-vamp, - Прочитайте Правила форума
- Оформите код тегами (в режиме правки поста выделите код и нажмите кнопку #, пояснялка здесь)

Автор - китин
Дата добавления - 27.04.2021 в 11:32
kotenok-vamp Дата: Вторник, 27.04.2021, 11:42 | Сообщение № 5
Группа: Пользователи
Ранг: Новичок
Сообщений: 24
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
китин, Прошу прощения. Поправила
 
Ответить
Сообщениекитин, Прошу прощения. Поправила

Автор - kotenok-vamp
Дата добавления - 27.04.2021 в 11:42
Kuzmich Дата: Вторник, 27.04.2021, 12:44 | Сообщение № 6
Группа: Проверенные
Ранг: Ветеран
Сообщений: 711
Репутация: 156 ±
Замечаний: 0% ±

Excel 2003
Попробуйте макрос (в стандартный модуль)
[vba]
Код
Sub Test()
Dim Sht As Worksheet
Dim FoundData As Range
Dim FoundPochta As Range
Dim i As Long
Dim iLR As Long
Dim hl As Hyperlink
  For Each Sht In Worksheets
    With Sht
      Set FoundData = .Rows(1).Find("Дата", , xlValues, xlWhole)
        .Columns(FoundData.Column + 1).Insert
        .Cells(1, FoundData.Column + 1) = "Возраст"
        iLR = .Cells(.Rows.Count, 1).End(xlUp).Row
      For i = 2 To iLR
        .Cells(i, FoundData.Column + 1) = Year(Date) - Year(.Cells(i, FoundData.Column))
        .Cells(i, FoundData.Column + 1).NumberFormat = "@"
      Next
           Set FoundPochta = .Rows(1).Find("почта", , xlValues, xlWhole)
        If Not FoundPochta Is Nothing Then
          For Each hl In .Range(.Cells(2, FoundPochta.Column), .Cells(iLR, FoundPochta.Column)).Hyperlinks
            If hl.Type = 0 Then
              hl.Delete
            End If
          Next
        End If
      With .UsedRange.Font
        .Name = "Arial"
        .Size = 12
      End With
      With .UsedRange
        .HorizontalAlignment = xlRight
        .Borders.LineStyle = xlNone
      End With
    End With
  Next
End Sub
[/vba]
 
Ответить
СообщениеПопробуйте макрос (в стандартный модуль)
[vba]
Код
Sub Test()
Dim Sht As Worksheet
Dim FoundData As Range
Dim FoundPochta As Range
Dim i As Long
Dim iLR As Long
Dim hl As Hyperlink
  For Each Sht In Worksheets
    With Sht
      Set FoundData = .Rows(1).Find("Дата", , xlValues, xlWhole)
        .Columns(FoundData.Column + 1).Insert
        .Cells(1, FoundData.Column + 1) = "Возраст"
        iLR = .Cells(.Rows.Count, 1).End(xlUp).Row
      For i = 2 To iLR
        .Cells(i, FoundData.Column + 1) = Year(Date) - Year(.Cells(i, FoundData.Column))
        .Cells(i, FoundData.Column + 1).NumberFormat = "@"
      Next
           Set FoundPochta = .Rows(1).Find("почта", , xlValues, xlWhole)
        If Not FoundPochta Is Nothing Then
          For Each hl In .Range(.Cells(2, FoundPochta.Column), .Cells(iLR, FoundPochta.Column)).Hyperlinks
            If hl.Type = 0 Then
              hl.Delete
            End If
          Next
        End If
      With .UsedRange.Font
        .Name = "Arial"
        .Size = 12
      End With
      With .UsedRange
        .HorizontalAlignment = xlRight
        .Borders.LineStyle = xlNone
      End With
    End With
  Next
End Sub
[/vba]

Автор - Kuzmich
Дата добавления - 27.04.2021 в 12:44
kotenok-vamp Дата: Вторник, 27.04.2021, 13:01 | Сообщение № 7
Группа: Пользователи
Ранг: Новичок
Сообщений: 24
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
Kuzmich, да, ура!! Спасибо большое!!
 
Ответить
СообщениеKuzmich, да, ура!! Спасибо большое!!

Автор - kotenok-vamp
Дата добавления - 27.04.2021 в 13:01
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Не получается прописать макрос на любое количество листов (Макросы/Sub)
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!