Red de conocimiento informático - Descarga de software - Cuando se utiliza VBA para dibujar un rectángulo, siempre aparece el mensaje "El parámetro no es opcional" al ejecutar el código del formulario. ¿Podría ayudarme a descubrir la causa del error?

Cuando se utiliza VBA para dibujar un rectángulo, siempre aparece el mensaje "El parámetro no es opcional" al ejecutar el código del formulario. ¿Podría ayudarme a descubrir la causa del error?

Private Sub CommandButton1_Click()

Atenuar a como doble, b como doble, c como doble, d como doble, e como doble

a = TextBox1. Texto

b = TextBox2.Text

c = TextBox3.Text

d = TextBox4.Text

e = TextBox5.Text

' Pt1 a, b

' Pt2 c, d

AddRectangle Pt1(a, b), Pt2(c, d), e

Fin Sub

'====================

'Código de módulo 1

Función Pública Pt1(ByVal x As Double, ByVal y As Double) Como Variante

Dim Pt(0 A 1) Como Variante

Pt(0) = x: Pt(1 ) = y

Pt1 = Pt

Función final

'=====================

'Código de módulo dos

Función Pública Pt2(ByVal x As Double, ByVal y As Double) Como Variante

Dim Pt(0 A 1) Como Variante

Pt(0) = x: Pt(1) = y

Pt2 = Pt

Función final

'=== ====================

'Código de módulo 3

Función pública AddRectangle(ByVal Pt1 como variante, ByVal Pt2 como Variante, ancho opcional como doble) como AcadLWPolyline

Dim ptArr(7) como doble

Dim objPline como AcadLWPolyline

'Crear procesamiento de rectángulo

Si Pt1(0) = Pt2(0) o Pt1(1) = Pt2(1) entonces

MsgBox "Error al crear el rectángulo"

Salir de la función

Fin si

ptArr(0) = MinDouble(Pt1(0), Pt2(0)): ptArr(1) = MinDouble(Pt1(1), Pt2(1)):

ptArr(2) = MinDouble(Pt1(0), Pt2(0)): ptArr(3) = MaxDouble(Pt1(1), Pt2(1)):

ptArr( 4 ) = MaxDouble(Pt1(0), Pt2(0)): ptArr(5) = MaxDouble(Pt1(1), Pt2(1)):

ptArr(6) = M

axDouble(Pt1(0), Pt2(0)): ptArr(7) = MinDouble(Pt1(1), Pt2(1))

' Set objPline = ThisDrawing.ModelSpace.addlightweigthtPolyline(ptArr)

Establecer objPline = ThisDrawing.ModelSpace.AddLightWeightPolyline(ptArr)

objPline.Closed = True

objPline.Visible = True

Establecer AddRectangle = objPline

Función final

'====================

'Código de módulo 4

Función pública MinDouble(ByVal a As Double, ByVal b As Double) As Double

Si a < b Entonces MinDouble = a

Si a > b Entonces MinDouble = b

Función final

'================

'Código de módulo 5

Función pública MaxDouble(ByVal a As Double, ByVal b As Double) Como doble

Si a < b Entonces MaxDouble = b

Si a > b Entonces MaxDouble = a

Función final