• Foruma hoş geldin 👋 Ziyaretçi

    Forum içeriğine ve tüm hizmetlerimize erişim sağlamak için foruma kayıt olmalı ya da giriş yapmalısınız. Foruma üye olmak tamamen ücretsizdir.

Çözüldü Vb.Net İle Yazılmış Fonksiyonu Vba'ya Çevirme

Bu sorun verilen destek sayesinde çözüme ulaştırılmıştır.
Durum
Konu Çözümlendiği İçin Kapatılmıştır.

kanakan52

Destek Ekibi
Kullanıcı Bilgileri
Katılım
7 Mar 2021
Mesajlar
163
Çözümler
22
Aldığı beğeni
181
Excel Versiyonu
Office 2013 TR
Konuyu Başlatan
Arkadaşlar merhaba,

Aşağıdaki VB kodlarını VBA' ya nasıl uyarlarız fikri olan var mı ? Özellikle fonksiyon kısmını ?

Yorumlar için şimdiden teşekkürler.

Kod:
Değerli Misafirimiz İçeriği Görebilmek İçin Üyemiz İseniz Giriş Yap'ın Ya da Üye Ol'un.
 
Son düzenleme:
Çözüm
@aeGNoR üstad, Visual Studio 2005-2008-2019 versiyonları var elimde. Üyesi olduğum başka bir forumda Tarkan Vural üstad konuyu 2008 yılında işlemiş. Ama o zamandan bu zamana dereden çok sular akmış gibi.

C# olarakda çözebilirim konuyu lakin çalışmanın % 90 lık kısmı Excel'de. Ayrı bir platform planımı bozuyor maalesef. Kaldıki NetGSM excel üzerinden mesaj gönderme özelliğine sahip. Ben olayı bir tık ileri taşıyıp SQL sorgularıyla listviewe aldığım verileri excele kaydetmeden doğrudan userform üzerinden gönderimini sağlamak amacındayım.

Destek ve değerli yorumlarınız için teşekkür ederim.
Anlıyorum, beni ve belki nicelerimizi bu seviyelere taşıyan Tarkan Bey'in kulaklarını çınlatalım o halde:)

Dediğim gibi bir denemesini...
Bu kodlama dili VB değil üstad, VB.NET çünkü Try Catch gibi ifadeler VB.NET ile birlikte geliyor.

Muhtemelen yapmaya çalıştığınız şey web sorgusu ile ilgili sanırım. Web ile ilgili alanlar nasıl uyarlanır bilemiyorum üzerinde epey çalışmak lazım. Try Catch ifadesine gelince bu ifade hata yakalama ifadesi. Yani On error goto ya da on error resume next gibi ifadelerle uyarlanabilir.
 
Bu kodlama dili VB değil üstad, VB.NET çünkü Try Catch gibi ifadeler VB.NET ile birlikte geliyor.

Muhtemelen yapmaya çalıştığınız şey web sorgusu ile ilgili sanırım. Web ile ilgili alanlar nasıl uyarlanır bilemiyorum üzerinde epey çalışmak lazım. Try Catch ifadesine gelince bu ifade hata yakalama ifadesi. Yani On error goto ya da on error resume next gibi ifadelerle uyarlanabilir.

Merhaba üstad,

Yanlış bilgi aktarmışım bağışla lütfen.

Kodlar NETGSM firmasının api kodları ,

Önceden VB API desteği vardı, şimdi kaldırmışlar sanırım. Yada ben bulamadım.



burada PHP, Java, Python,C#,Delphi ve Vb.Net apileri mevcut. Bunlardan bir tanesini bir şekilde excele uyarlamam lazım. Sorunda burda başlıyor.

Bakalım bir yolunu bulacağız.

Selamlar tekrardan.
 
Biraz sesli düşünelim;
Form1_Load olayı içindeki kodlar xml dosyası oluşturmak için yazılmış. Muhtemelen xml dosyası oto sms göndermek için hazırlanmış.
Gelen değişkeni bir fonksiyon içerisinden bir değer döndürüyor. (Burada gelen değişkeninin değerinin ne olduğu aslında çok mühim değil gibi duruyor. Sadece fonksiyon içerisinde bir şeyler yapmayı deniyor, olursa oldu olmazsa olmadı gibi bir değer döndürüyor)
Gelen değişkeni ile fonksiyonu tetikledikten sonra web nesnesi çalıştırılıyor ve web nesnesi bir takım kurallara göre belli bir siteye erişip oraya hazırlanan xml dosyasını gönderiyor. XML dosyası başarılı bir şekilde gönderirse olumlu mesajı, gönderemezse olumsuz mesajı geliyor.

Burada değiştirmemiz gereken yer bana sorarsanız, Wrequest fonksiyonunun içindeki
Kod:
Değerli Misafirimiz İçeriği Görebilmek İçin Üyemiz İseniz Giriş Yap'ın Ya da Üye Ol'un.
değişkeni. Bunun yerine VBA da çalışan bir web eklentisi bulabilirsek sorunu çözebiliriz.

Düzenleme sonrası:
Şimdi biraz daha detaylı inceleyince farkettim, kodda bulunan web nesnesinde bazı metodlar mevcut. Bu metodları barındınra bir web nesnesi ile çalışmak gerekebilir VBA içerisinde. Eğer böyle bir nesne bulamazsak muhtemelen yaramıza merhem olacak nesne selenium nesnesi olacaktır. Bir deneme yapma fırsatım yok şuan için. Ama müsait bir vakitte uygun bir web componenti var mı bakayım, yoksa selenium ile neler yapabiliriz ona göz gezdireyim. Eğer o da işe yaramazsa ne yazık ki en azından vb2005 sürümlü bir visual basic programı edinmeniz gerekecek.
 
Biraz sesli düşünelim;
Form1_Load olayı içindeki kodlar xml dosyası oluşturmak için yazılmış. Muhtemelen xml dosyası oto sms göndermek için hazırlanmış.
Gelen değişkeni bir fonksiyon içerisinden bir değer döndürüyor. (Burada gelen değişkeninin değerinin ne olduğu aslında çok mühim değil gibi duruyor. Sadece fonksiyon içerisinde bir şeyler yapmayı deniyor, olursa oldu olmazsa olmadı gibi bir değer döndürüyor)
Gelen değişkeni ile fonksiyonu tetikledikten sonra web nesnesi çalıştırılıyor ve web nesnesi bir takım kurallara göre belli bir siteye erişip oraya hazırlanan xml dosyasını gönderiyor. XML dosyası başarılı bir şekilde gönderirse olumlu mesajı, gönderemezse olumsuz mesajı geliyor.

Burada değiştirmemiz gereken yer bana sorarsanız, Wrequest fonksiyonunun içindeki
Kod:
Değerli Misafirimiz İçeriği Görebilmek İçin Üyemiz İseniz Giriş Yap'ın Ya da Üye Ol'un.
değişkeni. Bunun yerine VBA da çalışan bir web eklentisi bulabilirsek sorunu çözebiliriz.

Düzenleme sonrası:
Şimdi biraz daha detaylı inceleyince farkettim, kodda bulunan web nesnesinde bazı metodlar mevcut. Bu metodları barındınra bir web nesnesi ile çalışmak gerekebilir VBA içerisinde. Eğer böyle bir nesne bulamazsak muhtemelen yaramıza merhem olacak nesne selenium nesnesi olacaktır. Bir deneme yapma fırsatım yok şuan için. Ama müsait bir vakitte uygun bir web componenti var mı bakayım, yoksa selenium ile neler yapabiliriz ona göz gezdireyim. Eğer o da işe yaramazsa ne yazık ki en azından vb2005 sürümlü bir visual basic programı edinmeniz gerekecek.

@aeGNoR üstad, Visual Studio 2005-2008-2019 versiyonları var elimde. Üyesi olduğum başka bir forumda Tarkan Vural üstad konuyu 2008 yılında işlemiş. Ama o zamandan bu zamana dereden çok sular akmış gibi.

C# olarakda çözebilirim konuyu lakin çalışmanın % 90 lık kısmı Excel'de. Ayrı bir platform planımı bozuyor maalesef. Kaldıki NetGSM excel üzerinden mesaj gönderme özelliğine sahip. Ben olayı bir tık ileri taşıyıp SQL sorgularıyla listviewe aldığım verileri excele kaydetmeden doğrudan userform üzerinden gönderimini sağlamak amacındayım.

Destek ve değerli yorumlarınız için teşekkür ederim.
 
@aeGNoR üstad, Visual Studio 2005-2008-2019 versiyonları var elimde. Üyesi olduğum başka bir forumda Tarkan Vural üstad konuyu 2008 yılında işlemiş. Ama o zamandan bu zamana dereden çok sular akmış gibi.

C# olarakda çözebilirim konuyu lakin çalışmanın % 90 lık kısmı Excel'de. Ayrı bir platform planımı bozuyor maalesef. Kaldıki NetGSM excel üzerinden mesaj gönderme özelliğine sahip. Ben olayı bir tık ileri taşıyıp SQL sorgularıyla listviewe aldığım verileri excele kaydetmeden doğrudan userform üzerinden gönderimini sağlamak amacındayım.

Destek ve değerli yorumlarınız için teşekkür ederim.
Anlıyorum, beni ve belki nicelerimizi bu seviyelere taşıyan Tarkan Bey'in kulaklarını çınlatalım o halde:)

Dediğim gibi bir denemesini yaparım ama muhtemelen sorununuza çözüm olmayacaktır. Ayrıca

Abi akşam epey uğraştım evde VBA içindeki IE nesnesi galiba işimize yaramayacak. Geç olduğu için selenium kurup deneyemedim, bugün de selenium ile bir şeyler yapabilir miyiz ona bakacağım. Umarım o işe yarar.
 
Çözüm
Anlıyorum, beni ve belki nicelerimizi bu seviyelere taşıyan Tarkan Bey'in kulaklarını çınlatalım o halde:)

Dediğim gibi bir denemesini yaparım ama muhtemelen sorununuza çözüm olmayacaktır. Ayrıca

Abi akşam epey uğraştım evde VBA içindeki IE nesnesi galiba işimize yaramayacak. Geç olduğu için selenium kurup deneyemedim, bugün de selenium ile bir şeyler yapabilir miyiz ona bakacağım. Umarım o işe yarar.

@aeGNoR üstad, Tarkan Vural, Murat Osma ,Erhan Yavuz ismini hatırlayamadığım bendeki ben' e +1 katan tüm üstad ve dostlara selamlar sevgiler. diyelim. Bu forumda bu üstadların çalışmalarını görüp örnek almayan yoktur diye düşünüyorum.

Konuya dönecek olursak Selenium hakkında çok fikrim yok, Python ile birleşince muhteşem şeyler yapılabildiğini duydum. NETGSM sayfasında bir çok platformun API kodları var. Bende müsait oldukça hangisi en kolay işime yarar araştıracağım.

Bu arada ilgin ve kıymetli yorumların için ayrı ayrı teşekkür ederim.
 
Durum
Konu Çözümlendiği İçin Kapatılmıştır.

Konuyu okuyanlar

Geri
Üst