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

Вход

Регистрация

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

 

= Мир MS Excel/Помогите с макросом, выполняющим заданные действия - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Помогите с макросом, выполняющим заданные действия
Евгений Дата: Среда, 12.01.2011, 15:11 | Сообщение № 1
Группа: Гости
Здравствуйте, хотел попросить помощи в написании простого макроса. Вот последовательность действий которая от него требуется:

1. Удалить строки с 1 по 5
2. Очистить содержимое строк 1, 2
3. Вписать в ячейку A1 "Дата", а в ячейку B1 дату в формате дд.мм.гггг
4. Вписать в ячейку A2 "Номер паспорта"
5. Пройти циклом с ветвлением по столбцу С до тех пор пока в ячейке будет попадаться какое либо содержимое, как только наткнется на пустую ячейку (допустим C133) То удаляет содержимое строк 133-233 (100 строк в общем для надежности)
6. заполнить ячейки T1-T133(тут конечная ячейка выбирается исходя из той которая была в пункте 5) пробелами, причем важно именно не очистить ячейки, а вставить в каждую по пробелу
7. Заполнить ячейки с А133 (опять же конечная строка берется из пункта 5) до Т133 пробелами
8. Ну и сохранить)

 
Ответить
СообщениеЗдравствуйте, хотел попросить помощи в написании простого макроса. Вот последовательность действий которая от него требуется:

1. Удалить строки с 1 по 5
2. Очистить содержимое строк 1, 2
3. Вписать в ячейку A1 "Дата", а в ячейку B1 дату в формате дд.мм.гггг
4. Вписать в ячейку A2 "Номер паспорта"
5. Пройти циклом с ветвлением по столбцу С до тех пор пока в ячейке будет попадаться какое либо содержимое, как только наткнется на пустую ячейку (допустим C133) То удаляет содержимое строк 133-233 (100 строк в общем для надежности)
6. заполнить ячейки T1-T133(тут конечная ячейка выбирается исходя из той которая была в пункте 5) пробелами, причем важно именно не очистить ячейки, а вставить в каждую по пробелу
7. Заполнить ячейки с А133 (опять же конечная строка берется из пункта 5) до Т133 пробелами
8. Ну и сохранить)


Автор - Евгений
Дата добавления - 12.01.2011 в 15:11
Саня Дата: Среда, 12.01.2011, 16:32 | Сообщение № 2
Группа: Друзья
Ранг: Ветеран
Сообщений: 1068
Репутация: 560 ±
Замечаний: 0% ±

XL 2016
Code
Option Explicit

Sub Laba()
    '1. Удалить строки с 1 по 5
    Rows("1:5").Delete
     
    '2. Очистить содержимое строк 1, 2
    Rows("1:2").ClearContents
     
    '3. Вписать в ячейку A1 "Дата", а в ячейку B1 дату в формате дд.мм.гггг
    [A1] = "Дата": [B1] = Format(Date, "dd.mm.yyyy")
     
    '4. Вписать в ячейку A2 "Номер паспорта"
    [A2] = "Номер паспорта"
     
    '5. Пройти циклом с ветвлением по столбцу С до тех пор пока в ячейке будет попадаться какое либо содержимое,
    'как только наткнется на пустую ячейку (допустим C133) То удаляет содержимое строк 133-233 (100 строк в общем для надежности)
    Dim i As Integer
     
    i = 3 'начинаем с 3-ей строки
    Do
       If Range("C" & i) = "" Then
          Rows(i & ":" & i + 100).ClearContents
          Exit Do
       End If
       i = i + 1
    Loop
     
    '6. заполнить ячейки T1-T133(тут конечная ячейка выбирается исходя из той которая была в пункте 5) пробелами,
    'причем важно именно не очистить ячейки, а вставить в каждую по пробелу
    '7. Заполнить ячейки с А133 (опять же конечная строка берется из пункта 5) до Т133 пробелами
    Union(Range("T1:T" & i), Range("A" & i & ":T" & i)) = "*" 'здесь поставишь пробел
     
    '8. Ну и сохранить)
    ActiveWorkbook.Save
End Sub
 
Ответить
Сообщение
Code
Option Explicit

Sub Laba()
    '1. Удалить строки с 1 по 5
    Rows("1:5").Delete
     
    '2. Очистить содержимое строк 1, 2
    Rows("1:2").ClearContents
     
    '3. Вписать в ячейку A1 "Дата", а в ячейку B1 дату в формате дд.мм.гггг
    [A1] = "Дата": [B1] = Format(Date, "dd.mm.yyyy")
     
    '4. Вписать в ячейку A2 "Номер паспорта"
    [A2] = "Номер паспорта"
     
    '5. Пройти циклом с ветвлением по столбцу С до тех пор пока в ячейке будет попадаться какое либо содержимое,
    'как только наткнется на пустую ячейку (допустим C133) То удаляет содержимое строк 133-233 (100 строк в общем для надежности)
    Dim i As Integer
     
    i = 3 'начинаем с 3-ей строки
    Do
       If Range("C" & i) = "" Then
          Rows(i & ":" & i + 100).ClearContents
          Exit Do
       End If
       i = i + 1
    Loop
     
    '6. заполнить ячейки T1-T133(тут конечная ячейка выбирается исходя из той которая была в пункте 5) пробелами,
    'причем важно именно не очистить ячейки, а вставить в каждую по пробелу
    '7. Заполнить ячейки с А133 (опять же конечная строка берется из пункта 5) до Т133 пробелами
    Union(Range("T1:T" & i), Range("A" & i & ":T" & i)) = "*" 'здесь поставишь пробел
     
    '8. Ну и сохранить)
    ActiveWorkbook.Save
End Sub

Автор - Саня
Дата добавления - 12.01.2011 в 16:32
Евгений Дата: Четверг, 13.01.2011, 13:06 | Сообщение № 3
Группа: Гости
Огромное спасибо! Все работает
 
Ответить
СообщениеОгромное спасибо! Все работает

Автор - Евгений
Дата добавления - 13.01.2011 в 13:06
  • Страница 1 из 1
  • 1
Поиск:

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