Sütun Genişliği Ayarlama

hakki83

Altın Üye
Katılım
30 Eylül 2021
Mesajlar
546
Excel Vers. ve Dili
Excel 2016 Türkçe 32 Bit
Altın Üyelik Bitiş Tarihi
30-09-2026
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)
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,247
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
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
 

Tevfik_Kursun

Altın Üye
Katılım
30 Temmuz 2012
Mesajlar
3,793
Excel Vers. ve Dili
Office 2016 Pro - Türkçe 64 Bit
Altın Üyelik Bitiş Tarihi
12-02-2029
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
 

hakki83

Altın Üye
Katılım
30 Eylül 2021
Mesajlar
546
Excel Vers. ve Dili
Excel 2016 Türkçe 32 Bit
Altın Üyelik Bitiş Tarihi
30-09-2026
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.
 

hakki83

Altın Üye
Katılım
30 Eylül 2021
Mesajlar
546
Excel Vers. ve Dili
Excel 2016 Türkçe 32 Bit
Altın Üyelik Bitiş Tarihi
30-09-2026
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.
 

Tevfik_Kursun

Altın Üye
Katılım
30 Temmuz 2012
Mesajlar
3,793
Excel Vers. ve Dili
Office 2016 Pro - Türkçe 64 Bit
Altın Üyelik Bitiş Tarihi
12-02-2029
Rica ederim, iyi çalışmalar
 

hakki83

Altın Üye
Katılım
30 Eylül 2021
Mesajlar
546
Excel Vers. ve Dili
Excel 2016 Türkçe 32 Bit
Altın Üyelik Bitiş Tarihi
30-09-2026
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.
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,247
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
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.

 
Üst