1 al 30 e inicie o continue con 1 2 ... 30

09/11/2007 - 00:04 por yedeon | Informe spam
como puedo hacer una secuencia de tal forma que al llegar a 30 inicie la
numeracion p.e.

prefentemente con formluas

se trata de dos digitos que se separan por una coma

1.- 1,1 1,2 ... 1,30 2,1 2,2 ... 2,30 3,1

hasta ... 30,30

se que se puede hacer extraer y juntar t exto en columnas pero no me sirven ,
necesito algo asi como relllenar en serie o un macro

Preguntas similare

Leer las respuestas

#1 Ivan
09/11/2007 - 04:22 | Informe spam
hola,


prefentemente con formluas



a mi solo se me ocurre esta:

=(ENTERO(FILA()/30)+1)-SI(Y(FILA()>30;RESIDUO(FILA();30)=0);
1;0)&","&SI(FILA()<31;FILA();FILA()-(30*ENTERO(FILA()/30)))
+SI(Y(FILA()>30;RESIDUO(FILA();30)=0);30;0)

ojo: debe ir en una sola linea y debes ponerla en una celda de la fila
1 y arrastrarla hasta la fila 900



se trata de dos digitos que se separan por una coma

1.- 1,1 1,2 ... 1,30 2,1 2,2 ... 2,30 3,1

hasta ... 30,30

asi como relllenar en serie o un macro



tambien puedes probar estas macros que te la pondrian a partir de la
celda activa (ojo que te queden al menos 900 filas por debajo)

esta te lo devuelve como texto:

Sub Series30_Texto()
Dim n As Byte, m As Byte, f As Integer, c As Byte
f = ActiveCell.Row: c = ActiveCell.Column
For n = 1 To 30
For m = 1 To 30
Cells(f, c) = n & "," & m
f = f + 1
Next
Next
End Sub

y esta como nº aunque formateado para ver los ceros finales

Sub Series30_Numeros()
Dim n As Byte, m As Byte, f As Integer, c As Byte
f = ActiveCell.Row: c = ActiveCell.Column
For n = 1 To 30
For m = 1 To 30
With Cells(f, c)
If m <= 9 Then .NumberFormat = "#.0" Else _
.NumberFormat = "#.00"
.Value = CSng(n & "," & m)
End With
f = f + 1
Next
Next
End Sub


pegalas en un modulo normal y llamalas desde una hoja (ya sabes, con
la celda activa al menos 900 filas antes de la ultima)

espero te ayude, aunque seguro que hay formas mas sencillas

un saludo
Ivan
Respuesta Responder a este mensaje
#2 Ivan
09/11/2007 - 04:28 | Informe spam
perdon, la formula creo que deberia ser asi (en una sola linea)

=SI(FILA()<31;1;(ENTERO(FILA()/30)+1)-SI(Y(FILA()>30;RESIDUO(FILA();
30)=0);1;0))&","&SI(FILA()<31;FILA();FILA()-(30*ENTERO(FILA()/30)))
+SI(Y(FILA()>30;RESIDUO(FILA();30)=0);30;0)

un saludo
Ivan
Respuesta Responder a este mensaje
#3 Héctor Miguel
09/11/2007 - 08:41 | Informe spam
hola, Ivan (y -...- ?) !

perdon, la formula creo que deberia ser asi (en una sola linea)
=SI(FILA()<31;1;(ENTERO(FILA()/30)+1)-SI(Y(FILA()>30;RESIDUO(FILA();
30)=0);1;0))&","&SI(FILA()<31;FILA();FILA()-(30*ENTERO(FILA()/30)))
+SI(Y(FILA()>30;RESIDUO(FILA();30)=0);30;0)



otra alternativa (mismo rango de filas 1 a 900)

=entero((fila()-1)/30)+1&","&residuo(fila()-1,30)+1

saludos,
hector.
Respuesta Responder a este mensaje
#4 Ivan
09/11/2007 - 13:01 | Informe spam
hola Hector,

otra alternativa (mismo rango de filas 1 a 900)

=entero((fila()-1)/30)+1&","&residuo(fila()-1,30)+1



¡¡¡ JODó!!! que se diria por aqui (eufemisticamente hablando),

si ya decia yo que debia haber formas mas sencillas

un saludo y gracias por la aportacion
Ivan
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida