Pregunta 3

10/10/2005 - 22:48 por Déiniel Cárdenas | Informe spam
Buenas tardes...

Quisiera saber como automáticamente puedo colocar un número secuencial a
diferentes datos, les explico con un ejemplo.

Tengo una lista de datos

A B C D E
a1 b1 c1 d1
a2 b2 c2 d2
a3 b3 c3 d3


Y que cuando les coloque en la columna E un valor, el reconozca cual fue la
columna que rellené primero, luego segunda, luego tercero y así


A B C D E F
a1 b1 c1 d1 e1 2
a2 b2 c2 d2
a3 b3 c3 d3 e3 1

Lo intenté realizar mediante fechas, pero las mismas son modificadas por el
sistema. No importa que si es utilizando una macro o una formula.

Gracias de antemano,

Deiniel

Pd. KL te escribí la misma pregunta hace tiempo pero con las fechas y/o
horas, pero me dí cuenta que con un contador hacíamos el mismo trabajo. Creo
que puede ser más fácil para tí ayudarme en este caso.

Preguntas similare

Leer las respuestas

#1 Déiniel Cárdenas
11/10/2005 - 18:11 | Informe spam
Hola William y Héctor. Gracias por sus prontas respuestas. Ahora tengo un
problema...donde yo debo marcar las celdas que realmente corresponden a donde
voy a buscar, marcar y eso? la tabla va desde la celda a hasta la y. en la X
es donde tendría el resultado. de a hasta f son datos que no se mueven. La G
es la que tiene el dato que yo ingreso (Fecha de recibido) de allí hasta la Y
son muchas formulas y sumas para que generen una cantidad y en la X es donde
quisiera que me apareciera el orden en que G es llenado.

Espero puedan entenderme...

"" escribió:

Hola Déiniel Cárdenas, clic derecho en la pestaña de la hoja, eliges "Ver código" en el menú contextual y pegas estas líneas:

Private Sub Worksheet_Change(ByVal Target As Range)
'
' Macro
' Macro creada el 10/10/2005 por William Posada C. (Siem Ltda.)
'
Dim Celda As Range
'
If Not Intersect([A:E], Target) Is Nothing Then
For Each Celda In Target
If Application.CountA(Range(Cells(Celda.Row, 1), _
Cells(Celda.Row, 5))) = 5 _
Then Cells(Celda.Row, 6) = _
IIf(Cells(Celda.Row, 6) = "", _
Application.Max([F:F]) + 1, _
Cells(Celda.Row, 6))
Next
End If
End Sub

Me cuentas como te fue, Chao.


"Déiniel Cárdenas" escribió en el mensaje news:
Buenas tardes...

Quisiera saber como automáticamente puedo colocar un número secuencial a
diferentes datos, les explico con un ejemplo.

Tengo una lista de datos

A B C D E
a1 b1 c1 d1
a2 b2 c2 d2
a3 b3 c3 d3


Y que cuando les coloque en la columna E un valor, el reconozca cual fue la
columna que rellené primero, luego segunda, luego tercero y así


A B C D E F
a1 b1 c1 d1 e1 2
a2 b2 c2 d2
a3 b3 c3 d3 e3 1

Lo intenté realizar mediante fechas, pero las mismas son modificadas por el
sistema. No importa que si es utilizando una macro o una formula.

Gracias de antemano,

Deiniel

Pd. KL te escribí la misma pregunta hace tiempo pero con las fechas y/o
horas, pero me dí cuenta que con un contador hacíamos el mismo trabajo. Creo
que puede ser más fácil para tí ayudarme en este caso
Respuesta Responder a este mensaje
#2 Déiniel Cárdenas
13/10/2005 - 16:06 | Informe spam
Hola William, de verdad muchísimas gracias por tu ayuda. So far se vé
excelente. De hecho ya llamé a mi usuario para hacerle la presentación.

Por último y perdona el abuso, cómo puedo hacer para que automáticamente
(macro) el archivo cree un backup llamado Recaudación Fecha, es decir
Recaudación 13-10-05??

Gracias de antemano por tan insuperable ayuda.

"" escribió:

Hola Déiniel Cárdenas, no había entendido bien el problema, prueba entonces con este código:

Private Sub Worksheet_Change(ByVal Target As Range)
'
' Macro
' Macro creada el 11/10/2005 por William Posada C. (Siem Ltda.)
'
Dim Celda As Range
'
If Not Intersect([G:G], Target) Is Nothing Then
For Each Celda In Target
Cells(Celda.Row, 24) = _
IIf(Cells(Celda.Row, 24) = "", _
Application.Max([X:X]) + 1, _
Cells(Celda.Row, 24))
Next
End If
End Sub

cualquier inquietud pregunta de nuevo, Chao.

"Déiniel Cárdenas" escribió en el mensaje news:
Hola William y Héctor. Gracias por sus prontas respuestas. Ahora tengo un
problema...donde yo debo marcar las celdas que realmente corresponden a donde
voy a buscar, marcar y eso? la tabla va desde la celda a hasta la y. en la X
es donde tendría el resultado. de a hasta f son datos que no se mueven. La G
es la que tiene el dato que yo ingreso (Fecha de recibido) de allí hasta la Y
son muchas formulas y sumas para que generen una cantidad y en la X es donde
quisiera que me apareciera el orden en que G es llenado.

Espero puedan entenderme...

"" escribió:

> Hola Déiniel Cárdenas, clic derecho en la pestaña de la hoja, eliges "Ver código" en el menú contextual y pegas estas líneas:
>
> Private Sub Worksheet_Change(ByVal Target As Range)
> '
> ' Macro
> ' Macro creada el 10/10/2005 por William Posada C. (Siem Ltda.)
> '
> Dim Celda As Range
> '
> If Not Intersect([A:E], Target) Is Nothing Then
> For Each Celda In Target
> If Application.CountA(Range(Cells(Celda.Row, 1), _
> Cells(Celda.Row, 5))) = 5 _
> Then Cells(Celda.Row, 6) = _
> IIf(Cells(Celda.Row, 6) = "", _
> Application.Max([F:F]) + 1, _
> Cells(Celda.Row, 6))
> Next
> End If
> End Sub
>
> Me cuentas como te fue, Chao.
>
>
> "Déiniel Cárdenas" escribió en el mensaje news:
> Buenas tardes...
>
> Quisiera saber como automáticamente puedo colocar un número secuencial a
> diferentes datos, les explico con un ejemplo.
>
> Tengo una lista de datos
>
> A B C D E
> a1 b1 c1 d1
> a2 b2 c2 d2
> a3 b3 c3 d3
>
>
> Y que cuando les coloque en la columna E un valor, el reconozca cual fue la
> columna que rellené primero, luego segunda, luego tercero y así
>
>
> A B C D E F
> a1 b1 c1 d1 e1 2
> a2 b2 c2 d2
> a3 b3 c3 d3 e3 1
>
> Lo intenté realizar mediante fechas, pero las mismas son modificadas por el
> sistema. No importa que si es utilizando una macro o una formula.
>
> Gracias de antemano,
>
> Deiniel
>
> Pd. KL te escribí la misma pregunta hace tiempo pero con las fechas y/o
> horas, pero me dí cuenta que con un contador hacíamos el mismo trabajo. Creo
> que puede ser más fácil para tí ayudarme en este caso
Respuesta Responder a este mensaje
#3 Déiniel Cárdenas
15/10/2005 - 01:10 | Informe spam
Hola de verdad que estoy muy agradecido con toda tu ayuda. De verdad
me has ayudado bastante.

Tengo un último problema a ver si me puedes ayudar nuevamente, cómo hago
para crear una ventana que me permita buscar datos...Te explico con un ejemplo

A B C D E F
a1 b1 c1 d1 e1 f1
a2 b2 c2 d2 e2 f2
a3 b3 c3 d3 e3 f3

Me llama un cliente y con su identificación, digamos que es la columna A, yo
pueda buscar todos los datos de dicho cliente, es decir columna A, B, C, D, E
y F.
Vale decir que dicha identificación se puede repetir varias veces en la
columna A y que el cliente que llama puede tener varias ordenes diferentes.

Necesito concretamente que cuando llame, colocandole la identificación me
busque el primer pedido y si no es por el cual está llamando, apretando
cualquier tecla me busque el siguiente en la lista y así.

No sé que tan dificil sea. Hace tiempo me ayudaron pero la tabla solamente
buscaba el primer valor y tengo algunas veces hasta 10 pedidos del mismo
cliente entonces no tenía mucha utilidad.

Espero que puedas ayudarme.

Gracias de antemano por todo tu esfuerzo. Saludos,

Deiniel

"" escribió:

Hola Déiniel Cárdenas, me alegro que te haya servido, como no explicas detalles, sobre el lugar en que se guardará el libro, supongo que es el mismo directorio en que está el original, esto lo puedes hacer con esta macro:

Sub GrabarBackUp()
'
' GrabarBackUp Macro
' Macro creada el 13/10/2005 por William Posada C. (Siem Ltda.)
'

'
ThisWorkbook.SaveAs _
Filename:=ThisWorkbook.Path & "\Recaudación " & Format(Date, "dd-mm-yy")
End Sub
Algun comentario, adelante, Chao.


"Déiniel Cárdenas" escribió en el mensaje news:
Hola William, de verdad muchísimas gracias por tu ayuda. So far se vé
excelente. De hecho ya llamé a mi usuario para hacerle la presentación.

Por último y perdona el abuso, cómo puedo hacer para que automáticamente
(macro) el archivo cree un backup llamado Recaudación Fecha, es decir
Recaudación 13-10-05??

Gracias de antemano por tan insuperable ayuda.

"" escribió:

> Hola Déiniel Cárdenas, no había entendido bien el problema, prueba entonces con este código:
>
> Private Sub Worksheet_Change(ByVal Target As Range)
> '
> ' Macro
> ' Macro creada el 11/10/2005 por William Posada C. (Siem Ltda.)
> '
> Dim Celda As Range
> '
> If Not Intersect([G:G], Target) Is Nothing Then
> For Each Celda In Target
> Cells(Celda.Row, 24) = _
> IIf(Cells(Celda.Row, 24) = "", _
> Application.Max([X:X]) + 1, _
> Cells(Celda.Row, 24))
> Next
> End If
> End Sub
>
> cualquier inquietud pregunta de nuevo, Chao.
>
> "Déiniel Cárdenas" escribió en el mensaje news:
> Hola William y Héctor. Gracias por sus prontas respuestas. Ahora tengo un
> problema...donde yo debo marcar las celdas que realmente corresponden a donde
> voy a buscar, marcar y eso? la tabla va desde la celda a hasta la y. en la X
> es donde tendría el resultado. de a hasta f son datos que no se mueven. La G
> es la que tiene el dato que yo ingreso (Fecha de recibido) de allí hasta la Y
> son muchas formulas y sumas para que generen una cantidad y en la X es donde
> quisiera que me apareciera el orden en que G es llenado.
>
> Espero puedan entenderme...
>
> "" escribió:
>
> > Hola Déiniel Cárdenas, clic derecho en la pestaña de la hoja, eliges "Ver código" en el menú contextual y pegas estas líneas:
> >
> > Private Sub Worksheet_Change(ByVal Target As Range)
> > '
> > ' Macro
> > ' Macro creada el 10/10/2005 por William Posada C. (Siem Ltda.)
> > '
> > Dim Celda As Range
> > '
> > If Not Intersect([A:E], Target) Is Nothing Then
> > For Each Celda In Target
> > If Application.CountA(Range(Cells(Celda.Row, 1), _
> > Cells(Celda.Row, 5))) = 5 _
> > Then Cells(Celda.Row, 6) = _
> > IIf(Cells(Celda.Row, 6) = "", _
> > Application.Max([F:F]) + 1, _
> > Cells(Celda.Row, 6))
> > Next
> > End If
> > End Sub
> >
> > Me cuentas como te fue, Chao.
> >
> >
> > "Déiniel Cárdenas" escribió en el mensaje news:
> > Buenas tardes...
> >
> > Quisiera saber como automáticamente puedo colocar un número secuencial a
> > diferentes datos, les explico con un ejemplo.
> >
> > Tengo una lista de datos
> >
> > A B C D E
> > a1 b1 c1 d1
> > a2 b2 c2 d2
> > a3 b3 c3 d3
> >
> >
> > Y que cuando les coloque en la columna E un valor, el reconozca cual fue la
> > columna que rellené primero, luego segunda, luego tercero y así
> >
> >
> > A B C D E F
> > a1 b1 c1 d1 e1 2
> > a2 b2 c2 d2
> > a3 b3 c3 d3 e3 1
> >
> > Lo intenté realizar mediante fechas, pero las mismas son modificadas por el
> > sistema. No importa que si es utilizando una macro o una formula.
> >
> > Gracias de antemano,
> >
> > Deiniel
> >
> > Pd. KL te escribí la misma pregunta hace tiempo pero con las fechas y/o
> > horas, pero me dí cuenta que con un contador hacíamos el mismo trabajo. Creo
> > que puede ser más fácil para tí ayudarme en este caso
Respuesta Responder a este mensaje
#4 Déiniel Cárdenas
17/10/2005 - 20:58 | Informe spam
Hola William, estuvistes casi de lograr lo que deseo...

Coloqué tus líneas de comando y está filtrando todo, pero no entiendo el
porque me dice que no se consiguieron elementos. (Creeme que tomé los mismos
valores que aparecen en la fila varias veces)
Los datos que estoy buscando en este momento están colocados de la fila
A3:U650.
Desde la celda A2 hasta U2, están los títulos de los datos.

No sé que otra información necesitas que te dé para que sea más fácil para
tí identificar la falla.

Saludos y gracias



"" escribió:

Hola Déiniel Cárdenas, Me parece que lo que necesitas se resuelve por autofiltros, prueba a hacer lo siguiente:
Inserta un fila al principio de tu hoja, de modo que la primera fila te quede libre, luego haces clic derecho en la pestaña de la hoja y seleccionas "Ver código".
En la ventana del editor de VB que te sale pegas estas líneas:

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Range("A1"), Target) Is Nothing Then
If [A1] = "" Then _
ActiveSheet.AutoFilterMode = False _
Else [A2:A65536].AutoFilter _
Field:=1, _
Criteria1:=[A1], _
Operator:=xlOr, _
Criteria2:=[A1] & "*"
End If
End Sub

Luego cierras la ventana y en la celda "A1" entras el dato que buscas, entonces la hoja quedará filtrada por ese campo y podrás buscar el pedido que necesitas, para quitar el filtro lo único que tienes que hacer es borrar el contenido de la celda "A1" oprimiendo la tecla <Delete>, prueba y me comentas cualquier inquietud, Chao.



"Déiniel Cárdenas" escribió en el mensaje news:
Hola de verdad que estoy muy agradecido con toda tu ayuda. De verdad
me has ayudado bastante.

Tengo un último problema a ver si me puedes ayudar nuevamente, cómo hago
para crear una ventana que me permita buscar datos...Te explico con un ejemplo

A B C D E F
a1 b1 c1 d1 e1 f1
a2 b2 c2 d2 e2 f2
a3 b3 c3 d3 e3 f3

Me llama un cliente y con su identificación, digamos que es la columna A, yo
pueda buscar todos los datos de dicho cliente, es decir columna A, B, C, D, E
y F.
Vale decir que dicha identificación se puede repetir varias veces en la
columna A y que el cliente que llama puede tener varias ordenes diferentes.

Necesito concretamente que cuando llame, colocandole la identificación me
busque el primer pedido y si no es por el cual está llamando, apretando
cualquier tecla me busque el siguiente en la lista y así.

No sé que tan dificil sea. Hace tiempo me ayudaron pero la tabla solamente
buscaba el primer valor y tengo algunas veces hasta 10 pedidos del mismo
cliente entonces no tenía mucha utilidad.

Espero que puedas ayudarme.

Gracias de antemano por todo tu esfuerzo. Saludos,

Deiniel

"" escribió:

> Hola Déiniel Cárdenas, me alegro que te haya servido, como no explicas detalles, sobre el lugar en que se guardará el libro, supongo que es el mismo directorio en que está el original, esto lo puedes hacer con esta macro:
>
> Sub GrabarBackUp()
> '
> ' GrabarBackUp Macro
> ' Macro creada el 13/10/2005 por William Posada C. (Siem Ltda.)
> '
>
> '
> ThisWorkbook.SaveAs _
> Filename:=ThisWorkbook.Path & "\Recaudación " & Format(Date, "dd-mm-yy")
> End Sub
> Algun comentario, adelante, Chao.
>
>
> "Déiniel Cárdenas" escribió en el mensaje news:
> Hola William, de verdad muchísimas gracias por tu ayuda. So far se vé
> excelente. De hecho ya llamé a mi usuario para hacerle la presentación.
>
> Por último y perdona el abuso, cómo puedo hacer para que automáticamente
> (macro) el archivo cree un backup llamado Recaudación Fecha, es decir
> Recaudación 13-10-05??
>
> Gracias de antemano por tan insuperable ayuda.
>
> "" escribió:
>
> > Hola Déiniel Cárdenas, no había entendido bien el problema, prueba entonces con este código:
> >
> > Private Sub Worksheet_Change(ByVal Target As Range)
> > '
> > ' Macro
> > ' Macro creada el 11/10/2005 por William Posada C. (Siem Ltda.)
> > '
> > Dim Celda As Range
> > '
> > If Not Intersect([G:G], Target) Is Nothing Then
> > For Each Celda In Target
> > Cells(Celda.Row, 24) = _
> > IIf(Cells(Celda.Row, 24) = "", _
> > Application.Max([X:X]) + 1, _
> > Cells(Celda.Row, 24))
> > Next
> > End If
> > End Sub
> >
> > cualquier inquietud pregunta de nuevo, Chao.
> >
> > "Déiniel Cárdenas" escribió en el mensaje news:
> > Hola William y Héctor. Gracias por sus prontas respuestas. Ahora tengo un
> > problema...donde yo debo marcar las celdas que realmente corresponden a donde
> > voy a buscar, marcar y eso? la tabla va desde la celda a hasta la y. en la X
> > es donde tendría el resultado. de a hasta f son datos que no se mueven. La G
> > es la que tiene el dato que yo ingreso (Fecha de recibido) de allí hasta la Y
> > son muchas formulas y sumas para que generen una cantidad y en la X es donde
> > quisiera que me apareciera el orden en que G es llenado.
> >
> > Espero puedan entenderme...
> >
> > "" escribió:
> >
> > > Hola Déiniel Cárdenas, clic derecho en la pestaña de la hoja, eliges "Ver código" en el menú contextual y pegas estas líneas:
> > >
> > > Private Sub Worksheet_Change(ByVal Target As Range)
> > > '
> > > ' Macro
> > > ' Macro creada el 10/10/2005 por William Posada C. (Siem Ltda.)
> > > '
> > > Dim Celda As Range
> > > '
> > > If Not Intersect([A:E], Target) Is Nothing Then
> > > For Each Celda In Target
> > > If Application.CountA(Range(Cells(Celda.Row, 1), _
> > > Cells(Celda.Row, 5))) = 5 _
> > > Then Cells(Celda.Row, 6) = _
> > > IIf(Cells(Celda.Row, 6) = "", _
> > > Application.Max([F:F]) + 1, _
> > > Cells(Celda.Row, 6))
> > > Next
> > > End If
> > > End Sub
> > >
> > > Me cuentas como te fue, Chao.
> > >
> > >
> > > "Déiniel Cárdenas" escribió en el mensaje news:
> > > Buenas tardes...
> > >
> > > Quisiera saber como automáticamente puedo colocar un número secuencial a
> > > diferentes datos, les explico con un ejemplo.
> > >
> > > Tengo una lista de datos
> > >
> > > A B C D E
> > > a1 b1 c1 d1
> > > a2 b2 c2 d2
> > > a3 b3 c3 d3
> > >
> > >
> > > Y que cuando les coloque en la columna E un valor, el reconozca cual fue la
> > > columna que rellené primero, luego segunda, luego tercero y así
> > >
> > >
> > > A B C D E F
> > > a1 b1 c1 d1 e1 2
> > > a2 b2 c2 d2
> > > a3 b3 c3 d3 e3 1
> > >
> > > Lo intenté realizar mediante fechas, pero las mismas son modificadas por el
> > > sistema. No importa que si es utilizando una macro o una formula.
> > >
> > > Gracias de antemano,
> > >
> > > Deiniel
> > >
> > > Pd. KL te escribí la misma pregunta hace tiempo pero con las fechas y/o
> > > horas, pero me dí cuenta que con un contador hacíamos el mismo trabajo. Creo
> > > que puede ser más fácil para tí ayudarme en este caso
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida