You could use a custom function to read value from A1, apply split with search term and parse out the required info. It seems a bit overkill to use a JSON parser though that string is JSON and you could extract that way.
Option Explicit
Public Sub test()
[A2] = GetValue([a1], "brand")
End Sub
Public Function GetValue(ByVal rng As Range, ByVal searchTerm As String) As Variant
'[{'type':'general', 'name':'light'},{'type':'brand', 'name':'lighti'},{'type':'misc', 'name':'Sale%'}]
On Error GoTo errhand
GetValue = Split(Split(rng.Value, "{'type':'" & searchTerm & "', 'name':'")(1), "'")(0)
Exit Function
errhand:
GetValue = CVErr(xlErrNA)
End Function
If you were to use a JSONParser like JSONConverter.bas you could parse the JSON as follows. Note: After adding the .bas to your project you need to go VBE > Tools > References and add a reference to Microsoft Scripting Runtime.
Option Explicit
Public Sub test()
[A2] = GetValue([a1], "brand")
End Sub
Public Function ExtractItem(ByVal rng As Range, ByVal searchTerm As String) As Variant
Dim json As Object, key As Object
json = JsonConverter.ParseJson(rng.Value)
For Each item In json
For Each key In item
If key = searchTerm Then
GetValue = item(key)
Exit Function
End If
Next
Next
ExtractItem = CVErr(xlErrNA)
End Function