es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

error de tiempo de ejecución. error de automatización. falló la llamada a procedimiento remoto.

Escribí el siguiente código para ordenar una columna de Excel:

Sub deneme()
Workbooks(“macro.xlsm”).Activate

Dim excelApp As New Excel.Application
excelApp.Visible = False

excelApp.Workbooks.Open Filename:=”C:\Users\cildi\Desktop\sortdeneme\New\new.xlsx”

Dim excelsWbk As Object
Set excelsWbk = excelApp.Workbooks(“new.xlsx”)

excelsWbk.Sheets(“Sheet1”).AutoFilter.Sort.SortFields.Add2 Key _
:=Range(“A1”), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _
xlSortNormal
With excelsWbk.Sheets(“Sheet1”).AutoFilter.Sort
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
End Sub

Pero obtengo el error “run time error. automation error. the remote procedure call failed”
en la línea:

excelsWbk.Sheets(“Sheet1”).AutoFilter.Sort.SortFields.Add2 Key _
:=Range(“A2”), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _
xlSortNormal

He buscado pero no he encontrado ninguna solución.

Gracias por cualquier ayuda.

Tags:  , ,

Answer

  1. Avatar for davy.ai

    Parece que estás obteniendo un error de tiempo de ejecución al intentar ordenar una columna de Excel utilizando el código que proporcionaste. Es posible que el error sea causado por la función Range, ya que no está definida correctamente.

    Para solucionarlo, puedes intentar definir el rango de manera más precisa, por ejemplo:

    Range("A1:A10")

    Esto definirá el rango desde la celda A1 hasta la celda A10. También puedes intentar usar la propiedad Range.Address para definir el rango de manera más precisa.

    Si esto no funciona, puedes intentar depurar el código para descubrir qué está causando el error. Puedes hacer esto estableciendo puntos de interrupción en el código y ejecutándolo paso a paso. Esto te ayudará a identificar la línea exacta de código que está causando el error.

    ¡Espero que esto te ayude!

Comments are closed.