Note: The other languages of the website are Google-translated. Back to English

Excel'de bir onay kutusu işaretlenmişse bir hücreye tarih damgası nasıl eklenir?

Normalde, Excel'de kısayol tuşlarını kullanarak bir tarih damgası girersiniz. Excel'de bir onay kutusu ile bir hücreye tarih damgası eklemeye ne dersiniz? Onay kutusu işaretlendiğinde, zaman damgası otomatik olarak belirli bir hücreye eklenir. Bu makale çözmenize yardımcı olacaktır.

VBA kodu ile bir onay kutusu işaretlenmişse bir hücreye tarih damgası ekleyin


VBA kodu ile bir onay kutusu işaretlenmişse bir hücreye tarih damgası ekleyin

Bu bölümde, Excel'de bir onay kutusu işaretlenmişse hücreye otomatik olarak tarih damgası eklemenize yardımcı olacak bir VBA komut dosyası tanıtılacaktır. Lütfen aşağıdaki işlemleri yapın.

1. Bir onay kutusu ekledikten sonra, Ara Toplam + F11 anahtarları aynı anda açmak için Uygulamalar için Microsoft Visual Basic pencere.

2. içinde Uygulamalar için Microsoft Visual Basic Pencere, tıklayın Ekle > modül. Ardından aşağıdaki VBA kodunu Modül penceresine kopyalayıp yapıştırın.

VBA kodu: Bir onay kutusu işaretlenmişse bir hücreye tarih damgası ekleyin

Sub CheckBox_Date_Stamp()
Dim xChk As CheckBox
Set xChk = ActiveSheet.CheckBoxes(Application.Caller)
With xChk.TopLeftCell.Offset(, 1)
    If xChk.Value = xlOff Then
        .Value = ""
    Else
       .Value = Date
    End If
End With
End Sub

3. Basın Ara Toplam + Q kapatmak için anahtarlar Uygulamalar için Microsoft Visual Basic pencere.

4. Onay kutusunu sağ tıklayın ve seçin Mikro atayın sağ tıklama menüsünden. Ekran görüntüsüne bakın:

5. içinde Makro Ata iletişim kutusunu seçin CheckBox_Date_Stamp içinde Makro adı ve ardından OK buton. Ekran görüntüsüne bakın:

Onay kutusunu işaretlediğinizde, tarih damgası otomatik olarak bitişik hücreye eklenecektir.


İlgili Makaleler:


En İyi Ofis Üretkenliği Araçları

Kutools for Excel Sorunlarınızın Çoğunu Çözer ve Verimliliğinizi% 80 Artırır

  • Yeniden: Hızlıca yerleştirin karmaşık formüller, grafikler ve daha önce kullandığınız her şey; Hücreleri Şifrele şifre ile; Posta Listesi Oluşturun ve e-posta gönder ...
  • Süper Formül Çubuğu (birden çok metin ve formül satırını kolayca düzenleyin); Okuma Düzeni (çok sayıda hücreyi kolayca okuyun ve düzenleyin); Filtrelenmiş Aralığa Yapıştır...
  • Hücreleri / Satırları / Sütunları Birleştirme Veri kaybetmeden; Bölünmüş Hücre İçeriği; Yinelenen Satırları / Sütunları Birleştirme... Yinelenen Hücreleri Önleyin; Aralıkları Karşılaştır...
  • Yinelenen veya Benzersiz'i seçin Satırlar; Boş Satırları Seçin (tüm hücreler boştur); Süper Bul ve Bulanık Bul Birçok Çalışma Kitabında; Rastgele Seçim ...
  • Tam kopya Formül referansını değiştirmeden Birden Çok Hücre; Otomatik Referans Oluştur Birden Çok Sayfaya; Madde İşaretleri Ekle, Onay Kutuları ve daha fazlası ...
  • Metni Çıkar, Metin Ekle, Konuma Göre Kaldır, Alanı Kaldır; Sayfalama Alt Toplamları Oluşturma ve Yazdırma; Hücre İçeriği ve Yorumları Arasında Dönüştür...
  • Süper Filtre (filtre şemalarını kaydedin ve diğer sayfalara uygulayın); Gelişmiş Sıralama ay / hafta / gün, sıklık ve daha fazlasına göre; Özel Filtre kalın, italik ...
  • Çalışma Kitaplarını ve Çalışma Sayfalarını Birleştirin; Tabloları anahtar sütunlara göre birleştirin; Verileri Birden Çok Sayfaya Bölme; Toplu dönüştürme xls, xlsx ve PDF...
  • 300'den fazla güçlü özellik. Office / Excel 2007-2021 ve 365'i destekler. Tüm dilleri destekler. Kuruluşunuzda veya kuruluşunuzda kolay devreye alma. Tam özellikler 30 günlük ücretsiz deneme. 60 günlük para iade garantisi.
kte sekmesi 201905

Office Tab, Office'e Sekmeli Arayüz Getirir ve İşinizi Çok Daha Kolay Hale Getirir

  • Word, Excel, PowerPoint'te sekmeli düzenlemeyi ve okumayı etkinleştirin, Publisher, Access, Visio ve Project.
  • Yeni pencereler yerine aynı pencerenin yeni sekmelerinde birden çok belge açın ve oluşturun.
  • Üretkenliğinizi% 50 artırır ve her gün sizin için yüzlerce fare tıklamasını azaltır!
ofis tabanı
Yorumları sıralama ölçütü
Yorumlar (22)
Henüz derecelendirme yok. İlk değerlendiren siz olun!
Bu yorum sitedeki moderatör tarafından en aza indirildi
Teşekkürler, bu çok yardımcı oldu, tarih damgasının onay kutusunun solunda olmasını daha yararlı bulduğumu belirtmek isterim. bunu yapmak için ofseti (, -1) olarak değiştirmeniz yeterlidir.
Bu yorum sitedeki moderatör tarafından en aza indirildi
Bunu tarih VE saat ile yapmanın bir yolu var mı? Her iki şekilde de bilgi için teşekkürler!
Bu yorum sitedeki moderatör tarafından en aza indirildi
Sub CheckBox_Date_Stamp() Dim xChk CheckBox Olarak End Sub ile Biterse Zaman Biter
Bu yorum sitedeki moderatör tarafından en aza indirildi
Merhaba,
Tarih ve saat eklemek için lütfen aşağıdaki VBA kodunu uygulayın.

Alt CheckBox_Date_Stamp()
Dim xChk CheckBox Olarak
xChk = ActiveSheet.CheckBoxes(Application.Caller) ayarla
xChk.TopLeftCell.Offset(, 1) ile
xChk.Value = xlOff ise
.Değer = ""
başka
.Değer = Şimdi()
Eğer son
İle bitmek
End Sub
Bu yorum sitedeki moderatör tarafından en aza indirildi
HI Bu formülü denedim ve makroyu A1'deki onay kutusuna uyguladığımda yalnızca A1 ve B1 için çalıştı. Ancak makroyu A2'deki onay kutusuna uyguladığımda B2'de hiçbir şey olmadı. Ayrıca bunu bir kontrol listesi için kullanmak istersem formül nasıl değiştirilir? A sütunu onay kutularıysa ve C sütunu tamamlanma tarihi.
Bu yorum sitedeki moderatör tarafından en aza indirildi
Merhaba :) A1'deki onay kutusu olan hücreyi sütunun geri kalanına kopyalayabilirsiniz. veya makroyu her bir onay kutusuna ayrı ayrı atayın
Bu yorum sitedeki moderatör tarafından en aza indirildi
Good Day,
Lütfen makroyu her bir onay kutusuna ayrı ayrı atayın.
Bu yorum sitedeki moderatör tarafından en aza indirildi
VBA kodunu aynen kopyalayıp yapıştırdım, ancak e-tablomda tarih, doğrudan sağdaki hücrede değil, yukarıdaki hücrede ve onay kutusu sütununun sağında görünüyor. ?
Bu yorum sitedeki moderatör tarafından en aza indirildi
Ben de aynı sorunu yaşıyorum. "YARDIM! YARDIMCI birine ihtiyacım var! YARDIMCI olan birine değil! Biliyorsun, YARDIM birine ihtiyacım var!
Bu yorum sitedeki moderatör tarafından en aza indirildi
İyi günler,
Kod benim durumumda iyi çalışıyor. Onay kutusunu işaretledikten sonra, tarih doğrudan sağdaki hücrede görünecektir. Durumunuzun ekran görüntüsünü verir misiniz? Ve hangi Office sürümünü kullanıyorsunuz. Teşekkür ederim.
Bu yorum sitedeki moderatör tarafından en aza indirildi
Amaçlanan hücrenin üzerindeki hücrede görünen tarih ve saat damgasıyla aynı sorunu yaşadım (Excel 2007 kullanarak). Devam ettim ve "ofset" formülünü bir hücreyi aşacak ve bir hücreden aşağı gidecek şekilde değiştirdim ve şimdi damga istediğim yerde görünüyor: xChk.TopLeftCell.Offset(1, 1) ile
Başka birinin oluşturduğu ve onay kutularını oluşturmadığı bir çalışma sayfasını güncelliyorum, ancak bunun, onay kutusunun hücrenin neresine yerleştirildiğiyle ilgili olması gerekebilir. Onay kutusunu hücrenin altıyla hizaladığımda farklı sonuçlar elde ettim.

Bu yardımcı olur umarım!
Bu yorum sitedeki moderatör tarafından en aza indirildi
Bu sorunu çözmek için yaptığım şey bu

Alt CheckBox_Date_Stamp()
Dim xChk CheckBox Olarak
xChk = ActiveSheet.CheckBoxes(Application.Caller) ayarla
xChk.TopLeftCell.Offset(1, 1) ile
xChk.Value = xlOff ise
.Değer = ""
başka
.Değer = Şimdi()
Eğer son
İle bitmek
End Sub
Bu yorum sitedeki moderatör tarafından en aza indirildi
Merhaba! Kod için teşekkürler. Ofset üzerinde küçük bir ince ayar ile mükemmel çalışır. Bununla birlikte, birçok onay kutusu içeren birçok çok sayıda satırı (~ 500+ satır) içeren bir sayfa üzerinde çalışıyordum ve dosya boyutu önemli ölçüde büyüdü. Boyutu küçültmenin bir yolu var mı? Bunu yapmanın alternatif bir yolu var mı?

Teşekkürler!
Bu yorum sitedeki moderatör tarafından en aza indirildi
iyi da
Satırlarda çok sayıda onay kutusu varsa ve tüm onay kutularında aynı anda işlem yapmak istiyorsanız, aşağıdaki VBA kodu size yardımcı olabilir.
Lütfen kodları bir Modül kodu penceresine kopyalayın, çalışma sayfasına geri dönün ve bir düğme oluşturun (bir Düğme (Form Kontrolü) gibi), düğmeye SetAllChkChange() makrosunu atayın, ardından kodu çalıştırmak için düğmeye tıklayın.

Artık çalışma sayfanızın satırlarındaki tüm onay kutuları etkinleştirildi. Bitişik hücresine tarih damgası eklemek için bunlardan herhangi birini işaretleyebilirsiniz.

Alt SetAllChkChange()
loş xChks
Dim xChk CheckBox Olarak
Dim xI Uzun
On Error Resume Next
xArrChk'yi sil
xChks = ActiveSheet.CheckBox'ları ayarla
ReDim xArrChk Koru (1'den xChks.count'a)
1 = XNUMX
xChks Olarak Her xChk İçin
xChk.Seç
Selection.OnAction = "ObjChkChange"
Sonraki
End Sub


Alt ObjChkChange()
Dim xChk CheckBox Olarak
xChk = ActiveSheet.CheckBoxes(Application.Caller) ayarla
xChk.TopLeftCell.Offset(, 1) ile
xChk.Value = xlOff ise
.Değer = ""
başka
.Değer = Tarih
Eğer son
İle bitmek
End Sub
Bu yorum sitedeki moderatör tarafından en aza indirildi
Onay kutumun altında görüntülenecek tarih damgasını nasıl alabilirim?
Bu yorum sitedeki moderatör tarafından en aza indirildi
merhaba! tarih damgasının onay kutusunun yanında olacağı bir yol bulamıyorum. ofset değerini 0, 1 ve -1'den değiştirmeyi denedim. Bana bu konuda yardımcı olur musunuz? teşekkür ederim!
Bu yorum sitedeki moderatör tarafından en aza indirildi
Merhaba, onay kutunuzun A2'de olduğunu ve onay kutusunun sağ tarafında (bu durumda B2'dir) tarih damgasının çıktısını almak istediğinizi varsayalım, lütfen Offset değerini Offset(1, 1) olarak değiştirin.
Bu yorum sitedeki moderatör tarafından en aza indirildi
VBA'yı onay kutusu zaman damgası için kullandım, ancak ilk iki hücre düzgün çalışmıyor. İlk onay kutum A2'de, kutuyu işaretlediğimde saat B1'de gösteriliyor. Bunu nasıl düzeltirim?
Bu yorum sitedeki moderatör tarafından en aza indirildi
Merhaba Steve,
Lütfen koddaki dördüncü satırı With xChk.TopLeftCell.Offset(1, 1) ile değiştirin.
Bu yorum sitedeki moderatör tarafından en aza indirildi
Çok teşekkürler!! Parlak! Teşekkür ederim!
Bu yorum sitedeki moderatör tarafından en aza indirildi
Merhaba, sütundaki tüm onay kutularını dahil etmek için kodu nasıl döngüye sokabilirim?
Bu yorum sitedeki moderatör tarafından en aza indirildi
İyi günler,
Satırlarda çok sayıda onay kutusu varsa ve tüm onay kutularında aynı anda işlem yapmak istiyorsanız, aşağıdaki VBA kodu size yardımcı olabilir.
Lütfen aşağıdaki kodları bir Modül kodu penceresine kopyalayın, çalışma sayfasına geri dönün ve bir düğme oluşturun (Buton (Form Kontrolü) gibi), makroyu atayın SetAllChkChange() düğmesine, ardından kodu çalıştırmak için düğmeye tıklayın.

Artık çalışma sayfanızın satırlarındaki tüm onay kutuları etkinleştirildi. Bitişik hücresine tarih damgası eklemek için bunlardan herhangi birini işaretleyebilirsiniz.

Alt SetAllChkChange()
'Tarafından güncellendi Extendoffice 20211130
loş xChks
Dim xChk CheckBox Olarak
On Error Resume Next
xChks = ActiveSheet.CheckBox'ları ayarla
xChks Olarak Her xChk İçin
xChk.Seç
Selection.OnAction = "ObjChkChange"
Sonraki
End Sub

Alt ObjChkChange()
Dim xChk CheckBox Olarak
xChk = ActiveSheet.CheckBoxes(Application.Caller) ayarla
xChk.TopLeftCell.Offset(, 1) ile
xChk.Value = xlOff ise
.Değer = ""
başka
.Değer = Tarih
Eğer son
İle bitmek
End Sub
Buraya henüz hiç yorum yapılmamış
Lütfen yorum yazın
Misafir olarak yayınlama
×
Bu gönderiyi değerlendirin:
0   Karakterler
Önerilen Konumlar

Bizi takip et

Telif Hakkı © 2009 - www.extendoffice.com. | Tüm hakları Saklıdır. Tarafından desteklenmektedir ExtendOffice. | | | Site Haritası
Microsoft ve Office logosu, Microsoft Corporation'ın Amerika Birleşik Devletleri ve / veya diğer ülkelerdeki ticari markaları veya tescilli ticari markalarıdır.
Sectigo SSL ile korunmaktadır