Untitled

mail@pastecode.io avatar
unknown
plain_text
a year ago
1.9 kB
1
Indexable
Never
Private Sub OptionButton_Click()
    Dim wsDaily As Worksheet
    Dim wsMain As Worksheet
    Dim selectedOption As String
    Dim rowNumber As Integer
    
    ' Günlük sayfa ve ana sayfayı tanımlayın
    Set wsDaily = ThisWorkbook.Worksheets("Günlük Sayfa") ' Günlük sayfanın adını doğru şekilde değiştirin
    Set wsMain = ThisWorkbook.Worksheets("Ana Sayfa") ' Ana sayfanın adını doğru şekilde değiştirin
    
    ' Seçilen OptionButton'un değerini alın
    selectedOption = Application.Caller
    
    ' Seçilen OptionButton'un satır numarasını alın
    rowNumber = ActiveSheet.Shapes(selectedOption).TopLeftCell.Row
    
    ' Seçilen değere göre günlük sayfada ilgili hücrelere yazdırın
    If selectedOption = "OptionButton1" Then ' Mesai seçildi
        wsDaily.Cells(rowNumber, 1).Value = "Mesai" ' Günlük sayfada A sütununa yaz
    ElseIf selectedOption = "OptionButton2" Then ' Görev seçildi
        wsDaily.Cells(rowNumber, 1).Value = "Görev" ' Günlük sayfada A sütununa yaz
    ElseIf selectedOption = "OptionButton3" Then ' Hazır kıta seçildi
        wsDaily.Cells(rowNumber, 1).Value = "Hazır Kıta" ' Günlük sayfada A sütununa yaz
    End If
    
    ' Aynı satırdaki diğer OptionButtonları seçili olmayacak şekilde güncelle
    For Each opt In ActiveSheet.OptionButtons
        If opt.TopLeftCell.Row = rowNumber And opt.Name <> selectedOption Then
            opt.Value = False
        End If
    Next opt
    
    ' Ana sayfadaki metni güncelleyin
    wsMain.Cells(rowNumber, 1).Value = selectedOption ' Ana sayfada A sütununa yaz
    
    ' Günlük sayfadaki diğer hücreleri güncelleyin (aşağı doğru kopyalama)
    For i = 2 To 3 ' A2 ve A3 hücrelerinden itibaren başla
        wsDaily.Cells(rowNumber + i - 1, 1).Value = wsDaily.Cells(rowNumber, 1).Value
    Next i
End Sub