Aktif hücrenin en solundaki dolu hücreyi ve en sağındaki dolu hücreyi tespit edip bu hücreleri de dahil edecek şekilde sütun seçimi yapan VBA kodudur.
Option Explicit
Sub AktifHucreninEnSolundakiVeEnSagindakiDoluHucreyeKadarSecimYap()
'--------------------------------------------------
'Değişkenler
'--------------------------------------------------
Dim enSoldakiHucre As Range
Dim enSagdakiHucre As Range
'--------------------------------------------------
'Değişkenlere değer ata.
'--------------------------------------------------
Set enSoldakiHucre = Cells(ActiveCell.Row, 1)
Set enSagdakiHucre = Cells(ActiveCell.Row, 16384)
'--------------------------------------------------
'Eğer hedef hücreler boşsa, hücreleri yeniden ayarla.
'--------------------------------------------------
If IsEmpty(enSoldakiHucre) Then
Set enSoldakiHucre = enSoldakiHucre.End(xlToRight)
End If
If IsEmpty(enSagdakiHucre) Then
Set enSagdakiHucre = enSagdakiHucre.End(xlToLeft)
End If
'--------------------------------------------------
'Yukarıdaki ayarlamaya göre seçim işlemi yap.
'--------------------------------------------------
'Eğer satır komple boşsa enSoldakiHucre.End(xlToRight)
'kodu bizi satırın en sağındaki sütuna (16384) götürür.
'Aynı şekilde enSagdakiHucre.End(xlToLeft) kodu da
'bizi satırın en solundaki sütuna (1) götürür.
'Bu durumda seçim işlemini aktif hücreyle sınırlı tut.
'
'Aksi halde aktif hücrenin en solundaki ve en sağındaki
'dolu hücreyi baz alarak seçim işlemi yap.
'--------------------------------------------------
If enSoldakiHucre.Column = 16384 And enSagdakiHucre.Column = 1 Then
ActiveCell.Select
Else
Range(enSoldakiHucre, enSagdakiHucre).Select
End If
End Sub