dolu hücreleri seç

Katılım
25 Aralık 2005
Mesajlar
219
değerli arkadaşlar
sayfa1 de a5 den başlayarak çeşitli tablolarım var. bu tablolar arasında boş satırlar var ve tablolar sabit değil. döngü ile her bir tabloya ayrı ayrı çerveve oluşturmak istiyorum.
 
Katılım
15 Ocak 2007
Mesajlar
791
Excel Vers. ve Dili
2003 excel visual basic
son hücre

arkadaşım son hücre için ne gibi bir tanımlama yapılacak mesela ;
a1:a5 derken a5 hücresi son dolu hücre varsayalım bu şekilde yani...
 
Katılım
15 Ocak 2007
Mesajlar
791
Excel Vers. ve Dili
2003 excel visual basic
örnek

arkadaşım şu kod sadece a5:g12 aralığı içindir >>
Sub cizim_yap()
With Range("A5:G12").Borders(xlEdgeLeft)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Range("A5:G12").Borders(xlEdgeTop)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Range("A5:G12").Borders(xlEdgeBottom)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Range("A5:G12").Borders(xlInsideHorizontal)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Range("A5:G12").Borders(xlInsideVertical)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Range("A5:G12").Borders(xlEdgeRight)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
End Sub
 
Katılım
25 Aralık 2005
Mesajlar
219
burada bir buton yardımıyla her bir tabloyu ayrı ayrı çizecek. yani a sutununda dolu hücreye göre
 
Katılım
25 Aralık 2005
Mesajlar
219
Sub BoslariSil()
Dim son, i As Integer
Dim alan, satir As Range
son = ActiveSheet.UsedRange.SpecialCells(xlCellTypeLastCell).Row
For i = son To 1 Step -1
If WorksheetFunction.CountA(Rows(i)) <> 0 Then
Set satir = Rows(i)
If IsEmpty(alan) Then
Set alan = satir
Else: Set alan = Union(satir, alan)
End If
End If
Next
alan.Select
With Selection

.Borders.LineStyle = xlContinuous
.Borders(xlEdgeBottom).LineStyle = xlHairline
.Borders(xlEdgeLeft).LineStyle = xlHairline
.Borders(xlEdgeRight).LineStyle = xlHairline
.Borders(xlEdgeTop).LineStyle = xlHairline
.Borders(xlInsideVertical).LineStyle = xlDot
End With

bu kod tüm dolu satırları çiziyor . burada sadece A sutunundan G sutuna kadar olan hücreleri çizdirmek istiyorum.
 

AS3434

Özel Üye
Katılım
13 Ocak 2005
Mesajlar
1,820
Excel Vers. ve Dili
M.Office/Excel 2007 Türkçe
Daha hızlı yöntemler olabilir ama yapabildiğim bu kadar.

Kod:
Sub cızgıcız()
Application.ScreenUpdating = False
 Columns("A:G").Select
 Selection.Borders.LineStyle = xlNone
    For i = 1 To 7
    For X = [A65536].End(3).Row To 5 Step -1
    If Cells(X, 1) > 0 Then
    Cells(X, i).Borders.LineStyle = xlContinuous
    End If
    Next: Next
    [a5].Select
    Application.ScreenUpdating = True
End Sub
Dosyayı inceleyin.
 
Son düzenleme:

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,603
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Selamlar,

Alternatif olarak a&#351;a&#287;&#305;dkai koduda kullanabilirsiniz.

Kod:
Sub &#199;&#304;ZG&#304;_&#199;&#304;Z()
    [A:G].Borders.LineStyle = xlNone
    For Each ALAN In [A:A].SpecialCells(xlCellTypeConstants, 23).Areas
    ALAN.Resize(ALAN.Count, 7).Borders.LineStyle = xlContinuous
    Next
End Sub
 
Üst