Saltar al contenido

Numeracion de celdas con prefijo

publicado

Buenos dias amigos mios, porfavor como seria una macro en excel que me empieze a numerar celdas:

1ro:  Que la macro pida Prefijo, ejemplo: Item

2do Que la macro pida Numero inicial, ejemplo: 78.00

3ro que la macro pida una constante, ejemplo: 0.02

4to  empezar la numeracion en un celda cualquiera:

Celda C4= Item 78.00

Celda B5= Item 78.02

Celga G10= Item 78.04

y asi susecivamente, hasta finalizar con un esc.

Featured Replies

publicado

Buenas, sería algo así.

selecciona el rango de celdas donde que quieres escribir en una variable

para capturar  la tecla "esc" , puedes hacerlo con el manejador de errores 

recoge los datos en variables mediante  "inputBox"

haz un buble mientras no salte el error 

para seleccionar la celda aleatoria , utiliza la función "Rnd" pasándole el rango de celdas

luego escribes la variables recogidas y actualizas la inicial

saludos

 

 

publicado
  • Autor

Amigo, nos acordamos de ti, Saludos coordiales, usamos  este codigo que compartiste y le agregamos "Item " &:

Private Sub Workbook_Open()

End Sub

Private Sub Workbook_SheetBeforeDoubleClick(ByVal Sh As Object, ByVal Target As Range, Cancel As Boolean)
  If Not Intersect(Target, Range("D1:F100")) Is Nothing And Target = "" Then
    Cancel = True
    
    Range("C2").Value = Range("C2").Value + Range("C3").Value
    Target.Formula = "Item "&Range("C2").Value
    
  End If
End Sub

Cumple el proposito:

image.thumb.png.65e52378f98204fe79f70e507970128a.png

El detalle que no empieza en: Item 54.000, si no que en Item 54.001 a que se debe?. Pero nos gustaria ir un poco mas haya y que deje formulas con el prefijo:

Celda D10=C1&" "&C2 =Item 54.000

Celda E12=C1&" "&C2+C3= Item 54.001

Celda D13=C1&" "&C2+C3+C3= Item 54.002

Celda D15=C1&" "&C2+C3+C3+C3= Items 54.003

y asi sucecivamente, creo que tendria que haber una celda adicional que guarde las sumas progresivas y no estar repitiendo C3 varias veces. Intentamos hacerlo  adicionando en el codigo que nos compartiste:

Private Sub Workbook_SheetBeforeDoubleClick(ByVal Sh As Object, ByVal Target As Range, Cancel As Boolean)
  If Not Intersect(Target, Range("D5:F100")) Is Nothing And Target = "" Then
    Cancel = True
    
    If Range("C4") = Empty Then
     Target.Formula = "=c1&"" ""&c2"
    Else
     Target.Formula = "=" & Range("c4") & " + c3"
    End If
    
     Range("C4").Value = Target.Address(0, 0)

    
  End If
End Sub

 

Nos funciona en la primera celda elegida, pero en las siguiente celda me da error :(

publicado

Buenos días, siguiendo el ejemplo anterior.

hace 7 horas, Suret dijo:

Amigo, nos acordamos de ti, Saludos coordiales, usamos  este codigo que compartiste y le agregamos "Item " &:

Private Sub Workbook_Open()

End Sub

Private Sub Workbook_SheetBeforeDoubleClick(ByVal Sh As Object, ByVal Target As Range, Cancel As Boolean)
  If Not Intersect(Target, Range("D1:F100")) Is Nothing And Target = "" Then
    Cancel = True
    
    Range("C2").Value = Range("C2").Value + Range("C3").Value
    Target.Formula = "Item "&Range("C2").Value
    
  End If
End Sub

Cumple el proposito:

image.thumb.png.65e52378f98204fe79f70e507970128a.png

El detalle que no empieza en: Item 54.000, si no que en Item 54.001 a que se debe?. Pero nos gustaria ir un poco mas haya y que deje formulas con el prefijo:

Celda D10=C1&" "&C2 =Item 54.000

Celda E12=C1&" "&C2+C3= Item 54.001

Celda D13=C1&" "&C2+C3+C3= Item 54.002

Celda D15=C1&" "&C2+C3+C3+C3= Items 54.003

y asi sucecivamente, creo que tendria que haber una celda adicional que guarde las sumas progresivas y no estar repitiendo C3 varias veces. Intentamos hacerlo  adicionando en el codigo que nos compartiste:

Private Sub Workbook_SheetBeforeDoubleClick(ByVal Sh As Object, ByVal Target As Range, Cancel As Boolean)
  If Not Intersect(Target, Range("D5:F100")) Is Nothing And Target = "" Then
    Cancel = True
    
    If Range("C4") = Empty Then
     Target.Formula = "=c1&"" ""&c2"
    Else
     Target.Formula = "=" & Range("c4") & " + c3"
    End If
    
     Range("C4").Value = Target.Address(0, 0)

    
  End If
End Sub

 

Nos funciona en la primera celda elegida, pero en las siguiente celda me da error :(

 

Una solución

 

Private Sub Workbook_SheetBeforeDoubleClick(ByVal Sh As Object, ByVal Target As Range, Cancel As Boolean)
  If Not Intersect(Target, Range("D5:F100")) Is Nothing And Target = "" Then
    Cancel = True

    If Range("C4") = Empty Then
     Target.FormulaLocal = "=c1 & "" "" & c2"
    Else
     Target.FormulaLocal = "=CONCAT(C1;"" "";EXTRAE(" & Range("C4") & ";LARGO(C1)+1;LARGO(" & Range("C4") & "))+C3)"
    End If
    
     Range("C4").Value = Target.Address(0, 0)

    
  End If
End Sub

saludos

 

2click_v3.xlsm

publicado
En 7/11/2022 at 12:00 , Suret dijo:

1ro:  Que la macro pida Prefijo, ejemplo: Item

2do Que la macro pida Numero inicial, ejemplo: 78.00

3ro que la macro pida una constante, ejemplo: 0.02

4to  empezar la numeracion en un celda cualquiera:

Celda C4= Item 78.00

Celda B5= Item 78.02

Celga G10= Item 78.04

y asi susecivamente, hasta finalizar con un esc.

Te adjunto una solución 

 

Prefijo dobleclick VBA_GP.xlsm

Archivado

Este tema está ahora archivado y está cerrado a más respuestas.