- Katılım
- 9 Temmuz 2012
- Mesajlar
- 106
- Excel Vers. ve Dili
- Excel 2007 - Türkçe
arkadaşlar herhangi bir butona tıkladığımızda hücrenin yenilenmesini sağlayabilir miyiz?
DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
Altın Üyelik Hakkında Bilgi
Sub HÜCREYE_GİRİŞ()
Range("A1").Activate
Application.SendKeys "{F2}", True
End Sub
Merhaba,
Aşağıdaki gibi deneyin.
Kod:Sub HÜCREYE_GİRİŞ() Range("A1").Activate Application.SendKeys "{F2}", True End Sub
Merhaba,
Aşağıdaki gibi deneyin.
Kod:Sub HÜCREYE_GİRİŞ() Range("A1").Activate Application.SendKeys "{F2}", True End Sub
Sub HÜCRE_YENİLE()
Dim X As Long
For X = 1 To Rows.Count
DoEvents
Cells(X, "H").Select
SendKeys "{F2}", True
SendKeys "{ENTER}", True
Next
End Sub
Merhaba,
Anladığım kadarıyla hücrelere F2+ENTER yapmak istiyorsunuz. Eğer istediğiniz buysa aşağıdaki kodu deneyin.
Kod:Sub HÜCRE_YENİLE() Dim X As Long For X = 1 To Rows.Count DoEvents Cells(X, "H").Select SendKeys "{F2}", True SendKeys "{ENTER}", True Next End Sub
Private Sub CommandButton1_Click()
If TextBox1.Text <> "" Then
Son_Dolu_Satir = Sheets("Data").Range("A65536").End(xlUp).Row
Bos_Satir = Son_Dolu_Satir + 1
Sheets("Data").Range("A" & Bos_Satir).Value = _
Application.WorksheetFunction.Max(Sheets("Data").Range("A:A")) + 1
Sheets("Data").Range("B" & Bos_Satir).Value = TextBox1.Text
Sheets("Data").Range("C" & Bos_Satir).Value = TextBox2.Text
Sheets("Data").Range("D" & Bos_Satir).Value = ComboBox2.Text
Sheets("Data").Range("E" & Bos_Satir).Value = CDbl(TextBox4)
Sheets("Data").Range("F" & Bos_Satir).Value = CDbl(TextBox5)
Sheets("Data").Range("G" & Bos_Satir).Value = CDate(TextBox10.Text)
Sheets("Data").Range("H" & Bos_Satir).Value = CDate(TextBox6.Text)
Sheets("Data").Range("I" & Bos_Satir).Value = TextBox7.Text
Sheets("Data").Range("J" & Bos_Satir).Value = TextBox8.Text
Sheets("Data").Range("K" & Bos_Satir).Value = TextBox9.Text
Sheets("Data").Range("L" & Bos_Satir).Value = TextBox15.Text
Dim i As Integer
For i = 2 To Range("E65536").End(3).Row
If Cells(i, "H") - VBA.Date = 3 Then
Cells(i, "M") = "3 gün kaldı"
Cells(i, "H").Interior.ColorIndex = 44
ElseIf Cells(i, "H") - VBA.Date = 2 Then
Cells(i, "M") = "2 gün kaldı"
Cells(i, "H").Interior.ColorIndex = 45
ElseIf Cells(i, "H") - VBA.Date = 1 Then
Cells(i, "M") = "1 gün kaldı"
Cells(i, "H").Interior.ColorIndex = 46
ElseIf VBA.Date = Cells(i, "H") Then
Cells(i, "M") = "Zamanı geldi"
Cells(i, "H").Interior.ColorIndex = 37
ElseIf VBA.Date < Cells(i, "H") Then
Cells(i, "M") = ""
Cells(i, "H").Interior.ColorIndex = 0
ElseIf VBA.Date = Cells(i, "H") Then
Cells(i, "M") = ""
Cells(i, "H").Interior.ColorIndex = 0
Else
Cells(i, "M") = "Süresi Geçti"
Cells(i, "H").Interior.ColorIndex = 3
End If
Cells(i, "A") = i - 1
Next i
i = Empty
Sheets("Data").Select
Else
MsgBox "FORM BİLGİLERİNİ TAM OLARAK DOLDURMANIZ GEREKİYOR", vbExclamation, "KAYIT PROGRAMI"
End If
Dim txt As Control
For Each txt In Me.Controls
If TypeName(txt) = "TextBox" Then txt.Value = ""
If TypeName(txt) = "ComboBox" Then txt.Value = ""
Next
UserForm_Initialize
End Sub
Sonunda sorun çözüldü teşekkür ederim tavsiyenizi de dikkate alıcam teşekkür ederim tekrarMerhaba,
Sorun şimdi anlaşıldı. Form ile çalışma hazırlıyorsunuz ve sorularınızı adım adım sorup çalışmanızı geliştirmeye çalışıyorsunuz. Ben sizin yerinizde olsam uygulamalı excel başlığı altındaki resimli anlatılan konuları iyice incelerim. Orada kullanılan kayıt mantığını ve raporlama mantıklarını kavradıktan sonra işe koyulmanız size daha çok kolaylık sağlayacaktır.
Aşağıdaki kaydet kodunu deneyin. Düz mantıkla düzenledim. Hata kontrolleri eklemedim. Siz bu kısımları dediğim başlığı inceleyerek rahatlıkla halledebilirsiniz.
Ayrıca bu kod ilerleyen zamanlarda kayıt sayınız arttıkça yavaş çalışacaktır. Çünkü her seferinde üstteki daha önce renklendirdiği satırları tekrar kontrol ediyor. Doğal olarak kayıt sayınız arttıkça kontrol etme süreside uzayacaktır.
Merhaba,
Anladığım kadarıyla hücrelere F2+ENTER yapmak istiyorsunuz. Eğer istediğiniz buysa aşağıdaki kodu deneyin.
Kod:Sub HÜCRE_YENİLE() Dim X As Long For X = 1 To Rows.Count DoEvents Cells(X, "H").Select SendKeys "{F2}", True SendKeys "{ENTER}", True Next End Sub
Sub HÜCRE_YENİLE()
Dim Veri As Range
For Each Veri In Range("A1:A100")
DoEvents
Veri.Select
SendKeys "{F2}", True
SendKeys "{ENTER}", True
Next
End Sub
Merhaba,
Soruyu soran arkadaşımız "tüm sütun için" diye belirttiği için kod bu şekilde çalışıyor.
Belirli bir alanda F2+ENTER yapmak için aşağıdaki kodu kullanabilirsiniz.
Kod:Sub HÜCRE_YENİLE() Dim Veri As Range For Each Veri In Range("A1:A100") DoEvents Veri.Select SendKeys "{F2}", True SendKeys "{ENTER}", True Next End Sub
Hesaplama yönteminiz manuel olarak ayarlanmış olabilir.
Formüller sekmesinden HESAPLAMA SEÇENEKLERİ bölümünü otomatik yapınca düzelmesi gerekir.
Merhaba,
Soruyu soran arkadaşımız "tüm sütun için" diye belirttiği için kod bu şekilde çalışıyor.
Belirli bir alanda F2+ENTER yapmak için aşağıdaki kodu kullanabilirsiniz.
Kod:Sub HÜCRE_YENİLE() Dim Veri As Range For Each Veri In Range("A1:A100") DoEvents Veri.Select SendKeys "{F2}", True SendKeys "{ENTER}", True Next End Sub