Jump to content

SALAVERRINO

Members
  • Content Count

    282
  • Joined

  • Last visited

About SALAVERRINO

  • Rank
    Advanced Member

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. Buenas noches @Gerson Pineda desde ya agradezco el apoyo brindado, por lo que daria como tema solucionada. Saludos.
  2. Buenas tardes amigo @Gerson Pineda, la macro esta esta direccionando a la pestaña RESUMEN mas no a la pestaña BOLETA que es la que debe imprimirse, nuevamente agraedezco el apoyo brindado, una nota adicional esta misma macro se puede acondicionar para que se imprima en PDF en forma masiva y con el nombre BOLETA. Saludos.
  3. Buenos tardes a los integrantes de este foro, en esta ocasión recurro a uds para solicitarle su apoyo y colaboración, en como mejorar esta macro, la cual me permite realizar una impresión de boleta de pago de 1 en 1 y ahora lo que requiero es que bajo este código puede grabarlo en PDF en forma masiva o si se puede grabar por cada DNI del trabajador, adjunto detalle: En la Hoja PLANILLA, se encuentra la base de datos En la Hoja RESUMEN, mediante una lista desplegable en la celda C1, se lograr filtra los DNI como valores únicos En la Hoja BOLETA, mediante formulas se logra transponer los datos que deberán ser impreso por cada trabajar su remuneración de la lista desplegable. Lo que se prende es que el valor de la celda C1 (lista desplegable de la hoja resumen) vayan variando de 1 en 1, para que en la hoja boleta se imprima trabajador por trabajador hasta el ultimo registro (DNI) de esa lista desplegable, espero haberme explicado lo que pretendo obtener como resultado. Gracias por su apoyo y colaboración. Option Explicit Sub Imprimir() Dim Lin As Long Sheets(BOLETA).Select Lin = 8 While Sheets(PLANILLA).Range(BS & Lin) <> "" Sheets(RESUMEN).Range(C1) = Sheets(PLANILLA).Range(BS & Lin) DoEvents ActiveWindow.SelectedSheets.PrintOut _ Copies=2, _ Collate=True, _ IgnorePrintAreas=False Lin = Lin + 1 Wend End Sub link de archivo (modulo) https://drive.google.com/file/d/1uL1XaFLqIy2ShWiXOhvwsKI4YEBvnkmi/view?usp=sharing
  4. Buenos días @Haplox desde agradezco el aporte brindado y era lo que esta requeriendo, por lo que daria como TEMA SOLUCIONADO. Gracias.
  5. Buenos días a los integrantes de este prestigioso foro, esta ocasión recurro a uds para que me ayuden con una macro o quizás mejorarla, la idea que tengo es extraer toda la información (conservando su formato) de la pestaña CONSOLIDADO y que se guarde automáticamente en la carpeta donde se está trabajando, el nombre del archivo que se extrae esta en hoja PLANILLA celda D2, fecha y hora y con la extensión “.xlsx” (CONSOLIDADO CYPRESS ARROW2 2-5-2019 18-20-56 HRS.xlsx), como se aprecia en la macro que describe a continuación. Adjunto link de archivo. https://drive.google.com/file/d/1_SVxDlLOyuGGmpIih5d-M4wYJSm6S7La/view?usp=sharing Modulo 5: Sub GuardarComo30072015() Dim ncorr As String With Application .ScreenUpdating = False NOMBRE = ThisWorkbook.Name carpeta = ThisWorkbook.Path filaa = carpeta & "\" & NOMBRE ncorr = Format(Hoja1.Range("D2").Value, "000") A = " " & Day(Date) & "-" & Month(Date) & "-" & Year(Date) & " " & Hour(Time) & "-" & Minute(Time) & "-" & Second(Time) & " HRS" .DisplayAlerts = False .EnableEvents = False If nombrar = vbYes Then filab = carpeta & "\" & "plantilla electronica1" ActiveWorkbook.SaveAs Filename:=filab, FileFormat:=xlOpenXMLWorkbookMacroEnabled Else filab = carpeta & "\" & "CONSOLIDADO " & ncorr & UCase(titulo) & A Call Elimina_hojas ActiveWorkbook.SaveAs Filename:=filab, FileFormat:=xlOpenXMLWorkbookMacroEnabled ActiveWorkbook.Close End If .EnableEvents = True .DisplayAlerts = True xnombre = ActiveWorkbook.Name Workbooks.Open filaa vuf = Range("B" & Rows.Count).End(xlUp).Row Range("B8:AQ" & vuf).ClearContents Workbooks(xnombre).Close .ScreenUpdating = True End With End Sub Sub Elimina_hojas() Dim Vec, Elim, ws As Worksheet ' Vec = Array("PLANILLA", "RESUMEN", "BOLETA", "CONSOLIDADO", "DATA", "EXPORTA", "REPORTE BOLETAS", "TELECREDITO JUDICIAL", "TELECREDITO", "DESCUENTO", "MENU", "SORT", "NAVI", "RECIBO", "TABLA AFP") ' Estas son las hojas que se mantienen. ' ReDim Elim(0 To 0) For Each ws In Worksheets If IsError(Application.Match(ws.Name, Vec, 0)) Then ReDim Preserve Elim(1 To 1 + UBound(Elim)): Elim(UBound(Elim)) = ws.Name End If Next Application.DisplayAlerts = False: On Error Resume Next Worksheets(Elim).Delete On Error GoTo 0: Application.DisplayAlerts = True MsgBox "Finalizando....." Sheets("MENU").Activate Range("B8").Select End Sub Desde ya agradezco su apoyo y colaboración.
  6. Buenas tardes a los integrantes de este prestigioso foro, en esta ocasión recurro a uds para solicitar su apoyo en como mejorar las siguientes formulas que detallo a continuación: formula desarrollada en celda Q2: =SI.ERROR(SI(G2="";"";SI(G2=AAA;BUSCARV(G2;BASE_AUXILIAR!$B$8:$B$47;1;FALSO);));E2) Utilice: Nombre de Rango: AAA (base_auxiliar D2:D7) y para BUSCARV (base_auxiliar B8:B47) y se hay mejor opción de mejora acepto ideas. Y es ahí donde quisiera usar Función SI y Función BUSCARV como se aprecia la formula en celda S2 o quizás haya otro método. FUNCION SI CON BUSCARV.xlsx
  7. Buenos días @avalencia la PC la trabajo únicamente yo en modo personal, y lo que paso es actualizaron el windows y office automáticamente, y como indicas ahi fue el problema para ejecutarse la macro, la única forma sería desinstalar el office y volver a instalar y esperar que funcione el archivo y sino pasa nada ahi, ya seria windows.
  8. Buenas noches @avalencia, adjunto link (imágenes) del error al ejecutar la macro, pero lo curioso es que estos archivos inicialmente se ejecuto en mi pc sin ningún problema con windows 10 (64 bits) y office 365 (32 bits) un aproximado de 2 semanas y luego ya comencé con los errores y por la tarde lo ejecute en otra maquina con windows 10 (64 bits) y office 2016 (32 bits) y si se ejecuto sin inconveniente alguno. Saludos y espero comentarios. https://drive.google.com/file/d/1bK2jAlIxr4kjOEYNrv7-zRLaZwGsVwKI/view?usp=sharing https://drive.google.com/file/d/1W9rch6cetE7FP2laZHXiT0XuAI79aCe1/view?usp=sharing
  9. Buenos días a los integrantes de este foro, en esta ocasión recurro a Uds, para que brinde su apoyo en como solucionar el ERROR en la siguiente instrucción que detallo, los archivos estuvieron trabajando sin ningún problema, pero haces 2 días comenzó con a fallar Error ejecución. Set objWord = CreateObject("Word.Application") Siendo la macro original: Sub tablaaword() patharch = ThisWorkbook.Path & "\CARTA FAPOSA.docx" Set objWord = CreateObject("Word.Application") objWord.Visible = True objWord.documents.Add Template:=patharch, NewTemplate:=False, DocumentType:=0 Worksheets("TELECREDITO").Range("A1:D7").Select Selection.Copy textobuscar = "[tabla_excel]" objWord.Selection.Move 6, -1 'moverse al principio del documento objWord.Selection.Find.Execute FindText:=textobuscar While objWord.Selection.Find.found = True 'reemplaza el texto, y busca si hay otro para reemplazarlo objWord.Selection.PasteExcelTable False, True, False objWord.Selection.Move 6, -1 objWord.Selection.Find.Execute FindText:=textobuscar Wend objWord.Activate End Sub Desde ya agradezco su apoyo y colaboración. Saludos.
  10. Hola @Haplox gracias por el aporte brindado el cual me ayudo mucho a tener una copia de lo que quería y conservando la misma información dentro del mismo archivo, porque había echo varios intentos y nada, lo único que gane es si tengo otro archivo abierto este se vuelve abrir por si solo y eso no es lo requerido, por lo que con esta solución daría como TEMA SOLUCIONADO. Gracias.
  11. Buenas tardes a los integrantes de este foro, pude solucionar el problema de como Combinar datos de Tabla de Excel a Word, para lo cual comparto la rutina. Anterior: Worksheets("TELECREDITO").Range("A1:D7").Select Actual: Worksheets("telecredito").Range("a1").CurrentRegion.Copy por lo que daria como TEMA SOLUCIONADO.
  12. Buenas tardes a los integrantes de este foro, recurro a uds para que me brinde su apoyo en como hacer que en la Barra de estado de Excel, muestre el tiempo de ejecucion que se describe en la macro que se adjunta, ya que he visto ejemplo donde mencionada por "Porcentaje", desde ya agradezco su apoyo y colaboración. Sub Reloj() Application.ScreenUpdating = False ActiveWorkbook.Save Application.OnTime Now + TimeValue("00:00:30"), "reloj" Application.ScreenUpdating = True End Sub Saludos.
  13. Buenas tardes a los integrantes de este prestigioso foro, en esta ocasión de recurro a uds, para que me brinden su apoyo en como mejorar la macro que detallo los códigos VBA y lo que se pretende es grabar en forma automática una hoja determinada (pestaña "BASE"), desde ya agradezco su apoyo. ThisWorkbook: Private Sub Worbook_Open() Application.OnTime Now + TimeValue("00:01:00"), "savebook" End Sub Módulo21: Sub savebook() ActiveWorkbook.Save Application.OnTime Now + TimeValue("00:01:00"), "savebook" End Sub link del programa: https://drive.google.com/file/d/1oF-UFzIkB2Z5Nhxk70OTxUqzS7XUAciW/view?usp=sharing
  14. Buenos días a los integrantes de este foro, en esta ocasión recurro a Uds, para que brinde su apoyo en como mejorar la siguiente macro que describo a continuación, dicha macro permite exportar dicha información a una plantilla en diseñada Word, pero mi problema esta en dicha tabla no solamente puede contener 6 filas sino muchas en la sentencia: Worksheets("TELECREDITO").Range("A1:D7").Select y lo que se requiere es dicha tabla que está en Excel exporte la cantidad de filas que contenga a la plantilla del archivo Word en forma automática y que el siguiente párrafo del archivo Word no sea alterado para lo cual adjunto imagen, también quisiera saber como puedo que la macro se ejecute desde una pestaña diferente, ya que esta macro solo se puede ejecutar desde la misma pestaña. Espero haber explicado de lo que se requiere obtener como resultado. Sub tablaaword() patharch = ThisWorkbook.Path & "\CARTA FAPOSA.docx" Set objWord = CreateObject("Word.Application") objWord.Visible = True objWord.documents.Add Template:=patharch, NewTemplate:=False, DocumentType:=0 Worksheets("TELECREDITO").Range("A1:D7").Select Selection.Copy textobuscar = "[tabla_excel]" objWord.Selection.Move 6, -1 'moverse al principio del documento objWord.Selection.Find.Execute FindText:=textobuscar While objWord.Selection.Find.found = True 'reemplaza el texto, y busca si hay otro para reemplazarlo objWord.Selection.PasteExcelTable False, True, False objWord.Selection.Move 6, -1 objWord.Selection.Find.Execute FindText:=textobuscar Wend objWord.Activate End Sub https://drive.google.com/file/d/1709P9wNFjehbOrElGqBqe4558Fufp-ko/view?usp=sharing https://drive.google.com/file/d/103fAoh-NhaGpD40YO3uQEhtQeCtT1BWy/view?usp=sharing https://drive.google.com/file/d/1mNRhxmC51bdZaS4GmwFdgXxUlEhgYEoz/view?usp=sharing Y desde ya agradezco su apoyo y colaboración.
  15. Buenos días @johnmpl @Gerson Pineda @Snake, por los aportes brindados, los cuales me ayudaron mucho a solucionar le problema que tenia, por lo que daría como TEMA SOLUCIONADO.
×
×
  • Create New...

Important Information

Privacy Policy

Ayuda Excel - Madrid, Madrid, ES - Valorada por 5112 personas - Aprender Excel - Total: 4.7 / 5