![]() |
Fill down problem with Worksheet_Change(ByVal Target As Range)
Hi
I have a problem when trying to use "fill down" in an excel sheet where I am using a Worksheet_Change() program to update some cells. The program looks like: Private Sub Worksheet_Change(ByVal Target As Range) Dim NoDoc If Target.Row 4 Then Select Case Target.Column Case 29 NoDoc = "No Doc." = If Target.Offset(0, 0) < NoDoc And Target.Offset(0, -4) = "" Then Target.Offset(0, -4) = "XXXXXX" ElseIf Target.Offset(0, 0) = NoDoc Then Target.Offset(0, -4) = "" End If End Select End If End Sub The errormessage is "Runtime error 13 - Type Mitchmatch". The Sub is working okay when only change one cell at a time - the error arrices when cliking a cell and draging it down. Can anyone help? /Steen |
Fill down problem with Worksheet_Change(ByVal Target As Range)
Hi
If you select more than one cell, your conditions on Target do not make sense. You need to check the conditions in each Cell of target. Target.row still makes sense, and returns the first row in the range Target. Try this: Private Sub Worksheet_Change(ByVal Target As Range) Dim NoDoc As String Dim Cell as range If Target.Row 4 Then Select Case Target.Column Case 29 NoDoc = "No Doc." For Each cell In Target If cell < NoDoc And cell.Offset(0, -4) = "" Then cell.Offset(0, -4) = "XXXXXX" ElseIf cell = NoDoc Then cell.Offset(0, -4) = "" End If Next cell End Select End If End Sub regards Paul Steen wrote: Hi I have a problem when trying to use "fill down" in an excel sheet where I am using a Worksheet_Change() program to update some cells. The program looks like: Private Sub Worksheet_Change(ByVal Target As Range) Dim NoDoc If Target.Row 4 Then Select Case Target.Column Case 29 NoDoc = "No Doc." = If Target.Offset(0, 0) < NoDoc And Target.Offset(0, -4) = "" Then Target.Offset(0, -4) = "XXXXXX" ElseIf Target.Offset(0, 0) = NoDoc Then Target.Offset(0, -4) = "" End If End Select End If End Sub The errormessage is "Runtime error 13 - Type Mitchmatch". The Sub is working okay when only change one cell at a time - the error arrices when cliking a cell and draging it down. Can anyone help? /Steen |
Fill down problem with Worksheet_Change(ByVal Target As Range)
Hi Poul
Thanks - works wery well :-) /Steen " wrote: Hi If you select more than one cell, your conditions on Target do not make sense. You need to check the conditions in each Cell of target. Target.row still makes sense, and returns the first row in the range Target. Try this: Private Sub Worksheet_Change(ByVal Target As Range) Dim NoDoc As String Dim Cell as range If Target.Row 4 Then Select Case Target.Column Case 29 NoDoc = "No Doc." For Each cell In Target If cell < NoDoc And cell.Offset(0, -4) = "" Then cell.Offset(0, -4) = "XXXXXX" ElseIf cell = NoDoc Then cell.Offset(0, -4) = "" End If Next cell End Select End If End Sub regards Paul Steen wrote: Hi I have a problem when trying to use "fill down" in an excel sheet where I am using a Worksheet_Change() program to update some cells. The program looks like: Private Sub Worksheet_Change(ByVal Target As Range) Dim NoDoc If Target.Row 4 Then Select Case Target.Column Case 29 NoDoc = "No Doc." = If Target.Offset(0, 0) < NoDoc And Target.Offset(0, -4) = "" Then Target.Offset(0, -4) = "XXXXXX" ElseIf Target.Offset(0, 0) = NoDoc Then Target.Offset(0, -4) = "" End If End Select End If End Sub The errormessage is "Runtime error 13 - Type Mitchmatch". The Sub is working okay when only change one cell at a time - the error arrices when cliking a cell and draging it down. Can anyone help? /Steen |
All times are GMT +1. The time now is 02:41 PM. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com