Saltar al contenido

soda1206

Miembro
  • Unido

  • Última visita

  1. soda1206 ha empezado a seguir a JasallBcn
  2. Buenas, alguien quien pueda ayudarme a solucionar lo del ajuste que está faltando en tema original?? por favor...agradezco cualquier comentario.
  3. Hola y muy buena tarde foreros, espero puedan ayudarme por favor!!! , tengo un código que he ido puliendo, pero falta un ajuste mínimo creo, ya que no está funcionando algo, que es guardar los cambios antes de cerrarse el o los archivos de formato CSV. El proceso es el siguiente: 1ro. Exporto desde otra plataforma muchos archivos en formato csv (separados por coma) que inician con el prefijo "Mapeo", ejemplo : Mapeo_Sistema1, Mapeo_Sistema2, etc) 2do. Ejecuto el código que pegaré más abajo, éste está guardado en mis macros "PERSONAL.XLSB" y la ejecuto de un botón. 3ro. Se ejecuta la macro, funciona bien, excepto la instrucción donde debe guardar cada uno de los archivos csv separados por coma antes que se cierren. este es el código que requiere el ajuste: (también adjunto archivo con datos de ejemplo) necesito de algún apoyo de parte de un experto del foro por favor, cualquier comentario estaré muy agradecido. Muchas gracias. Sub ConvertirTextoEnColumnasGuardarComoCSV() Dim wb As Workbook Dim ws As Worksheet Dim lastRow As Long Dim fileName As String Dim filePath As String Dim csvFilePath As String Dim mapeoFiles As Integer Dim filesProcessed As Integer mapeoFiles = 0 filesProcessed = 0 ' Contar el número de archivos que comienzan con "Mapeo" For Each wb In Application.Workbooks If Left(wb.Name, 5) = "Mapeo" Then mapeoFiles = mapeoFiles + 1 End If Next wb ' Recorrer todos los archivos abiertos For Each wb In Application.Workbooks fileName = wb.Name ' Verificar si el nombre del archivo comienza con "Mapeo" If Left(fileName, 5) = "Mapeo" Then filesProcessed = filesProcessed + 1 ' Recorrer todas las hojas del libro For Each ws In wb.Worksheets ' Obtener la última fila con datos en la hoja lastRow = ws.Cells(ws.Rows.Count, 1).End(xlUp).Row ' Convertir texto en columnas usando coma como delimitador ws.Columns("A").TextToColumns Destination:=ws.Columns("A"), DataType:=xlDelimited, _ TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, _ Tab:=False, Semicolon:=False, Comma:=True, Space:=False, _ Other:=False Next ws ' Guardar el archivo como CSV filePath = wb.Path csvFilePath = filePath & "\" & Left(fileName, Len(fileName) - Len(".xlsx")) & ".csv" Application.DisplayAlerts = False wb.SaveAs Filename:=csvFilePath, FileFormat:=xlCSV, CreateBackup:=False Application.DisplayAlerts = True ' Si es el último archivo, mostrar un mensaje antes de cerrar If filesProcessed = mapeoFiles Then MsgBox "Se procesaron y guardaron todos los archivos Mapeo como CSV. Se cerrará el último archivo ahora.", vbInformation End If ' Cerrar el archivo wb.Close SaveChanges:=False End If Next wb End Sub Mapeo_Sistema.csv
  4. Buen día foreros y muy buen día @JasallBcn, muchas gracias, eso era para dar con la solución que necesitaba, te agradezco mucho. Que tengas un excelente día y lo que está quedando de semana. Excelente!!!
  5. hola foreros, espero me puedan ayudar por favor, tengo esta macro creada con ayuda de IA y requiero lo siguiente, que cuando detecte la condición "REC" en columna SURVTYPE (Col D) del archivo "survey_test2.xlsm", se inserte una fila abajo, repitiendo toda la información de dicha fila, excepto el dato de columna DEPTH, este nuevo dato que lo obtenga de un archivo cerrado (no necesita estar abierto) que se llama "Update_Recomendaciones2.csv", y que está en la misma ubicación de carpeta, desde este archivo .csv obtenga el dato de "profundidad" que está en columna "PROF_REC" (Col D) [del archivo "Update_Recomendaciones2.csv"] reconociendo por el código HOLEID y extraer el dato solicitado, quedando finalmente de la siguiente manera : esto es lo que necesito como resultado pero sin embargo, no he podido ajustar la macro para que me resulte lo anterior. Esa es la ayuda que les pido, que me ayuden ajustar el código, ya que dice "no encontrado", no llama el dato que necesito (DEPHT del archivo csv) , sale así el resultado, pero no me sirve: agradezco mucho cualquier apoyo... survey_test2.xlsm Update_Recomendaciones2.csv