DIVIDIR RANGO Y COPIAR EN OTRAS COLUMNAS

4 envíos / 0 nuevos
Último envío
samuel
Imagen de samuel
Offline
última acción: Hace 6 años 2 meses
alta: 21/01/2018 - 04:27
Puntos: 45
DIVIDIR RANGO Y COPIAR EN OTRAS COLUMNAS

AYUDA PORFAVOR MIS AMIGOS, VEAN LOS EJEMPLOS DE ABAJO AHI CREO LOGRO EXPLICAR MEJOR. GRACIAS DE ANTEMANO.

columna Bcolumnas Ccolumnas Dcolumnas E
15915912525
123123145759
125...
145...
025   
759   

LA COLUMNA B PUEDE TENER UN RANGO VARIABLE DE DATOS, LAS COLUMNAS C,D y E ESTAN EN OTRA HOJA Y Y SOLO TIENE 10 CELDAS EN LAS QUE PUEDO PEGAR ES DECIR C1:C10    ,D1:D10    ,         E1:E10.

EJEMPLO:

SI TENGO 25 CELDAS  EN LA COLUMNA B QUIERO QUE SE COPIEN 10 CELDAS(maximo numero de celdas)  EN LA COLUMNA C; 10 CELDAS(maximo numero de celdas) EN LA COLUMNA D Y EL RESTO EN LA COLUMNA E (5 celdas).


SI TENGO 15 CELDAS  EN LA COLUMNA B QUIERO QUE SE COPIEN 10 CELDAS(maximo numero de celdas)  EN LA COLUMNA C; 5 CELDAS EN LA COLUMNA D Y DEJAS VACIA LA COLUMNA E.


SI TENGO 30 CELDAS  EN LA COLUMNA B QUIERO QUE SE COPIEN 10 CELDAS(maximo numero de celdas)  EN LA COLUMNA C; 10 CELDAS(maximo numero de celdas) EN LA COLUMNA D Y EL RESTO EN LA COLUMNA E (10 celdas).



 

 

AdjuntoTamaño
File prueba.xlsx9.7 KB

Etiquetas: 

pacomegia
Imagen de pacomegia
Offline
última acción: Hace 2 días 22 mins
Nivel 1 - 200 puntosNivel 2 - 500 puntosNivel 3 - 1000 puntosNivel 4 - 2000 puntosNivel 5 - 4000 puntosadministrador
alta: 27/12/2006 - 23:26
Puntos: 11175
Puedes recorrer las celdas

Puedes recorrer las celdas con datos y utilizar un contador de las celdas que vas copiando

como tienes 10 datos máximo en cada columna de destino, puedes dividir ese contador entre 10, el cociente será la columan y el resto el número de celda de destino.

me explico:

columna=int(numerodedato/10) 'la parte entera de la división, es decir, el cociente

celdaenlacolumna=numerodedato Mod 10 'el resto de la división

Bueno, tendrías que ajustar qué quieres hacer con el dato número 10, si lo colocas el primero de la segunda columna o el último de la primera, que dependerá de si empiezas tu contador de celdas en 0 o en 1 (según sumes antes o después de procesar la celda), pero creo qeu por aquí puedes llegar a una solución práctica.

 

------
Ya sé Excel, pero necesito más.

samuel
Imagen de samuel
Offline
última acción: Hace 6 años 2 meses
alta: 21/01/2018 - 04:27
Puntos: 45
ayuda

Dim Cuenta As Integer


Dim Celda As Range

Range("B2").Select

Range("B2", Range("B2").End(xlDown)).SpecialCells(xlCellTypeVisible).Select



For Each Celda In Selection

        Sheets("Hoja1").Select

        Range("B2").Select

        Range("B2").Offset(Cuenta, Int(Cuenta / 5)).Value = Celda.Value

        Cuenta = Cuenta + 1

Next Celda

End Sub

con este codigo casi me sale el problema que lo copia al final... y no al mismo nivel 

samuel
Imagen de samuel
Offline
última acción: Hace 6 años 2 meses
alta: 21/01/2018 - 04:27
Puntos: 45
gracias

ya me saalio gracias por la ayuda amigo no habia entendido bien..

Sub dividir()

Dim cuenta As Integer

Dim Celda As Range

Range("B2").Select

Range("B2", Range("B2").End(xlDown)).SpecialCells(xlCellTypeVisible).Select

For Each Celda In Selection

    Sheets("Hoja1").Select

    Range("b2").Offset(cuenta Mod 20, Int(cuenta / 20)).Value = Celda.Value

    cuenta = cuenta + 1

Next Celda


End Sub