Jump to content
lug barry

No funciona el complemento

Recommended Posts

HOLA, BUEN DIA

TENGOUNA APLICACION EN excel donde le aplico el codigo, num letras
(es para q me devuelva un valor numerico en letras en un recibo o factura)

ok

pero tengo un problema,,,

al cargar el archivo de la factura y eje cutar los totales , el codigo en letras no me carga,, dice q esta en otro lugar y tengo q acutalizar y hace un procesos dispendioso para q q se muestre el valor en letras,,

apesar de haberlo incluido en COMPLEMENTOS,,,

entonces siempre q voy a cargar en programa me aparece este pantallazo,,

nota: los 2 archivos, tanto la factura como elcodigo numletras estan en el mismo lugar

lo envio en imagen

mi pregunta es,

q tengo q hacer para q cuando se ejecute el archivo o programa principal, se ejecute automaticamente el cod numletras y no aparezca este mensaje al iniciar,, ya q si aparece lo regitra en la celda como ¿?nombre

Sin título.jpg

Share this post


Link to post
Share on other sites

subo esta función a ver si le sirve

Function PesosMN(tyCantidad As Currency) As String
Dim lyCantidad As Currency, lyCentavos As Currency, lnDigito As Byte, lnPrimerDigito As Byte, lnSegundoDigito As Byte, lnTercerDigito As Byte, lcBloque As String, lnNumeroBloques As Byte, lnBloqueCero
Dim laUnidades As Variant, laDecenas As Variant, laCentenas As Variant, i As Variant 'Si esta como Option Explicit
tyCantidad = Round(tyCantidad, 2)
lyCantidad = Int(tyCantidad)
lyCentavos = (tyCantidad - lyCantidad) * 100
laUnidades = Array("UN", "DOS", "TRES", "CUATRO", "CINCO", "SEIS", "SIETE", "OCHO", "NUEVE", "DIEZ", "ONCE", "DOCE", "TRECE", "CATORCE", "QUINCE", "DIECISEIS", "DIECISIETE", "DIECIOCHO", "DIECINUEVE", "VEINTE", "VEINTIUN", "VEINTIDOS", "VEINTITRES", "VEINTICUATRO", "VEINTICINCO", "VEINTISEIS", "VEINTISIETE", "VEINTIOCHO", "VEINTINUEVE")
laDecenas = Array("DIEZ", "VEINTE", "TREINTA", "CUARENTA", "CINCUENTA", "SESENTA", "SETENTA", "OCHENTA", "NOVENTA")
laCentenas = Array("CIENTO", "DOSCIENTOS", "TRESCIENTOS", "CUATROCIENTOS", "QUINIENTOS", "SEISCIENTOS", "SETECIENTOS", "OCHOCIENTOS", "NOVECIENTOS")
lnNumeroBloques = 1
Do
lnPrimerDigito = 0
lnSegundoDigito = 0
lnTercerDigito = 0
lcBloque = ""
lnBloqueCero = 0
For i = 1 To 3
lnDigito = lyCantidad Mod 10
If lnDigito <> 0 Then
Select Case i
Case 1
lcBloque = " " & laUnidades(lnDigito - 1)
lnPrimerDigito = lnDigito
Case 2
If lnDigito <= 2 Then
lcBloque = " " & laUnidades((lnDigito * 10) + lnPrimerDigito - 1)
Else
lcBloque = " " & laDecenas(lnDigito - 1) & IIf(lnPrimerDigito <> 0, " Y", Null) & lcBloque
End If
lnSegundoDigito = lnDigito
Case 3
lcBloque = " " & IIf(lnDigito = 1 And lnPrimerDigito = 0 And lnSegundoDigito = 0, "CIEN", laCentenas(lnDigito - 1)) & lcBloque
lnTercerDigito = lnDigito
End Select
Else
lnBloqueCero = lnBloqueCero + 1
End If
lyCantidad = Int(lyCantidad / 10)
If lyCantidad = 0 Then
Exit For
End If
Next i
Select Case lnNumeroBloques
Case 1
PesosMN = lcBloque
Case 2
PesosMN = lcBloque & IIf(lnBloqueCero = 3, Null, " MIL") & PesosMN
Case 3
PesosMN = lcBloque & IIf(lnPrimerDigito = 1 And lnSegundoDigito = 0 And lnTercerDigito = 0, " MILLON", " MILLONES") & PesosMN
End Select
lnNumeroBloques = lnNumeroBloques + 1
Loop Until lyCantidad = 0
PesosMN = "(" & PesosMN & IIf(tyCantidad > 1, " PESOS ", " PESO ") & Format(Str(lyCentavos), "00") & "/100 M.N.)"
End Function

 saludos isidro

Share this post


Link to post
Share on other sites
Hace 14 horas, silver_axe007 dijo:

Guarda la funcion que utilizas ene l libro actual y listo la invocas sin novedades.


Saludos Lug.

 

Andres.

Lo mejor es instalar el complemento en Excel, para que este disponible en cualquier momento

 

Saludos 

Share this post


Link to post
Share on other sites

Excelente  lo que indicas Gerson es la solución correcta lo que indicas

... solo un tema ,. lo que pasa es que LUG (a quien alguna vez ayude en otro tema)  pone sus libros en diferentes PC's... por ende la solución seria que el libro posea el método o función y no instalarlo el complemento en el excel.

Saludos y muchas gracias  por tu comentario cada día aprendo mas acá!!.

Edited by silver_axe007

Share this post


Link to post
Share on other sites
Hace 21 minutos , silver_axe007 dijo:

... solo un tema ,. lo que pasa es que LUG (a quien alguna vez ayude en otro tema)  pone sus libros en diferentes PC's... por ende la solución seria que el libro posea el método o función y no instalarlo el complemento en el excel.

Paso algo similar donde trabajo, el sistema contable no tiene la forma de números a letras, entonces les compartí el complemento y de como instalarlo en sus PC, ahora cada quien lo utiliza

Es similar como adquirir un complemento cualquiera, cada uno debe instalarlo en su PC, para su uso

 

Saludos 

Share this post


Link to post
Share on other sites
Guest
This topic is now closed to further replies.

INFORMACIÓN BÁSICA SOBRE PROTECCIÓN DE DATOS

Responsable: Sergio Andrés Celemín

Finalidad: Moderar y responder comentarios de usuarios. Recuerda que la información que facilites es pública, y los datos que incluyas los leerá cualquier visitante de esta web, así como el avatar que poseas.

Legitimación: Consentimiento del interesado.

Destinatarios: Hetzner Online GmbH.

Derechos: Puedes ejercitar en cualquier momento tus derechos de acceso,
rectificación, supresión, oposición y demás derechos legalmente establecidos a
través del email sergio@ayudaexcel.com.

Información adicional: Encontrarás más información en la política de privacidad.




  • Posts

    • Hola buenas tardes amigos de Ayuda Excel Estoy parado en una macro que no he podido resolver a ver si pueden ayudarme. Gracias de antemano por su colaboración. Les explico. El archivo tiene varias hojas, Una se llama control enero, control febrero y asi sucesivamente La macro la voy a ejecutar en cada hoja Lo que debe hacer la macro es: 1)      copiar la celda A3, que es una formula, de la Hoja CONTROL 1  a la primera fila disponible de la columna A5 de la Hoja Control General. 2)      Copiar la celda j22 de Control 1 (que es una formula), como valor sin negrita a la primera fila disponible de F5 de la Hoja Control general. 3)      Hacer una botón para ejecutar la macro, teniendo en cuenta que solo debe ejecutarse si la celda j25 de la Hoja Control 1 es igual a SI. Por el contrario si es igual a NO, no debe permitir la ejecución de la macro. Pudiera ser advertido al usuario mediante un MSGBOX. 4)      Por último la posición de las celdas J22 y j25 pueden variar de hoja a hoja según la información introducida en cada hoja. Agradecidos de antemano por la colaboración prestada. LB Anexo archivo CONTROL GENERAL.xlsm
    • Un nuevo aporte para finalizar el proyecto Tengo el archivo funcionando cuando el usuario requiere solo una hoja activa. cuando se requiere que mas hojas estén activas no funciona. Ejemplo el user marco pass 123 debería tener activas las hojas "Registro, Registro1, Registro2". Con el codigo actual solo funciona la hoja "Registro" Ademas un favor extra que dependiendo el usuario que inicie sección ponga el Nombre de la columna "Nombre" en ("01.Adeudos" tabla "usuarios") del archivo en ACCESS y lo pegue en la hoja "Principal" celda C7 del archivo de EXCEL. en el siguiente enlace esta un ejemplo del proyecto. https://mega.nz/file/YRpRXZTL#Uynlq0oW77Eo0VbME26yYkKc1g7jXXu9w1AwfbFlRp0 De nuevo muchas gracias por toda la ayuda en el proyecto. Saludos
    • Hola buenas tardes amigos de Ayuda Excel. Quería preguntar si hay alguna manera de copiar y pegar una celda que tiene un prefijo en otra celda pero que el prefijo APAREZCA en la barra de fórmula. Gracias
    • Todo en la misma hoja.   Filtro Antoni.xlsm
    • Hola @Persal95 Una posible solución, Espero que sea de utilidad. Nos comentas.EJEMPLO AYUDA EXCEL 1.1.xlsx
  • Recently Browsing

    No registered users viewing this page.

×
×
  • Create New...

Important Information

Privacy Policy