Formato Ceros!!!

02/05/2008 - 23:51 por monivelez | Informe spam
Hola! Me respondieron lo siguiente en una entreda anterior:

_______________________________________________________________________________
hola, Mónica !



Estoy haciendo una macro que genera codigos de barras.
Necesito darle formato a un numero desde la macro de tal manera que
si el numero es 1 y quiero 10 digitos me escriba en la celda de Excel "0000000001".
Como lo hago desde la macro?




si necesitas que el contenido de "la celda" sea de 10 digitos (reales
y efectivos)...
podrias usar el evento '_change' de "la hoja" para que lo convierta en
texto (numerico) de 10 digitos
para lo cual necesitaras un par de instrucciones +/- como las
siguientes:
activecell.numberformat = "@"
activecell = format(activecell, "0000000000")

solo haria falta saber a cual/es celda/s se aplica este formato para
no afectar mas de lo necesario -?-


si cualquier duda (o informacion adicional)... comentas ?
saludos,
hector.
_____________________________________________________________________________

El código es


Hoja4.Activate
Contador = Cells(91, 2)

pag = GeneraciónGuias.TxtBoxPagImprim.Value

Regional = CmbBoxRegional.Value
ciudad = CmbBoxCiudad.Value
oficina = CmbBoxOficina.Value

For p = 1 To pag
For Z = 3 To 88 Step 4
For K = 2 To 5

Cells(Z, K) = "*" & Regional & ciudad & oficina &
Contador & "*"

'Ahora...para que el formato de la variable "Contador" debe ir
aquí????...en este lugar???

ActiveCell.NumberFormat = "@"
ActiveCell = Format(ActiveCell, "0000000000")

Cells(Z + 1, K) = Regional & ciudad & oficina &
Contador
Contador = Contador + 1
Next K
Next Z

'ActiveWindow.SelectedSheets.PrintOut From:=1, To:=1,
Copies:=1, Collate _
':=True

Next p


Muchas gracias.
 

Leer las respuestas

#1 Héctor Miguel
03/05/2008 - 03:21 | Informe spam
hola, Mónica !

si tu variable "Contador" ya va formando parte de una cadena de texto en tu codigo...
en lugar de aplicar formatos personalizados a las celdas, lo unico que necesitas es cambiar la asignacion a la variable:

de: -> Contador = Cells(91, 2)
a: -> Contador = Format(Cells(91, 2), "0000000000")

y ya ira con el formato que necesitas en lo que hace esta linea:
-> Cells(Z, K) = "*" & Regional & ciudad & oficina & Contador & "*"

saludos,
hector.

__ la consulta original __
El codigo es
Hoja4.Activate
Contador = Cells(91, 2)
pag = GeneraciónGuias.TxtBoxPagImprim.Value
Regional = CmbBoxRegional.Value
ciudad = CmbBoxCiudad.Value
oficina = CmbBoxOficina.Value
For p = 1 To pag
For Z = 3 To 88 Step 4
For K = 2 To 5
Cells(Z, K) = "*" & Regional & ciudad & oficina & Contador & "*"

' Ahora...para que el formato de la variable "Contador" debe ir aquíi???...en este lugar???

ActiveCell.NumberFormat = "@"
ActiveCell = Format(ActiveCell, "0000000000")
Cells(Z + 1, K) = Regional & ciudad & oficina & Contador
Contador = Contador + 1
Next K
Next Z

' ActiveWindow.SelectedSheets.PrintOut From:=1, To:=1, Copies:=1, Collate:=True
Next p



__ la consulta en mensaje previo __
Estoy haciendo una macro que genera codigos de barras.
Necesito darle formato a un numero desde la macro de tal manera que
si el numero es 1 y quiero 10 digitos me escriba en la celda de Excel "0000000001".
Como lo hago desde la macro?

si necesitas que el contenido de "la celda" sea de 10 digitos (reales y efectivos)...
podrias usar el evento '_change' de "la hoja" para que lo convierta en texto (numerico) de 10 digitos
para lo cual necesitaras un par de instrucciones +/- como las siguientes:
activecell.numberformat = "@"
activecell = format(activecell, "0000000000")

solo haria falta saber a cual/es celda/s se aplica este formato para no afectar mas de lo necesario -?-

Preguntas similares