LibreOffice バージョン: 4.4.3.2 ビルド ID: 40m0(ビルド:2) ロケール: en_AU を使用しています。
私は基本モジュールを持っています
私が持っているサブまたは関数の前に、このモジュールの上部に
Type InitHeadings
MySort_By As Integer
MyCharacter As Integer
MyInitiative As Integer
MyRolled As Integer
MyTotal As Integer
End Type
...
Global InitiativeColumn As New InitHeadings
しかし、サブルーチンを実行し、ブレークポイントを設定して InitiativeColumn オブジェクトを「監視」すると、最初の 2 つのフィールドのみが表示されます。
ドキュメントがそれらを呼び出すため、この構造体に関連する残りのコードは以下のとおりです。私はそれを他のどこにも参照しません。最初の2つは機能するが、残りは機能しない理由を誰か教えてもらえますか? このコードには他に 2 つの構造体があり、どちらも最後の 3 つのフィールドを無視します。これはバグですか?
Sub Main
'Initialise Doc and Sheet Objects
Dim Doc As Object
Doc = ThisComponent
StatsSheet = Doc.Sheets.getByName("Stats")
InitiativeSheet = Doc.Sheets.getByName("Initiative")
CombatSheet = Doc.Sheets.getByName("Combat")
'LOAD HEADING NAMES
'Initiative Sheet
For Column = 0 to 25 'Columns A to Z
MyHeadingName = InitiativeSheet.getCellByPosition(Column,0).String
Select Case MyHeadingName
Case "Sort By"
InitiativeColumn.MySort_By = Column
Case "Character"
InitiativeColumn.MyCharacter = Column
Case "Initiative"
InitiativeColumn.MyInitiative = Column
Case "Rolled"
InitiativeColumn.MyRolled = Column
Case "Total"
InitiativeColumn.MyTotal = Column
End Select
Next Column
End Sub
Sub MyInitiativeButton
'Iterate over a range of cells:
For Row = 1 To 25 'Rows 2 to 26
'Column 3 is column D the "Rolled" column
InitiativeSheet.getCellByPosition(InitiativeColumn.MyRolled,Row).VALUE = Roledice(1,20,0)
Next Row
End Sub
