dan maar zo
dan maar zo
zoals in eerdere mails gezegd ben ik aan het overstappen van Excel > naar LO > voor wat het gewone gebruik van Calc aangaat (dat is zonder macro's > trek  ik mij nu na een week al aardig uit de slag > voor  wat macro's aangaat worstel ik nu met volgend probleem > ik heb de macto "smartcopy" genoemd  de bedoeling is in het algemeen > een reeks gegevens nar een bepaald plaats te copiëren > dat kan een vaste gegevens reeks zijn of een bereik van veranderlijke > lengte en de pallats waar de gegevens moeten komen is veranderlijk vb > aan het einde van een groeiende lijst > hoe werkt dat (=zou het moeten werken) > via tekstmanipulatie via een aantalfunktie zet ik in een bepaalde cel > (h5) het bereik dat moet gekopiëerd worden bvb b5:d12 > analoog komt er dan in H8 bvb a34 > Het is bekend (ook in Excel dat je wel een range kunt definiëren via > een indirect functie maar dat die dan wel niet in het "naamvenstertje > staan > maar in VBA kan je ze nog oproepen > ik heb dus in mijn macrocode de  en analoog omweg gebruikt via dim > ...as tring en dan die string de inhoud gegeven via getcellbyname en > analoog voor de doelcel > Macro is in bijlage maar die wil niet werken > overigens weigert de step by step knop ook dienst zogezegd omwille van > beveiliging maar die stond OK > > wat doe ik fout ?????? > Julien > 
 
 
REM ***** BASIC *****
 
 
sub smartcopy
rem ----------------------------------------------------------------------
rem define variables
dim document as object
dim dispatcher as object
dim datarange as string
dim placetogo as string
datarange=thisComponent.currentControler.activeSheet.getCellRangebyName("H5").value
placetogo=thisComponent.currentControler.activeSheet.getCellRangebyName("H8").value
rem ----------------------------------------------------------------------
rem get access to the document
document = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
 
rem ----------------------------------------------------------------------
dim args1(0) as new com.sun.star.beans.PropertyValue
args1(0).Name = "ToPoint"
args1(0).Value = "datarange"
 
dispatcher.executeDispatch(document, ".uno:GoToCell", "", 0, args1())
 
rem ----------------------------------------------------------------------
dispatcher.executeDispatch(document, ".uno:Copy", "", 0, Array())
 
rem ----------------------------------------------------------------------
dim args3(0) as new com.sun.star.beans.PropertyValue
args3(0).Name = "ToPoint"
args3(0).Value = "placetogo"
 
dispatcher.executeDispatch(document, ".uno:GoToCell", "", 0, args3())
 
rem ----------------------------------------------------------------------
dim args4(5) as new com.sun.star.beans.PropertyValue
args4(0).Name = "Flags"
args4(0).Value = "SVD"
args4(1).Name = "FormulaCommand"
args4(1).Value = 0
args4(2).Name = "SkipEmptyCells"
args4(2).Value = false
args4(3).Name = "Transpose"
args4(3).Value = false
args4(4).Name = "AsLink"
args4(4).Value = false
args4(5).Name = "MoveMode"
args4(5).Value = 4
 
dispatcher.executeDispatch(document, ".uno:InsertContents", "", 0, args4())
 
rem ---------------------------------------------------------------------- rem dispatcher.executeDispatch(document, ".uno:TerminateInplaceActivation", "", 0, Array())
 
rem ----------------------------------------------------------------------
rem dispatcher.executeDispatch(document, ".uno:Cancel", "", 0, Array())
 
 
end sub

--
Unsubscribe instructions: E-mail to [email protected]
Posting guidelines + more: https://wiki.documentfoundation.org/Netiquette
List archive: https://listarchives.libreoffice.org/nl/users/
Privacy Policy: https://www.documentfoundation.org/privacy

Antwoord per e-mail aan