1 名前:ハンカチ仮面 mailto:sage [2006/10/06(金) 20:04:48 .net] StarBasicまたはOOo Basicプログラミングに興味のある方、 もしくは学習中の方、知識共有の場にしましょう。 参考になる主なリンク StarSuite 8 Basic プログラミングガイド docs.sun.com/app/docs/doc/819-1332?l=ja OpenOffice.org 推進サイト ooosupport.good-day.net/ja/documents/faq/ OpenOffice.org日本ユーザー会翻訳プロジェクト BASIC HELP openoffice-docj.sourceforge.jp/tr/translated/basic_help_frame.html OpenOffice.org本家 API Project api.openoffice.org/ ウィキブックス OpenOffice.org Basic ja.wikibooks.org/wiki/OpenOffice.org_Basic ウィキブックス OpenOffice.org Calc Basic ja.wikibooks.org/wiki/OpenOffice.org_Calc_Basic pukiwiki Plus! hermione.s41.xrea.com/pukiwiki 他に追加情報があったら教えてください。
415 名前:デフォルトの名無しさん mailto:sage [2010/01/16(土) 00:24:08 .net] 次すれになるようにマクロ書くか Sub RepositioningBookmaks oDoc = ThisComponent oText = oDoc.getText() oBookmarks = oDoc.getBookmarks() For i = 0 to oBookmarks.getCount() - 1 step 1 oMark = oBookmarks.getByIndex(i) oAnchor = oMark.getAnchor() If Len(oAnchor.getString()) > 1 Then sName = oMark.getName() oStartRange = oAnchor.getStart() oNewMark = oDoc.createInstance("com.sun.star.text.Bookmark") oNewMark.setName(sName) oText.removeTextContent(oMark) oText.insertTextContent(oStartRange, oNewMark, False) End If Next End Sub
416 名前:デフォルトの名無しさん mailto:sage [2010/01/16(土) 23:07:07 .net] ユーザー定義のツールバー探すもの Sub find_toolbar sUIName = "Test1" oFound = nothing oLM = ThisComponent.getCurrentController().getFrame().LayoutManager oElements = oLM.getElements() For i = 0 To UBound(oElements) step 1 oItem = oElements(i) If Mid(oItem.ResourceURL, 1, 40) = "private:resource/toolbar/custom_toolbar_" Then If oItem.getSettings(False).UIName = sUIName Then oFound = oItem Exit For End If End If Next If NOT IsNull(oFound) Then ' do something msgbox "found" End If End Sub
417 名前:デフォルトの名無しさん mailto:sage [2010/01/18(月) 17:31:36 .net] 文字列検索ができません。 *や%は使えるんですか?
418 名前:デフォルトの名無しさん mailto:sage [2010/01/18(月) 17:43:31 .net] InStr じゃ無理だな
419 名前:デフォルトの名無しさん mailto:sage [2010/01/18(月) 19:00:34 .net] ありがとうございます。 解決しました。
420 名前:デフォルトの名無しさん [2010/01/19(火) 20:41:01 .net] >>415 l-416 乙。どんどん頼みます。勉強になります。感謝します。
421 名前:デフォルトの名無しさん mailto:sage [2010/01/25(月) 00:51:54 .net] 規制が解除されたからまた埋めようかと思ったけど書くことが思いつかん
422 名前:デフォルトの名無しさん mailto:sage [2010/01/25(月) 17:45:13 .net] Writerで文字の段落と挿入された画像のURLをテキストデータとして 出力する場合に文字の段落はプログラミングガイドにあるように supportsService("com.sun.star.text.Paragraph") で判断できるのですが、挿入された画像は supportsService("com.sun.star.text.TextGraphicObject") では判断できないのですが、使用法が違うのでしょうか? それともcom.sun.star.graphicかcom.sun.star.drawingを使うのでしょうか? あとハイパーリンクへのアクセスの仕方も良く分からない(T_T) ヒント等があればお願いします。
423 名前:デフォルトの名無しさん mailto:sage [2010/01/25(月) 20:42:16 .net] 段落から Contents Enumeration すると画像に相当するもんが見つからないから・・・ 画像が埋め込みじゃなければ GraphicURL プロパティ
424 名前:デフォルトの名無しさん mailto:sage [2010/01/26(火) 17:03:09 .net] >>423 どうもです。 画像は埋め込みでないので画像のURLの情報を得ようとすると Doc = ThisComponent OG = Doc.getGraphicObjects msgbox OG(0).GraphicURL で画像のURLの情報にアクセすることは分かるのですが、 Writerに記載した順序でテキストデータに出力する場合は、 EnumerationのWhileループではできなさそうですね(^^; APIのWikiは英語だしよく分からない(T_T ググるとカーソル位置に画像を挿入するサンプルコードは見つかるんですけどねぇ
425 名前:デフォルトの名無しさん mailto:sage [2010/01/26(火) 17:50:42 .net] css.text.XTextRangeCompare インターフェース使って画像の Anchor と段落の位置関係は分かるけどな
426 名前:デフォルトの名無しさん mailto:sage [2010/01/29(金) 10:59:56 .net] >>425 >css.text.XTextRangeCompare どうもです。調べてみます。
427 名前:デフォルトの名無しさん mailto:sage [2010/02/14(日) 13:48:06 .net] OpenOfficd.org3,2 起動時間がすごく短縮されている。 これは有り難い。 OracleによるSun買収でどうなるか心配していたけど、 今回は、まじめにやってくれたみたいね。
428 名前:ビギナー [2010/02/17(水) 10:35:48 .net] こんにちは、プログラミング未経験のものです。 株式投資で一銘柄の過去の株価データを使って色々な条件で 売買したらどのような結果になるかのプログラムをつくりたく、 ooo basic でもこのようなことができますでしょうか? 具体的には、一銘柄について 日付、株価(始値、高値、安値、終値)をデータとし 何年何日に何円で株を何単位買い、買値より10円高い売り注文 株価が10円下がるごとに買い増し、買値より10円高い売り注文 と、詳細は更に検討しています。 それで結果、どのような売買記録でどのぐらいの収益になるか の様なものです。 こんなこともできますでしょうか? データについては、オープンオフィスのCALCにインプット 済みです。 些細なことでも何でも構いませんので、アドバイスよろしく お願いいたします。
429 名前:デフォルトの名無しさん mailto:sage [2010/02/17(水) 13:52:37 .net] >>428 >>1 の参考になる主なリンクの情報だけでやりたい事を実現できます。 アドバイスをねだる前に過去ログを読んでください。
430 名前:ビギナー [2010/02/17(水) 15:38:25 .net] >>429 すいません、了解しました。 ありがとうございます。
431 名前:ビギナー [2010/02/18(木) 12:44:35 .net] オープンオフィスのCALCに以下の様なデータがあるとします。 1、指定した日で指定した株価で1000株買います。 (売買は全部1000株なので考慮必要なしとします) 買い注文は5円下がるごとに出している。 (何かの売りが成立するまで) 2、これを買った翌日以降の注文で売り注文(買値+5円)をだす。 買ったものは全て翌日以降買い値+5円で売り注文を出す。 売ったら売値−5円でまた買い注文を出す。買い注文は5円下がる ごとに出している。 この場合の取引結果を出すマクロはどのようになりますでしょうか。 日付 始値 高値 安値 終値 20010105 221 224 219 220 20010106 218 223 215 222 20010107 224 231 223 223 20010108 220 221 216 217 20010109 215 216 210 213 例、20010105に220円で買いとします。 ()は参考です。 結果 20010105 220円買い成立(20010106以降225円売り注文) 20010106 215円買い成立(20010107以降220円売り注文) 20010107 224円売り成立(買値215円分) 225円売り成立(買値220円分) (一番高い売値225円から5円安い220円で翌日以降買い注文、5円下 がるごとに買い注文もだしている) 20010108 220円買い成立(翌日以降225円売り注文) 20010109 215円買い成立(翌日以降225円売り注文) 210円買い成立(翌日以降225円売り注文)
432 名前:デフォルトの名無しさん mailto:sage [2010/02/18(木) 12:46:11 .net] multi
433 名前:@yuo [2010/02/28(日) 15:18:35 .net] 初心者です。 マクロでcalcファイルを開くのにはどうしたらいいですか? 以下にふぁいるがあります。 C:\My Documents\学習\test.ods
434 名前:デフォルトの名無しさん mailto:sage [2010/02/28(日) 17:53:53 .net] Sub hoge sURL = ConvertToURL("C:\My Documents\学習\test.ods") oDoc = StarDesktop.loadComponentFromURL(sURL, "_blank", 0, Array()) End Sub
435 名前:@yuo [2010/02/28(日) 18:47:26 .net] >>434 プログラミング未経験で、色々調べてやっていたのですが 最初からつまずいてしまっていました。 どうもありがとうございます。
436 名前:mu-mu [2010/03/11(木) 05:22:57 .net] calcについて質問です。 マクロから日付を入力したいのですがどうすればよいのか分かりません。 Cell.String = "2010/03/11" とすると表示は「2010/03/11」ですが、数式入力ボックスでは「'2010/03/11」 になってしまい日付として認識してくれません。 教えてえろい人orz
437 名前:デフォルトの名無しさん mailto:sage [2010/03/11(木) 09:47:52 .net] Cell.formula = "2010/3/11" Cell.numberformat = 36
438 名前:デフォルトの名無しさん mailto:sage [2010/03/11(木) 10:15:22 .net] >>436 Cell.Value = DateSerial (2010, 3, 1) DateSerial関数のパラメータは年、月、日の順。 そのままだと謎い数字が出てくるだけなので、 セルの書式を、日付のものに変更して。
439 名前:mu-mu mailto:sage [2010/03/12(金) 09:10:44 .net] >>437 >>438 さんくすこ 書式をいじいじすればいいんですね。
440 名前:デフォルトの名無しさん mailto:sage [2010/03/12(金) 14:51:03 .net] >>436 日付のデータって、見た目は YYYY/MM/DD だけど、格納されてるのは OpenOffice.org が対応してる年月時間を順列にした整数なの。 0〜9999999999999999999999 みたいな数で 1100年1月1日から2100年の12月31日までを管理するって感じ。
441 名前:デフォルトの名無しさん mailto:sage [2010/03/20(土) 15:12:57 .net] =CONCATENATE(A1:B2) という風に範囲指定で文字列を連結したいのですが、できますか?
442 名前:デフォルトの名無しさん mailto:sage [2010/03/21(日) 00:15:24 .net] マクロ関数定義するならこんな感じかな Function ConcatRange(oData) As String Dim sRet As String For i = 1 to UBound(oData, 1) step 1 For j = 1 to UBound(oData, 2) step 1 sRet = sRet & CStr(oData(i, j)) Next next ConcatRange = sRet end Function
443 名前:デフォルトの名無しさん mailto:sage [2010/03/21(日) 00:34:34 .net] >>442 できました!ありがとうございます
444 名前:デフォルトの名無しさん mailto:sage [2010/05/24(月) 21:18:33 .net] OOoBasicではVBAのようにクラスモジュールは作れないんでしょうか?
445 名前:デフォルトの名無しさん [2010/05/24(月) 21:47:31 .net] yes, you can
446 名前:デフォルトの名無しさん mailto:sage [2010/05/24(月) 21:51:14 .net] >>445 すいませんどうやればいいんでしょうか? ヘルプ見てもググッても見つからないのですが・・・
447 名前:デフォルトの名無しさん mailto:sage [2010/05/25(火) 17:16:32 .net] >>446 というかできない
448 名前:デフォルトの名無しさん mailto:sage [2010/06/16(水) 00:14:31 .net] クラスモジュールにしたいコードの先頭に option vbaSupport 1 option compatible option classModule をつければクラスモジュールとして使えます ただこの3つの違いがわかりません 誰か知ってる人いませんか
449 名前:デフォルトの名無しさん mailto:sage [2010/06/22(火) 17:32:48 .net] >>448 Option Compatible について ttp://api.openoffice.org/servlets/ReadMsg?list=dev&msgNo=9399
450 名前:デフォルトの名無しさん mailto:sage [2010/06/22(火) 17:47:13 .net] コードを見ると VBASupport 1 にすると Compatible も自動的にオンになる 最近のバージョンなら区別しなくていいみたい
451 名前:デフォルトの名無しさん mailto:sage [2010/09/08(水) 17:29:41 .net] 外部データへのリンクだと文字化けするので、ソースから読み込みしてシートに書き込みたいのだけど 正規表現で株主優待情報だけ抽出するには、この先どうしたらいいですか? Sub FileAccess Dim oFileAccess As Object Dim sURL As String Dim oInputStream As Object Dim vData As Variant Dim sLine As String, sDataLine As String sURL = "biz.yahoo.co.jp/stockholder/search?detail=1766 " oFileAccess = createUnoService("com.sun.star.ucb.SimpleFileAccess") oInputStream = CreateUnoService("com.sun.star.io.TextInputStream") oInputStream.setEncoding( "EUC-JP" ) If oFileAccess.exists(sUrl) Then vData = oFileAccess.openFileRead(sUrl) oInputStream.setInputStream(vData) While NOT oInputStream.isEOF() sLine = oInputStream.readLine() sDataLine = sDataLine & sLine & Chr(10) WEnd oInputStream.closeInput() End if txt(sDataLine) End Sub
452 名前:デフォルトの名無しさん mailto:sage [2010/09/08(水) 17:32:55 .net] 尖閣諸島問題で中国大使館に抗議するオフ yuzuru.2ch.net/test/read.cgi/offmatrix/1283926084/ 1: 2010/09/08 15:08:04 21BrBr5lsd 日時は9月12日、日曜日予定 場所は中国大使館前
453 名前:デフォルトの名無しさん mailto:sage [2010/11/05(金) 14:40:59 .net] ヘッダーに画像をセットしたのですが、リンクされてしまいます。 このように書きました。 StyleFamilies = objDocument.StyleFamilies PageStyles = StyleFamilies.getByName("PageStyles") DefPage = PageStyles.getByName("Default") DefPage.HeaderOn = True DefPage.HeaderBackGraphicURL =D:\xxxx.bmp ’画像ファイルのパス メニューで言うと次の場所になります。 書式→ページ→ヘッダー→詳細 ファイル---表示ボタンを押下しファイルを選択。 ここのリンクのチェックを外したいのですが、やり方がわかりません。 ご存知の方、教えてください!
454 名前:デフォルトの名無しさん mailto:sage [2010/11/05(金) 15:03:53 .net] |┃三 / ̄\ |┃ | | |┃ \_/ ガラッ |┃ | |┃ / ̄ ̄ ̄ \ |┃三 / ::\:::/:::: \ |┃ / <●>::::::<●> \ 呼んだな? |┃ | (__人__) | |┃三 \ ` ⌒´ / |┃三 / ̄ ̄ ̄ ̄ ̄ ̄ ̄ \ ||>> Libre Office PART1 <<<|| hibari.2ch.net/test/read.cgi/software/1288792911/
455 名前:デフォルトの名無しさん mailto:sage [2010/11/05(金) 15:30:12 .net] >>453 リンクせずに設定して調べてみると、HeaderBackGraphicURL は空文字列で 該当するテキストオブジェクトの段落の背景に埋め込まれた画像の URL が指定されている
456 名前:デフォルトの名無しさん [2010/12/21(火) 21:40:17 .net] calcで
457 名前:天使 ◆uL5esZLBSE mailto:sage [2011/07/02(土) 21:05:30.50 .net] これ ; デリミタっていうんだけどさ、これをつけなきゃエラーになるような そんな言語使ってる奴ってどうみてもゴミだと思うんだけど もしかして「;」これ打ち忘れてコンパイルエラー出すのが楽しいの? そうか、二度と話かけんなよ 死ねよゴミ
458 名前:デフォルトの名無しさん mailto:sage [2011/07/21(木) 20:56:49.23 .net] 宇宙にはデリミタ派とターミネータ派がいて 10億年も戦争を続けており終わる気配すら無い
459 名前:デフォルトの名無しさん [2012/01/14(土) 13:22:56.51 .net] マクロからフォームのテキストボックスの値を取得して変数に代入したいのですが その方法が分かりません。 ご存知の方いませんか?
460 名前:デフォルトの名無しさん [2012/01/26(木) 10:53:37.58 .net] これだと数式として認識せずうまくいきません。 oSheet1.getCellRangeByName("A" & MyRow1).String ="=VLOOKUP(B" & MyRow1 &";'file:///C:/Users/"& myFileDate & "".csv'#$Sheet1.C1:O65536;7;0)" どうしたらいいのでしょうか?
461 名前:デフォルトの名無しさん mailto:sage [2012/01/26(木) 11:10:43.19 .net] 自己解決 .Stringを.Formulaにしたら、できました^^
462 名前:デフォルトの名無しさん mailto:sage [2012/06/07(木) 15:12:26.24 .net] ↓のような構造体をVBAサポートモードで動かそうとしているのですが シンタックスエラー(シンボルが必要)が表示されます。 具体的な解決策をご存知の方いましたら教えてください。 Private Type abc abc As String def As Long ghi As Single jkl As Double End Type
463 名前:デフォルトの名無しさん mailto:sage [2012/07/16(月) 20:45:03.55 .net] Writerをマクロで紙の縦横の変更ってできないのでしょうか? ThisComponent.getStyleFamilies().getByName("PageStyles").getByName("Standard").IsLandscape の値が変更できません・・・・ プリンターパラメーターの変更のほうでも余白やもろもろ変えられても、縦横だけは無理っぽいです・・・ Dim oPrintOptions(0) as new com.sun.star.beans.PropertyValue oPrintOptions(0).Name = "A4" oPrintOptions(0).value = com.sun.star.view.PaperOrientation.LANDSCAPE ThisComponent.setPrinter( oPrintOptions ) つかっているのはOpenOffice3.4.0です
464 名前:デフォルトの名無しさん mailto:sage [2012/08/26(日) 14:58:40.62 .net] すいません、すっごい初心な質問なんですが 総てのシートの総てのセルを対象に 特定の文字列が入っているセルだけを背景色を変える ってマクロはどう書くんでしょうか?
465 名前:デフォルトの名無しさん mailto:sage [2012/08/26(日) 16:39:40.28 .net] >>464 条件付書式設定じゃダメなのかい?
466 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 23:15:55.11 .net] 初心者です Calcのシート上で実行している計算をそのままBasicで実行したいと考えています いろいろ出来ないのですが単純な"OFFSET"ですら動かせていません (最終的には"INDIRECT"を動かしたい...) 次のサブルーチンをそのまま動かすとセルA1の値が返されるのですが aArgs(1),aArgs(2)に0以外の値(例えば1)を設定すると値(例えばB1の値)が 返ってきません。なにがいけないのでしょうか? Sub test oFunctionAccess = CreateUnoService( _ "com.sun.star.sheet.FunctionAccess" ) oDoc = ThisComponent oSheets = oDoc.getSheets() oSheet = oSheets.getByIndex(0) Dim aArgs(2) As Variant ' OFFSET(A1;0;0) sFunction = "OFFSET" oCell = oSheet.getCellRangeByName( "A1" ) aArgs(0) = oCell aArgs(1) = 0 ' <- 0を1に変えると""が返される aArgs(2) = 0 ' <- 0を1に変えると""が返される aResult = oFunctionAccess.callFunction( sFunction, aArgs() ) MsgBox aResult(0)(0) End Sub
467 名前:デフォルトの名無しさん mailto:sage [2013/05/09(木) 23:54:47.26 .net] >>466 オフセット指定が aArgs(0) のセル範囲外だといけないらしい 上記の場合、A1 の値しか取得できない
468 名前:466 mailto:sage [2013/05/10(金) 22:09:18.60 .net] >>467 即答ありがとうございます。無事実行できました 単純移植はできないんですね (考えると"INDIRECT"のパラメータの渡し方は自分には想像できない...) セルに値を入れてCalcに計算してもらうかCallFunction使わない関数で 作ることにします ありがとうございました
469 名前:デフォルトの名無しさん mailto:sage [2013/12/05(木) 16:43:30.15 .net] ユーザー関数を置いた自分のセルの番地を表示するマクロを作りたいです。 関数で表すと =CONCATENATE(ROW(),",",COLUMN())と結果は同じことなのですが これをユーザー関数のマクロのみで求めることはできますか?
470 名前:デフォルトの名無しさん mailto:sage [2014/06/02(月) 01:06:34.01 ID:xjoqb8w5.net] あるわけねえだろ ハンカチ仮面って時代を感じる
471 名前:デフォルトの名無しさん mailto:sage [2014/07/03(木) 16:32:50.93 ID:fAu/rOzX.net] calcで定期的に再計算させる処理ってループでsleep使いながら どこかのセル更新するしかないのかな タイマっぽい時間管理のシート作ってるけど CTRL+SHIFT+F9押すのめんどいしシート開いてるだけで更新させたい
472 名前:デフォルトの名無しさん mailto:sage [2014/07/11(金) 12:38:57.28 ID:c41w+Kkv.net] sub main do while true wait 5000 ThisComponent.calculateAll loop end sub
473 名前:デフォルトの名無しさん mailto:sage [2014/08/14(木) 13:05:43.71 ID:wgwbbbsy.net] >>472 助かりました! d(゚Д゚)☆スペシャルサンクス☆( ゚Д゚)b
474 名前:デフォルトの名無しさん mailto:sage [2014/08/16(土) 16:35:26.23 ID:HLPR753i.net] www.buzzword.jp/img/face10.png
475 名前:デフォルトの名無しさん [2015/04/09(木) 12:11:33.59 ID:toaGspRP.net] 「OSDNによれば、同社の経営方針とDice Holdingsの事業の方向性が大きく離れたためといい、 日本側がブランドを刷新することになった。これに合わせてSourceForge.JPのURLもosdn.jp/ に変更」 OSSサイトの「SourceForge」が改称へ 「OSDN」に - ITmedia エンタープライズ www.itmedia.co.jp/enterprise/articles/1504/08/news105.html 2015年04月08日 14時42分
476 名前:デフォルトの名無しさん mailto:sage [2016/02/08(月) 14:59:01.62 ID:rv+8E8Cl.net] 普通に3.1.1を使い続けてる
477 名前:デフォルトの名無しさん [2016/03/29(火) 08:55:02.83 ID:/c8bAcK4.net] サッカーブッシュ日本代表日程ぷあたん(しゅっちょうまいくろ教育長交代)春文執行40代売上差額シュガーチョコ https://www.youtube.com/watch?v=NDq1QoJY0nY宇ドナルドアナリストパワーストーンコーチングとしまえん サッカーブッシュ日本代表日程古本屋よしたけしゅっちょうちょこしゅがー ディーラー税務署天才開発者死亡詰みヨミドクターマイクロサービス不足 サッカーブッシュ日本代表日程ぷあたんシフト光金さかい強制バイト人権侵害問題 春分資源執行ニューヨーク低原価ぼったステーキソルトレイク福岡横浜新橋奴隷課金パチシフト強制バイト問題新潟米センター生残 コスメ24チャリティー隠れ40代生活保護プレイボーイバイトレードいたりあん接待問題 マスコミKARDローンケーオーサービス不足婚活パーティー寄付金執行原発ビジネス FBIチャイニーズタイホテル売上事務所ガチャ決算ガチャキャンペーン(販売報道陣過激派組織向携帯最新情報提供終了 校長発言細心注意ノートン産廃エラー(著作権クレーム中国反応融資高額教育費)(中国捕鯨団体40代社員サッカーコメント 高額入学金ヤフウ新橋大学ヤフウ新橋理事長FX経費 おじや50代資産ガリバズフィード40代エリート