1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158
| REM ***** BASIC *****
sub Copier_Dans_Base_Et_Coller_Dans_Feuille_Actve
rem ----------------------------------------------------------------------
rem define variables
dim document as object
dim dispatcher as object
rem ----------------------------------------------------------------------
rem get access to the document
document = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
monDocument = Thiscomponent ' le doc
lesFeuilles = monDocument.Sheets ' les feuilles
varmois = Month(Now) ' le mois en cours
rem ---------------------------------------------------------------------- ' active la feuille Base
maFeuille = lesFeuilles.getByName("Base")
monDocument.currentController.activeSheet = maFeuille
rem ----------------------------------------------------------------------
dim args2(0) as new com.sun.star.beans.PropertyValue
args2(0).Name = "ToPoint"
args2(0).Value = "$B$15:$L$22" 'plage de cellule a copier
dispatcher.executeDispatch(document, ".uno:GoToCell", "", 0, args2())
rem ----------------------------------------------------------------------
dispatcher.executeDispatch(document, ".uno:Copy", "", 0, Array())
rem ----------------------------------------------------------------------
'Vérification du mois en cours
select case varmois
case 1
maFeuille = lesFeuilles.getByName("Janvier")
monDocument.currentController.activeSheet = maFeuille
case 2
maFeuille = lesFeuilles.getByName("Février")
monDocument.currentController.activeSheet = maFeuille
case 3
maFeuille = lesFeuilles.getByName("Mars")
monDocument.currentController.activeSheet = maFeuille
case 4
maFeuille = lesFeuilles.getByName("Avril")
monDocument.currentController.activeSheet = maFeuille
case 5
maFeuille = lesFeuilles.getByName("Mai")
monDocument.currentController.activeSheet = maFeuille
case 6
maFeuille = lesFeuilles.getByName("Juin")
monDocument.currentController.activeSheet = maFeuille
case 7
maFeuille = lesFeuilles.getByName("juillet")
monDocument.currentController.activeSheet = maFeuille
case 8
maFeuille = lesFeuilles.getByName("Aout")
monDocument.currentController.activeSheet = maFeuille
case 9
maFeuille = lesFeuilles.getByName("Septembre")
monDocument.currentController.activeSheet = maFeuille
case 10
maFeuille = lesFeuilles.getByName("Octobre")
monDocument.currentController.activeSheet = maFeuille
case 11
maFeuille = lesFeuilles.getByName("Novembre")
monDocument.currentController.activeSheet = maFeuille
case 12
maFeuille = lesFeuilles.getByName("Décembre")
monDocument.currentController.activeSheet = maFeuille
end select
rem ---------------------------------------------------------------------- 'copie sur la feuille du mois en cours
dim args5(0) as new com.sun.star.beans.PropertyValue
args5(0).Name = "Sel"
args5(0).Value = false
dispatcher.executeDispatch(document, ".uno:GoToEndOfData", "", 0, args5())
rem ----------------------------------------------------------------------
dim args6(1) as new com.sun.star.beans.PropertyValue
args6(0).Name = "By"
args6(0).Value = 1
args6(1).Name = "Sel"
args6(1).Value = false
dispatcher.executeDispatch(document, ".uno:GoDown", "", 0, args6())
rem ----------------------------------------------------------------------
dim args7(1) as new com.sun.star.beans.PropertyValue
args7(0).Name = "By"
args7(0).Value = 1
args7(1).Name = "Sel"
args7(1).Value = false
dispatcher.executeDispatch(document, ".uno:GoLeftToStartOfData", "", 0, args7())
rem ----------------------------------------------------------------------
dim args8(1) as new com.sun.star.beans.PropertyValue
args8(0).Name = "By"
args8(0).Value = 1
args8(1).Name = "Sel"
args8(1).Value = false
dispatcher.executeDispatch(document, ".uno:GoRight", "", 0, args8())
rem ---------------------------------------------------------------------- 'collage speciale Texte et Date
dim args9(5) as new com.sun.star.beans.PropertyValue
args9(0).Name = "Flags"
args9(0).Value = "SD"
args9(1).Name = "FormulaCommand"
args9(1).Value = 0
args9(2).Name = "SkipEmptyCells"
args9(2).Value = false
args9(3).Name = "Transpose"
args9(3).Value = false
args9(4).Name = "AsLink"
args9(4).Value = false
args9(5).Name = "MoveMode"
args9(5).Value = 4
dispatcher.executeDispatch(document, ".uno:InsertContents", "", 0, args9())
rem ---------------------------------------------------------------------- 'descent la case en fin de ligne
dim args10(0) as new com.sun.star.beans.PropertyValue
args10(0).Name = "Sel"
args10(0).Value = false
dispatcher.executeDispatch(document, ".uno:GoToEndOfData", "", 0, args10())
rem ----------------------------------------------------------------------
dim args11(1) as new com.sun.star.beans.PropertyValue
args11(0).Name = "By"
args11(0).Value = 1
args11(1).Name = "Sel"
args11(1).Value = false
dispatcher.executeDispatch(document, ".uno:GoDown", "", 0, args11())
rem ----------------------------------------------------------------------
dim args12(1) as new com.sun.star.beans.PropertyValue
args12(0).Name = "By"
args12(0).Value = 1
args12(1).Name = "Sel"
args12(1).Value = false
dispatcher.executeDispatch(document, ".uno:GoLeftToStartOfData", "", 0, args12())
rem ----------------------------------------------------------------------
dim args13(1) as new com.sun.star.beans.PropertyValue
args13(0).Name = "By"
args13(0).Value = 1
args13(1).Name = "Sel"
args13(1).Value = false
dispatcher.executeDispatch(document, ".uno:GoRight", "", 0, args13())
end sub |
Partager