• DİKKAT

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

İSTEDİĞİM GİRİŞ YAPILSIN SADECE

Katılım
17 Aralık 2012
Mesajlar
133
Excel Vers. ve Dili
Microsoft 365
Merhaba,

DESTEĞİNİZE İHTİYACIM VAR.
Ekde yer alan dosyamda A stununda yer alan isimleri makro ile Ekleme yapıyorum, isteğimi dosya içinde işaretledim..

kısaca, A sütununa elle hiç bir şey yazılamasın, sadece benim makrom ile giriş yapılabilsin ama w stunundaki isimlerden birisi haricinde olmasın bu... yardım ricası ile
 

Ekli dosyalar

Merhaba.

Umarım yanlış anlamadım.
-- Alt taraftan 2 NİSAN-8 NİSAN sayfasının adına fareyle sağ tıklayıp KOD GÖRÜNTÜLEyi seçin,
açılan VBA ekranında sağdaki boş alana aşağıdaki yeşil kod blokunu yapıştırın.
-- Module1'deki EKLE makrosunun başlangıç kısmını kırmızı renklendirdiğim gibi değiştirin,
-- EKLE makrosunun End Sub satırından hemen önce de
mavi renklendirdiğim satırı ekleyin.

Bir şeyler yazmak/yapıştırmak için, A sütununda bir hücre veya A sütununun tümü seçilirse,
imleç hemen bir sağ hücreye geçer.

Sanırım istediğiniz bu şekilde gerçekleşiyor.
.
Rich (BB code):
Public a As Integer
__________________________________________________________________________________________________
Sub EKLE()
If [S5] = "" Or [S6] = "" Or WorksheetFunction.CountIf([W:W], [S5]) = 0 Then Exit Sub
a = 0
............................
............................
a = 1
End Sub


Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Target.Column = 1 And a = 1 Then Target.Offset(0, 1).Activate
End Sub
 
Son düzenleme:
Merhaba.

Umarım yanlış anlamadım.
-- Alt taraftan 2 NİSAN-8 NİSAN sayfasının adına fareyle sağ tıklayıp KOD GÖRÜNTÜLEyi seçin,
açılan VBA ekranında sağdaki boş alana aşağıdaki yeşil kod blokunu yapıştırın.
-- Module1'deki EKLE isimli makronun Sub EKLE() satırından hemen sonraki satırın yerine kırmızı renklendirdiğim 2 satırı,
End Sub satırından hemen önce de
mavi renklendirdiğim satırı ekleyin.

Bir şeyler yazmak/yapıştırmak için, A sütununda bir hücre veya A sütununun tümü seçilirse,
imleç hemen bir sağ hücreye geçer.

Sanırım istediğiniz bu şekilde gerçekleşiyor.
.
Rich (BB code):
If [S5] = "" Or [S6] = "" Or WorksheetFunction.CountIf([W:W], [S5]) = 0 Then Exit Sub
a = 0

a = 0

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Target.Column = 1 And a = 1 Then Target.Offset(0, 1).Activate
End Sub

Ömer Baran hocam slmlar, cevap için teşekkürler ama olmadı yapamadım sanırım.
ekle makrosu aşağıdaki gibimi oluyor sizindediğinizle

Sub EKLE()
If [S5] = "" Or [S6] = "" Or WorksheetFunction.CountIf([W:W], [S5]) = 0 Then Exit Sub
a = 0
sat = Mid([S6], 2, 255)
Range("A" & sat & ":P" & sat).Insert Shift:=xlDown
Cells(sat, 1) = [S5]
Cells(sat - 1, 16).Copy: Cells(sat, 16).PasteSpecial Paste:=xlPasteFormulas
MsgBox [S5] & ", " & sat & " satırına eklendi."
[S5:S6].ClearContents
a = 0
End Sub
 
Ömer Baran hocam slmlar, cevap için teşekkürler ama olmadı yapamadım sanırım.
ekle makrosu aşağıdaki gibimi oluyor sizindediğinizle

Sub EKLE()
If [S5] = "" Or [S6] = "" Or WorksheetFunction.CountIf([W:W], [S5]) = 0 Then Exit Sub
a = 0
sat = Mid([S6], 2, 255)
Range("A" & sat & ":p" & sat).Insert Shift:=xlDown
Cells(sat, 1) = [S5]
Cells(sat - 1, 16).Copy: Cells(sat, 16).PasteSpecial Paste:=xlPasteFormulas
MsgBox [S5] & ", " & sat & " satırına eklendi."
[S5:S6].ClearContents
a = 0
End Sub

Şimdi tekrar denedim de.. Ekle makrosu çalışıyor... yani w deki isimlerin haricinde bir isim kabul etmiyor. 1. koşul tamam süper teşekkürler

ama 2. koşulda sorun var. A stununa elle girme yasağı çalışmıyor.. girebildim başka şeyler
 
End Sub satırının hemen üstündeki a=0 ibaresini a=1 yapın.
Ben cevabımı şekillendirirken hata yapmışım, önceki cevabımdaki kısmı da düzelttim.
 
üstad dediğim gibi, aşağıdaki makro sanırım A hücresine yasak getiren makro. bu işlem olmuyor. hücreyi elle ilgisiz yazılarla değiştire biliyorum bunun olmaması gerekiyor. diğeri oldu, bunu için de destek olursan sevinirim..

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Column = 1 And a = 1 Then Target.Offset(0, 1).Activate
End Sub
 
Son cevabınızdaki kodu, sayfanın kod kısmına (Module'ye değil) yapıştırmışsanız
(ilk cevabımda "sayfa adına sağ tıkla >> kod görüntüleyi seç >> sağdaki boş alana yapıştır" diye açıklamıştım);
A sütunundaki hücre seçilemeyeceği için bir şey yazılamaz olması gerekir.
 
çok pardon ekran resmimi gönderdim bu hatalımı, dediğiniz gibi yapmıştım
 
Bugün çok dalgınım demekki ya da şu an yorulmuşum.
İlk cevabımı, sayfayı güncelleyerek kontrol edin.

Yaptığınız hatalı değil.
Module1'deki EKLE makrosunun başlığından önce eklenecek bir satır vardı, onu cevabımı görderirken kopyalayıp yapıştırmamışım.
O satırı yapıştırdığınzda; o satır ile EKLE() başlığı arasına kendiliğinden bir çizgi eklenir.
 
Estağfirullah hocam ne demek, bu desteğinizi bile yeterli.. Yine olmadı yapamadım sanırım. resimdeki gibimi olacak
 
Hayır Public satırını Modül'de en üste.
Yine ben yanlışa yönlendirdim sizi.
.
 
Yapamadım.. tüm söylediklerinizle birlikte dosyanın son hali ektedir... Size zahmet bakabilirseniz sevinirim..
 

Ekli dosyalar

Dosya ekte.

EKLE düğmesi 1 kez dahi kullanılmadan doğrudan A sütunua yazılabiliyormuş,
(eğer 1 kez EKLE kullanılmışsa A'ya yazılamıyr idi, düzelttim)
küçük birkaç ilave yaptım.

Ayrıca bir ilave notum da şudur:
liste
özeliğini kullanarak S5 hücresine veri doğrulama uygulamak daha uygun bence
bu sayede W sütununda olmayan veri girişi engellenmiş olur (elle yazarken oluşabilecek hatalara karşı).
Kod ise sadece A sütununa veri girişini engeller.
 

Ekli dosyalar

Son düzenleme:
Üstad harikasınız.... işte budur!

Çok teşekkürler..
 
Eyvallah, kolay gelsin.
NOT: Excel sayfalarını daha sade tasarlamanızı öneriyorum.
.
 
Geri
Üst