• DİKKAT

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

Sütun Genişliği Ayarlama

hakki83

Altın Üye
Katılım
30 Eylül 2021
Mesajlar
567
Excel Vers. ve Dili
Excel 2016 Türkçe 32 Bit
Selamlar

Üç farklı kodu birleştirerek yapmaya çalıştım, oldu sanıyorum ama yine de emin olamadım. Hocalarımıza sormak istedim.
Yapmak istediğim şudur.

A sütununun genişliği sabit 30 olacak

A sütunundan son sütuna kadar; sütunların genişliği sabit 15 olacak

EĞER en sondaki sütunun başlığı SONUÇLAR ise, işte o son sütun AutoFit olacak.
Yani SONUÇLAR başlığına sahip bir son sütun varsa AutoFit olacak.
(SONUÇLAR başlıklı son sütun 15 olmayacak)
 
Başlıklarınızın 1. satırda olduğunu varsaydım.

C++:
Option Explicit

Sub Test()
    Columns(1).ColumnWidth = 30
    Columns("B:" & Split(Cells(1, Columns.Count).End(1).Address, "$")(1)).ColumnWidth = 15
    On Error Resume Next
    Rows(1).Find("SONUÇLAR").EntireColumn.AutoFit
    On Error GoTo 0
End Sub
 
Alternatif olsun
Kod:
Sub Sutun_Say()
    sonsut = Cells(1, 256).End(xlToLeft).Column
    Columns(1).Select
    Selection.ColumnWidth = 30
        For x = 2 To sonsut - 1
            Columns(x).Select
            Selection.ColumnWidth = 15
        Next x
    Columns(sonsut).Select
    Columns(sonsut).EntireColumn.AutoFit
End Sub
iyi çalışmalar
 
Başlıklarınızın 1. satırda olduğunu varsaydım.

C++:
Option Explicit

Sub Test()
    Columns(1).ColumnWidth = 30
    Columns("B:" & Split(Cells(1, Columns.Count).End(1).Address, "$")(1)).ColumnWidth = 15
    On Error Resume Next
    Rows(1).Find("SONUÇLAR").EntireColumn.AutoFit
    On Error GoTo 0
End Sub
Korhan hocam çok güzel olmuş, teşekkürler emeğinize sağlık.
 
Alternatif olsun
Kod:
Sub Sutun_Say()
    sonsut = Cells(1, 256).End(xlToLeft).Column
    Columns(1).Select
    Selection.ColumnWidth = 30
        For x = 2 To sonsut - 1
            Columns(x).Select
            Selection.ColumnWidth = 15
        Next x
    Columns(sonsut).Select
    Columns(sonsut).EntireColumn.AutoFit
End Sub
iyi çalışmalar
Tevfik hocam teşekkürler emeğinize sağlık.
 
Başlıklarınızın 1. satırda olduğunu varsaydım.

C++:
Option Explicit

Sub Test()
    Columns(1).ColumnWidth = 30
    Columns("B:" & Split(Cells(1, Columns.Count).End(1).Address, "$")(1)).ColumnWidth = 15
    On Error Resume Next
    Rows(1).Find("SONUÇLAR").EntireColumn.AutoFit
    On Error GoTo 0
End Sub

Korhan hocam merhaba
Öğrenmek için
Bu koddaki en alt satırdaki
On Error GoTo 0
görevi nedir hocam?


Bu satırı pasif yapınca,
SONUÇLAR başlığı olmasa da kod çalışıyor, acaba başka bir şey için mi diye düşündüm.
 
Merhaba,

"On Error Resume Next" ifadesi ile tüm hataları görmezden gelerek devam et diyoruz. "On Error GoTo 0" ifadesi ile de hata kontrollerini tekrar aktif hale getiriyoruz.

 
Geri
Üst