Genel-İçerik
Üretkenliğinizi Artıran Pratik ve Kullanışlı Excel Makroları
Okuma Süresi: 3 dakika
Excel’de kullanım kolaylığı sağlayacak ve üretkenliğinizi artıracak Makro’lardan bir seçki derledim.
Çalışma Kitabının Tüm Sayfalarını Gizle
Sub UnhideAllWoksheets() Dim ws As Worksheet For Each ws In ActiveWorkbook.Worksheets ws.Visible = xlSheetVisible Next ws End Sub
Çalışma Kitabındaki Aktif Sayfa Hariç Sayfaları Gizle
Sub HideAllExceptActiveSheet() Dim ws As Worksheet For Each ws In ThisWorkbook.Worksheets If ws.Name <> ActiveSheet.Name Then ws.Visible = xlSheetHidden Next ws End Sub
Çalışma Sayfalarını Alfabetik Olarak Sırala
Sub SortSheetsTabName() Application.ScreenUpdating = False Dim ShCount As Integer, i As Integer, j As Integer ShCount = Sheets.Count For i = 1 To ShCount - 1 For j = i + 1 To ShCount If Sheets(j).Name < Sheets(i).Name Then Sheets(j).Move before:=Sheets(i) End If Next j Next i Application.ScreenUpdating = True End Sub
Tüm Çalışma Sayfalarını Kilitle
Sub ProtectAllSheets() Dim ws As Worksheet Dim password As String password = "1234" '1234 yerine istediğiniz bir şifre belirleyebilirsiniz. For Each ws In Worksheets ws.Protect password:=password Next ws End Sub
Tüm Satırları ve Sütunları Gizle
Sub UnhideRowsColumns() Columns.EntireColumn.Hidden = False Rows.EntireRow.Hidden = False End Sub
Tüm Birleştirilmiş Hücreleri Çöz
Sub UnmergeAllCells() ActiveSheet.Cells.UnMerge End Sub
Çalışma Kitabını Zaman Damgasıyla Farklı Kaydet
Sub SaveWorkbookWithTimeStamp() Dim timestamp As String timestamp = Format(Date, "dd-mm-yyyy") & "_" & Format(Time, "hh-ss") ThisWorkbook.SaveAs "C:UsersUsernameDesktopWorkbookName" & timestamp End Sub
Her Bir Çalışma Sayfasını Ayrı PDF Olarak Kaydet
Sub SaveWorkshetAsPDF() Dim ws As Worksheet For Each ws In Worksheets ws.ExportAsFixedFormat xlTypePDF, "C:UsersSumitDesktopTest" & ws.Name & ".pdf" Next ws End Sub
Çalışma Kitabını Ayrı PDF Olarak Kaydet
Sub SaveWorkshetAsPDF() ThisWorkbook.ExportAsFixedFormat xlTypePDF, ActiveWorkbook.Path & ThisWorkbook.name & ".pdf" End Sub
Bütün Formülleri Değere Dönüştürmek
Sub ConvertToValues() With ActiveSheet.UsedRange .Value = .Value End With End Sub
Çalışma Kitabındaki Bütün Pivot Tabloları Güncelle
Sub RefreshAllPivotTables() Dim PT As PivotTable For Each PT In ActiveSheet.PivotTables PT.RefreshTable Next PT End Sub
Yorumlanan Hücreleri Vurgula
Sub HighlightCellsWithComments() ActiveSheet.Cells.SpecialCells(xlCellTypeComments).Interior.Color = vbBlue End Sub
Boş Olan Hücreleri Vurgula
Sub HighlightBlankCells() Dim Dataset as Range Set Dataset = Selection Dataset.SpecialCells(xlCellTypeBlanks).Interior.Color = vbRed End Sub
Belirli Bir Sütundaki Veriye Göre Sıralama
Sub SortDataHeader() Range("DataRange").Sort Key1:=Range("A1"), Order1:=xlAscending, Header:=xlYes End Sub
Birden Fazla Sütuna Göre Veri Sıralama
Sub SortMultipleColumns() With ActiveSheet.Sort .SortFields.Add Key:=Range("A1"), Order:=xlAscending .SortFields.Add Key:=Range("B1"), Order:=xlAscending .SetRange Range("A1:C13") .Header = xlYes .Apply End With End Sub
Yazım Yanlışı Olan Hücreleri Vurgula
Sub HighlightMisspelledCells() Dim cl As Range For Each cl In ActiveSheet.UsedRange If Not Application.CheckSpelling(word:=cl.Text) Then cl.Interior.Color = vbRed End If Next cl End Sub
Aktif Hücreyi Vurgula
Private Sub Worksheet_SelectionChange(ByVal Target As Range) If Target.Cells.Count > 1 Then Exit Sub Application.ScreenUpdating = False Cells.Interior.ColorIndex = 0 With Target ' Highlight the entire row and column that contain the active cell .EntireRow.Interior.ColorIndex = 8 .EntireColumn.Interior.ColorIndex = 8 End With Application.ScreenUpdating = True End Sub
Akademisyen, kullanıcı deneyimi ve arayüz tasarımı, veri görselleştirme, web/mobil uygulama geliştirme.
Kemal ŞAHİN'i yakından tanıyın.