Sei sulla pagina 1di 2

Execute Excel Functions in Access

As a database developer, I sometimes help people convert their data from Excel into
Access. Although both applications can store data in a table format, they are built for
different purposes. Excel is a little bit easier to learn so a lot of people tend to use it
first. Eventually, when the data gets bigger or more complicated for Excel, they find it is
time to migrate their application into Access. Access is a lot better in handling relational
data than Excel. However, Excel users sometimes find it frustrating when they realize
some of the functions they typically use in Excel are not available in Access.

Como desarrollador de bases de datos, a veces ayudo a las personas a


convertir sus datos de Excel en Access. Aunque ambas aplicaciones
pueden almacenar datos en un formato de tabla, están diseñadas para
diferentes propósitos. Excel es un poco más fácil de aprender, por lo
que mucha gente tiende a usarlo primero. Eventualmente, cuando los
datos se vuelven más grandes o más complicados para Excel, encuentran
que es hora de migrar su aplicación a Access. El acceso es mucho mejor
en el manejo de datos relacionales que Excel. Sin embargo, a los
usuarios de Excel a veces les resulta frustrante darse cuenta de que
algunas de las funciones que suelen usar en Excel no están disponibles
en Access.

A good example of this is the NETWORKDAYS() function in Excel. This function


returns the number of working days between two dates. This is a common requirement
whether the data is in Excel or Access. Unfortunately, Access does not have an
equivalent function for the same purpose. Instead, Access users are forced to create
custom functions to do the same thing.

Un buen ejemplo de esto es la función NETWORKDAYS () en Excel. Esta


función devuelve el número de días hábiles entre dos fechas. Este es
un requisito común si los datos están en Excel o Access.
Desafortunadamente, Access no tiene una función equivalente para el
mismo propósito. En cambio, los usuarios de Access se ven obligados a
crear funciones personalizadas para hacer lo mismo.

If you have not tried it before, creating a custom function in Access to mimic the
functionality of the NETWORKDAYS() Excel function is not easy. There are a number
of Access NETWORKDAYS() code examples available online. As it turns out, creating
a duplicate Excel function in Access is not always necessary. We can execute some
Excel functions through automation. The following code example shows how we can
execute the Excel NETWOKDAYS() function from within Access.

Si no lo ha intentado antes, la creación de una función personalizada


en Access para imitar la funcionalidad de la función de Excel
NETWORKDAYS() no es fácil. Hay una cantidad de ejemplos de código de
Acceso a NETWORKDAYS() disponibles en línea. Como resultado, la
creación de una función duplicada de Excel en Access no siempre es
necesaria. Podemos ejecutar algunas funciones de Excel a través de la
automatización. El siguiente ejemplo de código muestra cómo podemos
ejecutar la función Excel NETWOKDAYS() desde Access.
Public Function NetWorkdays(StartDate As Date, EndDate As Date) As
Long
'8/3/2017
'thedbguy@gmail.com
'Uses Excel's NetWorkdays() function

Dim xl As Object

Set xl = CreateObject("Excel.Application")

NetWorkdays = xl.WorksheetFunction.NETWORKDAYS(Format(StartDate,
"yyyy-mm-dd"), _
Format(EndDate, "yyyy-mm-dd"))

Set xl = Nothing

End Function

What the above code does is instantiate an Excel object and then use the
WorksheetFunction method to execute the Excel NETWORKDAYS() function.

Lo que hace el código anterior es crear una instancia de un objeto


Excel y luego usar el método WorksheetFunction para ejecutar la
función Excel NETWORKDAYS().

Users can use this technique to execute some built-in Excel functions if they can't find
an equivalent Access function to do the same thing. I hope you find it useful.

Los usuarios pueden usar esta técnica para ejecutar algunas funciones
integradas de Excel si no pueden encontrar una función de acceso
equivalente para hacer lo mismo. Espero que le sea útil.

Potrebbero piacerti anche