• DİKKAT

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

bir grup textboxı matrise dönüştürme

Katılım
1 Mayıs 2011
Mesajlar
17
Excel Vers. ve Dili
makro
benım userformumda bulunan text boxları bi matrise donusturup hesapla butonunun altında hesaplama yapmam gerekio yardımcı olabilir misiniz??
 

Ekli dosyalar

  • Ekran Alıntısı.jpg
    Ekran Alıntısı.jpg
    15 KB · Görüntüleme: 7
Merhabalar,

Nasıl yardımcı olmamızı istiyorsunuz? Butona beraber mi basalım mesela? :)

Konuyu çok genel hatları ile açıklamışsınız. Bu nedenle, size ya cevap gelmeyecek ya da cevaplar genel geçer olacaktır.

Mesela matris işlemleri ile alaklı alternatifleriniz şöyle :

1) TextBox'lara, tasarım aşamasında (i,j)-(satır,sütun) gibi indexlemeli ve buna uygun adlandırmalısınız. Sonra bir döngü ile tüm TextBoxları dolaşıp, her TextBox'ta bunun matrisin hangi (i,j) elemanı olduğunu bakarsınız.

2) Çok boyutlu bir dizi tanımlar ve TextBox'lara girilen her değeri bu diziye kaydedersiniz. Matris işlemlerini dizi üzerinden yürütürsünüz.

3) Bir RecordSet nesnesi ile çalışabilirsiniz.

4) Grid kullanabilirsiniz (MsFlexGrid, DataGrid, FlexGrid vs)

5) OWC SpreadSheet kullanabilirsiniz. Formüllere aşinaysanız, bu nispeten daha kolay olur. UserForm üzerinde XL göründüğünü varsayın.

6) UserForm kullanmayabilirsiniz.

Kolay gelsin.

.
 
1.alternatifi nasıl yapabilirim

ferhat bey öncelikle merhaba ben 1. alternatifi uygulamak istiyorum şekilde de gösterdiğim gibi bir texboxdan oluşan matris görüntüm var hesapla tusuna basınca onu matris olarak onceden tanımlayıp ona göre ikişerli sutunlar halinde kontrol yapacağım
 
En zorunu seçtiniz.

Şimdi tüm TextBox'larınızı aşağıda belirttiğim gibi adlandırın.

txtmatris.jpg


Bunu tamamladıktan sonra, şu kodla tüm matris elemanlarını okuyabilirsiniz.

Döngünün içinde ne işlem istiyorsanız onu yapın.


Kod:
Private Sub Matris_Oku()
    Dim iParca As Integer
    Dim iMakina As Integer
    Dim txtBox As MSForms.TextBox
    
    For iMakina = 1 To 5
        For iParca = 1 To 5
            Set txtBox = Me.Controls("M" & iMakina & "P" & iParca)
            Debug.Print txtBox.Name
        Next
    Next
            
End Sub
 
iki boyutlu dizi nasıl tanımlayacağım

dediğiniz gibi bu yöntem zormuş peki bir dizi tanımlamak istersem nasıl kullanıcam
 
Size en başta da söyledim. Sorunuz çok genel ve biz "hesaplama yapmak isteğiniz" dışında hiç birşey bilmiyoruz.

Hesaplamanız nedir? Matrisin Transpozesini mi almak istiyorsunuz? Başka bir matrisle çarpımı mı? Determinant mı? Gerçekten matris işlemlerine ihtiyacınız var mı ?

Yapmak istediğiniz şeyi daha somut anlatınız.

Tabi bunları, numerik analiz, doğrusal programlama veya herhangi bir optimizasyon tekniğini ile uğraşmadığınızı ümit ederek yazıyorum.

.
 
Geri
Üst