UserForm' dan kayıt

Katılım
25 Aralık 2006
Mesajlar
40
Excel Vers. ve Dili
2010/Türkçe
Herkese İyi Günler,
Excel çalışma kitabına bağlı bir UserForm dan bilgi girişi yapılmakta. Ancak bu arada bilgi edinmek amacıyla başka bir excel çalışma kitabı açılmakta tekrar User Forma dönüldüğünde kayıt yapılmak istenince sonradan açılan çalışma sayfasına kaydetmeye çalışıyor dolayısıyla hata veriyor.
Yani, Kitap1 e bağlı Yeni isimli formdan kitap1'e sorunsuz kayıt yapılıyor.ancak Kitap2 açıldığında tekrar forma dönüp Kitap1'e tıklamayınca Kitap2 ye kayıt yapmaya çalışıyor ve hata veriyor. Sormak İstediğim, Kitap2 den forma tıkladığımda Kitap1 e tıklamadan kitap1 i nasıl aktif yapabilirim.
Herkese şimdiden teşekkürler.
 
Katılım
21 Ekim 2008
Mesajlar
2,323
Excel Vers. ve Dili
Office 2013 - Eng
kitap1 = "Calisma sayfaniz" & ".xls"
Windows(kitap1).Activate

kodunuzun basina belki bu tarz bir kod ekleyerek sorununuzu giderebilirsiniz..
 
Katılım
25 Aralık 2006
Mesajlar
40
Excel Vers. ve Dili
2010/Türkçe
kitap1 = "Calisma sayfaniz" & ".xls"
Windows(kitap1).Activate

kodunuzun basina belki bu tarz bir kod ekleyerek sorununuzu giderebilirsiniz..
2. Satırda hata veriyor. Ben sade bir excel kitabı ekliyorum bunun üzerinde çözüm bulabilirsek memnun olacağı. Teşekkürler
 
Katılım
21 Ekim 2008
Mesajlar
2,323
Excel Vers. ve Dili
Office 2013 - Eng
2. Satırda hata veriyor. Ben sade bir excel kitabı ekliyorum bunun üzerinde çözüm bulabilirsek memnun olacağı. Teşekkürler
eve gecmistim o yuzden yeni goruyorum yazinizi..

Dim kitap1 As String
kitap1= Application.GetOpenFilename
kitap1 = "Calisma sayfaniz" & ".xls"
If kitap1 = False Then Exit Sub
Windows(kitap1).Activate

seklinde denermisiniz bu skeilde buyuk ihtimalle calisacaktir, yine deneyemedim ama umutluyum :)

Windows(kitap1).Activate seklinde calismazsa eger kitap1 = "Calisma sayfaniz" seklinde duzenler ve Windows(kitap1 & ".xls").Activate yazarsiniz.. saygilar..
 
Katılım
25 Aralık 2006
Mesajlar
40
Excel Vers. ve Dili
2010/Türkçe
Sayın, Mustafine öncelikle cevabınız için teşekkür ederim. Gönderdiğiniz her iki kod da çalışma kitabını kaydediyor.Sanırım ben yanlış anlatmışım. Ben Kayıttan bahsederken çalışma kitabının kaydedilmesini değil UserFormdaki bilgilerin çalışma kitabına kaydedilmesinden bahsetmiştim. bu yönde bir çözüm üretebilirseniz memnun olacağım. Tekrar teşekkür ederim.
 
Katılım
21 Ekim 2008
Mesajlar
2,323
Excel Vers. ve Dili
Office 2013 - Eng
Sayın, Mustafine öncelikle cevabınız için teşekkür ederim. Gönderdiğiniz her iki kod da çalışma kitabını kaydediyor.Sanırım ben yanlış anlatmışım. Ben Kayıttan bahsederken çalışma kitabının kaydedilmesini değil UserFormdaki bilgilerin çalışma kitabına kaydedilmesinden bahsetmiştim. bu yönde bir çözüm üretebilirseniz memnun olacağım. Tekrar teşekkür ederim.
burada pardus kullaniyorum o yuzden acamamistim dosyalarinizi yarin is yerinden dosyalaqriniza bakip tam olarak istediginizi anlayip cozum uretmeye calisirim, kusura bakmayin
 
Katılım
21 Ekim 2008
Mesajlar
2,323
Excel Vers. ve Dili
Office 2013 - Eng
sayin Bumer alttaki kodu su sekilde degistiriseniz sorun kalmayacaktir saniyorum, yada tam olarak sorununuzu algilayamadim, anladigim ssorun active sheet uzerinde liste sayfasini aramasi sanirim..

Kod:
Private Sub CmdKAY_Click()
Application.ScreenUpdating = False
          'BU KOD MAKRO ÇALIÞIRKEN SAYFA HAREKETLERÝNÝ ENGELLER
If txtKODD.Value = "" Then
MsgBox "KAYIT YAPILACAK KÝÞÝNÝN KODUNU GÝRÝNÝZ....'", 16, "DÝKKAT ÖNEMLÝDÝR...!"
        'BU KOD txtKOD E KAYIT GÝRÝLMEMÝÞ ÝSE ÝÞLEM YAPMASINA ÝZÝN VERMEZ.
Exit Sub
Else
End If
Set k = Range("b2:b65536").Find(txtKODD.Value, , xlValues, xlWhole) 'KAYIT BULMA
If Not k Is Nothing Then
    MsgBox "BU KOD ÝLE DAHA ÖNCE BAÞKA BÝR FÝRMANIN KAYDI YAPILMIÞ", 16, "LÜTFEN DURUNUZ...!"
    txtKOD.Value = ""
    Exit Sub
End If
[COLOR="Red"]kitap1 = "def" & ".xlsm"
If kitap1 = False Then Exit Sub
Windows(kitap1).Activate[/COLOR]
Sheets("LISTE").Select 'BU KODLAR LISTE SAYFASINI SEÇER,KAYIT OLMAYAN SATIRI BULUR,KAYIDA OTOMATÝK NUMARA VERÝR.
Range("a2").Select
Do While Not IsEmpty(ActiveCell)
ActiveCell.Offset(1, 0).Select
Loop
If Range("a2").Value = "" Then
Range("a2").Value = 1
Else

ActiveCell.Value = ActiveCell.Offset(-1, 0).Value + 1

End If

'BU KODLAR TEXTBOXDAKÝ BÝLGÝLERÝ AYNI SATIRDA,FARKLI SUTUNLARA KAYIT YAPAR
ActiveCell.Offset(0, 1).Value = txtKODD.Value

MsgBox "KAYDINIZ YAPILMIÞTIR.", 64, "BÝLGÝLERÝNÝZE...." 'BU KOD MESAJ VERÝR.

Application.ScreenUpdating = True 'BU KOD SAYFA HAREKETÝNÝ NORMAL HALE GETÝRÝR.

End Sub
 
Katılım
25 Aralık 2006
Mesajlar
40
Excel Vers. ve Dili
2010/Türkçe
Sayın Mustafa İne,
İşlerimin yoğunluğu nedeni ile cevabınızı ancak gördüm ve dediğiniz şekilde koda ekleme yapınca sorun çözüldü. Teşekkür eder iyi çalışmalar dilerim.
 
Katılım
21 Ekim 2008
Mesajlar
2,323
Excel Vers. ve Dili
Office 2013 - Eng
rica ederim bu arada ine soy adim degil :) mustaine adinda bir ekolum var mustafa ile bi kesisimi :)
 
Üst