Tengo "automatizado" la generaci�n de unos datos a una hoja electr�nica
Excel,... pero resulta que una de las columnas lleva el c�digo de barras, y
algunos c�digos tienen una longitud muy larga, entonces la momento de hacer
la trasnferencia me lo est� pasando de notaci�n cient�fica (creo que as� se
dice)... o sea al final con un signo de "+" y un par de n�meros. He podido
ver que es por el ancho de la columna ya que si modifico el ancho de la
columna y edito en valor de este campo, al dar enter dejando el mismo valor,
me lo presenta bien.
Se supone que al finalizar todo el proceso le digo a Excel que me autosetee
el ancho de las columnas, as�:
XLSheet.Columns().AutoFit && AUSTANDO CELDAS
Pero parece que no es sufienciente el ancho para esta columna, entonces como
hago para indicar que ancho deben de llevar cada una de las columnas de la
hoja... El c�digo que tengo es este:
lnFil = RECCOUNT("invenrep") + 1
lcRango = "A1: A"+ ALLTRIM(STR(lnFil))
XLApp = CREATEOBJECT("Excel.Application")
with XLApp
.Workbooks.Add() &&Agrega una Hoja de calculo
.Worksheets(1).Activate
.Worksheets(1).Name = "Inventario " +
str(year(date())-1,4)+"-"+str(year(date()),4)
.ActiveWindow.DisplayZeros = .f. && No muestra las celdas en valor 0
.ActiveWindow.DisplayGridlines = .t. && No muestra las l�neas de
divisi�n
.Visible = .T. && Aplicacion visible
XLSheet = XLApp.ActiveSheet
GOTO TOP IN invenrep && Recorro el cursor e ingreso a Excel
SCAN
XLSheet.cells(RECNO('invenrep'),1) = mivalor
XLSheet.cells(RECNO('invenrep'),2) = mivalor
XLSheet.cells(RECNO('invenrep'),3) = mivalor
XLSheet.cells(RECNO('invenrep'),4) = mivalor
XLSheet.cells(RECNO('invenrep'),5) = mivalor
XLSheet.cells(RECNO('invenrep'),6) = mivalor
ENDSCAN
*!* FORMATO DE COLUMNAS TITULO
XLSheet.Rows("1:1").Insert
XLSheet.cells(1,1)='C�digo del art�culo' && Titulo celda fila 1 y
columna 1
XLSheet.cells(1,2)='Descripci�n del art�culo'
XLSheet.cells(1,3)='Costo Neto'
XLSheet.cells(1,4)='Exist.'
XLSheet.cells(1,5)='Pres.'
XLSheet.cells(1,6)='Costo/Inv.'
XLSheet.Columns().AutoFit && AUSTANDO CELDAS
endwith
mivalor es la asignaci�n del valor que quiero, eso est� solo para efectos de
este correo, porque la l�nea de c�digo es muy larga, y la verdad eso
funciona bien y no aplica para la consulta que estoy haciendo, entonces para
efectos de acomodo la cambie por esto.
Espero sus aportes, gracias.
Saludos.
Roy Salas Benavides
Costa Rica.
� c�mo hago para darle formato a la fila 1 desde la columna A hasta la F sin
tener que indicarlo celda por celda, es posible ?
Esto no me funciona:
Range("A1:F1").Select
With Selection.Font
.Bold = .T.
.Name = "Arial"
.Size = 12
.Underline = .T.
EndWith
Saludos.
Roy Salas Benavides
Costa Rica
"Roy Francisco Salas Benavides" <rfsa...@ice.co.cr> escribi� en el mensaje
news:%23%23BVaKCW...@TK2MSFTNGP06.phx.gbl...
Ya lo logr� sacar,... como que me pongo muy precipitado a preguntar, pero
resulta como un buen ag�isote, a penas pregunto, lo logro hacer... jejeje...
Me qued� as�:
.Range("A1:F1").Select
.application.Selection.Font.Bold = .T.
.application.Selection.Font.Name = "Arial"
.application.Selection.Font.Size = 12
.application.Selection.Font.Underline = .T.
Me faltaba la .application
Eso s�, sigo con el problema de la notaci�n cient�fica, un ejemplo que tengo
es el c�digo de barras 114182001597891 me lo pasa a Excel como 1,14182E+14,
si le cambio el formato a la columna y lo vuelvo a digitar entonces s� me lo
respeta, pero no puedo hacerlo as�,... � c�mo hago para que en la
automatizaci�n me lo pase tal y como est� en caracter, el campo en la tabla
es Caracter de longitud 20.
Gracias. Saludos.
Roy Salas Benavides.
Costa Rica.
PD: Ya no pregunto m�s... por hoy... jejeje..
"Roy Francisco Salas Benavides" <rfsa...@ice.co.cr> escribi� en el mensaje
news:uKuaxjDW...@TK2MSFTNGP02.phx.gbl...
.Value = ['] + [114182001597891]
--
Luis Mar�a Guay�n
Tucum�n, Argentina
_________________________
http://www.PortalFox.com
Nada corre como un zorro
_________________________
"Roy Francisco Salas Benavides" <rfsa...@ice.co.cr> escribi� en el mensaje
de noticias:#QXWItDW...@TK2MSFTNGP06.phx.gbl...
> Jajaja.... compa�eros, uds. me van a matar... :-)
>
> Ya lo logr� sacar,... como que me pongo muy precipitado a preguntar, pero
> resulta como un buen ag�isote, a penas pregunto, lo logro hacer...
> jejeje... Me qued� as�:
>
> .Range("A1:F1").Select
> .application.Selection.Font.Bold = .T.
> .application.Selection.Font.Name = "Arial"
> .application.Selection.Font.Size = 12
> .application.Selection.Font.Underline = .T.
>
> Me faltaba la .application
>
> Eso s�, sigo con el problema de la notaci�n cient�fica, un ejemplo que
> tengo es el c�digo de barras 114182001597891 me lo pasa a Excel como
> 1,14182E+14, si le cambio el formato a la columna y lo vuelvo a digitar
> entonces s� me lo respeta, pero no puedo hacerlo as�,... � c�mo hago para
> que en la automatizaci�n me lo pase tal y como est� en caracter, el campo
> en la tabla es Caracter de longitud 20.
>
> Gracias. Saludos.
>
> Roy Salas Benavides.
> Costa Rica.
>
> PD: Ya no pregunto m�s... por hoy... jejeje..
>
>
> "Roy Francisco Salas Benavides" <rfsa...@ice.co.cr> escribi� en el
> mensaje news:uKuaxjDW...@TK2MSFTNGP02.phx.gbl...
>> Siguiendo con algo parecido... (a�n no logro entender porque el campo del
>> c�digo de barras que es caracter, me lo trae a Excel con notaci�n
>> cient�fica)...
>>
>> � c�mo hago para darle formato a la fila 1 desde la columna A hasta la F
>> sin tener que indicarlo celda por celda, es posible ?
>>
>> Esto no me funciona:
>>
>> Range("A1:F1").Select
>> With Selection.Font
>> .Bold = .T.
>> .Name = "Arial"
>> .Size = 12
>> .Underline = .T.
>> EndWith
>>
>> Saludos.
>>
>> Roy Salas Benavides
>> Costa Rica
>>
>> "Roy Francisco Salas Benavides" <rfsa...@ice.co.cr> escribi� en el
>> mensaje news:%23%23BVaKCW...@TK2MSFTNGP06.phx.gbl...
>>> Hola amigos de la lista...
>>>
>>> Tengo "automatizado" la generaci�n de unos datos a una hoja electr�nica
>>> Excel,... pero resulta que una de las columnas lleva el c�digo de
>>> barras, y algunos c�digos tienen una longitud muy larga, entonces la
>>> momento de hacer la trasnferencia me lo est� pasando de notaci�n
>>> cient�fica (creo que as� se dice)... o sea al final con un signo de "+"
>>> y un par de n�meros. He podido ver que es por el ancho de la columna ya
>>> que si modifico el ancho de la columna y edito en valor de este campo,
>>> al dar enter dejando el mismo valor, me lo presenta bien.
>>>
>>> Se supone que al finalizar todo el proceso le digo a Excel que me
>>> autosetee el ancho de las columnas, as�:
>>>
>>> XLSheet.Columns().AutoFit && AUSTANDO CELDAS
>>>
>>> Pero parece que no es sufienciente el ancho para esta columna, entonces
>>> como hago para indicar que ancho deben de llevar cada una de las
>>> columnas de la hoja... El c�digo que tengo es este:
>>>
>>> lnFil = RECCOUNT("invenrep") + 1
>>> lcRango = "A1: A"+ ALLTRIM(STR(lnFil))
>>> XLApp = CREATEOBJECT("Excel.Application")
>>> with XLApp
>>> .Workbooks.Add() &&Agrega una Hoja de calculo
>>> .Worksheets(1).Activate
>>> .Worksheets(1).Name = "Inventario " +
>>> str(year(date())-1,4)+"-"+str(year(date()),4)
>>> .ActiveWindow.DisplayZeros = .f. && No muestra las celdas en valor
>>> 0
>>> .ActiveWindow.DisplayGridlines = .t. && No muestra las l�neas de
>>> divisi�n
>>> .Visible = .T. && Aplicacion visible
>>> XLSheet = XLApp.ActiveSheet
>>> GOTO TOP IN invenrep && Recorro el cursor e ingreso a Excel
>>> SCAN
>>> XLSheet.cells(RECNO('invenrep'),1) = mivalor
>>> XLSheet.cells(RECNO('invenrep'),2) = mivalor
>>> XLSheet.cells(RECNO('invenrep'),3) = mivalor
>>> XLSheet.cells(RECNO('invenrep'),4) = mivalor
>>> XLSheet.cells(RECNO('invenrep'),5) = mivalor
>>> XLSheet.cells(RECNO('invenrep'),6) = mivalor
>>> ENDSCAN
>>> *!* FORMATO DE COLUMNAS TITULO
>>> XLSheet.Rows("1:1").Insert
>>> XLSheet.cells(1,1)='C�digo del art�culo' && Titulo celda fila
>>> 1 y columna 1
>>> XLSheet.cells(1,2)='Descripci�n del art�culo'
>>> XLSheet.cells(1,3)='Costo Neto'
>>> XLSheet.cells(1,4)='Exist.'
>>> XLSheet.cells(1,5)='Pres.'
>>> XLSheet.cells(1,6)='Costo/Inv.'
>>> XLSheet.Columns().AutoFit && AUSTANDO CELDAS
>>> endwith
>>>
>>> mivalor es la asignaci�n del valor que quiero, eso est� solo para
>>> efectos de este correo, porque la l�nea de c�digo es muy larga, y la
Saludos.
Gracias de nuevo.
Roy Salas Benavides
Costa Rica.
"Luis Maria Guayan" <luis...@portalfoxxx.com> escribi� en el mensaje
news:e$2636DWK...@TK2MSFTNGP02.phx.gbl...
> A�adele una comilla ' al inicio del numero
>
> .Value = ['] + [114182001597891]
>
>
> --
> Luis Mar�a Guay�n
> Tucum�n, Argentina
> _________________________
> http://www.PortalFox.com
> Nada corre como un zorro
> _________________________
>
>
> "Roy Francisco Salas Benavides" <rfsa...@ice.co.cr> escribi� en el
> mensaje de noticias:#QXWItDW...@TK2MSFTNGP06.phx.gbl...
>> Jajaja.... compa�eros, uds. me van a matar... :-)
>>
>> Ya lo logr� sacar,... como que me pongo muy precipitado a preguntar, pero
>> resulta como un buen ag�isote, a penas pregunto, lo logro hacer...
>> jejeje... Me qued� as�:
>>
>> .Range("A1:F1").Select
>> .application.Selection.Font.Bold = .T.
>> .application.Selection.Font.Name = "Arial"
>> .application.Selection.Font.Size = 12
>> .application.Selection.Font.Underline = .T.
>>
>> Me faltaba la .application
>>
>> Eso s�, sigo con el problema de la notaci�n cient�fica, un ejemplo que
>> tengo es el c�digo de barras 114182001597891 me lo pasa a Excel como
>> 1,14182E+14, si le cambio el formato a la columna y lo vuelvo a digitar
>> entonces s� me lo respeta, pero no puedo hacerlo as�,... � c�mo hago para
>> que en la automatizaci�n me lo pase tal y como est� en caracter, el campo
>> en la tabla es Caracter de longitud 20.
>>
>> Gracias. Saludos.
>>
>> Roy Salas Benavides.
>> Costa Rica.
>>
>> PD: Ya no pregunto m�s... por hoy... jejeje..
>>
>>
>> "Roy Francisco Salas Benavides" <rfsa...@ice.co.cr> escribi� en el
>> mensaje news:uKuaxjDW...@TK2MSFTNGP02.phx.gbl...
>>> Siguiendo con algo parecido... (a�n no logro entender porque el campo
>>> del c�digo de barras que es caracter, me lo trae a Excel con notaci�n
>>> cient�fica)...
>>>
>>> � c�mo hago para darle formato a la fila 1 desde la columna A hasta la F
>>> sin tener que indicarlo celda por celda, es posible ?
>>>
>>> Esto no me funciona:
>>>
>>> Range("A1:F1").Select
>>> With Selection.Font
>>> .Bold = .T.
>>> .Name = "Arial"
>>> .Size = 12
>>> .Underline = .T.
>>> EndWith
>>>
>>> Saludos.
>>>
>>> Roy Salas Benavides
>>> Costa Rica
>>>
>>> "Roy Francisco Salas Benavides" <rfsa...@ice.co.cr> escribi� en el
>>> mensaje news:%23%23BVaKCW...@TK2MSFTNGP06.phx.gbl...
>>>> Hola amigos de la lista...
>>>>
>>>> Tengo "automatizado" la generaci�n de unos datos a una hoja electr�nica
>>>> Excel,... pero resulta que una de las columnas lleva el c�digo de
>>>> barras, y algunos c�digos tienen una longitud muy larga, entonces la
>>>> momento de hacer la trasnferencia me lo est� pasando de notaci�n
>>>> cient�fica (creo que as� se dice)... o sea al final con un signo de "+"
>>>> y un par de n�meros. He podido ver que es por el ancho de la columna ya
>>>> que si modifico el ancho de la columna y edito en valor de este campo,
>>>> al dar enter dejando el mismo valor, me lo presenta bien.
>>>>
>>>> Se supone que al finalizar todo el proceso le digo a Excel que me
>>>> autosetee el ancho de las columnas, as�:
>>>>
>>>> XLSheet.Columns().AutoFit && AUSTANDO CELDAS
>>>>
>>>> Pero parece que no es sufienciente el ancho para esta columna, entonces
>>>> como hago para indicar que ancho deben de llevar cada una de las
>>>> columnas de la hoja... El c�digo que tengo es este:
>>>>
>>>> lnFil = RECCOUNT("invenrep") + 1
>>>> lcRango = "A1: A"+ ALLTRIM(STR(lnFil))
>>>> XLApp = CREATEOBJECT("Excel.Application")
>>>> with XLApp
>>>> .Workbooks.Add() &&Agrega una Hoja de calculo
>>>> .Worksheets(1).Activate
>>>> .Worksheets(1).Name = "Inventario " +
>>>> str(year(date())-1,4)+"-"+str(year(date()),4)
>>>> .ActiveWindow.DisplayZeros = .f. && No muestra las celdas en valor
>>>> 0
>>>> .ActiveWindow.DisplayGridlines = .t. && No muestra las l�neas de
>>>> divisi�n
>>>> .Visible = .T. && Aplicacion visible
>>>> XLSheet = XLApp.ActiveSheet
>>>> GOTO TOP IN invenrep && Recorro el cursor e ingreso a Excel
>>>> SCAN
>>>> XLSheet.cells(RECNO('invenrep'),1) = mivalor
>>>> XLSheet.cells(RECNO('invenrep'),2) = mivalor
>>>> XLSheet.cells(RECNO('invenrep'),3) = mivalor
>>>> XLSheet.cells(RECNO('invenrep'),4) = mivalor
>>>> XLSheet.cells(RECNO('invenrep'),5) = mivalor
>>>> XLSheet.cells(RECNO('invenrep'),6) = mivalor
>>>> ENDSCAN
>>>> *!* FORMATO DE COLUMNAS TITULO
>>>> XLSheet.Rows("1:1").Insert
>>>> XLSheet.cells(1,1)='C�digo del art�culo' && Titulo celda fila
>>>> 1 y columna 1
>>>> XLSheet.cells(1,2)='Descripci�n del art�culo'
>>>> XLSheet.cells(1,3)='Costo Neto'
>>>> XLSheet.cells(1,4)='Exist.'
>>>> XLSheet.cells(1,5)='Pres.'
>>>> XLSheet.cells(1,6)='Costo/Inv.'
>>>> XLSheet.Columns().AutoFit && AUSTANDO CELDAS
>>>> endwith
>>>>
>>>> mivalor es la asignaci�n del valor que quiero, eso est� solo para
>>>> efectos de este correo, porque la l�nea de c�digo es muy larga, y la
En excel le doy iniciar grabar macro
Hago yo mismo las acciones que necesito: Poner negrillas, colores de celdas,
marcar un rango de celdas, formatear celdas, ajustar altura de filas o de
columnas, etc.
Paro de grabar la macro.
Edito la macro y ah� tengo el c�digo que necesito.
Saludos
Juan Carlos Flores
"Roy Francisco Salas Benavides" <rfsa...@ice.co.cr> escribi� en el mensaje
de noticias:#QXWItDW...@TK2MSFTNGP06.phx.gbl...
Pero algunas cosas como que hay que darle algunos retoques, pero s�, por
all� estoy agarrando algunas ideas.
Gracias por el Tip.
Saludos.
Roy Salas.
Costa Rica.
"Juan Carlos Flores" <juancarl...@ferreteriaherco.com> escribi� en el
mensaje news:FA24C436-247B-4846...@microsoft.com...