FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour Reemplazar celdas en hoja Excel desde otra hoja
Posts: 2170
Joined: Fri Jul 18, 2008 01:24 AM
Reemplazar celdas en hoja Excel desde otra hoja
Posted: Wed Jun 15, 2016 06:01 PM

Amigos del foro.

Es la primera vez que intento usar Excel directamente, desde codigo FiveWin, y por eso recurro a ustedes en busca de un ejemplo o gu铆a.

Lo qu necesito hacer es lo siguiente:

Tengo dos hojas excel ("Fuente","Destino") en diferentes libros. Tambien pueden estar en el mismo libro.

1- Recorrer totalmente la hoja "Fuente" y tomar dos valores de las celdas, por ej: de las columnas "E" y "H", a medida que se recorre.
2- El valor tomado de la celda x, Col "E" de la tabla "Fuente", buscarlo en la Col X de la tabla "Destino", y si lo encuentra
reemplazar el valor en la celda xx de la Col Z de la tabla "Destino".

Agradezco de antemano su apoyo.

Saludos.

Francisco J. Alegr铆a P.

Chinandega, Nicaragua.



Fwxh-MySql-TMySql
Posts: 2170
Joined: Fri Jul 18, 2008 01:24 AM
Re: Reemplazar celdas en hoja Excel desde otra hoja
Posted: Thu Jun 16, 2016 02:17 PM

Nobody?

Francisco J. Alegr铆a P.

Chinandega, Nicaragua.



Fwxh-MySql-TMySql
Posts: 3358
Joined: Fri Oct 07, 2005 08:20 PM
Re: Reemplazar celdas en hoja Excel desde otra hoja
Posted: Thu Jun 16, 2016 02:22 PM

Francisco:

Nunca he hecho algo parecido a lo que buscas, sin embargo te
puedo sugerir que hagas lo mismo en Excel activando la grabaci贸n
de macros y luego veas el c贸digo que se genera, aunque en vbasic,
te da la pauta de lo que hay que hacer.

Saludos

SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
Posts: 2170
Joined: Fri Jul 18, 2008 01:24 AM
Re: Reemplazar celdas en hoja Excel desde otra hoja
Posted: Thu Jun 16, 2016 05:15 PM

Armando, gracias por responder.

Investigar茅 lo que dec铆s.

Ya he avanzado un poco estudiando los c贸digos parciales que he encontrado en el foro.

Muchas gracias.

Francisco J. Alegr铆a P.

Chinandega, Nicaragua.



Fwxh-MySql-TMySql
Posts: 3358
Joined: Fri Oct 07, 2005 08:20 PM
Re: Reemplazar celdas en hoja Excel desde otra hoja
Posted: Thu Jun 16, 2016 06:12 PM

Francisco:

Una vez que empieces pones las dudas aqu铆 y seguramente alguien
podr谩 dar soluciones. Efectivamente en el foro hay mucho c贸digo
aunque no es precisamente lo que buscas, es un buen inicio.

Saludos

SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
Posts: 883
Joined: Thu Dec 24, 2009 12:46 AM
Re: Reemplazar celdas en hoja Excel desde otra hoja
Posted: Fri Jun 17, 2016 12:07 AM
No he tocado ese tema aun desde FiveWin, pero supuestamente hojas externas pueden accederse desde la hoja actual, de esta manera:
Code (fw): Select all Collapse
=SUM(D:\Reportes\[Ventas.xlsx]Enero!B2:B5)

=====>

Bayron Landaverry
xBasePHP.com
(215)2226600 Philadelphia,PA, USA
MayaBuilders@gMail.com
Guatemala

FWH25.06--Harbour 3.0.0--BCC7.7--UEstudio 10.10
Windows 10

FiveWin, One line of code and it's done...

Posts: 2170
Joined: Fri Jul 18, 2008 01:24 AM
Re: Reemplazar celdas en hoja Excel desde otra hoja
Posted: Fri Jun 17, 2016 04:18 PM

Armando, Byron.

Ya he logrado hacerlo, pero me encuentro con el problema de la velocidad, ya que se recorre la tabla destino hasta encontrar coincidencia.

Estoy buscando la manera de usar las funciones BURCARV, INDICE u otra de EXCEL, para agilizar esto. Si alguien ya lo ha hecho, agrecer茅 informaci贸n.

El ejemplo de Byron me ha dado ideas que voy a probarlas.

Gracias, a ambos, por su apoyo.

Saludos.

Francisco J. Alegr铆a P.

Chinandega, Nicaragua.



Fwxh-MySql-TMySql
Posts: 6755
Joined: Wed Feb 15, 2012 08:25 PM
Re: Reemplazar celdas en hoja Excel desde otra hoja
Posted: Fri Jun 17, 2016 07:49 PM
Francisco, no tengo referencias sobre la velocidad, pero esto me devuelve la celda en la que se encuentra el valor buscado

https://msdn.microsoft.com/es-es/librar ... 01006.aspx



El formato que tiene la tabla de 237 lineas es:

A B C D E
CLASS TSYMTABLE
CLASS TSYMBOL
CLASS TTABLE
CLASS TOUTLOOK2003GROUP
CLASS TITEMLISTBAR
CLASS TTRAYICON
CLASS TBARTABS
CLASS TOUTLOOK2010GROUP
CLASS TBLOCK
CLASS TTVITEM
CLASS TBRUSHEX

.../...
Cristobal Navarro

Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noci贸n del tiempo

El secreto de la felicidad no est谩 en hacer lo que te gusta, sino en que te guste lo que haces
Posts: 2170
Joined: Fri Jul 18, 2008 01:24 AM
Re: Reemplazar celdas en hoja Excel desde otra hoja
Posted: Fri Jun 17, 2016 11:07 PM

Crist贸bal.
Gracias por la informaci贸n y el c贸digo. Voy a probar con :Find(cTexto):xxx
Saludos.

Francisco J. Alegr铆a P.

Chinandega, Nicaragua.



Fwxh-MySql-TMySql
Posts: 2170
Joined: Fri Jul 18, 2008 01:24 AM
Re: Reemplazar celdas en hoja Excel desde otra hoja
Posted: Sun Jun 19, 2016 02:23 AM
Cristobal, Armando, Byron.

Lo he solucionado asi:
Code (fw): Select all Collapse
 聽 聽 聽 聽 nR2 := oSheet2:Columns( 1 ):Find( cValueBuscado )
聽 聽 聽 聽 聽if nR2 != NIL
聽 聽 聽 聽 聽 聽 oSheet2:Cells(nR2:Row(),12):Value := cValueReemplazado
聽 聽 聽 聽 聽endif

Gracias por su apoyo.

Saludos
Francisco J. Alegr铆a P.

Chinandega, Nicaragua.



Fwxh-MySql-TMySql

Continue the discussion