Numeración consecutiva con condición excel/goolgle sheets

Necesito de su conocimiento. Quiero crear una numeración consecutiva dependiendo de una condición, ejemplo: recorrer un columna A y si encuentra la palabra "manzana" en la columna B me ponga el numero 1, si estuviera lleno de "manzana" no hubiera problema pero en la columna A tengo también ciruelas y peras, entonces recorrería la celda A y si encuentra manzana le pone en la celda C el numero 1, sigue recorriendo, hasta encontrar "manzana" nuevamente y le pone 2 en la columna C

Detalle: en la celda A2 estaba "manzana" pero recién en la celda A9 estaba la lpalabra "manzana", en las celdas anteriores habían nombres de frutas diferentes a "manzana".

3 respuestas

Respuesta
1

[Hola

Microsoft Excel y la "Hoja de Cálculo de Google" son programas diferentes a pesar de que tienen ciertas similitudes tanto en función como en lo estético, por lo tanto es importante que aclares a cual te refieres pues incluso su entorno de programación es distinto: Para el primero es VBA y para el segundo se usa Google Apps Script.

Si tu caso es el segundo, te cuento que has "tageado" el foro incorrecto.

Comentas

Abraham Valencia

Respuesta
1

Para Excel quedaria asi

con esta macro

Sub numerar_productos()
Set datos = Range("a1").CurrentRegion
With datos
    .Cells(1, 2) = 1
    .Cells(1, 2).AutoFill Destination:=Range(.Columns(2).Address), Type:=xlFillSeries
    Set datos = .CurrentRegion
    .Sort key1:=Range(.Columns(1).Address), order1:=xlAscending
    .Columns(1).Copy: .Columns(.Columns.Count + 5).PasteSpecial
    .Columns(.Columns.Count + 5).RemoveDuplicates Columns:=1
    Set tabla = .Columns(.Columns.Count + 5).CurrentRegion
End With
With tabla
    For i = 1 To .Rows.Count
        nombre = .Cells(i, 1)
        cuenta = WorksheetFunction.CountIf(datos.Columns(1), nombre)
        fila = WorksheetFunction.Match(nombre, datos.Columns(1), 0)
        datos.Cells(fila, 3).Resize(cuenta).Cells(1, 1) = 1
        datos.Cells(fila, 3).AutoFill Destination:= _
        Range(datos.Cells(fila, 3).Resize(cuenta).Address), Type:=xlFillSeries
    Next i
    .ClearContents
    Set datos = datos.CurrentRegion
    With datos
        .Sort key1:=Range(.Columns(2).Address), order1:=xlAscending
        .Columns(2).ClearContents
    End With
End With
Set datos = Nothing: Set tabla = Nothing
End Sub
Respuesta
1

Esto tal vez aporte algo y coincido con la respuesta anterior no tiene nada que ver excel con el excel de google son cosas diferentes aunque se vean iguales, no puedes usar las macros de excel en el excel de google ya que usa otro lenguaje de programación.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas