Bonjour,
Je suis novice dans la création de macro sur excel. Mon but est de comparer deux points géographiques en calculant la distance qui les séparent et de stocker tout ça dans une nouvelle feuille 'resultat100'. Je reste bloqué sur l'erreur "incompatibilité de type" quand j’exécute ce code :
------------------------------------------------------------------------------------------------------------------------------
Sub Comparaison()
'
' Comparaison Macro
'
Dim VALEURxA As Double, VALEURxB As Double
Dim VALEURyA As Double, VALEURyB As Double
Dim VALEURIdFree As String, VALEURNumSite As String
Dim RESULTAT As Double
Dim CONDITION As Double
'Dim i As Integer
'Dim j As Integer
Dim l As Integer
Sheets("PointA").Select
For i = 2 To 6861
VALEURxA = CDbl(Range("C" & i).Value)
VALEURyA = CDbl(Range("D" & i).Value)
VALEURIdPointA = Range("D" & i).Value
Sheets("PointB").Select
For j = 2 To 784
VALEURxB = CDbl(Range("AS" & j).Value)
VALEURyB = CDbl(Range("AT" & j).Value)
VALEURIdPointB = Range("C" & j).Value
RESULTAT = Sqr(((VALEURxA - VALEURxB) ^ 2) + ((VALEURxA - VALEURxB) ^ 2))
CONDITION = 100
Sheets("Resultats100").Select
If RESULTAT <= CONDITION Then
Range("A" & l) = VALEURIdPointA
Range("B" & l) = VALEURIdPointB
Range("C" & l) = RESULTAT
l = l + 1
End If
Next j
Next i
End Sub
--------------------------------------------------------------------------------------------------------------------------------
Merci de votre aide
Je suis novice dans la création de macro sur excel. Mon but est de comparer deux points géographiques en calculant la distance qui les séparent et de stocker tout ça dans une nouvelle feuille 'resultat100'. Je reste bloqué sur l'erreur "incompatibilité de type" quand j’exécute ce code :
------------------------------------------------------------------------------------------------------------------------------
Sub Comparaison()
'
' Comparaison Macro
'
Dim VALEURxA As Double, VALEURxB As Double
Dim VALEURyA As Double, VALEURyB As Double
Dim VALEURIdFree As String, VALEURNumSite As String
Dim RESULTAT As Double
Dim CONDITION As Double
'Dim i As Integer
'Dim j As Integer
Dim l As Integer
Sheets("PointA").Select
For i = 2 To 6861
VALEURxA = CDbl(Range("C" & i).Value)
VALEURyA = CDbl(Range("D" & i).Value)
VALEURIdPointA = Range("D" & i).Value
Sheets("PointB").Select
For j = 2 To 784
VALEURxB = CDbl(Range("AS" & j).Value)
VALEURyB = CDbl(Range("AT" & j).Value)
VALEURIdPointB = Range("C" & j).Value
RESULTAT = Sqr(((VALEURxA - VALEURxB) ^ 2) + ((VALEURxA - VALEURxB) ^ 2))
CONDITION = 100
Sheets("Resultats100").Select
If RESULTAT <= CONDITION Then
Range("A" & l) = VALEURIdPointA
Range("B" & l) = VALEURIdPointB
Range("C" & l) = RESULTAT
l = l + 1
End If
Next j
Next i
End Sub
--------------------------------------------------------------------------------------------------------------------------------
Merci de votre aide