Jump to content

Leaderboard


Popular Content

Showing content with the highest reputation since 12/18/2019 in all areas

  1. 4 points
    Al menos danos una pista de lo que necesitas. Aquí solo @Silvia tiene bola de cristal, el resto de los mortales necesitamos algo más de información
  2. 3 points
    ¡Por Dios, que soy ateo! 😂😂
  3. 3 points
    Hola Wiru, con un simple me dió verguenza decir que a pesar de que funcionaba la solución , era incapaz de integrarla en mi hoja, lo hubiéramos comprendido todos perfectamente y hubieras obtenido ayuda de muchos de los miembros del foro. Ahora que faltes al respeto a un miembro del foro y que pongas en duda su dedicación a ayudar a los demás desinteresadamente es imperdonable, simplemente te estas cerrando muchas puertas. Por supuesto si estas palabras significan lo que yo entiendo al leerlas creo que te has equivocado de lugar, veo conveniente que recapacites y te dirijas a los miembros del foro con respeto y sin menosprecio. Y por cierto creo que muchos miembros de este foro consideramos al Maestro Antoni uno de los Dioses de este mundo de Excel, así como uno de los mayores contribuidores en resolución de dudas, por lo que me resulta muy difícil entender tu respuesta ante su pregunta.
  4. 3 points
    Hola a ambos: "Joven" @Gerson Pineda, con XML he incluso "ocultado" imágenes y otras cosas dentro de un archivo de Excel que pueden ser usadas por el VBA, pero, no, tampoco hay forma de ocultar el VBA. Igual, como siempre decimos, no existe forma en la cual se garantice en un 100% que las macros no puedan ser vistas, sea usando el mismo VBA y su clave, ofuscadores, editores hexadecimales o programas que convierten en *.exe, todas esas formas, absolutamente todas, pueden ser revertidas. La única infalible es usar VSTO, pero claro, aunque tiene cierta similitud, no es que sea igual al VBA y sí o sí se tiene que "instalar" el archivo Excel (por las librerías, objetos ActiveX y otros que usa). Claro, no es que los usuarios del día a día puedan desproteger/desbloquear todo, pero siempre habrá un Valencia que lo haga 🤪 Ah, un último comentario, Access sí es un sistema gestor de base de datos, a diferencia de Excel que es una hoja de cálculo. En realidad Access puede parecer más difícil, pero sinceramente la gente al final se complica con Excel para lograr ciertas cosas con datos que con Access es más rápido. Saludos
  5. 2 points
    ´Sí, que los demas te hagan las cosas por el morro... Esta si que es buena 🤦‍♂️
  6. 2 points
    Requiero de un CONSOLIDADO pero que me refleje los datos de una forma diferente a la presentada en el fichero adjunto...
  7. 2 points
    Estimada Silvia: Acabo de probar las formulas, y funcionan tal como lo esperaba...!!! La solidaridad que ustedes promueven, es un sentimiento de unidad que nos mueve a seguir aprendiendo, a la vez, me doy cuenta de lo importante que es transmitir el conocimiento. Agradezco tu valioso tiempo, interés y apoyo en darme la solución a mi caso. Doy el tema por finalizado. Saludos cordiales, Luchito.
  8. 2 points
    Otra opción solo con Enter (no Control+Shift+Enter), para cantidad de Trabajadores por día. =CONTAR(1/FRECUENCIA(1+('Bd Dic'!$A$2:$A$60=A2)*COINCIDIR('Bd Dic'!$C$2:$C$60,'Bd Dic'!$C$2:$C$60,),FILA('Bd Dic'!$A$2:$A$60)-1))-1 mi separador de argumentos es la coma, si el tuyo es otro, corriges. *** Me olvidé de decir que cambié el nombre de la hoja, debido a que la formula se hacía muy grande... saludos, Silvia
  9. 2 points
    Hummm, lo extraño es que no has comentado esas formas... Saludos.
  10. 2 points
    Lo escuche pero no lo intente En realidad no creo que exista algo seguro, no dejo de dormir por eso Saludos
  11. 2 points
    Hola He modificado el nombre del tema, para la próxima, titula el tema de acuerdo al problema, ademas si el archivo es muy grande, debes hacerlo publico para que se pueda bajar desde el Drive, de lo contrario es posible que no recibas ayuda Saludos
  12. 2 points
    Aquí tienes una opciónCiclo.xlsm
  13. 2 points
    Hola segalo Para entenderte mucho mejor, en una segunda hoja, plasma los resultados [manualmente], pero explica en la HOJA, de donde viene cada resultado y el porque, de esta forma se entenderá realmente que es lo que deseas hacer, porque lo que yo logro interpretar, es que quieres ir filtrando cada columna e ir sumando esos valores, pero no me queda claro donde se debe poner ese resultado Saludos
  14. 2 points
    Hola @giordancisco, desde el editor de Power Query seleccionas una de las columnas con los saltos de líneas, click derecho en "Dividir columna -> por delimitador", en el cuadro debes expandir "opciones avanzadas" y seleccionar "Filas", debe quedar de esta forma: Aceptar y listo, debes realizar este paso en cada columna con saltos de línea. Saludos.
  15. 1 point
    jose71

    ANSWERED Descontar stock de ubicación

    Buenas tardes, Doy por cerrado el tema. Muchas gracias por tu aporte Silvia...🥰
  16. 1 point
    Antoni

    ANSWERED separar pares

    ¿Pero tanto cuesta hacer un copiar/pegar?
  17. 1 point
    Saludos @segalo, te dejo el archivo con tres opciones. 1.- La primera es la macro tuya, que le coloque un opción para que NO te de el error. 2.- La segunda, en esencia hace lo mismo, solo que optimizado, y otra cosa, en la columna A colocas el numero del filtro a la que pertenece esa fila cierto?, si es asi (y que fue lo que entendi de tu macro), aqui esta bien, pero tu macro la coloca mal, revisa 3.- y una opcion sin usar el filtro automático suerte Ciclo.xlsm
  18. 1 point
    Antoni

    ANSWERED Macro en barra de desplazamiento

    Como estamos en Navidad 🎅 y no es cuestión de enfadarnos, asigna esta macro a la barra de desplazamiento (Selecciona la barra de desplazamiento\Click derecho\Asignar macro). Sub Barra() Application.ScreenUpdating = False ActiveSheet.Shapes.Range(Application.Caller).Select Select Case Range("A1") Case "BC": Selection.Max = 1000 Case "BCE": Selection.Max = 1350 Case "BV": Selection.Max = 1700 Case "BVE": Selection.Max = 2050 Case "BF": Selection.Max = 2100 Case "BFE": Selection.Max = 2750 End Select ActiveCell.Select End Sub Por cierto, quien te contestó en todoexcel.com, fui yo. 😁
  19. 1 point
    TREBUR

    Ordenar datos de forma más eficiente

    Buenas tardes, Tengo una data extensa que resumí para efectos del ejemplo que aquí anexo. Sucede que no se si existe alguna manera (ya sea macro u otras funciones) de ordenar esos datos de forma diferente, o sea... que los mismos se puedan mostrar con más claridad... organizar.xlsx
  20. 1 point
    Y además ya te han dado solución aquí: Macro sobre barra de desplazamiento ¿A que viene preguntar lo mismo otra vez?
  21. 1 point
    Haplox

    ANSWERED Macro en barra de desplazamiento

    @Wiru , para eso justamente esta la función Select Case. Busca la ayuda en la red y si te lías vuelve a preguntar
  22. 1 point
    Hola, Ya que es una duda especifica... Excel no sabe que es H3 Te falto poner el Set H3 = Sheets("RESUMEN") antes de ese linea donde te da error. Saludos.
  23. 1 point
    Luis paz

    ANSWERED MACRO REQUIERE UN OBJETO

    Remplaza H3.TextBox1.Value = "" por Me.TextBox1.Value = ""
  24. 1 point
    Luis paz

    Ordenar datos de forma más eficiente

    organizar.xlsx
  25. 1 point
    Haplox

    Columnas meses y fechas

    Últimamente me parezco a Perpito Grillo... . A ver @majoras , en tu archivo no hay ningún form ni macro. De hecho es un fichero ".xlsx"
  26. 1 point
    MAURO_1512

    ANSWERED separar pares

    amigo excelente solo te pido el ultimo favor para dar el tema solucionado quise agregar una columna mas al lado de la fecha y no pude deja de funcionar el codigo, me puedes ayudar para finalizar mi archivo te lo agradecería mucho
  27. 1 point
    JSDJSD

    ANSWERED Reemplazar patrón

    Hola mdomfu, prueba el adjunto haber si es lo que estas buscando. Prueba1mdomfu.xlsm
  28. 1 point
    Luis paz

    ANSWERED Reemplazar patrón

    Podrías usar una formula, en lugar de una macro: =IZQUIERDA("CELDA DEL DATO",10) =EXTRAE("CELDA DEL DATO",1,10) Comenta si te sirve
  29. 1 point
    "Abuelo" @avalencia como vas!🤭 Como lo dices, yo también leí que con Access era posible, pero es que desde el momento que abres una instancia de Excel, todo o casi todo es posible ver 😅... por eso no me preocupo de ocultar tanto los proyectos que elaboro 🙄 PD: que esta época sea de mucha armonía, paz y felicidad y amen-se unos a otros! Saludos!
  30. 1 point
    Haplox

    Filtrar datos por fecha

    Toc. toc, toc... ¿ @doncanela ?
  31. 1 point
    joselica

    EVITAR BORRAR FORMULA

    Buenas tardes Luis Paz, Interesante y útil tu propuesta. Tal como he mencionado antes creo que el tema lo he explicado mal. Como veras en la hoja "BD" tengo 3 datos: "PRESUPUESTO"; "CANCELADO" y "CONFIRMACIÓN". Con tu propuesta me trae los datos de forma tal y como esta guardada en la hoja "BD" sin que me borre la formula. A partir de este punto todas las modificaciones que hago sobre los tipos de reserva: "CONFIRMACIÓN" o "CANCELACIÓN" que he buscado mediante el botón "MODIFICAR" es decir: - Una reserva tipo: "PRESUPUESTO" del día cuando se confirmo, si lo cambio a una reserva tipo "CANCELADA" o "CONFIRMADA" que me guarde las modificaciones con la fecha de hoy en la columna "E" de la hoja "BD". - Una reserva tipo: "PRESUPUESTO" o "CONFIRMACIÓN" del día cuando se confirmo, si lo cambio a una reserva tipo "CANCELADA" que me guarde las modificaciones con la fecha de hoy en la columna "E" de la hoja "BD". Para todas las reservas tipo "CONFIRMADA" si se hacen modificaciones sobre los datos de la reserva (me refiero a cambios por fecha de entrada o salida, numero de habitaciones o personas, pensiones, etc... que me mantenga la fecha cuando se ha confirmado por primera vez la reserva. De esta manera se buscara de guardar las fechas correctas de las "CONFIRMACIONES " o "CANCELACIONES" las de tipo "PRESUPUESTO" si no se hace ninguna intervención una vez pasado el plazo de validez tras consultar con el cliente lo borrare si no interesa o lo pondré como "CANCELADA". Espero haberme hecho entender. Gracias. Un saludo a todos.
  32. 1 point
    Luis paz

    Búsqueda de datos, formulario

    Lo siento, para descargarlo solicita que acceda con mi correo, no suelo hacerlo. Otros podrán apoyarte, Saludos!
  33. 1 point
    Claro que sí @luigi_dt, Te adjunto el archivo Budget 2015 (1).xlsx
  34. 1 point
    Estimado, estabas por buen camino entonces, Han de haber otras opciones, no te planteo la siguiente:
  35. 1 point
    Puedes usar el formato condicional. Es lo que buscabas?
  36. 1 point
    No he entendido nad lo que necesitas, y menos con una imagen . SUbe tu archivo, explicando en él bien las cosas, sino es imposible ayudar
  37. 1 point
    Ajá, dale, tienes razón. Coloca esto en el módulo del libro (borra lo que tienes ahora): Private Sub Workbook_BeforeClose(Cancel As Boolean) ActiveWorkbook.UpdateLinks = xlUpdateLinksNever End Sub Private Sub Workbook_Open() Workbooks.Open Filename:=ThisWorkbook.Path & "\2.xlsx", Password:="123" Workbooks("2.xlsx").Close False End Sub Ahora guárdalo y ciérralo, abre el archivo llamado "2", cambia cualquier valor de los que "alimentan" los vínculos, cierra dicho libro y vuelve a abrir el archivo de las macros y vínculos. Ahora ya no debería preguntarte nada. Saludos y discúlpanos el lapsus.
  38. 1 point
    Snake

    ANSWERED Ayuda con una formula

    Hola: Se me ocurre así: =SI(E4<>"completa",SUMAPRODUCTO((H3:I3=C4)*(G4:G5=C2)*H4:I5)/2,SUMAPRODUCTO((H3:I3=C4)*(G4:G5=C2)*H4:I5)) Mi separador de argumentos es la "," cámbialo si utilizas otro Saludos..
  39. 1 point
    tierra_pampa

    Macro-Inventario

    @eoscar88 Espero que sirva, creo que hace todo lo que necesitas. Descargar en Dropbox Recuerda que si te ayudó el aporte recibido, puedes agradecerlo con un click en el corazón que se encuentra en la parte inferior derecha.
  40. 1 point
    johnmpl

    Campo calculado en tabla dinámica

    ¡Hola, a todos! Dejo un aporte más utilizando DAX. Creo que no se fijaron bien en "la suma de los promedios" al final. Puede servir como ejemplo de cómo se cambia el contexto de un cálculo dentro de una fórmula. ¡Bendiciones! SumaPromediosDAX.zip
  41. 1 point
    Hola @DiegoPC Ese tipo de alumn@ es valioso!😉, pues de eso se aprende! Bien al tema, las TD son limitadas en el sentido de hacer cálculos avanzados, con los campos calculados, se puede hacer operaciones sencillas, por lo que no soportan muchas funciones Por lo que escribes, puedo determinar que no manejas los Power de Excel [Power Query, Power Map, Power Pivot], pues bien este ultimo, es el que tu necesitas para responder a esa valiosa alumna Te explico "groso modo": Para poder hacer estos cálculos y muchos en nuestras TD, se debe recurrir al modelo de datos, que esta dominado por Power Pivot de Excel Primero se debe convertir nuestros datos a TABLA, para poderla cargar al MD [modelo de datos] Para cargarla, te posicionas en la tabla, te vas a la ventana de PP y das clic en "Agregar al modelo de datos", una vez cargada, te aparecerá la ventana de PP [power pivot] Luego solo das insertar TD, pero usando el modelo de datos, en la ventana aparecerá como activar esa opción En el panel derecho de los campos de TD, podras observar, los que he creado con DAX en Power Pivot, son en total 4, pero para mostrar y obtener los cálculos que necesitamos solo utilizo 2 PP maneja un sin fin de funciones, estas son denominadas funciones DAX =Data Analysis Expressions [Expresiones para análisis de datos], es un lenguaje especial para el análisis moderno, de grandes cantidades de datos, millones; con este lenguaje las TD, dejaron de ser simples, pues hoy por hoy, seria casi imposible manejar y calcular millones de datos en las tablas a ese nivel, PP no es tan nuevo pero tampoco tan viejo, eso si, llego para quedarse y desde hace unos 5 años aproximadamente, esta dando mucho de que hablar, ademas que se actualiza regularmente! En cuanto vayas entendiendo un poco sobre PP y DAX, te darás cuenta que es un mundo aparte sobre como hemos manejado y conocido Excel y todas sus herramientas, es mas Microsoft hace un par de años juntó estos Power, para lo que ahora se conoce como Power BI, es una bomba y pedazo de plataforma para montar grandes modelos de datos y conectarlos a casi cualquier fuente de datos que existe Te he dado toda esta explicación, para que tanto tu, como todos en el foro, lo lean y tomen en cuenta que Excel, dejo de ser, solo funciones y VBA, a pasado a otro nivel, no va retroceder y vamos detrás de ello! Ojo para poder usar todo estos Power, se debe tener la versión 2010 o superior de Excel Te adjunto el archivo para que puedas comprobar los resultados, si tienes dificultades, pues trataremos de colaborar en lo que podamos Saludos! Tabla dinamica - Power Pivot DAX_GP.zip
  42. 1 point
    GabrielRaigosa

    Fórmula para conteo de días

    Una fecha es un número. A una fecha mayor se le resta una fecha menor y el resultado es el número de dias entre las dos fechas, "para incluir los extremos" es que se le suma +1. El que una fecha final este en el año actual y la fecha inicial en el año anterior no afecta en nada el resultado. Saludos,
  43. 1 point

    Version 1.0.0

    147 downloads

    aplicativo para control de inventarios con codigo de barra tanto lectura como elaboracion de los mismos
  44. 1 point

    Version 1.0.0

    54 downloads

    Saludos Este es un inventario para materiales gastables que realice con la ayuda de unos cuantos colegas aqui en el foro. Basicamente sirve para llevar un control de materiales gastables o cualquier producto que tengan entradas y salidas frecuentes. Te ayudara a saber lo que tienes en existencia en tiempo real (siempre y cuando hagas todos los registros de entradas y salidas), y llevar un control del mismo, en que fecha entro, cuando salio, a quien y/o que departamento se le entrego. De este mismo inventario, lo modifique y saque una segunda version ajustada a otra necesidad que tenia, que era llevar un inventario de piezas. Las macros son sencillas, pueden leerlas y tratar de modificarlas para ajustarla a sus necesidades. Espero les sirva de ayuda.
  45. 1 point
    mjrofra

    Como reducir el tamaño de un archivo

    ¡Hola a todos! He visto que una pregunta frecuente es acerca de cómo reducir el tamaño de un archivo. Bueno, hay una causa en específico que puede afectar considerablemente el tamaño de un archivo: El rango de celdas que Excel guarda como usado en cada hoja. Se puede encontrar fácilmente la última celda del rango usado presionando Ctrl+Fin en cualquier hoja. El problema es que en muchos casos la 'última celda' está mucho más allá del rango 'real' de celdas usadas... esto por lo general se debe a aplicar formatos a celdas que luego no se van a usar, lo que hace que luego Excel guarde esas celdas como parte del rango usado y así crece 'misteriosamente' el tamaño del archivo. Este problema en particular me llamó la atención porque he visto muchos archivos que se suben en servidores por fuera del foro porque son demasiado grandes para adjuntarlos acá, pero al abrirlos en algunos casos he visto que son archivos con pocos datos, pero con tamaños descomunales... esto debido a que se está guardando como rango usado en cada hoja una cantidad considerable de celdas que no hacen parte del rango 'real' usado. Bueno, no sé si la explicación sea clara. En todo caso, pensando en algunos de esos casos, escribí esta macro que deberá ayudar a reducir considerablemente el tamaño de dichos archivos 'limpiando' el rango usado y dejando sólo del tamaño del rango 'real' usado. Esta es el código: Edito: La macro que propuse inicialmente, gracias a los aportes de quienes han participado en este tema, ha sido mejorado. Para evitar confusiones, copio acá el código final: Sub Limpiar_rangos() Dim hj As Excel.Worksheet Dim copia$, ffin&, cfin&, TI&, TF& copia = crear_copia(ActiveWorkbook) MsgBox "Se ha creado una copia: " & vbLf & copia, vbInformation With ActiveWorkbook TI = VBA.FileLen(.FullName) For Each hj In .Worksheets ffin = 1 cfin = 1 With hj On Error Resume Next ffin = .UsedRange.Find(what:="*", _ LookIn:=xlFormulas, _ SearchOrder:=xlByRows, _ SearchDirection:=xlPrevious).Row cfin = .UsedRange.Find(what:="*", _ LookIn:=xlFormulas, _ SearchOrder:=xlByColumns, _ SearchDirection:=xlPrevious).Column On Error GoTo 0 If .ProtectContents Then If MsgBox("La hoja " & .Name & " se encuentra protegida." & vbLf & vbLf & _ "No se podrán limpiar los rangos de esta hoja a menos que se desproteja." _ & vbLf & vbLf & "¿Desea desprotegerla antes de continuar?", vbYesNo, _ "¡Hoja protegida!") = vbYes Then If Desproteger(hj) Then Limpiar hj, ffin, cfin Else MsgBox "No se ha desprotegido la hoja.", vbCritical, "¡Clave incorrecta!" End If End If Else Limpiar hj, ffin, cfin End If End With Next hj .Save TF = VBA.FileLen(.FullName) End With MsgBox "Tamaño original: " & VBA.Format(TI, "#,##0") & " bytes." & vbLf & vbLf & _ "Tamaño final: " & VBA.Format(TF, "#,##0") & " bytes." & vbLf & vbLf & _ "El archivo se redujo en: " & VBA.Format(TI - TF, "#,##0") & " bytes" & _ " (" & VBA.FormatPercent(Abs(TI / TF - 1), 2) & ")." End Sub Private Sub Limpiar(ByVal hj As Excel.Worksheet, ByVal ffin As Long, ByVal cfin As Long) With hj With .Range(.Cells(ffin + 1, 1), .Cells(.Rows.Count, 1)).EntireRow If .MergeCells = False Then .Clear End With With .Range(.Cells(1, cfin + 1), .Cells(1, .Columns.Count)).EntireColumn If .MergeCells = False Then .Clear End With End With End Sub Private Function crear_copia(ByVal Libro As Excel.Workbook) As String With Libro .Save crear_copia = .Path & Application.PathSeparator & VBA.Format(VBA.Now, "d-m-yy h-mm ") & .Name .SaveCopyAs crear_copia End With End Function Private Function Desproteger(ByVal hj As Excel.Worksheet) As Boolean On Error Resume Next hj.Unprotect Desproteger = Not VBA.CBool(Err.Number) On Error GoTo 0 End Function[/CODE] Reducir el tamaño de un archivo de Excel Reducir tamaño archivo.zip
  46. 1 point
    En este vídeo vemos como insertar el logo de nuestra empresa en nuestras hojas de cálculo para mejorar la presentación de las mismas.
  47. 1 point
    Este es mi primer pequeño aporte, de una solución que necesitaba por la que llegué a este foro. Private Sub Worksheet_Change(ByVal Target As Range) On Error GoTo ErrorTarget If Target.Cells.Count > 1 Then Target.Interior.Color = xlNone Target.ClearComments Exit Sub End If If Target.Value = "" Then Target.Interior.Color = xlNone Target.ClearComments Exit Sub End If If Intersect([A1:P10000], Target) Is Nothing Then Exit Sub For r = 2 To 10 If Target.Value = Sheets("Codigo").Cells(r, 1).Value Then Target.Interior.Color = RGB(192, 192, 192) Set comm = Target.Comment If Not comm Is Nothing Then Target.Comment.Delete End If Target.AddComment (Sheets("Codigo").Cells(r, 2).Text) End If Next r Exit Sub ErrorTarget: MsgBox "ERROR! sólo números" & Target.Column, vbCritical End Sub [/CODE] La idea obviamente la saque de este foro, y pues la publico por si a alguien le puede servir. que hace: - Posee el "error goto" para controlar el fastidioso mensaje de error frente a datos no adecuados. - si una celda se suprime, o si se alteran varias celdas simultaneamente (como por ejemplo para cuando se eligen varias y se presiona suprimir), se borra el formato de la celda y se borran los comentarios. - De la hoja "Codigo" se evalua si el valor ingresado en la hoja "hoja" coincide con alguno de la columna 1. Si no es asi, no hace nada. Si coincide, agrega como comentario el contenido de la celda de la columna 2 (primero evalua que el comentario no exista, si existe, lo borra. Para alguien experimentado es absolutamente trivial, pero para un novato como yo en macros que busque algo similar, puede servirle. Saludos, shunsho. ejemplo.xls
  48. 1 point
    Antoni

    Optimizar macro de Codigo de Barras

    Hola: Aquí te dejo la macro corregida para que puedas procesar todos los códigos que quieras en la columna A. Dado que es un proceso bastante lento (1 código/segundo mas o menos), he puesto un seguimiento en la barra de estado de Excel para que veas la situación de la ejecución. Saludos Code39 múltiple.xls
  49. 1 point
    Respuesta: Cerrar un formulario Userform al dar click en botón de comando Si el boton comando que indicas es el CommandButton1, el codigo seria: En caso de querer cerrarlo Private Sub CommandButton1_Click() End End Sub En caso de querer apagarlo (no se ve pero permanece cargado en la memoria) Private Sub CommandButton1_Click() UserForm1.Hide End Sub Espero que te sirva
  50. 0 points
    MAURO_1512

    ANSWERED separar pares

    esta excelente amigo así lo necesito para que me coloque el numero completo. quise adaptarlo para que coloque solo los dos numeros pero encontre este error ej numero 4545 coloca en la columna de 4 pone el 55 pero en la columna del 5 coloca 4545 pero si el numero es 4455 si lo coloca bien adjunto archivo pares (5).xlsm


  • Newsletter

    Want to keep up to date with all our latest news and information?
    Sign Up
×
×
  • Create New...

Important Information

Privacy Policy


CTA Templates.png