Alguien me podría ayudar a corregir este código que tengo para unir un rango de celdas (varias hojas) en una sola:
Sub UNIR()
Dim Resp As Byte
Resp = MsgBox("UNIR CONTENIDO", _
vbQuestion + vbYesNo, "Microsoft Excel")
If Resp = vbYes Then
MsgBox "Continuar proceso", vbExclamation, "Microsoft Excel"
Application.ScreenUpdating = True
For x = 5 To 17
Sheets(x).Select
[B28].CurrentRegion.Offset(2, 1).Resize([B28].CurrentRegion.Rows.Count - 2, [B28].CurrentRegion.Columns.Count - 1).Copy
Sheets("RV Consolidado").Select
[C7].End(xlDown).Offset(1, 0).PasteSpecial Paste:=xlPasteValues
Next
Application.ScreenUpdating = False
Range("C9").Select
Else
MsgBox "Proceso detenido", vbCritical, "Microsoft Excel"
End If
End Sub
El código se está posicionando partir del rango "B28" y moviéndose 2 espacios desde la hoja 5 hasta la hoja 17 del libro. Pero en la hoja número 16 está tomando el rango "B26".
Me podría ayudar a modificar este código para que una el rango correcto de todas las hojas.
Saludos Cordiales.
Featured Replies
Archivado
Este tema está ahora archivado y está cerrado a más respuestas.
Buenas tardes,
Alguien me podría ayudar a corregir este código que tengo para unir un rango de celdas (varias hojas) en una sola:
Sub UNIR() Dim Resp As Byte Resp = MsgBox("UNIR CONTENIDO", _ vbQuestion + vbYesNo, "Microsoft Excel") If Resp = vbYes Then MsgBox "Continuar proceso", vbExclamation, "Microsoft Excel" Application.ScreenUpdating = True For x = 5 To 17 Sheets(x).Select [B28].CurrentRegion.Offset(2, 1).Resize([B28].CurrentRegion.Rows.Count - 2, [B28].CurrentRegion.Columns.Count - 1).Copy Sheets("RV Consolidado").Select [C7].End(xlDown).Offset(1, 0).PasteSpecial Paste:=xlPasteValues Next Application.ScreenUpdating = False Range("C9").Select Else MsgBox "Proceso detenido", vbCritical, "Microsoft Excel" End If End Sub
El código se está posicionando partir del rango "B28" y moviéndose 2 espacios desde la hoja 5 hasta la hoja 17 del libro. Pero en la hoja número 16 está tomando el rango "B26".
Me podría ayudar a modificar este código para que una el rango correcto de todas las hojas.
Saludos Cordiales.