Я хочу запустить 2 разных кода в одном листе.
Я думал, что это сработало, когда я пытался, но когда я запустил первый блок кода, он не сработал и остановил меня на втором блоке кода для отладки.
Второй блок кода работает отлично.
Вот мои 2 блока кодов:
Первый код - копирование имен с одного листа на другой. Второй код должен удалить информацию в ячейке AE
, если ячейка D
= Oui
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
'THIS IS MY FIRST BLOCK OF CODE
If Target.Column = 2 Or Target.Column = 3 Then
Dim wsSuiviDeProjet As Worksheet
Set wsSuiviDeProjet = ActiveWorkbook.Sheets("SuiviDeProjet")
On Error GoTo EH
Dim NewRowCount As Long
NewRowCount = Target.Row
If wsSuiviDeProjet.Cells(NewRowCount, 2).Value <> "" And wsSuiviDeProjet.Cells(NewRowCount, 3).Value <> "" Then
Dim wsMonitoring As Worksheet
Set wsMonitoring = ActiveWorkbook.Sheets("Monitoring")
Dim wsCoordonnées As Worksheet
Set wsCoordonnées = ActiveWorkbook.Sheets("coordonnées")
If wsSuiviDeProjet.Cells(NewRowCount, 3).Value = "oui" Then
Dim LastRowMonitoringSheet As Integer
LastRowMonitoringSheet = wsMonitoring.Cells(wsMonitoring.Rows.Count, 1).End(xlUp).Row
Dim dataExists As Boolean
dataExists = False
Dim ii As Integer
For ii = 2 To LastRowMonitoringSheet
If wsMonitoring.Cells(ii, 1).Value = wsSuiviDeProjet.Cells(NewRowCount, 2).Value Then
dataExists = True
Exit For
End If
Next ii
If Not dataExists Then
wsMonitoring.Rows(LastRowMonitoringSheet).Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
LastRowMonitoringSheet = wsMonitoring.Cells(wsMonitoring.Rows.Count, 1).End(xlUp).Row
wsMonitoring.Cells(LastRowMonitoringSheet - 1, 1).Value = wsSuiviDeProjet.Cells(NewRowCount, 2).Value
Else
End If
End If
Dim LastRowCoordinatesSheet As Integer
LastRowCoordinatesSheet = wsCoordonnées.Cells(wsCoordonnées.Rows.Count, 1).End(xlUp).Row
Dim dataExistsM As Boolean
dataExistsM = False
Dim i As Integer
For i = 5 To LastRowCoordinatesSheet
If wsCoordonnées.Cells(i, 1).Value = wsSuiviDeProjet.Cells(NewRowCount, 2).Value Then
dataExistsM = True
Exit For
End If
Next i
If Not dataExistsM Then
wsCoordonnées.Cells(LastRowCoordinatesSheet + 1, 1).Value = wsSuiviDeProjet.Cells(NewRowCount, 2).Value
'MsgBox ("data inserted in COORDINATES SHEET")
Else
End If
End If
EH:
Call CopyHighlightedData_Click
End If
'THIS IS MY SECOND BLOCK OF CODE
If Not Intersect(Target, Range("D:D")) Is Nothing Then
If Target = "oui" Then
Range("AE" & Target.Row).Clear
End If
End If
End Sub