在Excel中使用json多級(jí)下拉功能可以提高數(shù)據(jù)輸入的效率。下面我們將介紹如何使用Excel中的json多級(jí)下拉。
首先,在Excel中打開需要使用json多級(jí)下拉的工作表。然后,打開開發(fā)工具選項(xiàng)卡,點(diǎn)擊“Visual Basic”按鈕,進(jìn)入VBA編程界面。在VBA編程界面中,選擇“插入”菜單中的“模塊”,在新建的模塊中輸入以下代碼:
Private Sub Worksheet_Change(ByVal Target As Range) Dim InputRng As Range, InputCell As Range Dim OutputRng As Range, OutputCell As Range Dim JsonFile As Object Dim JsonData As Variant Dim i As Long, j As Long, k As Long Set InputRng = Range("A2:A100") '輸入單元格范圍 Set OutputRng = Range("B2:B100") '輸出單元格范圍 For Each InputCell In InputRng If InputCell.Value<>"" Then Set JsonFile = CreateObject("Scripting.FileSystemObject") Set JsonData = JsonFile.OpenTextFile("\\PATH-TO-JSON-FILE.json", 1).ReadAll Set JsonData = JsonConverter.ParseJson(JsonData) For i = 0 To UBound(JsonData) If InputCell.Value = JsonData(i)("name") Then For j = 0 To UBound(JsonData(i)("options")) OutputRng.Validation.Delete Set OutputCell = OutputRng.Cells(InputCell.Row - InputRng.Row + 1) With OutputCell.Validation .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, _ Formula1:=Application.Transpose(JsonData(i)("options")(j)("name")) .IgnoreBlank = True .InCellDropdown = True .ShowInput = True .ShowError = True End With k = k + 1 Next End If Next If k = 0 Then OutputRng.Validation.Delete k = 0 Else OutputRng.Validation.Delete End If Next End Sub
請注意:需要在代碼中替換“\\PATH-TO-JSON-FILE.json”為您自己的JSON文件路徑。
然后,回到Excel工作表界面,在A列中輸入需要使用下拉列表的數(shù)據(jù)名稱,在B列中將顯示下拉列表選項(xiàng),列 C、D、E 等也可以按照需要設(shè)置下拉列表。當(dāng)您手動(dòng)輸入一個(gè)名稱時(shí),下拉列表會(huì)自動(dòng)顯示可選項(xiàng)。如果名稱不存在于JSON文件中,則下拉列表不會(huì)顯示。
在Excel中使用json多級(jí)下拉功能可以使數(shù)據(jù)輸入變得更加快捷方便。希望這篇文章能夠?qū)Υ蠹伊私釫xcel中的json多級(jí)下拉功能有所幫助。