Здравствуйте! Передо мной стала задача описанная ниже, но VB я владею к сожалению на уровне программиста языка Basic, на котором ещё работали когда-то под DOS. Поэтому буду очень благодарен тому, кто сможет мне помочь.
Суть в следующем:
Есть файл Excel, на нём большое колличество листов (каждый лист представляет собой карточку персонального компьютера: По определенному шаблону в нем внесены, такие данные как установленное ПО, список пользователей, конфигурация ПК и др.). Задача состояит в том, чтобы написать макрос, который бы на отдельном листе (листах) формировал бы отчет (выводил статистику) по всем ПК. К примеру, на одном из листов нужно вывести в табличном виде список всех пользователей, их должность и список ПО установленного на каждом ПК.
Для упрощения я сделал примерно следующую шапку таблицы:
Пользователь, должность, Windows Server, Windows Vista, Windows XP, Office 2003, Office 2007 и т.д.
Ячейки ниже под списком ПО, заполняются либо нулём, либо еденицей. А потом подсчитывается сумма всех едениц.
Я написал следующий макрос:
Sub Макрос1()
Sheets("Отчет").Select
ActiveSheet.Cells(2, 2).Select
For i = 1 To 10
ActiveCell.FormulaR1C1 = "=" + Str(i) + "!R8C2"
ActiveCell.Offset(1, 0).Select
Next
ActiveSheet.Cells(2, 3).Select
For i = 1 To 10
ActiveCell.FormulaR1C1 = "=" + Str(i) + "!R9C2"
ActiveCell.Offset(1, 0).Select
Next
ActiveSheet.Cells(2, 4).Select
For n = 1 To 29
For i = 1 To 10
ActiveCell.FormulaR1C1 = "=" + Str(i) + "!R" + Str(n) + "C2"
ActiveCell.Offset(1, 0).Select
Next
ActiveSheet.Cells(2, 5 + n).Select
Next
End Sub
Но, в этом макросе есть ошибка, так как я не знаю правильного синтаксиса языка.
Нужно сделать так, чтобы по изменению переменной "n", менялись значения в 3 и 6 строках (отсчет с конца макроса - выделенно жирным шрифтом)
Исправьте плиз указанную ошибку.