Excel'de tarihe göre başka bir sayfaya satır kopyalayıp yapıştırmak nasıl yapılır?
Diyelim ki, elimde bir dizi veri var ve şimdi belirli bir tarihe göre tüm satırları kopyalamak ve ardından bunları başka bir sayfaya yapıştırmak istiyorum. Bu işi Excel'de ele almak için iyi bir fikriniz var mı?
Bugünün tarihine göre başka bir sayfaya satır kopyalayıp yapıştırma
Tarih bugünden büyükse başka bir sayfaya satır kopyalayıp yapıştırma
Bugünün tarihine göre başka bir sayfaya satır kopyalayıp yapıştırma
Eğer tarih bugün ise satırları kopyalamak gerekiyorsa, lütfen aşağıdaki VBA kodunu uygulayın:
1. Microsoft Visual Basic for Applications penceresini açmak için ALT + F11 tuşlarına basın.
2. Ekle Insert > Module'e tıklayın ve aşağıdaki kodu Modül Penceresine yapıştırın.
VBA kodu: Bugünün tarihine göre satır kopyalayıp yapıştırma:
Sub CopyRow()
'Updateby Extendoffice
Dim xRgS As Range, xRgD As Range, xCell As Range
Dim I As Long, xCol As Long, J As Long
Dim xVal As Variant
On Error Resume Next
Set xRgS = Application.InputBox("Please select the date column:", "KuTools For Excel", Selection.Address, , , , , 8)
If xRgS Is Nothing Then Exit Sub
Set xRgD = Application.InputBox("Please select a destination cell:", "KuTools For Excel", , , , , , 8)
If xRgD Is Nothing Then Exit Sub
xCol = xRgS.Rows.Count
Set xRgS = xRgS(1)
Application.CutCopyMode = False
J = 0
For I = 1 To xCol
Set xCell = xRgS.Offset(I - 1, 0)
xVal = xCell.Value
If TypeName(xVal) = "Date" And (xVal <> "") And (xVal = Date) Then
xCell.EntireRow.Copy xRgD.Offset(J, 0)
J = J + 1
End If
Next
Application.CutCopyMode = True
End Sub
3. Yukarıdaki kodu yapıştırdıktan sonra, lütfen bu kodu çalıştırmak için F5 tuşuna basın ve size kopyalanacak satırları seçmek için bir tarih sütunu seçmenizi hatırlatan bir uyarı kutusu açılacaktır, ekran görüntüsüne bakın:
4. Sonra Tamam butonuna tıklayın, başka bir uyarı kutusunda, sonuçları çıkarmak istediğiniz başka bir sayfadaki bir hücreyi seçin, ekran görüntüsüne bakın:
5. Ve sonra Tamam butonuna tıklayın, şimdi bugünkü tarih olan satırlar hemen yeni sayfaya yapıştırılır, ekran görüntüsüne bakın:
Tarih bugünden büyükse başka bir sayfaya satır kopyalayıp yapıştırma
Bugünden itibaren 5 gün veya daha fazla süre geçmiş tarihler olan satırları kopyalayıp başka bir sayfaya yapıştırmak için, örneğin, tarih bugün veya bugünden 5 gün sonrasına eşit veya daha büyükse, satırları başka bir sayfaya kopyalayıp yapıştırabilirsiniz.
Aşağıdaki VBA kodu size yardımcı olabilir:
1. Microsoft Visual Basic for Applications penceresini açmak için ALT + F11 tuşlarına basın.
2. Ekle Insert > Module'e tıklayın ve aşağıdaki kodu Modül Penceresine yapıştırın.
VBA kodu: Tarih bugünden büyükse satırları kopyalayıp yapıştırma:
Sub CopyRow()
'Updateby Extentoffice
Dim xRgS As Range, xRgD As Range, xCell As Range
Dim I As Long, xCol As Long, J As Long
Dim xVal As Variant
On Error Resume Next
Set xRgS = Application.InputBox("Please select the date column:", "KuTools For Excel", Selection.Address, , , , , 8)
If xRgS Is Nothing Then Exit Sub
Set xRgD = Application.InputBox("Please select a destination cell:", "KuTools For Excel", , , , , , 8)
If xRgD Is Nothing Then Exit Sub
xCol = xRgS.Rows.Count
Set xRgS = xRgS(1)
Application.CutCopyMode = False
J = 0
For I = 1 To xCol
Set xCell = xRgS.Offset(I - 1, 0)
xVal = xCell.Value
If TypeName(xVal) = "Date" And (xVal <> "") And (xVal >= Date And (xVal < Date + 5)) Then
xCell.EntireRow.Copy xRgD.Offset(J, 0)
J = J + 1
End If
Next
Application.CutCopyMode = True
End Sub
Not: Yukarıdaki kodda, If TypeName(xVal) = "Date" And (xVal <> "") And (xVal >= Date And (xVal < Date + 5)) Then betik kodunda ihtiyaç duyduğunuz gibi bugünden küçük veya gün sayısını değiştirebilirsiniz.
3. Ardından bu kodu çalıştırmak için F5 tuşuna basın, uyarı kutusunda kullanmak istediğiniz veri sütununu seçin, ekran görüntüsüne bakın:
4. Sonra Tamam butonuna tıklayın, başka bir uyarı kutusunda, sonuçları çıkarmak istediğiniz başka bir sayfadaki bir hücreyi seçin, ekran görüntüsüne bakın:
5. Tamam butonuna tıklayın, şimdi bugünden itibaren 5 gün veya daha fazla süre geçmiş tarihler olan satırlar aşağıdaki ekran görüntüsünde gösterildiği gibi yeni sayfaya kopyalanmış ve yapıştırılmıştır:
En İyi Ofis Verimlilik Araçları
Kutools for Excel ile Excel becerilerinizi geliştirin ve daha önce hiç olmadığı kadar verimli olun. Kutools for Excel, üretkenliğinizi artırmak ve zamanınızı kaydetmek için300'den fazla gelişmiş özellik sunar. En çok ihtiyacınız olan özelliği almak için buraya tıklayın...
Office Tab, Office'e sekmeli arayüz getirir ve işinizi çok daha kolaylaştırır
- Word, Excel, PowerPoint'te sekmeli düzenleme ve okuma özelliğini etkinleştirin.
- Aynı pencerenin yeni sekmelerinde birden fazla belge açın ve oluşturun, yeni pencerelerde değil.
- Verimliliğinizi %50 artırır ve her gün yüzlerce fare tıklamasını azaltır!