Excel Forum
ALTIN ÜYELİK Hakkında Bilgi


Geri Git   Excel Forum > Diğer Yazılımlar > WEB Tasarım&Programlama > JavaScript
Atatürk
Şifremi Unuttum

DUYURU SİSTEMİ / REKLAM PANOSU

Özel Arama


Yanıtla
 
Paylaş Konu Araçları Görünüm Modları
Eski 14-02-2014, 17:12   #1
gugulimonta
 
Giriş: 22/08/2005
Şehir: Ardeþen
Mesaj: 3
Varsayılan JavaScript kodunu Visual basic koduna çevirme

Selam
Aşağda verdiğim Kodun fonksiyon kısmını Visual basic veya Excel VBA koduna çevirmek istedim.Başaramadım.

Form üzerinde Üç adet Texbox ve bir tane buton olup,İlk iki textbox'girilen veriler butonu tıklayınca işlem yapıp üçüncü textbox ta sonuç dönecek.Bu konuda yardımlarınızı bekliyorum.





<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
<html>

<head>
<title>JavaScript - Motorwindungsschema berechnen</title>
</head>
<body onload="init()">
<form name="Windungsrechner">
<div align="center"><center>
<font color="#FF0000">Bedienungsanleitung:</font> Gib die anzahl der Nuten und Pole ein und drücke auf das Gleichheitszeichen.
<table border="2">
<tr>
<td>Nuten:</td>
<td><input type="text" size="3" name="Nuten" maxlength="3"></td>
<td>Pole:</td>
<td><input type="text" size="3" maxlength="3" name="Pole"></td>
<td><input type="button" name="Berechnen" value="=" onclick="berechnen(this.form)"></td>
<td><input type="text" size="64" name="Ergebnis"></td>
</tr>
</table>








Warnung: Die Anzahl der Nuten muss ein vielfaches von 3 sein und die Pole ein vielfaches von 2. Es sind nur ergebnisse gültig, die gleich viele A/a B/b und C/c's enthalten. 12N18P oder 15N12P geht z.B. nicht.
</center></div>
</form>
<p><script language="JavaScript"><!--
function init()
{

document.Windungsrechner.Nuten.focus();
document.Windungsrechner.Nuten.value="";
document.Windungsrechner.Pole.value="";
document.Windungsrechner.Ergebnis.value="";
return;
}
function berechnen(form)
{
schema=""
summe = 0;
Nuten= eval(form.Nuten.value);
Pole = eval(form.Pole.value);
Winkel = 180 * Pole / Nuten;
for (i=0;i<Nuten;i++){
if (summe >= 330 || summe < 30 ) schema = schema + "A";
if (summe >= 30 && summe < 90 ) schema = schema + "c";
if (summe >= 90 && summe < 150) schema = schema + "B";
if (summe >= 150 && summe < 210) schema = schema + "a";
if (summe >= 210 && summe < 270) schema = schema + "C";
if (summe >= 270 && summe < 330) schema = schema + "b";
summe=summe+Winkel;
summe=summe%360;
}
document.Windungsrechner.Ergebnis.value = schema;
}
// --></script></p>
</body>
</html>
__________________
Excel 2000 İşyeri
Excel 2003 Ev
gugulimonta Çevrimdışı   Alıntı Yaparak Cevapla
Eski 14-02-2014, 19:27   #2
Levent Menteşoğlu
Administrator
 
Levent Menteşoğlu kullanıcısının avatarı
 
Giriş: 13/10/2004
Şehir: Çorlu
Mesaj: 15,896
Excel Vers. ve Dili:
Excel 2010-Türkçe
Varsayılan

Fonksiyondaki işlem mantığını açıklarsanız yardımcı olmaya çalışırız.
__________________
FORUM KURALLARI



"Biz burada hep beraber, sevginin,saygının, alınterinin, mutluluğun makrosunu yazıyoruz. " Kaylan
Levent Menteşoğlu Çevrimdışı   Alıntı Yaparak Cevapla
Eski 14-02-2014, 22:50   #3
gugulimonta
 
Giriş: 22/08/2005
Şehir: Ardeþen
Mesaj: 3
Varsayılan

Sayın Menteşoğlu ilginize teşekkür ederim.

Elektrik motorlarının stator sarımında yapılan hesaplamayla ilgili.

Örnek olarak 36 oyuklu 4 kutuplu üç fazlı bir statorun fazlara ait dağılımını hesaplıyor.

Bu linkte Web de çalışan uygulaması mevcut.

http://www.bavaria-direct.co.za/mode...Calculator.htm

Ayrıca ben VBA da biraz uğraştım fakat bir sonuç alamadım.



Private Sub CommandButton1_Click()
'Dim pole As Double
'Dim nuten As Double
Dim summe As TextBox
Dim schema As TextBox
' Dim winkel As Double


schema = TextBox3
'summe = 0

nuten = TextBox1.Value 'Statorun oyuk sayısı
pole = TextBox2.Value 'statorun kutup sayısı
summe = 180 * pole / nuten

For i = 0 To nuten
If summe >= 330 Or summe < 30 Then 'İf end if bloğu Fazlar arası açı ile ilgili 60 ın katları şeklinde
schema = schema & "A" 'gidiyor.
End If
If summe >= 30 And summe < 90 Then
schema = schema & "c"
End If
If summe >= 90 And summe < 150 Then
schema = schema & "B"
End If
If summe >= 150 And summe < 210 Then
schema = schema & "a"
End If
If summe >= 210 And summe < 270 Then
schema = schema & "C"
End If
If summe >= 270 And summe < 330 Then
schema = schema & "b"


End If
'summe = summe + winkel
'summe = summe Mod 360
Next i

' document.Windungsrechner.Ergebnis.value = schema

End Sub
__________________
Excel 2000 İşyeri
Excel 2003 Ev
gugulimonta Çevrimdışı   Alıntı Yaparak Cevapla
Eski 15-02-2014, 13:56   #4
Levent Menteşoğlu
Administrator
 
Levent Menteşoğlu kullanıcısının avatarı
 
Giriş: 13/10/2004
Şehir: Çorlu
Mesaj: 15,896
Excel Vers. ve Dili:
Excel 2010-Türkçe
Varsayılan

Hesaplama yöntemini vermeniz gerekir ki bizde ona göre fonksiyonu düzenleyelim.
__________________
FORUM KURALLARI



"Biz burada hep beraber, sevginin,saygının, alınterinin, mutluluğun makrosunu yazıyoruz. " Kaylan
Levent Menteşoğlu Çevrimdışı   Alıntı Yaparak Cevapla
Eski 15-02-2014, 17:20   #5
gugulimonta
 
Giriş: 22/08/2005
Şehir: Ardeþen
Mesaj: 3
Varsayılan

Selam
Hesaplama yöntemini tam olarak bilmediğim için Java kodlarından istifade ederek VB de yazılabileceğini düşünmüştüm. İlginize teşekkür eder, çalışmalarınızda başarılar dilerim.
__________________
Excel 2000 İşyeri
Excel 2003 Ev
gugulimonta Çevrimdışı   Alıntı Yaparak Cevapla
Eski 15-02-2014, 17:42   #6
Murat OSMA
Altın Üye
 
Murat OSMA kullanıcısının avatarı
 
Giriş: 23/05/2011
Şehir: İstanbul
Mesaj: 4,856
Excel Vers. ve Dili:
Excel 2016 - Türkçe
Varsayılan

Bu şekilde bir hesap mıdır ?

Kod: (Rahat kopyalayabilmeniz için tüm kodu seçmenizi sağlar)
Private Sub CommandButton1_Click()
    TextBox3.Value = Empty
    summe = 0
    schema = TextBox3.Value
    nuten = TextBox1.Value
    pole = TextBox2.Value
    summe = 180 * pole / nuten
    For i = 0 To nuten
        If summe >= 330 Or summe < 30 Then
            schema = schema & "A"
        ElseIf summe >= 30 And summe < 90 Then
            schema = schema & "c"
        ElseIf summe >= 90 And summe < 150 Then
            schema = schema & "B"
        ElseIf summe >= 150 And summe < 210 Then
            schema = schema & "a"
        ElseIf summe >= 210 And summe < 270 Then
            schema = schema & "C"
        ElseIf summe >= 270 And summe < 330 Then
            schema = schema & "b"
        End If
    Next i
    TextBox3.Value = schema
End Sub
Eklenmiş Dosyalar
Dosya Türü: rar Hesap.rar (14.2 KB, 8 Görüntülenme)
__________________
Excel'e dair her şey; excelarsivi.com 'da..
Murat OSMA Çevrimdışı   Alıntı Yaparak Cevapla
Eski 15-02-2014, 19:27   #7
ExcelF1
Misafir
 
Mesaj: n/a
Varsayılan

Murat Bey,

Soruyu soran üye, 3 nolu mesajda bir site linki vermiş. Orada değerler girerek hesaplama yapıldığında, Sizin eklemiş olduğunuz kod ile aynı sonucu döndürmüyor.
  Alıntı Yaparak Cevapla
Eski 15-02-2014, 20:09   #8
Murat OSMA
Altın Üye
 
Murat OSMA kullanıcısının avatarı
 
Giriş: 23/05/2011
Şehir: İstanbul
Mesaj: 4,856
Excel Vers. ve Dili:
Excel 2016 - Türkçe
Varsayılan

Evet Sn. ExcelF1, kontrolünü yapmamıştım. Aynı sonuç döndürmüyor.

Hesaplamayı doğru yapılabilmesi için tam olarak mantığı bilmek gerek mâlûm.
Java kodlarından da net bir sonuç çıkaramadım. Şu an için net bir çözüm sunamam ancak java kursundan sonra yanıtlayabilirim.
__________________
Excel'e dair her şey; excelarsivi.com 'da..
Murat OSMA Çevrimdışı   Alıntı Yaparak Cevapla
Eski 15-02-2014, 20:26   #9
ExcelF1
Misafir
 
Mesaj: n/a
Varsayılan

Java kursuna başladı iseniz, şimdiden hayırlı olsun.

Yakın zamanda bende Java ve C++ 'ye merak salmış, ama nereden başlamak gerektiği konusunda tereddütte kalmıştım. Bu konuda da yardımınız ve tavsiyeleriniz olursa, minnettar kalırım.

Hayırlı akşamlar...
  Alıntı Yaparak Cevapla
Eski 15-02-2014, 20:33   #10
Murat OSMA
Altın Üye
 
Murat OSMA kullanıcısının avatarı
 
Giriş: 23/05/2011
Şehir: İstanbul
Mesaj: 4,856
Excel Vers. ve Dili:
Excel 2016 - Türkçe
Varsayılan

Teşekkür ederim...

Kısmet olursa Salı günü Web yazılım kursuna başlayacağım. (Php - Php & MySql Veritabanı Yönetimi -JavaScript ve Jquery dersleri)

Önerim ancak şu olabilir; size en yakın Bilgisayar Yazılım Kursuna gidip öğretim görevlilerinden bu konu bilgi alabilirsiniz, sizi yönlendireceklerdir.


Size de hayırlı akşamlar.
__________________
Excel'e dair her şey; excelarsivi.com 'da..
Murat OSMA Çevrimdışı   Alıntı Yaparak Cevapla
Yanıtla


Konu Araçları
Görünüm Modları

Gönderme Kuralları
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is Açık
SimgelerAçık
[IMG] kodu Açık
HTML kodu Kapalı


Saat 06:49


Bu forum Elit NET - www.elitnet.com.tr tarafından sunulmaktadır.

Excel Eğitimi - Mobil Uygulama - Çorlu - Çorlu Web Tasarım - Tarot Falı - invest in turkey - Lingerie - Dyeing Machine - Karton Bardak- Çorlu Özel Eğitim- Site Yönetimi- Led Aydınlatma- Pronet Tekirdağ- Çorlu Kamera- Pronet Edirne- Pronet Kırklareli- Pronet Çerkezköy- Pronet Çorlu- Pronet Lüleburgaz- Pronet Keşan- Çorlu Araç Takip- Çorlu Su Arıtma- Boru Profil- Gebze Emlak- Beylikdüzü Temizlik- İstanbul Burun Estetiği- Bakır Sülfat- Rampa- Rotary- Çorlu İnternet Sitesi- youngblood- Çorlu Palet- Çerkezköy Palet- Çorlu Prefabrik- Çorlu Sürücü Kursu- Çorlu Sandviç Panel- Şişli Avukat- Korona Test Kalemi- Çorlu Vinç- Çorlu Pimapen Tamiri-
Powered by vBulletin Version 3.7.2
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Advertisement System V2.6 By   Branden