Enter tuşu ile sağa ilerleme

magnesia

Yasaklı üye
Katılım
1 Ocak 2018
Mesajlar
351
Excel Vers. ve Dili
Excel 2010 Türkçe
Altın Üyelik Bitiş Tarihi
01.01.2023
Arkadaşlar selam.
B sütunundan başlayıp, ENTER tuşuna bastıkça, sırasıyla;

C -D - E - F - G - H - J - K - L - O - P

sütunlarına veri girip B sütununa dönmesini istiyorum..
Şimdiden teşekkürler..
 

Necdet

Moderatör
Yönetici
Katılım
4 Haziran 2005
Mesajlar
15,491
Excel Vers. ve Dili
Ofis 365 Türkçe
Merhaba,

Makro kullanmadan excel seçeneklerinden bunu belirleyebilirsiniz.

P sütunundan itibaren tekrar B sütununda dönmesi ise makro ile olur. Bunun için aşağıdaki kodları ilgili sayfanın kod bölümüne kopyalayınız.


Kod:
Private Sub Worksheet_Activate()

    Application.MoveAfterReturnDirection = xlToRight
    
End Sub
Kod:
Private Sub Worksheet_Deactivate()

    Application.MoveAfterReturnDirection = xlDown

End Sub
Kod:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)

    If Target.Column > 16 Then Cells(Target.Row + 1, "B").Activate
        
End Sub
 

magnesia

Yasaklı üye
Katılım
1 Ocak 2018
Mesajlar
351
Excel Vers. ve Dili
Excel 2010 Türkçe
Altın Üyelik Bitiş Tarihi
01.01.2023
Sayın Necdet Bey..
Öncelikle ilginize ve emeğinize teşekkürler..

Sanırım dikkatinizden kaçmış. Sağa doğru ilerlerken her seferinde bir sütun gitmiyorum..
H sütunundan sonra I sütununu atlayıp J sütununa, L sütunundan sonra da M ve N sütunlarını atlayıp O sütununa geliyorum.

Şöyle bir durum var :

Private Sub Worksheet_Change(ByVal Target As Range)
On Error GoTo Son
If Target.Count > 1 Then Exit Sub

Select Case Target.Column
Case Is = 2: Target.Offset(, 1).Select
Case Is = 3: Target.Offset(, 1).Select
Case Is = 4: Target.Offset(, 1).Select
Case Is = 5: Target.Offset(, 1).Select
Case Is = 6: Target.Offset(, 1).Select
Case Is = 7: Target.Offset(, 1).Select
Case Is = 8: Target.Offset(, 2).Select

Case Is = 10: Target.Offset(, 1).Select
Case Is = 11: Target.Offset(, 1).Select
Case Is = 12: Target.Offset(, 2).Select

Case Is = 14: Target.Offset(, 1).Select
Case Is = 15: Target.Offset(, 1).Select


Case Is = 16: Target.Offset(1, -14).Select
Case Else
End Select
End Sub

Bu kodlarla M sütununa kadar geliyorum fakat ne yaptımsa N sütununu atlayıp O sütununa gidemedim..
Bu kodlar üzerinden de yardımcı olabilirsiniz..
 

magnesia

Yasaklı üye
Katılım
1 Ocak 2018
Mesajlar
351
Excel Vers. ve Dili
Excel 2010 Türkçe
Altın Üyelik Bitiş Tarihi
01.01.2023
Tamam hallettim...

Case Is = 12: Target.Offset(, 2).Select

satırındaki 2'yi 3 yapınca sorun çözüldü..
Tekrar teşekkürler..
 

Necdet

Moderatör
Yönetici
Katılım
4 Haziran 2005
Mesajlar
15,491
Excel Vers. ve Dili
Ofis 365 Türkçe
Merhaba,

Active ve deactive kodları sabit kalmak şartıyla, Selection kodunu aşağıdaki gibi değiştirebilirsiniz.

Sizinkisi biraz uzun gibi geldi bana.

Kod:
Private Sub Worksheet_Activate()

    Application.MoveAfterReturnDirection = xlToRight
    
End Sub
Kod:
Private Sub Worksheet_Deactivate()

    Application.MoveAfterReturnDirection = xlDown

End Sub
Kod:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)

    If Target.Column = 9 Then
        Target.Offset(0, 1).Activate
    ElseIf Target.Column = 13 Then
        Target.Offset(0, 2).Activate
    ElseIf Target.Column = 14 Then
        Target.Offset(0, 1).Activate
    ElseIf Target.Column > 16 Then
        Cells(Target.Row + 1, "B").Activate
    End If
    
End Sub
 

magnesia

Yasaklı üye
Katılım
1 Ocak 2018
Mesajlar
351
Excel Vers. ve Dili
Excel 2010 Türkçe
Altın Üyelik Bitiş Tarihi
01.01.2023
Necdet Bey tekrar merhaba.
Benim kodları bunlarla değiştirdim çalışmadı.
Yeni bir sayfa açıp orada denedim yine çalışmadı..
Kod bilgim iyi olmadığı için "Active ve deactive kodları sabit kalmak şartıyla" sözünüzü de anlamadım inanın..
 

Necdet

Moderatör
Yönetici
Katılım
4 Haziran 2005
Mesajlar
15,491
Excel Vers. ve Dili
Ofis 365 Türkçe
İlk mesajımda sayfa ile ilgili 3 ayrı kod vardı.
Tekrarlamamak için Private Sub Worksheet_Activate() ve Private Sub Worksheet_DeActivate()

kodlarını vermedim. Bu kodlar yine olacak ve son verdiğim
Private Sub Worksheet_SelectionChange(ByVal Target As Range) kodlar ile değiştireceksiniz, önceki kodları.
 

magnesia

Yasaklı üye
Katılım
1 Ocak 2018
Mesajlar
351
Excel Vers. ve Dili
Excel 2010 Türkçe
Altın Üyelik Bitiş Tarihi
01.01.2023
Necdet Bey.
Yarın sabah dener sonuçtan bilgi veririm.
Tekrar tekrar teşekkürler.
 

Seyit Tiken

Uzman
Uzman
Katılım
23 Ağustos 2005
Mesajlar
4,651
Excel Vers. ve Dili
Excel : 2010
Kodsuz istiyorsanız, hücrelere veri girerken TAB(sekme) tuşuna basın, imleç sağa doğru ilerler, istenilen yerde satırbaşı yapmak için ENTER tuşuna basınız.
 

Necdet

Moderatör
Yönetici
Katılım
4 Haziran 2005
Mesajlar
15,491
Excel Vers. ve Dili
Ofis 365 Türkçe
Merhaba,

Yapamadığınızı söylediniz, 5. mesajımdaki tüm kodları ilgili sayfaya kopyalayıp deneyiniz.
 

magnesia

Yasaklı üye
Katılım
1 Ocak 2018
Mesajlar
351
Excel Vers. ve Dili
Excel 2010 Türkçe
Altın Üyelik Bitiş Tarihi
01.01.2023
Tamamdır Necdet Bey. Yarın dener sonuçtan bilgi veririm.
İlgi ve emeğinize teşekkürler.
 
Üst