Thread View: pl.comp.lang.vbasic
2 messages
2 total messages
Started by TS
Mon, 01 Mar 2010 14:44
[vb6] Kopiowanie komórek w OO bez schowka
Author: TS
Date: Mon, 01 Mar 2010 14:44
Date: Mon, 01 Mar 2010 14:44
18 lines
2036 bytes
2036 bytes
Używam open office do zapisu danych ze swojego programu do excela, czy ktoś z Was może mi pomóc, mam procedurkę (poniżej), która kopiuje zaznaczone komórki i wkleja je w wierszu niżej. Używam do tego schowka i działa to dobrze, jednak chciałbym zrezygnować ze schowka i zrobić to poza nim, jest taka procedura jak CopyRange w OO ale nie potrafię jej użyć pomimo wielu znalezionych przykładów w makrach Muszę takie rozwiązanie zrobić w VB6 i być może tu jest problem... Set oCells = oSheet.getCellRangeByPosition(0, iRowIndex - 2, iFieldCount - 1, iRowIndex - 2) oCalcCtrl.Select (oCells) Call vDispatcher.executeDispatch(oCalcCtrl, ".uno:Copy", "", 0, vNoArg()) Set oCells = oSheet.getCellByPosition(0, iRowIndex - 1) oCalcCtrl.Select (oCells) Call vDispatcher.executeDispatch(oCalcCtrl, ".uno:Paste", "", 0, vNoArg()) pozdr TS
Re: [vb6] Kopiowanie komórek w OO bez schowka - ROZWIĄZANIE
Author: TS
Date: Wed, 03 Mar 2010 07:51
Date: Wed, 03 Mar 2010 07:51
25 lines
2478 bytes
2478 bytes
> Używam open office do zapisu danych ze swojego programu do excela, czy > ktoś z Was może mi pomóc, mam procedurkę (poniżej), która kopiuje > zaznaczone komórki i wkleja je w wierszu niżej. Używam do tego schowka i > działa to dobrze, jednak chciałbym zrezygnować ze schowka i zrobić to poza > nim, jest taka procedura jak CopyRange w OO ale nie potrafię jej użyć > pomimo wielu znalezionych przykładów w makrach Muszę takie rozwiązanie > zrobić w VB6 i być może tu jest problem... > > Set oCells = oSheet.getCellRangeByPosition(0, iRowIndex - 2, iFieldCount - > 1, iRowIndex - 2) > oCalcCtrl.Select (oCells) > Call vDispatcher.executeDispatch(oCalcCtrl, ".uno:Copy", "", 0, vNoArg()) > Set oCells = oSheet.getCellByPosition(0, iRowIndex - 1) > oCalcCtrl.Select (oCells) > Call vDispatcher.executeDispatch(oCalcCtrl, ".uno:Paste", "", 0, vNoArg()) Znalazłem rozwiązanie, może komuś się przyda... :) Set tSourceRange = oSheet.getCellRangeByPosition(0, iRowIndex - 2, iFieldCount - 1, iRowIndex - 2).RangeAddress Set tTargetCell = oSheet.getCellByPosition(0, iRowIndex - 1).CellAddress Call oSheet.copyRange(tTargetCell, tSourceRange) pozdr TS
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads