Advertisement
Guest User

Untitled

a guest
Feb 19th, 2017
71
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 12.89 KB | None | 0 0
  1. REM ***** BASIC *****
  2.  
  3. Option Explicit
  4.  
  5. '---------------------------------------------------------------=---------------------------------------------------------------'--------------------------------
  6. ' 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0
  7. '---------------------------------------------------------------=---------------------------------------------------------------'--------------------------------
  8. ' コーディングの列幅を短くするためのライブラリです。
  9.  
  10. ' このコードで使われている命名の略称表記
  11. ' dc ... document
  12. ' sh ... sheet
  13. ' cm ... column
  14. ' rw ... row
  15. ' ce ... cell
  16. ' vl ... value
  17.  
  18. '---------------------------------------------------------------=---------------------------------------------------------------'--------------------------------
  19. ' 文書を新規作成 CreateDocument
  20. Sub CreateDc ( ) As Object
  21. CreateDc = StarDesktop.loadComponentFromURL( _
  22. "private:factory/scalc" ,"_blank" ,0 ,Array() )
  23. End Sub
  24.  
  25. '---------------------------------------------------------------=---------------------------------------------------------------'--------------------------------
  26. ' 文書を読込 GetDocument
  27. ' dcFile .odsファイルへのパス
  28. Sub GetDc ( dcFile As String ) As Object
  29. GetDc = StarDesktop.loadComponentFromURL( _
  30. ConvertToUrl(dcFile) ,"_blank" ,0 ,Array() )
  31. End Sub
  32.  
  33. '---------------------------------------------------------------=---------------------------------------------------------------'--------------------------------
  34. ' 文書を保存して閉じる SaveAndCloseDocument
  35. ' dc 文書
  36. ' dcFile .odsファイルへのパス
  37. Sub SaveAndCloseDc ( dc As Object ,dcFile As String )
  38. ' .odsとして保存
  39. dc.storeAsURL( ConvertToUrl( dcFile ) ,Array() )
  40. ' ファイルを閉じる
  41. dc.dispose
  42. End Sub
  43.  
  44. '---------------------------------------------------------------=---------------------------------------------------------------'--------------------------------
  45. ' シート挿入 InsertSheet
  46. ' dc 文書
  47. ' shName シート名
  48. ' position シートを差し込む位置。左端が0
  49. Sub InsertSh ( dc As Object ,shName As String _
  50. ,position As Integer )
  51. dc.getSheets().insertNewByName( shName ,position )
  52. End Sub
  53.  
  54. '---------------------------------------------------------------=---------------------------------------------------------------'--------------------------------
  55. ' シートをアクティブにします SetActiveSheet
  56. ' dc 文書
  57. ' sh シート
  58. Sub SetActiveSh ( dc As Object ,sh As Object )
  59. dc.getCurrentController().setActiveSheet( sh )
  60. End Sub
  61.  
  62. '---------------------------------------------------------------=---------------------------------------------------------------'--------------------------------
  63. ' シート取得 GetSheet
  64. ' dc 文書
  65. ' shName シート名
  66. Sub GetSh ( dc As Object ,shName As String ) As Object
  67. GetSh = dc.getSheets().getByName( shName )
  68. End Sub
  69.  
  70. '---------------------------------------------------------------=---------------------------------------------------------------'--------------------------------
  71. ' シート存在判定 HasSheet
  72. ' dc 文書
  73. ' shName シート名
  74. Sub HasSh ( dc As Object ,shName As String ) As Boolean
  75. HasSh = dc.getSheets().hasByName( shName )
  76. End Sub
  77.  
  78. '---------------------------------------------------------------=---------------------------------------------------------------'--------------------------------
  79. ' セル取得 GetCellObject
  80. ' sh シート
  81. ' cm 列番号(0スタート)
  82. ' rw 行番号(0スタート)
  83. Sub GetCeOb ( sh As Object ,cm As Integer ,rw As Integer ) As Object
  84. GetCeOb = sh.getCellByPosition( cm ,rw )
  85. End Sub
  86.  
  87. '---------------------------------------------------------------=---------------------------------------------------------------'--------------------------------
  88. ' セルの値を取得 GetCell
  89. ' sh シート
  90. ' cm 列番号(0スタート)
  91. ' rw 行番号(0スタート)
  92. Sub GetCe ( sh As Object ,cm As Integer ,rw As Integer ) As String
  93. GetCe = sh.getCellByPosition( cm ,rw ).String
  94. End Sub
  95.  
  96. '---------------------------------------------------------------=---------------------------------------------------------------'--------------------------------
  97. ' セルに値を設定 SetCell
  98. ' sh シート
  99. ' cm 列番号(0スタート)
  100. ' rw 行番号(0スタート)
  101. ' vl 設定したい値
  102. Sub SetCe ( sh As Object ,cm As Integer ,rw As Integer , vl As String )
  103. sh.getCellByPosition( cm ,rw ).String = vl
  104. End Sub
  105.  
  106. '---------------------------------------------------------------=---------------------------------------------------------------'--------------------------------
  107. ' セルからセルへ値を複写 CopyCell
  108. ' sh0 シート
  109. ' cm0 列番号(0スタート)
  110. ' rw0 行番号(0スタート)
  111. ' sh1 シート
  112. ' cm1 列番号(0スタート)
  113. ' rw1 行番号(0スタート)
  114. Sub CopCe ( sh0 As Object ,cm0 As Integer ,rw0 As Integer _
  115. ,sh1 As Object ,cm1 As Integer ,rw1 As Integer )
  116. sh0.getCellByPosition( cm0 ,rw0 ).String = sh1.getCellByPosition( cm1 ,rw1 ).String
  117. End Sub
  118.  
  119. '---------------------------------------------------------------=---------------------------------------------------------------'--------------------------------
  120. ' カウントアップ(カウントダウン)
  121. ' vl 更新したい変数
  122. ' offset 増減する量
  123. Sub CountUp ( vl As Integer , offset As Integer )
  124. vl = vl + offset
  125. End Sub
  126.  
  127. '---------------------------------------------------------------=---------------------------------------------------------------'--------------------------------
  128. ' 文字列を末尾に追加
  129. ' vl 更新したい変数
  130. ' tail 追加したい文字列
  131. Sub AppendTail ( vl As String ,tail As String )
  132. vl = vl & tail
  133. End Sub
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement