Hi Laura
*Please try this code* Private Sub Worksheet_Change(ByVal Target As Range) Dim wsNew As Worksheet Dim sht As Worksheet If Target.Cells.Count > 1 Then Exit Sub On Error Resume Next If Not Intersect(Target, Range("A6:A99")) Is Nothing Then Set wsNew = Sheets(Target.Text) If wsNew Is Nothing Then Set sht = Sheets.Add(Type:="C:\Documents and Settings\user\Desktop\sample.xltx", After:=Sheets(Sheets.Count)) sht.Name = Target.Text End If End If End Sub Regards Ashish Koul -- Join official Facebook page of this forum @ https://www.facebook.com/discussexcel FORUM RULES 1) Use concise, accurate thread titles. Poor thread titles, like Please Help, Urgent, Need Help, Formula Problem, Code Problem, and Need Advice will not get quick attention or may not be answered. 2) Don't post a question in the thread of another member. 3) Don't post questions regarding breaking or bypassing any security measure. 4) Acknowledge the responses you receive, good or bad. 5) Jobs posting is not allowed. 6) Sharing copyrighted material and their links is not allowed. NOTE : Don't ever post confidential data in a workbook. Forum owners and members are not responsible for any loss. --- You received this message because you are subscribed to the Google Groups "MS EXCEL AND VBA MACROS" group. To post to this group, send email to excel-macros@googlegroups.com. To unsubscribe from this group, send email to excel-macros+unsubscr...@googlegroups.com. Visit this group at http://groups.google.com/group/excel-macros?hl=en.