Hi
Try this.
Code:Option Explicit Sub kTest() Dim d, i As Long, k, q, x, r As Long Dim c As Long, lRow As Long, Rng As Range lRow = Sheet2.Range("b" & Sheet2.Rows.Count).End(3).Row Set Rng = Sheet2.Range("b5:n" & lRow) d = Rng.Value2 q = Application.Index(d, 0, 1) k = Sheet1.Range("b6:n11").Value2 x = Application.Match(k(1, 1), q, 0) If Not IsError(x) Then If Len(d(x, 2)) * Len(d(x, 3)) Then 'check 2 columns whether they have data in those cells MsgBox "It seems data already been entered for date " & CDate(k(1, 1)) Exit Sub Else For r = 1 To UBound(k, 1) For c = 1 To UBound(k, 2) d(r + x - 1, c) = k(r, c) Next Next End If Else Set Rng = Sheet2.Range("b5:n" & lRow + 7) d = Rng.Value2 For r = 1 To UBound(k, 1) For c = 1 To UBound(k, 2) d(UBound(d, 1) - UBound(k, 1) + r, c) = k(r, c) Next Next End If Rng = d Rng.Columns(1).NumberFormat = "m/d/yyyy" Sheet1.Range("c6:n10").ClearContents End Sub




Reply With Quote
Bookmarks