* Прочитайте для получения дополнительной информации *
У меня есть набор данных 3D.Третье измерение этого набора данных зависит от внешнего целочисленного значения.Для простоты использования и для того, чтобы сделать задачу достижимой, насколько мне известно, я создал 2D-таблицу, которая содержит разделенные запятыми ячейки, представляющие третье измерение.Основной проблемой является внешнее целое число, которое активно изменяет 2D-таблицу.
* Основной вопрос *
Мне нужно создать проверенный список, раскрывающуюся ячейку из списка с разделителями-запятыминаходится в одной ячейке на отдельном листе в той же книге.Список с разделителями-запятыми создается из функции 2D INDEX-MATCH.Я пытаюсь выполнить это через функцию VBA, чтобы легко выбрать входы и вызвать подпрограмму для создания проверенного списка.(Если подпрограмма не нужна; игнорировать)
2D Таблица
Выходные ячейки
* Пока игнорируем DCTG, это будет тот же процесс, но для другого набора трехмерных данных.
Я хотел бы получить функцию (InputCell, OutputCell).InputCell зависит от трех других ранее выбранных точек данных (вне целого числа, на которое ссылается фон, и x и y таблицы), и его текущий код равен
=INDEX(Rmag_For_Casting_Material,MATCH(Updated!E7,RMAG_Casting_Method,0),MATCH(Updated!E6,RMAG_Material_Class,0))
, который при передаче инструменту проверки списка данных создаетодин список опций "A, B, C, D", а не список опций "A", "B", "C", ...
* Текущие исследования *
Private Sub Workbook_Open()
AddCSVListValidation "Task", "A1", "A2"
End Sub
Sub AddCSVListValidation(sheet, cellSource, cellTarget)
txt = ActiveWorkbook.Worksheets(sheet).Range(cellSource).Value
ActiveWorkbook.Worksheets(sheet).Range(cellTarget) = "Select your values here"
With ActiveWorkbook.Worksheets(sheet).Range(cellTarget).Validation
.Delete
.Add Type:=xlValidateList, Formula1:="a,b,c"
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = ""
.InputMessage = ""
.ErrorMessage = ""
.ShowInput = True
.ShowError = True
End With
End Sub
Я полагаю, что это создает подпрограмму, которая создаст проверенный список, но потребует нескольких копий каждый раз, когда я создаю новый проверенный список в другой ячейке.Или я мог бы заменить «Задание», «А1», «А2» и повторно запустить подпрограмму?У меня возникли проблемы даже с запуском подпрограммы.Нужно ли это имя листа «Задача»?
Я считаю, что этот код является отличной основой для того, что я хочу сделать, но я недостаточно опытен, чтобы создавать функцию и анализировать информацию между подпрограммой и функцией.