Підготувати звіт про участь у листі Excel
Підготувати звіт про участь у листі Excel
- Проблема
- Рішення
- Примітка
Проблема
У нас працює 60 мешканців. Вони відвідують доповідь щоранку. Тому я підготував таблицю Excel (таблицю присутніх), яка містить стовпці A1: A60 з іменами резидентів B1: B60 з відсотком відвідуваності протягом одного місяця. Моя робота полягає в тому, щоб підготувати звіт про відвідування кожного резидента. Я підготував шаблон для звіту про відвідуваність. Тепер я хочу запустити макрос, який виконає такі дії:1. Відкрийте новий робочий аркуш із шаблону в робочій книзі, яка має "Таблицю робочих столів"
2. Він повинен принести дані з робочого аркуша "Таблиця відвідуваності"
a. З першого стовпця А1 і покласти в поле Ім'я шаблону (новий аркуш відкритий на першому етапі) (завжди D6)
b. Принесіть дані з B1 і покладіть у відсотковому полі шаблону (F10)
c. Вона повинна перейменувати вкладку аркуша з даними з A1 (тобто ім'я резидента)
3. Повторіть крок 2, поки він не досягне порожньої клітинки
Хто-небудь може допомогти мені написати макрос.?
Рішення
"Підпрограма доповіді про відвідування."'Відкрити новий лист називається робочим листом для відвідування
'З даними з таблиці відвідуваності
- Мешканці називають D6
'Відсоток відвідуваності за один місяць до F10
'Перейменувати лист на ім'я резидента і почати знову
«Для всіх мешканців в таблиці
Доповідь Sub Attendance ()
Dim cCell As Object, i As Integer 'Два змінні cCell (поточний стільниковий) об'єкт і i (стандартне ціле число підрахунку)
Клітинки (1, "A"). Виберіть "Переконайтеся, що ми починаємо кожен раз у верхній частині аркуша
Application.ScreenUpdating = False 'Повернення оновлення екрану під час запуску макросу
Для кожного cCell в діапазоні (клітинки (1, "A"), клітинки (1, "A"). End (xlDown)) 'Запускатимемо наш код через кожну клітинку з текстом
Встановити NewSheet = Sheets.Add (Тип: = xlWorksheet) 'Додати новий аркуш
NewSheet.Name = "Робочий аркуш таблиці відвідуваності" "перейменувати аркуш
Клітинки (6, "D"). Значення = cCell.Value "покласти на ім'я резидента клітинку D6
Клітинки (10, "F"). Значення = cCell.Offset (0, 1) .Value "покласти місце проживання в F10
Таблиці ("Таблиця робочих столів"). Ім'я = cCell.Value
Наступний cCell
End Sub