javascript - Excel - json data - return certain elements to adjacent cells formula/macro -
i have lot of json data in rows , need extract pieces of data in excel, there way this? have provided sample of typical cell, keep simple, how extract "lat" , "lng" values , place them in adjacent cells. let's json in cell d2, need 'lat' in e3 , 'lng' in f3:
projectid:'5571511970726f3903000000', lat:13.737738, lng:100.566147, destinations:[{"id":"57bc75550ce0fe28af001609","name":"browneyesrestaurant","category_name":"restaurant","category_class_name":"restaurants","lat":13.737875,"lng":100.566806,"travel_time":"lessthanaminutebyfoot","distance_human":"39m","distance_in_meters":39},{"id":"57bc75550ce0fe28af00160a","name":"hanahana","category_name":"restaurant","category_class_name":"restaurants","lat":13.738215,"lng":100.566701,"travel_time":"1minutebyfoot","distance_human":"48m","distance_in_meters":48},{"id":"57bc75550ce0fe28af001602","name":"7-eleven","category_name":"convenience_store","category_class_name":"shopping","lat":13.73763,"lng":100.566934,"travel_time":"1minutebyfoot","distance_human":"55m","distance_in_meters":55},{"id":"57bc75550ce0fe28af001636","name":"goldenshrine","category_name":"pokestop","category_class_name":"pokemon_places","lat":13.737763,"lng":100.567128,"travel_time":"1minutebyfoot","distance_human":"74m","distance_in_meters":74},{"id":"57bc75550ce0fe28af00160d","name":"fatfishseafoodbistro","category_name":"restaurant","category_class_name":"restaurants","lat":13.737128,"lng":100.567127,"travel_time":"2minutesbyfoot","distance_human":"130m","distance_in_meters":126},{"id":"57bc75550ce0fe28af001635","name":"narzstoneballs","category_name":"pokestop","category_class_name":"pokemon_places","lat":13.738174,"lng":100.56538,"travel_time":"2minutesbyfoot","distance_human":"140m","distance_in_meters":142},
example of desired output on screengrab:
if don't intent extract json, try code.
sub test() dim s string dim vsplit s = range("d2") vsplit = split(s, ",") range("e2") = val(replace(vsplit(1), "lat:", "")) range("f2") = val(replace(vsplit(2), "lng:", "")) end sub
edit
sub test() dim s string dim vsplit dim vdb, vr() dim long, n long vdb = range("d2", range("d" & rows.count).end(xlup)) n = ubound(vdb, 1) redim vr(1 n, 1 2) = 1 n s = vdb(i, 1) vsplit = split(s, ",") vr(i, 1) = val(replace(vsplit(1), "lat:", "")) vr(i, 2) = val(replace(vsplit(2), "lng:", "")) next range("e2").resize(n, 2) = vr end sub
Comments
Post a Comment