У меня есть диапазон (скажем, A1: A100).Я добавил 7 коллекций, и каждая коллекция содержит набор отдельных ячеек.
Строка смещения (0,1) из столбца «A» предопределена и может представлять собой любое трехзначное созвездие «y» и «п».Я написал аргумент, где у = 1 и п = 0.
Исходя из этого, я написал несколько операторов IF (см., Например, ниже)
If M(1) = 1 And M(2) = 1 And M(3) = 1 Then
Count = Count + 1 ' unique
Robust(Count) = SI_number 'unique
With Robust(Count)
.Offset(1, 0) = SI_name 'unique
.Font.ThemeColor = xlThemeColorDark1
.HorizontalAlignment = xlLeft
.Font.Size = 5
.Font.Name = "xxx"
.VerticalAlignment = xlCenter
.HorizontalAlignment = xlCenter
end with
' Robust and T is of type collection
Есть ли какой-нибудь способ использовать одни и те же аргументы "с .." для нескольких диапазонов / коллекций?
У меня будет 7 разных заявлений IF.Каждый из них будет иметь определенную коллекцию (собственное имя) с отдельными ячейками, которые будут использоваться при выполнении условия.Чтобы избежать множества повторяющихся строк, я хотел бы сделать (в коде):
With collection(1-7)
.action (same code as above)
.action
..
..
End with
Одна идея, которая у меня была, заключалась в создании отдельного макроса, который можно вызывать из моего основного макроса так, чтобы:
With X
.action
.action
..
..
End with.
Где X может быть от 1 до 7. С помощью «with» или любой другой функции можно сохранить collection1, collection 2, ..., collection 7 в той же переменной (илиэквивалентный тип), поэтому в конце каждого оператора If есть X = Collection ()
Call format 'macro that formats the cell/text
Другой вопрос, как добавить, скажем, 20 отдельных ячеек в коллекцию?Код повторяется с несколькими «диапазонами collection.add (xx» .. и т. Д.