Global Procedure hakkında
Tarih
25/05/2009 18:28
Konu Sahibi
mesudi
Yorumlar
5
Okunma
1068
Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 5
  • 4
  • 3
  • 2
  • 1

Derecelendirme: 0/5 - 0 oy



mesudi
Aktif Üye
Kullanici Avatari
Aktif Üye
M.... A....
249
30/10/2008
63
İstanbul
Ofis 2003
25/09/2016,15:27
Çözüldü 
Arkadaşlar, global bir procedure var diyelim. Bu procedure 2 değer gönderip bir hesaplama yaptıracam. Örnek.

Public Sub Prcdr(degisken1 As String, degisken2 as integer)
..........
.........
.........
End Sub

Acaba yukarıdaki yapıda bir yapısal yanlışlıkmı var. Yada benim gözden kaçırdığım bir şey mi?

Procedure'yi çağırırken
Prcdr(".....", 3) gibi bir yapı kullanıyorum. Hata varmı, ne dersiniz?

------------------------------------------------------------------------------

Sanırım 2 parametre verebilmek için Function kullanmak gerekiyor. Procedure'lerde 1 parametre kullanılabiliyor.
Cevapla


mesudi
Aktif Üye
Kullanici Avatari
Aktif Üye
M.... A....
249
30/10/2008
63
İstanbul
Ofis 2003
25/09/2016,15:27
Çözüldü 
Sorun çözülmüştür. Teşekürler.Img-grin
Cevapla


Seruz
Uzman
Kullanici Avatari
Uzman
S.... U....
1.544
7
30/10/2008
804
Tekirdağ
Ofis XP
02/12/2016,15:18
Çözüldü 
Function gibi Procedure'lerde de birden fazla parametre kullanılabiliyor.
Gözünüzden kaçan başka bir şey olmuştur.
Sorunu nasıl çözdüğünüzü de yazsanız daha iyi olurdu.
Bildiğini bilenin arkasından git, bildiğini bilmeyeni uyar, bilmediğini bilene öğret, bilmediğini bilmeyenden kaç.
Konfüçyüs
Cevapla


tdsharun
>>> O Şimdi Sivil<<<
Kullanici Avatari
Aktif Üye
778
06/11/2008
225
Kütahya
Ofis 2003
31/12/2011,02:16
Çözüldü 
Yapınızda bir hata yok ancak kullanımda hata var. Prosedürü çağırma yönteminiz hatalı. Olması gereken şöyle bir şey:

Kod:
1
2
3
4
5
6
7
Private Sub Komut0_Click()
Topla 15, 10
End Sub

Private Sub Topla(x As Integer, y As Integer)
MsgBox x + y
End Sub


Ben Private Sub kullandım. Siz bunu Public olarak da yapabilirsiniz.

Kullanıma dikkat edin. Prosedürden sonra gelen iki değişken tanımlandırdık. Bu iki değişken prosedürle birlikte kullanılmalı.

Kolay gelsin...

Cevapla


esrefigit

Kullanici Avatari
Onursal
598
30/10/2008
356
Konya
Ofis 2003
06/11/2015,13:38
Çözüldü 
global veri1 as string

bunu herhangi bir modüle yazdnız ve ve formun birinde bu global neseneye şöyle

veri1="ali"

deiniz taki siz bir başka formda yada sorguda değiştirene kadar ali diye kalır ancak program kapandığında silinir public sub lar bütün formlardan çağrılır yalnız modülde olamk şartıyla private sub lar ssadece içinde olduğu modül yada formdan çağrılır function lar modülde ise bütün form yada sorgulardan ancak formda ise sadeece formdan çağrılır

global nerde kullanılır en basit şekilde diyelim
global a as integer
global b as integer
diye iki global nesne belirlediniz yine diyelim bir fonksiyon yazdınız
ve bu fonksiyon a ve b yi toplacak ama a c formunda b ise d formunda işte tamda burda işe yarar

Global a As Integer
Global b As Integer
Function topla(ilk As Integer, son As Integer) As Integer
topla = ilk + son
End Function

şimdi siz ilk formunuz açık bir hesap yapmak için bir başka formdaki seçilen kayda ait hesaplanmış alan var işte ordaki veriyi seçtiniz hesaplanmış alandan form kapandığında
a=hesaplanmışalan
dediğinizde global a nesnesine hesaplanmış veriyi yüklersiniz bir başka formdanda aynı şekilde b=hesaplanmışalan diyerek global b nesnesine veriyi yüklersiniz
zaten asıl formunuzda ekranda açık hesapla dediğinizde metinkutunuz=topla(a, b) dediğinizde global nesnesine diğer formlardan attığınız verilerin toplamı gelir
meşhur çin atasözü  "ACCESS İLE YAPABİLECEKLERİNİZ HAYAL EDEBİLECEKLERİNİZ İLE SINIRLIDIR" siz ne kadar hayal edebiliyorsunuz
Cevapla


mesudi
Aktif Üye
Kullanici Avatari
Aktif Üye
M.... A....
249
30/10/2008
63
İstanbul
Ofis 2003
25/09/2016,15:27
Çözüldü 
Arkadaşlar ilginize teşekürler. Nasıl çözdüğümü hemen söyliyim, daha doğrusu nerde hata yaptığımı.

Prcdr(".....", 3) hata burda.

Çünkü procedure çağrılarında parametreler parantez içine yazılmaz. Bunu unutmuşum. Aslında parametre sayısı 1 tane olursa parantez kullanımında bir sorun olmuyor. Ama 2 veya daha fazla oldumu parantez olmayacak. Ben bundan dolayı hata yaptım. Yani anlayacağınız Functionlarla Procedure'leri birbirine karıştırmışım. Kullandığım procedurelerin birçoğu tek parametre aldığı için ve ben hepsinde parantez kullanmış olduğum için alışkanlık yapmış. Tekrar hepinizin konuya ilişkin faydalı katkılarınızdan dolayı teşekür ederim.
Cevapla







Konuyu Okuyanlar: 1 Ziyaretçi


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Tarih Son Yorum
  Tablo ilişkilendirme kontrolü hakkında nightashes 2 55 08/12/2016, 23:49 nightashes
  Liste kutusu sütün hizlama ve biçim değiştirme hakkında nightashes 13 148 07/12/2016, 20:10 nightashes
  Personel İzin Takip Prog. Hakkında ? captain_10 4 225 28/11/2016, 14:28 atoz112
  Güncelleştirme Sorgusu Çalıştırınca Kayıt Kilit Hatası Hakkında shalala 2 54 23/11/2016, 00:39 shalala
  Pencere Gizleme Hakkında Serkan Çevik 3 105 09/11/2016, 22:43 Serkan Çevik


Türkçe Çeviri: MCTR, Forum Yazılımı: MyBB, © 2002-2016 MyBB Group.
DMCA.com Protection Status
© Desing by XSTYLED| Develops by ozanakkaya