• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

Json ayırma

Katılım
13 Temmuz 2016
Mesajlar
613
Excel Vers. ve Dili
Excel 2010 & 2016 Türkçe
Merhabalar daha önce açmıştım konuyu ama bir türlü mantığını ögrenemedim. Sizden ricam açıklamalı olarak kod verebilir misiniz? Çünküü ara sıra json biçimi değişiyor her zaman sizleri rahatsız etmek istemiyorum. :)
Sorum böyle.

{ "-MWAhME2859987": { "id": "02", "name": "abc" }, "-MWAhME2Irl4Kp08xZ5k": { "id": "25", "name": "emn" }, "Mdf5455259899p08xZ5k": { "name": "ahmet", "id": 15 } }

Yukardaki json örneğini aşağıdaki excel sayfası gibi dizmek istiyorum.




Aynı şekilde

{"id":"25","name":"emn"}

Yukardaki jsonuda aşağıddaki excel sayfasına dizmek istiyorum. Bu iki json için vba kodu lasım şimdiden teşekkürler.
 
Merhabalar daha önce açmıştım konuyu ama bir türlü mantığını ögrenemedim.

Webte JSON syntax olarak aratmanız lazım... Türkçe çok fazla kaynak göremedim; ihtiyaç varsa çeviri kullanın.

 
Webte JSON syntax olarak aratmanız lazım... Türkçe çok fazla kaynak göremedim; ihtiyaç varsa çeviri kullanın.

Öncelikle teşekkürler.
Yukarda vermiş olduğunuz linkte Excel vba için kod bulamadım. İnternette baya araştırdım ancak aradığımı bulamadım son olarak buraya yazdım. Türkçe dışında kaynak varsa da olur sıkıntı olmaz.
 
Bu iş için yazılmış JSON class'lar var.

Ama; RegEx veya string manipülasyonlarıyla da yapılabilir.

Eğer verdiğiniz 2. örnekteki string'in A1 hücresinde olduğunu kabul edersek;

C++:
Sub Test()
    strJSON = Range("A1")
    
    MsgBox Replace(Split(Split(strJSON, """id"":")(1), ",")(0), """", "")
    MsgBox Replace(Replace(Split(Split(strJSON, """name"":")(1), ",")(0), "}", ""), """", "")
End Sub

.
 
Bu iş için yazılmış JSON class'lar var.

Ama; RegEx veya string manipülasyonlarıyla da yapılabilir.

Eğer verdiğiniz 2. örnekteki string'in A1 hücresinde olduğunu kabul edersek;

C++:
Sub Test()
    strJSON = Range("A1")
   
    MsgBox Replace(Split(Split(strJSON, """id"":")(1), ",")(0), """", "")
    MsgBox Replace(Replace(Split(Split(strJSON, """name"":")(1), ",")(0), "}", ""), """", "")
End Sub

.
Teşekkürler
 
Geri
Üst