【StarSuite Basic/OpenOffice.org Basic】

1 : ハンカチ仮面[sage] : 2006/10/06(金) 20:04:48
StarBasicまたはOOo Basicプログラミングに興味のある方、
もしくは学習中の方、知識共有の場にしましょう。

参考になる主なリンク
StarSuite 8 Basic プログラミングガイド
http://docs.sun.com/app/docs/doc/819-1332?l=ja
OpenOffice.org 推進サイト
http://ooosupport.good-day.net/ja/documents/faq/
OpenOffice.org日本ユーザー会翻訳プロジェクト BASIC HELP
http://openoffice-docj.sourceforge.jp/tr/translated/basic_help_frame.html
OpenOffice.org本家 API Project
http://api.openoffice.org/
ウィキブックス OpenOffice.org Basic
http://ja.wikibooks.org/wiki/OpenOffice.org_Basic
ウィキブックス OpenOffice.org Calc Basic
http://ja.wikibooks.org/wiki/OpenOffice.org_Calc_Basic
pukiwiki Plus!
http://hermione.s41.xrea.com/pukiwiki

他に追加情報があったら教えてください。
2 : nat : 2006/10/06(金) 20:10:10
2get
3 : ハンカチ仮面[sage] : 2006/10/08(日) 19:00:32
リンク付け足し。ここは参考になります。

Developers Guide
http://openoffice-docj.sourceforge.jp/tr/translated/developerguide.html
4 : 名無しさん@お腹いっぱい。[sage] : 2006/10/09(月) 23:49:11
> http://openoffice-docj.sourceforge.jp/tr/translated/developerguide.html

utf-16って、ほとんど嫌がらせだな
5 : デフォルトの名無しさん[sage] : 2006/10/10(火) 00:03:12
developerguide がwebで読めるのか。これは助かるな。
ZIPアーカイブされたのをローカルに保存しておく手間が省ける。
6 : デフォルトの名無しさん[sage] : 2006/10/10(火) 19:38:11
初歩的な質問でごめんなさい。

ExcelのVBAでは

Worksheets("シート名").Activate

と書くところを、OOo Basicの場合ではどう書けばいいんでしょうか?
7 : ハンカチ仮面 : 2006/10/10(火) 20:24:01
>>6
StarBasicでは
ActiveWindow.JumpToTable(1)
だと思います。(1)は左から何番目の表かを表します。
8 : デフォルトの名無しさん[sage] : 2006/10/17(火) 10:27:59
OpenOffice.org Calcをデータベースサーバーのクライアントソフトに
しようと思うんですが、どなたか一緒に情報探してくれる人いませんか。
9 : デフォルトの名無しさん[sage] : 2006/10/18(水) 09:31:21
>>8
すでにあるよ。
Fio
ttp://seiza.dip.jp/machine/fio/
10 : なしたか : 2006/10/19(木) 08:53:11
はじめまして。Basicでの質問をさせていただきます。 現在Calcで使用するためのURLエンコーディングプログラ
ムを作成して おります。勉強もかねてC言語によるDLLを作成・利用しエンコーディング 結果を取得しようと考えています。
そこで、まずはテストということでDLLに文字列を渡し、その結果をbasic で表示するプログラムを作成しようとしております。プログラムは以下
のとおりです。

REM ***** BASIC *****
Declare Function MyMessageBox Lib "test.dll" Alias "MyMessageBox" (str As String)
Sub MessageBoxStrTest()
  Dim s1 as String
  Dim s2 as String
  s1="あ"
  s2=MyMessageBox(s1)
  msgbox(s2)
End Sub
REM *** BASIC END HEAR ***
11 : なしたか : 2006/10/19(木) 08:54:18
Cプログラムは以下のとおりです。
//-----------------
#include<stdio.h>
#include<stdlib.h>
#include<windows.h>
#include"test.h"
const char* __stdcall MyMessageBox(const char* str){
   MessageBox(0,str,"Title",0);
   return str;
}
//-------ここまで--------

ちなみにwindowsに最初から提供されているMessageBox()関数ではちゃんと 「あ」という文字が表示されます。
basicに返戻したあとでは文字列が 「-4424」のように表示されてしまいます。開発環境は以下のとおりです。
OS :WindowsXP Professional SP2
開発言語 :gcc(MinGW)
OpenOffice:OpenOffice.org2.0.3
12 : なしたか : 2006/10/19(木) 11:57:59
自己レスです。上記の例で1箇所自分で間違いを発見しました。

Declare Function MyMessageBox Lib "test.dll" Alias "MyMessageBox" (str As String) As String

のように返礼値がString型であることを明示したので未知数が返ることが
なくなりました。このとき同様に「あ」という文字をdll側に渡すと「・」という
文字がbasic側のmessageboxで表示されます。「a」という文字をdll側に渡す
と「a」という文字がbasic側で表示されます。

どのようにしたら日本語を正しくbasic側に返礼させることができるのでしょうか?
13 : デフォルトの名無しさん[sage] : 2006/10/19(木) 14:02:49
MinGW環境ないんでBCC5.5で試してみた。
UTF-8Nを要求される状況でShift JISを返すから化けるような気がする。
その割に引数の文字列がDLL側で正しく表示されるのがよく分からんが。
MinGWならDLL側でiconv()とか使ってUTF-8Nエンコして返すのが一番早いんじゃないかね。
14 : デフォルトの名無しさん[sage] : 2006/10/19(木) 15:36:14
iconv.h拾ってきて試してみたが、やはりOOo側が認識してないような雰囲気が。
少なくともDLLに正しく文字列は渡ってるんだから、結果としてURIエンコードされるなら
iconv()なくても別に問題ない気がしてきた。
15 : なしたか : 2006/10/19(木) 20:15:29
>>13,>>14
早速のレスありがとうございます。ご指摘のとおり今回は、URLエンコードをしたいだけ
なので日本語がbasic側で正しく表示される必要はありません。しかし、今後そのような
プログラムが必要になったときにやっぱり困りますよね。。。
ちなみに以下のサイトを参考にUNICODE対応DLLを作成に挑戦していますが、うまくいかないですね。
ttp://www.ruche-home.net/program/tips/tchar.php
16 : なしたか : 2006/10/20(金) 10:45:01
#include "urlEnc.h"
char* urlEncode(const char* str){
   int i=0;/** strの何番地をみているかを覚えるため **/
   int x=0;/** カウンタ **/
   int pos=0;/** tmpUrlが何文字入力しているかを覚えるため **/
      char *tmpUrl = (char *)calloc(512,sizeof(char));
      unsigned char *tmp = (char *)calloc(2,sizeof(char));
      unsigned char *tmp1 = (char *)calloc(2,sizeof(char));
      unsigned char *tmp2 = (char *)calloc(6,sizeof(char));
      while(TRUE){
         if( str[i] == 0x00 ){break;}
         if( (str[i] & 10000000) == 10000000 ){
            tmp[0]=(unsigned char)str[i];
            tmp[1]=(unsigned char)str[i+1];
            sprintf(tmp2,"%%%X%%%X",tmp[0],tmp[1]);
            for(x=0;x<6;x++){
               tmpUrl[pos++] = tmp2[x];
            }
            i++;
         }else{/** 単なるアスキーコードの場合 **/
            tmp[0]=(unsigned char)str[i];
            sprintf(tmp1,"%X",tmp[0]);
            for(x=0;x<2;x++){
               tmpUrl[pos++] = tmp1[x];
            }
         }
         i++;
      }
      return tmpUrl;
}
17 : なしたか : 2006/10/20(金) 10:52:09
上のコードでいちおうURLエンコードを行えました。汚いプログラムですが使いたい方がいたらどうぞ。
つづけざまに質問なのですが、VBAを使用していたときには現在開いているIEオブジェクトを以下のように捕らえていました。
  WinExist = False
  Set ObjShell = CreateObject("Shell.Application")
  For Each ObjWindow In ObjShell.Windows
    If Not InStr(1, ObjWindow.document.Title, "サーバが見つかりません") Then
      WinExist = True
      Set IE = ObjWindow
    End If
  Next
  Set ObjShell = Nothing
  If WinExist = False Then
    Set IE = CreateObject("InternetExplorer.Application")
  End If
これをそのままbasicで実行してみてもbasicにはFor Each ... in ... という構文がないようで
うまく動作しませんでした。これに変わる方法で現在開いているIEオブジェクトを取得する方法は
ありますでしょうか?
18 : デフォルトの名無しさん[sage] : 2006/10/20(金) 16:29:58
for each nextは他のループに置き換える。

WSHの配列オブジェクト・コレクションはCountで個数、Itemで要素を取得できる。
こっちはOOoとは関係ないのでWSHスレ等で聞くべきだ。
19 : デフォルトの名無しさん : 2006/11/24(金) 13:36:41
OpenOffice.org CalcがExcel VBAをサポート
ttp://opentechpress.jp/developer/06/11/22/0059225.shtml
20 : デフォルトの名無しさん[sage] : 2006/11/25(土) 01:23:26
VBA がつかえる OpenOffice.org 2.0.2, Novell Edition には 日本語版もあるみたいよ
21 : デフォルトの名無しさん : 2006/12/02(土) 00:11:53
>>19
>Ark
>Debian
>DroplineGNOME
>Frugalware
>Gentoo
>Mandriva
>QiLinux
>Red Hat (FC6)
>Ubuntu
>SUSEおよびSUSE SLED

これらのLinuxディストリビューションのOpenOffice.orgにVBA互換機能が搭載
されていると書いてあったんで、自分はDebianユーザーだからVBA互換機能が
使えるかなと期待したんだけど、どうやら自分が入れたOOo2.0.2にはVBAの
互換機能が搭載されていないみたいだ。ガクリ
VBAコードを含むExcelのファイルを開いてみたんだけど、なにも起こらないし、
コードも見えない。
22 : デフォルトの名無しさん[sage] : 2006/12/02(土) 10:21:30
>>21
Debian使いなら自力で使えるようにしていただきたいですな
23 : デフォルトの名無しさん[sage] : 2006/12/02(土) 10:22:27
捕捉
今の環境ではなく、別の環境で
24 : デフォルトの名無しさん[sage] : 2006/12/05(火) 01:11:51
>>22 Debianのパッケージをそのまんま入れれば
互換機能が使えるという意味かと思ったんですが。
Debian使いだからかえってアプリを入れたり消したり
するのも全部apt依存症で、なんにもできないんです。
25 : デフォルトの名無しさん[sage] : 2006/12/05(火) 09:00:34
>>24
なら、EtchのVMware Player用イメージでも使えばよろし
26 : デフォルトの名無しさん : 2007/01/10(水) 00:30:32
これの本もほしいな
命令/関数を


全て


網羅したやつ。
使える関数、命令何もかも全てが載ってるやつが。
27 : デフォルトの名無しさん[sage] : 2007/02/19(月) 23:31:07
GFDLでね
28 : デフォルトの名無しさん[sage] : 2007/02/22(木) 20:34:34
OOo Basicってそこそこ使えると思うけど、このスレは過疎ってるね。
29 : デフォルトの名無しさん[sage] : 2007/02/22(木) 23:11:02
宣伝して宣伝して
30 : デフォルトの名無しさん[sage] : 2007/02/23(金) 12:46:42
取っ付き難いんだよね。なんか面白そうなサンプルないかな。
31 : デフォルトの名無しさん[sage] : 2007/03/24(土) 14:24:30
>>27
もっとマトモなライセンスはいくらでもあるだろうに…
32 : デフォルトの名無しさん : 2007/04/19(木) 22:19:35
OOo Basic やろうぜ。
33 : デフォルトの名無しさん[sage] : 2007/04/22(日) 13:26:37
>>31
たとえば?CC?
34 : デフォルトの名無しさん : 2007/04/30(月) 21:57:52
今日Basic使ってみたけど、VBAとあんまり変わらんね。
十分使える。
35 : デフォルトの名無しさん : 2007/05/09(水) 20:24:34
なかなかナイスなマクロだと思うけどな。
よって、あげ。
36 : デフォルトの名無しさん : 2007/05/21(月) 11:58:04
過疎age
37 : デフォルトの名無しさん[sage] : 2007/05/21(月) 12:55:52
Basicに限定したようなスレタイになっているのが過疎の原因かな
38 : デフォルトの名無しさん[sage] : 2007/06/19(火) 22:26:17
vbaで言うところのCollectionに相当するものってあるんでしょうか?
39 : デフォルトの名無しさん[sage] : 2007/06/23(土) 19:32:22
コードを記述するとき、VBAみたいに勝手に大文字になってくれないのですか?
40 : デフォルトの名無しさん[sage] : 2007/06/27(水) 01:48:03
>>39
それは言語仕様とは関係ないんじゃないすかね?
逆にその挙動は気持ち悪い。
41 : デフォルトの名無しさん[sage] : 2007/06/27(水) 13:47:12
始めたんだが もう挫折した orz
何かいい本ないですか
サンプルが一杯載ったのがあればいいんだが
初心者なんで取り敢えず動くコ-ドをイジって覚えようかと

本屋に昼に行ってみたけどVBばっかりだった。
42 : デフォルトの名無しさん[sage] : 2007/06/27(水) 14:13:01
逆に考えるだ。今いろんなものを作って企画を持ち込めば、本を出せると考えるんだ。
43 : デフォルトの名無しさん : 2007/06/27(水) 18:57:35
>>41
公式ガイドブックの公開版pdfがあると思います。
Chapter9でマクロの解説があるので参考になるかも知れません。
44 : 41[sage] : 2007/06/27(水) 19:24:09
OpenOffice.org 1.1 Developer's Guide
StarOfficeTM 6.0 Office Suite Basic Programmer's Guide
OpenOffice.org Basicプログラミング Calc
StarSuiteTM 7 Office Suite Basic プログラマ向けガイド

この辺りのやつでいいのかなあ
とりあえず読んで見ます。

廻りに聞く人居ないので、初心者はつまると、お手上げです。
45 : デフォルトの名無しさん[sage] : 2007/06/27(水) 19:58:13
>>44
http://ooosupport.good-day.net/ja/documents/manual/
46 : デフォルトの名無しさん[sage] : 2007/06/27(水) 20:39:59
ありがとう
47 : デフォルトの名無しさん[sage] : 2007/06/28(木) 09:17:29
>>46
日本語の掲示板なら
OOo Basic Wiki
http://hermione.s41.xrea.com/pukiwiki/
OOo Q&A
http://oooug.jp/faq/
ここにもいくつかサンプルあり

海外の良書は以下から
http://www.pitonyak.org/oo.php
48 : デフォルトの名無しさん[sage] : 2007/06/30(土) 13:45:08
>>6
Sub Hyou3Active
Dim oDocument As Object
Dim oSheet As Object
Dim oCController As Object

oDocument = ThisComponent
oSheet = oDocument.Sheets
oCController = oDocument.CurrentController

oCController.ActiveSheet = oSheet.getByName("表3")
End Sub
49 : デフォルトの名無しさん : 2007/07/18(水) 20:49:01
ttp://docs.sun.com/app/docs/doc/819-1332?l=ja&a=load
ttp://docs.sun.com/app/docs/doc/819-1324?l=ja&a=load
starsuiteのが使えるね
50 : デフォルトの名無しさん : 2007/07/19(木) 19:08:48
ググっててOOoBasicで書かれたらしいOOoBasicのデバッカを見つけた。
2.0のほうにはjaとあるから日本語対応?

ttp://www.nichoume.com/ooo/dev/OOoBasicDebugger/2.0/
ttp://www.nichoume.com/ooo/dev/OOoBasicDebugger/2.3/

注)信用できるサイトか分からないんでダウンロードには注意してね。
51 : デフォルトの名無しさん[sage] : 2007/07/20(金) 07:50:33
>>50
一応、信用できると思う。
日本人の開発者の個人サイトだから。
52 : デフォルトの名無しさん : 2007/07/20(金) 08:08:15
チューバッカ



厨房ばかりであるさま。
53 : デフォルトの名無しさん : 2007/07/22(日) 21:40:53
http://www.ooomacros.org

ここって有名サイトらしいのですが、ここではまだ紹介されていないみたいですね。
http://www.ooomacros.org/user.php にあるCalc Macro Recorderというマクロが
便利そうで興味があるんですが、ちょっと恐くてダウンロードできない。orz
54 : デフォルトの名無しさん : 2007/09/17(月) 09:36:10
VB.NETでCalcのファイルを開き、データを取得することができますか?
55 : デフォルトの名無しさん : 2007/10/05(金) 23:30:04
>>48
とても参考になった。

56 : デフォルトの名無しさん : 2007/10/08(月) 23:15:15
誰もいねえのか?

57 : デフォルトの名無しさん : 2007/10/09(火) 19:16:17
過疎っているねアゲ
58 : デフォルトの名無しさん : 2007/10/09(火) 21:23:22
getcellbypotionとか長ったらしいコマンドは止めてくれー!!
普通にCellでいいじゃんか。

59 : デフォルトの名無しさん : 2007/10/10(水) 20:11:36
確かにそうだよな
60 : デフォルトの名無しさん[sage] : 2007/10/12(金) 10:43:13
>>58
飲料(potion)を使って細胞(cell)を取得(get)するのか?
61 : デフォルトの名無しさん : 2007/10/12(金) 13:29:39
>>60 そういうツッコミ方で来ましたかw
たぶんgetCellByPositionの間違いだろね。
62 : デフォルトの名無しさん : 2007/10/16(火) 20:15:21
VBAと完全に互換性をもってほしい。




63 : デフォルトの名無しさん[sage] : 2007/10/16(火) 20:19:30
>>62
それは無理じゃね?
MSさんが許さんぜよ
64 : デフォルトの名無しさん : 2007/10/17(水) 01:17:35
そこを何とか。

65 : デフォルトの名無しさん[sage] : 2007/10/17(水) 06:52:37
MSと契約したNovellが頑張ってるよ
66 : デフォルトの名無しさん[sage] : 2007/10/17(水) 16:25:09
VBAのほうで互換性もたせりゃよかんべよ
67 : デフォルトの名無しさん : 2007/10/17(水) 16:33:27
OOo Basicは習得が難しい。VBAのほうが簡単。
68 : デフォルトの名無しさん : 2007/10/17(水) 22:29:45
OOo Basicは難しくないけど、処理速度が遅すぎる。
ループを回してみると分かるんだけど、どうも条件分岐がトロイみたい。
69 : デフォルトの名無しさん : 2007/10/24(水) 19:47:07
つーか、全体的にもっさりなんだよなOpenOfficeって。
70 : デフォルトの名無しさん : 2007/10/26(金) 00:58:59
もっさりだけならいいが、バグ多すぎ。

71 : デフォルトの名無しさん[sage] : 2007/10/26(金) 01:42:33
CalcでMSXMLで保存→Calcで開くとすごい事にw
72 : デフォルトの名無しさん[sage] : 2007/10/26(金) 16:16:12
俺用メモ:
javavendors.xml
 <vendorInfos>
  </vendor>
   <vendor name="BEA Systems, Inc.">
     <minVersion>1.4.1</minVersion>
   </vendor>
 </vendorInfos>
 <plugins>
  <library vendor="BEA Systems, Inc.">sunjavaplugin.dll</library>
 </plugins>
73 : デフォルトの名無しさん : 2007/10/27(土) 15:44:48
OpenOffice.orgとStarSuite8はどっちがいいのですか?
操作性、PCへの負担、機能性、相互性、現状とこれからの発展など含めて軽く解説をお願いします。

良い方を入れます。
※MSのワード、エクセル、パワーポイントは基本的に使えますし、比較的よく使います。
新しく自作したPCに入れるものを考えています。
74 : デフォルトの名無しさん[sage] : 2007/10/27(土) 16:06:46
>>73
ソフトウェア板に行って基礎から教えてもらうと良いよ。
StarSuite は OpenOffice.org を元にしたパッケージ版だから
両方使えるなら StarSuite にしときな。
75 : デフォルトの名無しさん : 2007/10/28(日) 14:44:10
StarSuite8は色んなフォントが入ってるよな。

76 : デフォルトの名無しさん : 2007/10/30(火) 22:25:02
マンセー!!!!!!



77 : デフォルトの名無しさん : 2007/11/02(金) 17:03:25
???
78 : デフォルトの名無しさん : 2007/11/03(土) 15:37:05
ひゃあああああ
79 : デフォルトの名無しさん : 2007/11/04(日) 20:35:17
VBAをOpenOfficeに変換したいけど、OpenOffice.org は触ったこと
がありません。
『Convert Excel VBA to OpenOffice Basic』というサイトを
見つけたけど、誰か使ったことありますか?

ttp://www.business-spreadsheets.com/vba2oo.asp

他にVBAを返還するフリーツールってあるんでしょうか?
100%完璧でなくても使ってみたいのですが・・・
80 : デフォルトの名無しさん : 2007/11/04(日) 21:29:17
OpenOffice Basicは処理速度が相当遅いよ。
場合によってはVBAの10倍以上時間がかかるときもある。
一生懸命使ってみたけど、ストレスがたまる。

81 : デフォルトの名無しさん[sage] : 2007/11/04(日) 23:22:30
>>79
> 『Convert Excel VBA to OpenOffice Basic』というサイトを
> 見つけたけど、

あんたは偉い!
82 : デフォルトの名無しさん : 2007/11/05(月) 00:30:53
>>81
実際、どれ位使い物になるか知りたいんですよ。
もっとも来週(訳あって火曜日以降)、会社で試してみるけどね。
うまく動くといいけど、もぐら叩きのデバッグかも。
83 : デフォルトの名無しさん[age] : 2007/11/25(日) 20:56:46
いらん
84 : デフォルトの名無しさん : 2007/11/26(月) 16:15:02
いる
85 : デフォルトの名無しさん : 2007/11/30(金) 14:16:06
OpenOfficeはショボすぎ。









86 : デフォルトの名無しさん[sage] : 2007/11/30(金) 22:53:41
まあ >>85 が使ってる様な一部の機能は無いかもしれんが、
普通の用途では十分だよ
87 : デフォルトの名無しさん : 2007/12/01(土) 20:15:30
マクロの処理速度がおせーわ。
もっとキビキビ動かないと。


88 : デフォルトの名無しさん[sage] : 2007/12/01(土) 23:21:28
>>87
うpしてみ
89 : デフォルトの名無しさん : 2007/12/06(木) 22:56:21
アップするまでもなく、適当にループ回してセルに何か書き込んでみ。
余りの遅さに気が遠くなるから。


90 : デフォルトの名無しさん : 2007/12/07(金) 01:30:59
MS-ExcelのVBAも動作遅いよ。ユーザーフォームのコントロールから
アクティブなセルを一セルずつ移動させるだけで遅延が生じて重い。
91 : デフォルトの名無しさん : 2007/12/11(火) 15:01:34
だから、どっちも遅いんだけど、OOo Basicが極端に遅いってことだ。
場合によってはVBAの10倍くらい遅い。

92 : デフォルトの名無しさん[sage] : 2007/12/11(火) 21:39:41
Python は何をやるにも C の 100 倍くらい遅いけど、
最近では C と同じところでも使われているよ。
何かしらメリットがあればデメリットは覆い隠せる。
93 : デフォルトの名無しさん : 2007/12/11(火) 23:16:14
あんたアホだな。
PythonとCは基本的に用途が異なる言語だろ。
遅いとか早いの問題じゃない。
VBAとOOo Basicは用途が同じ。
それで速度が10倍違えば使えない。
94 : デフォルトの名無しさん[sage] : 2007/12/11(火) 23:19:21
だから、同じ用途で使われていてメリットがあればデメリットを覆い隠せると
せっかく書いたのに読めなかったのかな? 他人の話は聞かない主義の人?
95 : デフォルトの名無しさん : 2007/12/11(火) 23:38:10
じゃあ、OOo Basicのメリットを言ってみな。
『タダ』以外で。
96 : デフォルトの名無しさん[sage] : 2007/12/11(火) 23:46:15
>>95
>『タダ』以外で。

わざわざアホなハードル設けてご苦労なこった。
君も気付いた通り『タダ』なのがメリットだよ。
自分で使うのが無料なだけでなく、家族や友達に
使わせるのも無料だし、PC を複数使い分けていて
全部の PC にインストールしても無料。業務
システムに組み込むのも無料だし、再販しても
ライセンス料は取られない。アップグレードも
無料だし、アップグレードしない自由もある。
インストールするのも自由だし、ソースを書き
換えるのも自由。そう、自由なのも大きな
メリットだね。あとオープン。単にソースコードが
オープンなだけでなく、ファイルフォーマットも
オープンなら、設計者の議論もオープンに公開
されている。それ以外に何か説明が必要かな?
97 : デフォルトの名無しさん[sage] : 2007/12/11(火) 23:58:06
あとクロスプラットフォームなのもメリットだね。
Mac のネイティブ版の開発も進んでいるし。
ちょっと古い OS でもビルド出来る。

ペイントツールとデータベースが付いてるのも良いね。
しかも『タダ』で。
98 : デフォルトの名無しさん : 2007/12/12(水) 00:17:32
たかが数万円のMS-Officeけちって
10倍も処理に時間を食われれば、『タダ』など何の意味もない。
魅力を感じるのはキモヲタニートの君だけだよwww
99 : デフォルトの名無しさん[sage] : 2007/12/12(水) 00:24:27
キモヲタニートくらいしか言う事が無いなら、わざわざ出てこなくて良いのに。
何かまともな反論を思いついたらいつでも書き込んでくれ。
100 : デフォルトの名無しさん[sage] : 2007/12/12(水) 11:02:06
たかがマクロの速度ごときのために、タダで手に入るものの代替物に金を出したくないんだが。
101 : デフォルトの名無しさん : 2007/12/12(水) 11:09:16
発想が貧乏人だなwwww
好きにしたまえ。


102 : デフォルトの名無しさん[sage] : 2007/12/12(水) 12:36:08
www
103 : デフォルトの名無しさん[sage] : 2007/12/12(水) 13:06:00
>>91
> 場合によってはVBAの10倍くらい遅い。

そうか? 俺はそうは思えないけどなあ。そういう実感はない。
104 : デフォルトの名無しさん[sage] : 2007/12/12(水) 13:12:28
>>97
それのみならず、OOoのばあいは、べつにBasicにこだわらなくても、
C/C++でもJavaでもPythonでもコードを書けるわけだしな。
105 : デフォルトの名無しさん : 2007/12/12(水) 16:02:32
C/C++でもJavaでもPythonでもコードを書けないヤツほどそういうこと言うんだよwww


106 : デフォルトの名無しさん[sage] : 2007/12/12(水) 17:38:47
>>104
>それのみならず、OOoのばあいは、べつにBasicにこだわらなくても、
おいおいw

>>105
今は開発環境がタダで楽に作れる時代。
おまけ言語(VBA,OOo Basic)でもそもそする方が終わってる
実際VBAなんてVB厨位しか触らないだろ?
107 : デフォルトの名無しさん[sage] : 2007/12/12(水) 17:41:34
ふむ、つまりEmacsLispも秀丸マクロだかなんだかも、みーんな終わっていると。
# 恐らくはスクリプト言語の便利さを理解できないGUIユーザなんだろうなぁ。
108 : デフォルトの名無しさん[sage] : 2007/12/12(水) 17:57:17
>>107
なんでScript言語やGUIがいきなり出てくんの?w
別に職業マじゃない趣味グラマさんがどうしようが構わないよ

実務でEmacsLispや秀丸マクロの実装ってどんだけだよw
109 : デフォルトの名無しさん : 2007/12/12(水) 20:07:45
あのなー、OOoBasic以外の言語でマクロ書いてるヤツって、どんだけいると思ってるんだ?
普通はVBAだろ。
OOoでC/C++、Java、Python使ってるやつなんて見たことないわ。
>>104は馬鹿。
もしくは引き篭もりのキモヲタニート。
110 : デフォルトの名無しさん[sage] : 2007/12/12(水) 22:47:43
ワーストケースで10倍しか違わないなら問題無いね。
逆に10倍速い処理だってあるだろうし。そもそも実装が
違うんだから性能にばらつきが出るのは当たり前だよ。

ま、10倍というのもどうせ適当なんだろうけど。
証拠も無いし、幾らでも書き散らせるもんね。
相手を罵倒しないとレスも出来ない人間はたとえ
2chでも信用されないという良い例だな。
111 : デフォルトの名無しさん : 2007/12/12(水) 23:24:33
ひとつ言っとくが、VBAより早い処理などひとつもない。
つーか、そんなことも知らないってことは、OOoBasicでマクロ書いたことないんだろ。

まあ、貧乏人は一生OOo使ってろwww




112 : デフォルトの名無しさん : 2007/12/12(水) 23:27:26
>>110は自分で書いたことないマクロの話をしてるのか?
なら、>>111の方が信用できるな。
113 : デフォルトの名無しさん[sage] : 2007/12/12(水) 23:28:37
まさに一生ものだな。
114 : デフォルトの名無しさん[sage] : 2007/12/12(水) 23:31:18
>>112
日本語でおk
115 : デフォルトの名無しさん[sage] : 2007/12/12(水) 23:33:40
>>109
自分が BASIC しか書けないからといって、他の人間もそうだと
思うのはちょっと単純すぎるんじゃないかな。
116 : デフォルトの名無しさん[sage] : 2007/12/12(水) 23:34:53
>>111
>ひとつ言っとくが、VBAより早い処理などひとつもない。

言うだけなら何とでも言えるからな。
証拠があるなら別だけど。
117 : デフォルトの名無しさん : 2007/12/12(水) 23:37:33
俺もOOoではBasicしか使えねえけど
Cとかジャバとかパイソンで書いている人が本当にいるかな?
118 : デフォルトの名無しさん : 2007/12/12(水) 23:39:18
お前に証拠を見せる必要なんかないね。
好きなだけOOoでマクロを書きたまえwww
119 : デフォルトの名無しさん[sage] : 2007/12/12(水) 23:39:42
逆に、MS Officeも「マクロではないけど」、
COMで、VBA以外でも同一のAPIが公開されていると言えるよね。
120 : デフォルトの名無しさん[sage] : 2007/12/12(水) 23:42:10
>>117
Java で書いてる奴は見た事がある。
俺がデータの加工するなら一旦 CSV に吐いて
スクリプト言語で処理するなあ。
121 : デフォルトの名無しさん : 2007/12/12(水) 23:43:03
>>117
俺はいないと思うよwww
122 : デフォルトの名無しさん : 2007/12/12(水) 23:45:04
普通に考えてOOoではBASIC使うのが便利だろ。
123 : デフォルトの名無しさん[sage] : 2007/12/12(水) 23:45:28
>>119
性能が欲しかったらそういう手を使うのが普通なんだろうね
124 : デフォルトの名無しさん : 2007/12/12(水) 23:46:21
OOoって、ファイルのロードもセーブも凄く遅いよね。
イライラする。
125 : デフォルトの名無しさん : 2007/12/12(水) 23:47:09
当たり前だろ、わざわざ圧縮したり、解凍したりしてるんだから。
126 : デフォルトの名無しさん[sage] : 2007/12/13(木) 02:17:50
>>109
> OOoでC/C++、Java、Python使ってるやつなんて見たことないわ。

このスレッドを上のほうから読んだ?
127 : デフォルトの名無しさん[sage] : 2007/12/13(木) 02:19:36
UNO は結構みんな使ってるんじゃないかと
128 : デフォルトの名無しさん[sage] : 2007/12/13(木) 02:24:14
>>126-127
マジレスしていい相手か考えよう
129 : デフォルトの名無しさん[sage] : 2007/12/13(木) 02:56:59
そんなスピードを求める処理とか、大きな遅延が生じるほどの負担を
強いる大きな処理とかをVBAとかOOo Basicでふつう書くか。
そういう場合はもっと適切なべつの選択肢があるだろうに。
130 : デフォルトの名無しさん : 2007/12/13(木) 08:40:42
>>129
話が飛躍しすぎなんだよ。
P3とC2Dがあれば、C2DのPCを使うだけのこと。
わざわざP3を選択するのは無意味。
131 : デフォルトの名無しさん[sage] : 2007/12/13(木) 08:44:22
誤爆?
132 : デフォルトの名無しさん : 2007/12/13(木) 10:38:54
P3 = OOo
C2D = Excel
133 : デフォルトの名無しさん[sage] : 2007/12/13(木) 16:02:07
>>129 >>130
そういう話はスレ違い。
ここは純粋にOOo Basicを習得する人のためのスレッド。

その手の話題は↓とかへ行って好き勝手にやってね。

OpenOffice.orgってどうなの?Part10
http://pc11.2ch.net/test/read.cgi/bsoft/1183697115/
134 : デフォルトの名無しさん : 2007/12/13(木) 17:06:31
>>133
過疎ってまともな書き込みのないスレで何言ってるんだ?
スレが出来て1年以上たつのに134だぞwww


ばーかwww
135 : デフォルトの名無しさん : 2007/12/13(木) 21:34:43
ばかれーーーーーす。。。。。。。




136 : デフォルトの名無しさん[sage] : 2007/12/14(金) 00:15:16
ユーザーでOOo使ってる所と仕事した事ある人いる?
137 : デフォルトの名無しさん[sage] : 2007/12/14(金) 10:19:47
Linux使っているところはOOoもそれなりに使っているよ。
138 : デフォルトの名無しさん[sage] : 2007/12/14(金) 13:52:46
>>130
>>129は現実的なまっとうな意見だ。飛躍しているのはお前だろ。
139 : デフォルトの名無しさん : 2007/12/14(金) 17:28:20
>>138
お前、ほんとうにバカだなwwwwww
友達とかいないだろ。

かわいそうにwwww


140 : デフォルトの名無しさん[sage] : 2007/12/15(土) 00:21:42
自己紹介乙な人が居るな...
141 : デフォルトの名無しさん[sage] : 2007/12/15(土) 01:42:43
>>137
OOoアウトプットな物作ったりした?
なんかクリティカルな問題あった?

>>138, 140
改行制御すら出来無い奴相手すんな
142 : ムームー : 2007/12/15(土) 23:09:21
OpenOffice.org 2.3.1 (Windows) を使っています。
データベースソフト Base を使っているのですが、
OpenOffice.org Basic のオブジェクト モデルというのは
どこで知ることができるでしょうか?
これが分らないと Basic を書けない。。。
143 : デフォルトの名無しさん[sage] : 2007/12/16(日) 00:22:50
OpenOffice.org Basic のヘルプか、Sunが配布してるプログラミングガイドで見た覚えがある。
144 : ムームー[sage] : 2007/12/16(日) 01:01:50
みつけた! これですね。
http://api.openoffice.org/docs/common/ref/com/sun/star/module-ix.html

145 : 137[sage] : 2007/12/18(火) 10:49:01
>>141
私の関わるプロジェクトでは、subversionで差分が取れるという理由もあって資料はodsで作っておくことが多い。
外部に提出するときは、Windows版でxlsに保存し直すけどね。
# Linux版だとフォントの関係もあって、xlsに保存してもレイアウト崩れ捲くるのが問題といえば問題。
ま、マクロは殆ど使ってないんだけどね。
146 : デフォルトの名無しさん[sage] : 2008/01/12(土) 14:46:27
1ヶ月前に、OpenOffice.org のマクロの動作速度に関する議論があるけど、
>>103 みたいに OOo の速度で問題ないって言う人は
VBA と OOo とで両方同じマクロを書いて比較したことないんだろうなあ。

俺は自分で書いた VBA マクロを OOo に移植してるんだけど、
特にセル更新まわりの OOo の遅さにはびっくりしたよ。

配列をまるごとセルに突っ込む方法を駆使すればなんとか使えるレベルになるけど、
それでも同じ方法をつかった VBA よりも遅いし、
その高速アクセス法は検索してもなかなか見つからないのが困りもの。

オープンソースを擁護したがる人は頑固だから
上の醜い争いにあるようになかなか認めたがらないんだろうけど。

まー、バージョンが上がるにつれどう改善されていくか、のんびり見守るけどね。
147 : デフォルトの名無しさん[sage] : 2008/01/12(土) 15:57:11
見守るってのは、口を出すことじゃないよ。
148 : デフォルトの名無しさん[sage] : 2008/01/12(土) 20:15:16
自分に都合の悪い意見は真っ赤になって反論するのが信者と呼ばれる人のメンタリティだから
149 : デフォルトの名無しさん[sage] : 2008/01/12(土) 22:45:11
>>146
セル更新中にリフレッシュとめてないんじゃないの?
150 : デフォルトの名無しさん[sage] : 2008/01/12(土) 23:03:36
そんな素人じゃないから。

(A)画面更新止めずに1セルずつ書き込む方法
(B)画面更新止めて1セルずつ書き込む方法
(C)画面更新止めた上で setDataArray を使って配列をまるごと表に書き込む方法

を全部試したが、数千を超えるデータを書き込む場合、唯一使い物になる方法は(C)のみ。
それが >>1 のオフィシャルのプログラミングガイドに書いてないのにあきれた。

ちなみに(A)~(C)に対応する方法はもちろん VBA にも全部あるが、
対応するもの同士を比較すれば全部VBAの方が高速だし、
なによりVBA の場合、(A)はともかく(B)も(C)もまともな速度で動く。
151 : デフォルトの名無しさん[sage] : 2008/01/12(土) 23:15:23
OOoってJavaVMで動いてるんだっけ?
152 : デフォルトの名無しさん[sage] : 2008/01/13(日) 02:57:53
>>151
OOoはJavaVMで動いてないよ。
例外としてBaseの標準DBにだけjavaが使われているよ。
153 : デフォルトの名無しさん[sage] : 2008/01/13(日) 12:14:36
OOoはれっきとしたネイティブアプリケーションです。

動作がもっさりのは、複数のOSで動かすために最適化に制約が多いだろうことと、
単に実装がウンコであろうことの両方が原因じゃないかな。
154 : デフォルトの名無しさん[sage] : 2008/01/13(日) 22:00:55
いくらもっさりだからってJavaをひきあいに出すのはJavaに失礼だ。
155 : デフォルトの名無しさん : 2008/01/14(月) 15:29:08
>>153
最古のコードと最新のコードが混在してて、そのコード間の整合性を取り持つために
ひどいスパゲッティになってるって

ノーベルの中の人が嘆いてた
156 : デフォルトの名無しさん[sage] : 2008/01/14(月) 15:55:29
オープンソースの弊害って感じかね
157 : デフォルトの名無しさん[sage] : 2008/01/14(月) 21:44:43
NetScapeが重たくなってどうしようもなくなってあれだからな
反面教師にしてOOoにはがんばってもらいたい
158 : デフォルトの名無しさん[sage] : 2008/01/15(火) 01:45:39
結局、FireFoxはネスケのコードが使い物にならなかったから、1から書き直したらしいね

OOoもどうなることやら・・・
159 : デフォルトの名無しさん[sage] : 2008/01/15(火) 07:26:08
なんか話が間違ってないか?
「Netscape6 は Netscape4 のコードが使い物にならなかったから…」ならわかるけど。

Netscape6 から Firefox では GUI は大幅に刷新されているが、
レンダリングエンジンの Gecko 部分は基本的には変わらなかったはず。
160 : デフォルトの名無しさん[sage] : 2008/01/15(火) 10:34:00
マジで?
勘違いしてたみたいだ
161 : デフォルトの名無しさん[sage] : 2008/01/16(水) 01:39:53
>>159
Netscape4のほうがよっぽどスイスイ動いて軽快だったのにね。
なんで一から書き換えちゃったんだろ?
162 : デフォルトの名無しさん[sage] : 2008/01/16(水) 07:26:54
>>161
一見スイスイ軽快に動いていたように見えたが、JavaScript 絡みで頻繁に落ちる、
CSS はまともに解釈しない、Java の起動に1分くらいかかる、などで、
それらの技術の普及を阻害しており、百害あって一利なしのブラウザだったんだよ。

本当に使ったことあるのか?
163 : デフォルトの名無しさん[sage] : 2008/01/16(水) 23:11:55
MIDIのプラグインを起動するときなぜかJavaが起動するなんてのも有ったな・・・
164 : デフォルトの名無しさん[sage] : 2008/01/17(木) 01:11:17
>>159
> Netscape6 から Firefox では GUI は大幅に刷新されているが、
> レンダリングエンジンの Gecko 部分は基本的には変わらなかったはず。
裏を返せばレンダリングエンジン以外捨てちゃったようなもんだよな。
OOoもいずれそうなるかもね。
165 : デフォルトの名無しさん[sage] : 2008/01/17(木) 07:32:26
OOoはGUIより内部的な問題が多そうだけど
166 : デフォルトの名無しさん[sage] : 2008/01/17(木) 23:28:16
>>162
ずっとNetscapeユーザーだったけど、それは実感とずれている。
Linux版のはたしかに頻繁に落ちたけど、Windows版はそうでもなかったよ。
javaアプレットなんてめったに使わないし、たとえ起動に1分かかったとしても
その他の利点でNetscape6よりコミュニケータのほうがずっと軽くてよかった。
JavaScriptで落ちたりしたことなどめったになかったはず。
当時はCSSもちゃんと解釈していた。Netscape6が出てきたときにはなんで
こんな糞重いブラウザになっちゃったんだろうって印象しかなかったな。
167 : デフォルトの名無しさん[sage] : 2008/01/17(木) 23:53:46
> 当時はCSSもちゃんと解釈していた。

それはない。ネスケ4がいつまでも息絶えなかったおかげで「JavaScript は基本オフ」とか
「CSSは使わない」とかおかしなローカルルールがまかり通ってしまった。
JavaScritp オンにしとくと CSS 関連で落ちたりもしたし。

質的には IE4 の方が相当マシだったからネスケ4は凋落していったんだが、
ネスケ信者はいまだにそれを認めてないのか?
168 : デフォルトの名無しさん[sage] : 2008/01/18(金) 00:24:48
うん
169 : デフォルトの名無しさん[sage] : 2008/01/18(金) 08:14:07
Netscape4 信者と OpenOffice.org 信者は重なってるのか。
どうりでコミュニティが醜いはずだわ。
170 : デフォルトの名無しさん[sage] : 2008/01/18(金) 22:32:10
Netscape4www
171 : デフォルトの名無しさん[sage] : 2008/01/19(土) 18:43:08
>>164 >>165
ということは現在のOOoのコードは「あますところなく捨てられる」運命か。
172 : デフォルトの名無しさん[sage] : 2008/01/19(土) 19:47:26
開発スタッフが現在の OOo のパフォーマンスに危機感を抱いていない限りそれはないだろ
173 : デフォルトの名無しさん[sage] : 2008/01/21(月) 10:55:42
C#終了のお知らせ
http://pc11.2ch.net/test/read.cgi/tech/1200796178/
174 : デフォルトの名無しさん[sage] : 2008/01/27(日) 23:27:53
>>172
危機感を覚えても手が回らないとか
175 : デフォルトの名無しさん[sage] : 2008/03/18(火) 23:33:01
過疎ってるな
176 : デフォルトの名無しさん : 2008/03/20(木) 20:12:37
過疎ってるね

ちなみに、2.4はRC6まで出ている
本リリースがいつになる事やら・・・
177 : デフォルトの名無しさん[sage] : 2008/03/27(木) 15:38:26
立てる板が悪いんじゃ?
178 : デフォルトの名無しさん[sage] : 2008/03/27(木) 22:55:07
一応マクロとかその辺の話題についてのスレだと思うんだけど。。。
179 : デフォルトの名無しさん[sage] : 2008/03/29(土) 01:32:01
ならなおさら
180 : デフォルトの名無しさん[sage] : 2008/03/29(土) 19:57:38
ExcelVBAのほうが簡単だし…
わざわざ覚える気にならん
181 : デフォルトの名無しさん[sage] : 2008/04/02(水) 00:33:44
Pythonつかえるんだっけ?
182 : デフォルトの名無しさん[sage] : 2008/04/02(水) 21:36:09
Basic ですら使う人は少ないのに Python 使ってる人なんてどんだけいるのやら

利用者は Basic >> Java >> Python くらいの印象かな
183 : デフォルトの名無しさん[sage] : 2008/04/04(金) 14:55:26
>>180
迷子?
184 : デフォルトの名無しさん[sage] : 2008/04/08(火) 21:45:25
OOo3のDeveloper Preview入れてみたけど、マクロのパフォーマンス上がってないね
185 : デフォルトの名無しさん[sage] : 2008/05/09(金) 11:39:17
OOo3のBeta入れてみたけどAuto Filterで抽出→コピペで複数行置換→表示されていない間の
部分まで置換されてガックリだったのが抽出結果だけが置換されるようになっててまた
Excelに一歩近づいた感じ。
186 : デフォルトの名無しさん[sage] : 2008/05/11(日) 06:40:40
次期オープンソース・オフィス・スイート「OpenOffice.org 3.0」のベータ版が登場:ITpro
http://itpro.nikkeibp.co.jp/article/NEWS/20080508/300926/
187 : デフォルトの名無しさん : 2008/05/13(火) 03:45:00
StarOfficeも9になんのかねえ

やめてくれよな
188 : デフォルトの名無しさん[sage] : 2008/05/14(水) 00:30:14
OOo のオブジェクトブラウザその1
X-Ray tool
ttp://www.ooomacros.org/dev.php#101416
形態: OOo Basic マクロ
インストール: ドキュメント内の "Install Xray" ボタンを押す。

利用:
Sub Main
Xray ThisComponent
End Sub
利用前に XrayTool ライブラリを読み込んでおく必要がある。
以下のコードをどこかのライブラリのモジュールに保存、ツール - カスタマイズから
アプリケーションの開始イベントに設定するとよい。
Sub LoadingLibraries
BasicLibraries.LoadLibrary("XrayTool")
End Sub

表示されるのはモダルダイアログで、ページごとにプロパティやメソッド、
インターフェースおよびサービスの情報が参照できる。
メソッドは引数の無いもののみ呼び出すことができ、連続してその値に関する情報を参照できる。
Configuration ボタンを押して IDL ガイドおよびブラウザの設定をしておけば SDK ドキュメントを参照できる。

OOo Basic 以外の言語から利用するには、ScriptProvider を利用する必要があり少し面倒。詳細はマニュアル参照。

特徴:
ユーザーが多い
引数のあるメソッドが取得できない
モダルダイアログ
189 : デフォルトの名無しさん[sage] : 2008/05/14(水) 00:45:28
OOo のオブジェクトブラウザその2
Object Inspector
ttp://wiki.services.openoffice.org/wiki/Object_Inspector
形態: Java で書かれたサービス
インストール: ttp://api.openoffice.org/Projects/ObjectInspector/Inspector.oxt からダウンロード
ツール - 拡張機能マネージャから追加する。(要 Java)
(ソースコードは OOo SDK 付属)

利用:
Sub Main
oInspector = createUnoService("org.openoffice.InstanceInspector")
oInspector.inspect(ThisComponent, "My Document")
End Sub
OOo Basic からいつも上記の様に記述するのが面倒であれば、Standard ライブラリなどに次のようなものを入れておく。
Sub Inspector( oTarget As Object )
oInspector = createUnoService("org.openoffice.InstanceInspector")
oInspector.inspector( Target, "target" )
End Sub

ツリー表示でメソッド、プロパティ、インターフェースおよびサービスが表示される。
ノードの展開で値を取得できる。引数のあるメソッドも値の型の制限内で呼び出すことができる。
また、C++、Java、OOo Basic のコードを生成してくれる。該当の IDL ガイドページを開くこともできる。

特徴:
コード生成
多くのメソッドが呼び出せる
ツリーが見難い
ノンモダル (Java Swing によるウィンドウ)
190 : デフォルトの名無しさん[sage] : 2008/05/14(水) 01:17:05
突然どうした?
191 : デフォルトの名無しさん[sage] : 2008/05/14(水) 01:41:23
>>190
別スレでレビューしれと言われて
192 : デフォルトの名無しさん[sage] : 2008/05/14(水) 01:51:37
OOo のオブジェクトブラウザその3
MRI
ttp://extensions.services.openoffice.org/project/MRI
形態: Python-UNO を利用したサービス
インストール: ツール - 拡張機能マネージャから追加する。(要 Py-UNO インストール)

利用:
Sub Main
Mri ThisComponent
End Sub
ライブラリを読み込むのが面倒であればツール - カスタマイズ - イベントのアプリケーションの開始
に MRILib モジュールの LoadMriLibrary を指定しておく。
ツールメニュー - アドオン - MRI からも実行できる。このときにはそのドキュメントのコンポーネントをターゲットになる。
同じく MRI <- selection の場合にはドキュメントで選択中のオブジェクトがターゲットになる。
OOo Basic 以外からの利用はマニュアル参照。

見た目は X-Ray と同じ系統。メソッドを引数付きで呼び出したり、プロパティ値の取得設定が可能。
IDL ガイドを設定しておくと参照可能。

特徴:
ノンモダル (OOo の awt ツールキットによるウィンドウ)
選択範囲のオブジェクトを調べるのにコードを書く必要がない
普段からマクロを書いたりしている場合には起動が楽
193 : デフォルトの名無しさん[sage] : 2008/05/14(水) 06:43:09
>>188 横だが、参考になった
194 : デフォルトの名無しさん : 2008/05/26(月) 12:13:05
質問なのですが、
MS Officeのように、COM等を使用して
外部ブログラムから制御することは可能でしょうか。
自作ブログラムから制御して、Calcに表を作成して保存したいのですが。
195 : デフォルトの名無しさん[sage] : 2008/05/26(月) 12:57:11
>>194
こことか、SDK の例かねぇ
ttp://wiki.services.openoffice.org/wiki/Documentation/DevGuide/ProUNO/Bridge/Automation_Bridge
196 : デフォルトの名無しさん[sage] : 2008/05/26(月) 13:35:13
>>195
さんくすです。
出来るんだね。
でもExcelとは互換性ないみたい。涙)・・・

197 : デフォルトの名無しさん[sage] : 2008/05/26(月) 21:07:52
Excelとの互換性は期待しない方が…。互換機能を追加したビルドも配布されてるけど期待しすぎるとガッカリする。
面倒でも OOo の文法を覚えるのが一番早い。その価値があるかは微妙だけどね。
198 : デフォルトの名無しさん[sage] : 2008/05/26(月) 21:48:36
なんで API の互換性まであると思っている人が多いのか・・・
199 : デフォルトの名無しさん[sage] : 2008/05/26(月) 22:01:41
OOo での VBA に興味があるなら
ttp://wiki.services.openoffice.org/wiki/VBA
vba api を Basic 以外から利用する方法も書かれてる

遅い遅いといわれている OOo Basic だが、VBA 互換実装でさらに遅くなってないか不安
200 : デフォルトの名無しさん[sage] : 2008/05/26(月) 22:05:54
VBAのコードをそのまま動かし(せ)ても、遅すぎて使い物にならない場合もあるしな。
結局 OOo 用に最適化しなきゃならないという。
201 : デフォルトの名無しさん : 2008/05/26(月) 22:42:57
LinuxやFuck OS、携帯電話のOSに、Windowsとの互換性を持たせろといっているようなものだ。

俺は、それらは別物であって移植の手間は必ずかかるということを認識しているから
マイクロソフト製Officeとその他Officeソフトに互換性がなくても問題とは思わない。
202 : デフォルトの名無しさん[sage] : 2008/05/28(水) 17:59:06
最近ODFDOMってのを良く見かけるんだが…
OOoから開いている文書をDOMレベルでいじれる可能性ってあるの?
ていうかそうなったらまたプログラムが膨れそうで嫌な気もするが…。
OOoもバージョン4は最初から作り直した方が良いと思う。
203 : デフォルトの名無しさん[sage] : 2008/05/29(木) 20:09:42
会津若松市がOpenOffice.orgを全庁導入へ
「順次MS Offceから切り替え,5年間で約1500万円削減」
http://itpro.nikkeibp.co.jp/article/NEWS/20080529/304780/
204 : デフォルトの名無しさん[sage] : 2008/05/29(木) 22:52:45
http://www.sei.co.jp/news/press/08/prs618_s.html

OOo を採用する団体は着々と増えてるよね。
205 : デフォルトの名無しさん[sage] : 2008/05/29(木) 22:58:34
>>203
企業レベルで「5年で約1500万削減」って効果としてはあまり大きくないよなあ。

それに5年はともかく、10年後に OOo のファイルを開けるソフトが残ってるか結構微妙な気がする。
206 : デフォルトの名無しさん[sage] : 2008/05/29(木) 22:59:34
あー、企業じゃなくて市なのか。まあそれでもあんまり劇的ではないな。
207 : デフォルトの名無しさん[sage] : 2008/05/29(木) 23:07:59
>>205
>10年後に OOo のファイルを開けるソフト

OOo でも他のオフィス系ソフトでも
208 : デフォルトの名無しさん[sage] : 2008/05/29(木) 23:30:07
unzip + editor
209 : デフォルトの名無しさん[sage] : 2008/05/29(木) 23:47:52
お前ら嘘でもいいから「OOoは10年後も健在だ」とか言えんのか。

>>207
ファイル形式標準化されたからってそれを採用するソフトが現れるかどうか…。

>>208
レイアウト崩れるなら最初からテキストエディタでいいだろ。
210 : デフォルトの名無しさん : 2008/05/30(金) 00:15:44
オウプンオフィスで作成したファイルがオウプンできない
211 : デフォルトの名無しさん : 2008/05/30(金) 12:40:19
OOo Basicですでに開いている他のドキュメントのマクロを
別のドキュメントのマクロから呼び出すにはどうするのでしょうか
(VBAのApplication.Runに相当する命令)
212 : デフォルトの名無しさん[sage] : 2008/05/30(金) 13:12:59
>>209
スタイルも全てxmlなんだから、適当なビューワを誰か作るだろ。
213 : デフォルトの名無しさん[sage] : 2008/05/30(金) 13:47:28
>>211
>すでに開いている、というのはコードから開いてドキュメントオブジェクトがあるというわけではないわけかな

まず、デスクトップから FramesContainer にアクセスしてほしいドキュメントの所属するフレームを取得する
フレームからコントローラ、モデルオブジェクトまで辿る。
ドキュメントのモデルオブジェクトから ScriptProvider を取得、getScript で実行したいマクロを取得する。
最後に invoke する。

具体的なコード書かなくても分かるや
214 : デフォルトの名無しさん[sage] : 2008/05/30(金) 14:49:12
続き。

Sub Hoyoyo( sString As String )
msgbox sString
End Sub

Hoyoyo ドキュメント中の Standard ライブラリ、Module1 にある Hoyoyo subroutine を引数付きで実行する。

Sub invoke_Hoyoyo
sURL = "vnd.sun.star.script:Standard.Module1.Hoyoyo?language=Basic&location=document"
'フレームを見つけてくる
oFrames = StarDesktop.getFrames()
Dim oFrame As Object
For i = 0 To oFrames.getCount() -1 Step 1
If Left(oFrames.getByIndex(i).Title,6) = "Hoyoyo" Then
oFrame = oFrames.getByIndex(i)
End If
Next
If NOT IsNull( oFrame ) Then
oDoc = oFrame.getController().getModel()
oSP = oDoc.ScriptProvider
oScript = oSP.getScript(sURL)
If NOT IsNull( oScript ) Then
oScript.invoke( Array( "Say Hoyoyo." ), Array(), Array() )
End If
End If
End Sub
215 : デフォルトの名無しさん : 2008/05/30(金) 17:24:49
>>214
oDoc = oFrame.getController().getModel()
でドキュメントオブジェクトは取得できるのですが
oSP = oDoc.ScriptProvider の行で
「BASIC ランタイムエラー プロパティまたはメソッドが見つかりません」
と言うメッセージが出て終了します
もしかして1.1.5では実行できないのでしょうか
216 : デフォルトの名無しさん[sage] : 2008/05/30(金) 18:40:35
>>215
>1.1.5
その考えは無かったわ

dispatch でも動かん。すまん、わからん
Scripting Framework が導入されたのが 2 系からだから ScriptProvider は 1 系だと 1.9 後半くらいじゃないと動かん
217 : デフォルトの名無しさん : 2008/05/30(金) 19:26:27
>>216
スペックが低いためか2.x.xは正常に動作しないため
http://oooug.jp/mirror/1.1.5/index.html
で入手した物を使用しています
お手数をおかけして申し訳ありませんでした
218 : デフォルトの名無しさん[sage] : 2008/06/02(月) 14:58:42
>>217
SA5F(Geode800MHz)でさえ、OpenOffice2.4は(遅いけど)問題なく動きますよ。
よほどメモリ貧乏なのでなければ更新した方がいい気もしますが。
# 2.1が怪しいのは元々エラー処理が雑だったからで、2.4は割りと安定してます。
219 : デフォルトの名無しさん : 2008/06/03(火) 10:26:39
>>218
…300MHzです("スペックが低いためか"どころではないです)
本当に申し訳ありませんでした
220 : デフォルトの名無しさん[sage] : 2008/06/04(水) 15:08:43
起動やファイルを開くベンチマーク結果を挙げているページ
ttp://www.oooninja.com/2008/05/openofficeorg-getting-faster-benchmark.html
ttp://www.oooninja.com/2008/05/responses-to-is-openofficeorg-getting.html
221 : デフォルトの名無しさん[sage] : 2008/06/06(金) 12:07:41
ODFXSLTRunner
ttp://blogs.sun.com/GullFOSS/entry/odfxsltrunner_a_new_tool_in
ttp://wiki.services.openoffice.org/wiki/ODFXSLTRunner
222 : デフォルトの名無しさん : 2008/06/10(火) 20:28:46
update10以降、起動が早くなった気がしないでもない
223 : デフォルトの名無しさん[sage] : 2008/06/14(土) 01:27:01
>>219
是非、「OFFICEスイート」から「テキストエディタ」に乗り換えることをお勧めしますw
224 : デフォルトの名無しさん[sage] : 2008/06/17(火) 00:56:02
100 MHz の PC でテキストエディタ + TeX のころが懐かしい
225 : デフォルトの名無しさん[sage] : 2008/06/17(火) 00:59:40
懐古厨が使うようなソフトではないだろ。それに低速マシンなら Microsoft Office の 2000 辺りが無難。
226 : デフォルトの名無しさん[sage] : 2008/06/17(火) 01:17:23
チープなマシンで使うなら、ちょっと古い版のgnumericと、
コンソールで使うエディタとdbが良いような。

ms-officeは、便利な事もあるんだけど、
やっぱり、リソース食い過ぎと思うんだ。
227 : デフォルトの名無しさん[sage] : 2008/06/17(火) 06:57:16
実際、ほとんどの仕事は 一太郎 ver3 で十分なんだけどね。
もう売ってないし。持ってても動かないし。
228 : デフォルトの名無しさん[sage] : 2008/06/17(火) 17:07:12
そこで仮想PCですよ

めちゃめちゃリソース食うけどな
229 : デフォルトの名無しさん[sage] : 2008/06/25(水) 00:06:59
jsでマクロ書いてる人いないんだ?
OO.o使うついでにjsの勉強兼ねてマクロ作ろうと思ったけど、rhinoインスコしてもeditorでソース開けないわ。
230 : デフォルトの名無しさん[sage] : 2008/06/25(水) 00:12:27
ツール - マクロの管理 - JavaScript で新しくマクロのファイルを作成、編集ボタンを押す
OOo は rhino を自前で含んでる (programs/classes/js.jar)
OOo 2.3 までは rhino 1.5 release 4.1 2003 04 21、OOo 2.4 からは 1.5 release 5 2004 03 25
231 : デフォルトの名無しさん[sage] : 2008/06/25(水) 00:24:34
>>230
うほ。目から鱗。class pathにd/lしたrhino指定してソース開かず齷齪してたよ。
ありがとう。
232 : デフォルトの名無しさん : 2008/06/25(水) 18:47:51
開いた瞬間、全画面真っ黒になるマクロを作りたいのですが
どうせばいいですか。

マクロでまっくろじゃけえ、たいそうウケると信じております。
233 : デフォルトの名無しさん[sage] : 2008/06/25(水) 19:06:54
ナニで黒くするかね
-プレゼン
-ウィンドウ
234 : デフォルトの名無しさん[sage] : 2008/06/25(水) 20:06:31
ウイルスっぽい
235 : デフォルトの名無しさん[sage] : 2008/06/25(水) 21:02:40
これだとデスクトップマネージャの前に出られないか。

Sub BlackWindow()
oParent = StarDesktop.getActiveFrame().getContainerWindow()
oToolkit = oParent.getToolkit()
oDAcc = CreateUnoService( _
"com.sun.star.awt.DisplayAccess")
If oDAcc.hasElements() Then
oDisplay = oDAcc.getByIndex(0)
aSize = oDisplay.ScreenArea
nWindowTypeClass = com.sun.star.awt.WindowClass.TOP
oAttr = com.sun.star.awt.WindowAttribute
nAttr = oAttr.NODECORATION + oAttr.FULLSIZE
oWindow = CreateWindow( oToolkit, oToolkit.getDesktopWindow(), _
nWindowTypeClass, "window", nAttr, _
0, 0, aSize.Width, aSize.Height )
oWindow.setPosSize(0, 0, aSize.Width, aSize.Height, _
com.sun.star.awt.PosSize.POSSIZE )
oWindow.Background = 0
oWindow.setVisible(True)
End If
End Sub
236 : デフォルトの名無しさん[sage] : 2008/06/25(水) 21:03:14
続き

Function CreateWindow( oToolkit As Object, oParent As Object, _
nWindowTypeClass As Long, sTypeName As String, nAttr As Long, _
nX As Long, nY As Long, nWidth As Long, nHeight As Long ) As Object
aRect = CreateUnoStruct("com.sun.star.awt.Rectangle")
With aRect
.X = nX : .Y = nY
.Width = nWidth : .Height = nHeight
End With
aWinDesc = CreateUnoStruct("com.sun.star.awt.WindowDescriptor")
With aWinDesc
.Type = nWindowTypeClass
.WindowServiceName = sTypeName
.ParentIndex = -1
.Bounds = aRect
.Parent = oParent
.WindowAttributes = nAttr
End With
CreateWindow = oToolkit.createWindow(aWinDesc)
End Function
237 : デフォルトの名無しさん[sage] : 2008/06/26(木) 00:03:09
JSのOO.o用APiリファレンスってどこに載ってるか分かりますか。
Javaのはそれらしいのがあるんですけど、全部は載ってないし・・・。
238 : デフォルトの名無しさん[sage] : 2008/06/26(木) 00:07:39
http://api.openoffice.org/docs/common/ref/com/sun/star/module-ix.html
ありました。これですね。
239 : デフォルトの名無しさん[sage] : 2008/06/26(木) 00:12:09
OOo の SDK とってきたら Java UNO のと OOo API 両方入ってる

ここも見とくといいかも
ttp://wiki.services.openoffice.org/wiki/Documentation/DevGuide/Scripting/Writing_Macros
240 : デフォルトの名無しさん[sage] : 2008/06/26(木) 22:27:43
ToolbarController を実装して Addons で OfficeToolbar に入れたのに初期化されないよ
Standard ツールバーに入れたら初期化されたから、Addons によるツールバーでは
Factory から作成されとらんのか。issue に・・・
241 : デフォルトの名無しさん[sage] : 2008/07/04(金) 21:48:20
http://api.openoffice.org/
ここ見ても英語だし、さっぱり分からん。
242 : デフォルトの名無しさん[sage] : 2008/07/09(水) 00:16:06
日本語に翻訳するところから始めるんだ
autodoc は UTF-8 通るんかね?
243 : デフォルトの名無しさん : 2008/07/10(木) 17:54:23
OOo Basicで"VBScript.RegExp"を使うことは出来ないのでしょうか
244 : デフォルトの名無しさん[sage] : 2008/07/10(木) 18:52:04
>>243
こうか?
Sub retest
Dim Re As Object
Re = CreateObject("VBScript.RegExp")

Re.Pattern = "A."
Re.Ignorecase = True
Re.Global = True
sResult = Re.Replace("abc", "12")

msgbox sResult
Re = nothing
End Sub
245 : デフォルトの名無しさん : 2008/07/10(木) 19:42:21
>>244
そうなのですが、実行すると"Re.Pattern"の部分で
"BASICランタイムエラー 例外が発生しました Type:Unknown"
というメッセージが表示されて終了してしまうのです
>>211
の人の場合のようにバージョン(ちなみに2.0)が関係するのでしょうか


246 : デフォルトの名無しさん[sage] : 2008/07/10(木) 20:30:09
>>245
WinXPSP3で OOo 2.4.1、2.0.4 なら普通に動くが・・・
OS の問題かね?
247 : デフォルトの名無しさん : 2008/07/10(木) 22:26:36
>>246
OSはWin98SE(Ie6SP1)です
あきらめてbregexp.dllを使ってみようかと思いますが
"Declare Function"が使えるのはどのバージョンからでしょうか
248 : デフォルトの名無しさん[sage] : 2008/07/10(木) 22:36:14
>>247
1.0 系からでも使えるはず
249 : デフォルトの名無しさん[sage] : 2008/07/11(金) 00:38:56
Declare Function ReReplace Lib "bregexp.dll" Alias "Replace" _
(szRegstr As String, szTarget As String) As String

Sub ExampleDeclare
Dim sExp As String
Dim sTarget As String
Dim sStr As String
sTarget = "12"
sExp = "/\d/x/"
sStr = ReReplace(sExp, sTarget)
msgbox sStr
'FreeLibrary("bregexp.dll" )
End Sub

invalid target parameter って表示される・・・。
250 : デフォルトの名無しさん : 2008/07/11(金) 08:36:57
>>248
1.1.5使いの211です
>>249を実行すると
「BASIC ランタイムエラー 実装されていません」
となります
日本語独自ビルドであることは無関係なのでしょうか?
>>223
表計算ソフトが必要なのでエディタで代替出来ません
>>226
gnumericはインストールできませんでした
251 : デフォルトの名無しさん[sage] : 2008/07/11(金) 20:04:38
実装されていませんって・・・ダミーってことかね

・・・ com.sun.star.util.TextSearch サービスはカスだしなぁ
252 : デフォルトの名無しさん[sage] : 2008/07/11(金) 21:45:45
>>250
dll はフルパスで書かなきゃ駄目とか
253 : デフォルトの名無しさん : 2008/07/11(金) 22:52:06
>>252
早速試してみたところ実装はされたようですが
下記のマクロを実行したところ
「BASICのシンタックスエラー パラメータはプロシージャに合いません」
となります(Excelでは「345」と正常に表示されます)

Declare Function Match Lib "C:\WINDOWS\SYSTEM\bregexp.dll" _
(szRegstr As String, szTarget As String) As String

Sub Test
sTarget = "12.345"
ret = Match("m/(\d{3})/", sTarget)
MsgBox ret
End Sub
254 : デフォルトの名無しさん[sage] : 2008/07/11(金) 23:05:33
Sub Test
Dim sTarget As String
Dim sExp As String
sExp = "m/(\d{3})/"
sTarget = "12.345"
ret = Match(sExp, sTarget)
MsgBox ret
End Sub

こうすると、クラッシュするようになったよ・・・。
255 : デフォルトの名無しさん[sage] : 2008/07/11(金) 23:18:29
>>254
奇遇だな。俺も今それを試してクラッシュしたところだ。OOo beta 3 だけどな。
256 : デフォルトの名無しさん[sage] : 2008/07/11(金) 23:19:40
OOo 3 beta だった
257 : デフォルトの名無しさん[sage] : 2008/07/11(金) 23:21:19
>>249 を書いたのも俺だが、sTarget = "12" を "123" にするとクラッシュするんだ

OOo 1.1 からPy-UNOが利用できるから、Python 使うとか・・・
1.1.5 をDLしてくるか
258 : デフォルトの名無しさん[sage] : 2008/07/11(金) 23:24:55
ま、あきらめて自分で実装するのが一番早かったりしてな
259 : デフォルトの名無しさん[sage] : 2008/07/11(金) 23:34:25
なるほど、Alternative dialog Find & Replace for Writer 拡張機能の正規表現は
Basic で書かれてるんかな?コメがチェコ語?かなんかでパット見よー分からん

それならパクッテこれば・・・1系で動くか分からんが
260 : デフォルトの名無しさん[sage] : 2008/07/12(土) 00:03:17
あー、1.1.5 でも Py-UNO で TCP/IP 接続でいけるな
ttp://udk.openoffice.org/python/python-bridge.html
261 : デフォルトの名無しさん[sage] : 2008/07/12(土) 00:05:59
ここはお前の日記帳か
それになんで TCP/IP が出てくるんだ
262 : デフォルトの名無しさん[sage] : 2008/07/12(土) 00:09:56
OOo はTCP/IPで接続できるが?別にpipeでもいいけど
263 : デフォルトの名無しさん[sage] : 2008/07/12(土) 04:50:57
通りすがりの者だが読んでるだけで勉強になるスレだと思った
264 : デフォルトの名無しさん : 2008/07/12(土) 09:21:29
243です
私もフルパス指定でやってみましたが"bregexp.dll"以外のdll
(unlha32.dll,urmon.dll,nmail.dll)ではいずれも関数を呼び出した行で
"実装されていません"となります(フルパス指定しない場合と同じ)
なので2.0では"Declare Function"が使えないのだと思っていました
265 : デフォルトの名無しさん[sage] : 2008/07/12(土) 11:23:01
kernel32 内のは動く (1.1.5、2.0)
ttp://www.oooforum.org/forum/viewtopic.phtml?t=72220&highlight=kernel32

Declare Function GetComputerName Lib "kernel32" Alias "GetComputerNameA" _
(ByRef lpbuffer As String, nSize As Long) As Long

Public Function ComputerName() As String
Dim sBuffer As String
Dim lSize As Long
Dim sNome As String

sBuffer = Space$(260)
lSize = Len(sBuffer)
Call GetComputerName(sBuffer, lSize)
If lSize > 0 Then
sNome = Left$(sBuffer, lSize)
lSize = InStr(sNome, Chr$(0))
If lSize Then
sNome = Left$(sNome, lSize - 1)
End If
Else
sNome= ""
End If
'ComputerName = sNome
MsgBox sNome
End Function

bregexp のときの Declare 時の引数を ByRef だの ByVal をいじっても特に変わりなし
相性悪いんかね・・・
266 : デフォルトの名無しさん : 2008/07/12(土) 18:14:12
>>265も動きません
OS等OOo以外の環境が原因の可能性が濃厚ですね
そうなると他の方には解決策の探しようがありませんので
"Declare Function"の使用は断念します
お騒がせしました
(com.sun.star.util.TextSearchで2件目以降のマッチングさえ取得できれば・・・)
267 : デフォルトの名無しさん[sage] : 2008/07/13(日) 00:34:31
TextSearch はリファレンスにサブパターンが取得できるっぽいことが書かれてるのに
取得できないのが痛いよなぁ

二件目以降は文字列の endOffset 以降を再検索で・・・
268 : デフォルトの名無しさん : 2008/07/22(火) 06:11:06
com.sun.star.i18n.TransliterationでURLエンコード、デコードって出来るんでしょうか?
269 : デフォルトの名無しさん[sage] : 2008/07/22(火) 14:46:57
いいえ
270 : デフォルトの名無しさん : 2008/07/22(火) 20:10:42
そうですか、さんくすです。
271 : デフォルトの名無しさん[sage] : 2008/08/27(水) 12:53:02
Sub clipboard_2
oClip = CreateUnoService("com.sun.star.datatransfer.clipboard.SystemClipboard")
oTransfer = oClip.getContents()
aDataFlavors = oTransfer.getTransferDataFlavors()
bType = False
For i = 0 To UBound(aDataFlavors) Step 1
aDataFlavor = aDataFlavors(i)
If aDataFlavor.MimeType = "text/plain;charset=utf-16" Then
bType = True
Exit For
End If
Next

If bType Then
' convert utf-16 to UNO string
oConverter = CreateUnoService("com.sun.star.script.Converter")
sData = oConverter.convertToSimpleType( _
oTransfer.getTransferData(aDataFlavor), _
com.sun.star.uno.TypeClass.STRING)
End If

End Sub

上記の "If bType Then" 以降の処理を行わず "aDataFlavor" を
クリップボードに戻す事は可能でしょうか
272 : デフォルトの名無しさん[sage] : 2008/08/27(水) 13:29:10
>>271
クリップボードの内容を text/plain;charset=utf-16 だけにしたいってこと?
273 : デフォルトの名無しさん[sage] : 2008/08/27(水) 14:40:02
>>272
はい、なぜか文字数が多くなると "If bType Then" 以降の処理の結果
"sData"が空になってしまうので回避したいのです
274 : デフォルトの名無しさん[sage] : 2008/08/27(水) 14:45:16
>>273
64k 以上の文字列は扱えない・・・。というのが問題だとおもう
OOo Basic だと文字列は64kまで
275 : デフォルトの名無しさん[sage] : 2008/09/05(金) 12:25:27
ttp://hermione.s41.xrea.com/pukiwiki/pukiwiki.php?OOoBasic%2FGeneric%2FWindow

このページに

>* boolean isVisible () 表示状態を返します
>* void setVisible ( [in] boolean Visible ) 表示状態を切り替えます

とあるのですが
oContainerWindow.setVisible(False) は問題ありませんが
bVisible=oContainerWindow.isVisible() はエラーになります

散々調べた結果

ttp://api.openoffice.org/docs/common/ref/com/sun/star/awt/XWindow.html#setVisible

このページで setVisible は XWindow の下位

ttp://api.openoffice.org/docs/common/ref/com/sun/star/awt/XWindow2.html#isVisible

isVisible は XWindow2 の下位である事まではわかったのですが、そこから先がわかりません
ご教授賜りたく、よろしくお願いいたします
276 : デフォルトの名無しさん[sage] : 2008/09/05(金) 12:37:11
>>275
OOo 2.4.1 winXP では Calc のウィンドウに対して問題なく動く
Sub test25
oDoc = ThisComponent
oFrame = oDoc.getCurrentController().getFrame()
oContainerWindow = oFrame.getContainerWindow()
oContainerWindow.setVisible(False)
bVisible = oContainerWindow.isVisible()
oContainerWindow.setVisible(True)
End Sub

どんなエラーが出るんかね?
277 : デフォルトの名無しさん[sage] : 2008/09/05(金) 17:44:16
>>276

BASIC ランタイムエラー
プロパティまたはメソッドが見つかりません
です

このスレッドを読むと1 系には実装されていないとかいうことでしょうか
設定は出来て取得できないなんて考えられないソフトです

メディアを演奏しようとすると
オブジェクト変数は設定できていません
とか言われるし

lockControllers() と addActionLock() を両方使っても
セルカーソルが移動するし

シート数40、サイズ9Mほど(Excel97の場合)のファイルを保存するのに5分!もかかるし
(StarCalc形式なら20秒弱ですむが文字が化けるし、Excel形式だと開くときにシート毎に
行の高さの調整とかを頼みもしないのに実行するのでとてもうっとうしい)

非表示で開いたCSVファイルを保存すると空になってしまうし・・・

Excelのマクロを移植するのは断念します

ありがとうございました

さようなら
278 : デフォルトの名無しさん[sage] : 2008/09/05(金) 20:58:10
OOo のマクロは利用者が少ないし、ドキュメントも整備されてないから、
開発にかなり忍耐を強いられるのは事実だな。多分不具合も多いと思う。
OOo3 系でも改善される気配がないし。

それに Excel は 2003 までだったらマクロとか動作速度に関しては良くできてるよ。
ただ、Excel 2007 で9M のファイルを開くとエラいことになりそうな気はするけど。
279 : デフォルトの名無しさん[sage] : 2008/09/05(金) 21:35:08
>>278
よく使う API には問題ない
Basic も大抵なんともないが、あまり使われてなさそうなランタイム関数を使うとバグであー、ってなる

ドキュメントが整備されるとは思えん・・・DevGuide 読めば分かると思われてるし
280 : デフォルトの名無しさん[sage] : 2008/09/05(金) 21:54:41
まぁ、整備されつつあるドキュメントといえば
ttp://wiki.services.openoffice.org/wiki/Documentation/BASIC_Guide
PDF にすると 214 ページ

翻訳されるようだが・・・
よく使われるであろう Calc に関する内容が少なすぎんかね
281 : デフォルトの名無しさん[sage] : 2008/09/05(金) 22:11:23
最近見てないけど、全機能の解説には程遠いんだよね、確か
んで、ひたすら Google での検索地獄になる
282 : デフォルトの名無しさん[sage] : 2008/09/06(土) 14:48:54
まぁ、ぐぐっても解決策が出てきた例がない
283 : デフォルトの名無しさん : 2008/09/07(日) 11:20:27
>>282
使えねーな、全く
会津若松市さん ご愁傷様
284 : デフォルトの名無しさん[sage] : 2008/09/07(日) 11:23:47
まあ英語ページで回答が見つかることもあるよ

彼らは一体どこで調べたんだろうと思うけども
285 : デフォルトの名無しさん[sage] : 2008/09/07(日) 12:34:40
本家で、難儀な質問に回答を出してるのは、
ソース触ってる中の人たちじゃまいか?

// ある意味、ソースがドキュメント状態?
286 : デフォルトの名無しさん[sage] : 2008/09/07(日) 18:23:15
大抵のことは散乱しているドキュメントなどで見つかるんだよ
ソースを見なきゃならんこともあったが・・・

とはいえ、ユーザーが最初の一歩を踏み出そうとするときにまとまったドキュメントが無いと躊躇すると思う
マクロを書くユーザーの多くは OOo のソースなんて見たくないと思うんだが
287 : デフォルトの名無しさん : 2008/09/08(月) 00:56:22
使えねーな、全く
288 : デフォルトの名無しさん[sage] : 2008/09/08(月) 08:42:30
普通は >>277 のような書き込みは盛大に叩かれるのが一般的なのに、
ここでは誰も否定しないのが素晴らしい。みんなOOoには不満を抱えてるんだな

「○○がMS Officeを捨ててOOoを採用」とかいうニュースを見るたびに
担当 SE はご愁傷様、という気分になるよ
289 : デフォルトの名無しさん[sage] : 2008/09/08(月) 11:00:09
VBAでシステム組むのが馬鹿なんだよな。
そうでないなら、MSOfficeを大幅に減らしても殆ど問題がないのに。
290 : デフォルトの名無しさん[sage] : 2008/09/08(月) 21:10:54
>>289
同意。
291 : デフォルトの名無しさん[sage] : 2008/09/08(月) 21:33:36
>>289
あの便利さは一度覚えるとなかなか抜け出せないと思うよ
292 : デフォルトの名無しさん[sage] : 2008/09/08(月) 22:02:50
>>291
マならありえない発言だな
293 : デフォルトの名無しさん[sage] : 2008/09/08(月) 22:09:53
与えられた案件を顧客の要望に沿って実現するのがプログラマではないでしょうか
294 : デフォルトの名無しさん : 2008/09/08(月) 23:27:41
>>289
> VBAでシステム組むのが馬鹿なんだよな。
> そうでないなら、MSOfficeを大幅に減らしても殆ど問題がないのに。
AccessVBAとSQLで大抵の業務がすげーーー効率化、精度向上、リアルタイム化出来るんだけど。
ほとんど労力いらずで。Baseなんてので開発すりゃ、100倍の労力と1/100のサービスになりそう。
なんせ、情報が貧困過ぎる。
295 : デフォルトの名無しさん[sage] : 2008/09/09(火) 00:24:07
細かい指摘ですまんが、

× SQL
◎ RDBMS
○ MS SQL Server

じゃないだろうか。
リアルタイム化というのは定期的にバッチで処理していた業務を OLTP 化するという事?
296 : デフォルトの名無しさん[sage] : 2008/09/09(火) 00:33:15
>>295 「AccessとVBA」って書きたかった に100ペセタ
297 : デフォルトの名無しさん : 2008/09/09(火) 19:36:53
>>295
SQLは構造化クエリー言語だから、商品名ってわけじゃないと思うよ。
もち、Access内部のSQLを指す?

Baseはやはりどう考えても代替にはなり得ないと思うが
298 : デフォルトの名無しさん : 2008/09/09(火) 23:31:31
>>297

> Baseはやはりどう考えても代替にはなり得ないと思うが
みんな黙っちゃったじゃまいか
299 : デフォルトの名無しさん[sage] : 2008/09/09(火) 23:37:54
MS Office は捨てて OOo に移行しろ、みたいなことを言う人は基本的に信用しないことにしている。
本気で OOo に触ったことがある人ならそんなこと言えないと思うし。
300 : デフォルトの名無しさん[sage] : 2008/09/09(火) 23:47:24
MSOfficeはVBA触って初めてそのバカ高い値段設定にも納得がいく。
開発環境としてすごい整ってる。

だがOO.oの未来を切り開きたい俺はPythonUNOで何とか頑張りたい。
301 : デフォルトの名無しさん[sage] : 2008/09/10(水) 00:10:28
>>299
信用するかどうかは君の好きで決めていいんだよ。
わざわざ理由を考えてことわる必要なんて無いさ。
302 : デフォルトの名無しさん[sage] : 2008/09/10(水) 00:24:12
このスレで言うのもなんだけど、Access を使うなら SQLite とか HSQLDB とか
Apache Derby とか MySQL とかをお好みで使えば良いじゃんと思ってしまう。
303 : デフォルトの名無しさん : 2008/09/10(水) 14:53:08
>>297
> Baseはやはりどう考えても代替にはなり得ないと思うが

MSOfficeでも自動マクロ作成以外にマクロのコードを自分で組んでいる
ユーザはそう多くはないだろうということだろう。
OOoのマクロ言語がVBAの代替になるとまで言っている人を俺はいまだ見たことがないが。
問題点は指摘している人はオープンソース派サイドにも幾人かいるが。
304 : デフォルトの名無しさん[sage] : 2008/09/10(水) 15:53:35
純粋なロジックだけの話なら、ooo-basicはvbaの代替になると思う。
ぶっちゃけ、basicだから。

問題は、アプリとの絡みがある時に、リファレンスになる物が無いって事だろ。
calcのセル操作とかで分んない事があったら、キーマクロ吐き出させて、
呼出関数を探るんだけど、そのキーマクロが吐き出した関数の詳細が判らん。
例えばの話、セルの巾を変える関数が判ったら、
その近くにセルの高さを変える関数があるはずなんだけど、
そういう事が解るようなサマリーが無い。
その辺のドキュメントが整理されてくれば、使い易くなるんでないかなぁ。
305 : デフォルトの名無しさん : 2008/09/10(水) 18:34:36
>>303
> MSOfficeでも自動マクロ作成以外にマクロのコードを自分で組んでいる
> ユーザはそう多くはないだろうということだろう。
VBAは全員手書きだと思ってた
Accessが吐き出すVBAコードは、ある程度例外処理もなされているが
とてもじゃないが冗長すぎる。日本語入ってなくて分かりづらいし
後から手書きで直すのが苦痛ってか不可能。
普通、最初から手で書くか、コピペ手直し派がほとんどだと思うよ。

Accessが吐き出すSQLは割りと綺麗
後、とってもいじりやすい
306 : デフォルトの名無しさん[sage] : 2008/09/10(水) 19:39:50
日本語コードに拒否反応起こらないの?
307 : デフォルトの名無しさん : 2008/09/10(水) 22:17:22
>>306
オブジェクトの名称だろ
コードが日本語であるはずがない
ここの人は本当にVBA書いたことあるのだろうか?と疑いたくなる書き込みばかり

Accessが吐き出すVBAは全てアスキーコードに変換される
もちろん意味はある

しかし日本語で済めばそれに越したことはない
308 : デフォルトの名無しさん[sage] : 2008/09/11(木) 00:38:04
>>304
>キーマクロ吐き出させて

マクロの記録だとコマンド URL しか出んけど、その部分のソース見てるって事?
dispatch は最終手段・・・
309 : デフォルトの名無しさん[sage] : 2008/09/11(木) 04:38:49
OOoの場合は、マクロの自動生成で吐き出されるコードと、
打ち込みコードとの乖離がありすぎるのがいちばん難点。
その上、日本語のマニュアル書籍がほとんど皆無だから。
310 : デフォルトの名無しさん[sage] : 2008/09/11(木) 06:07:01
>>309
あれはひどい

あと、全APIのドキュメントがない以上、英語の状況も似たようなもんだと思うよ
英語ではチュートリアルがあるだけマシといえばマシだが
311 : デフォルトの名無しさん[sage] : 2008/09/11(木) 10:40:07
>>310
全API のドキュメントは登場しないと思う
今あるのは IDL ドキュメントだけど、IDL の無いサービスとかの IDL 追加を issue に出しても
内部用だから・・・とか言って拒否られる
312 : デフォルトの名無しさん[sage] : 2008/09/11(木) 15:27:36
Sub [test space]
[文字列] = "abc"
msgbox [文字列]
End Sub
313 : デフォルトの名無しさん : 2008/09/11(木) 22:37:56
使えねーな。ほんと
誰でもいいから、もっと使ってネガティブキャンペーンして、MSOfficeの値段を下げてくれよ。
314 : デフォルトの名無しさん[sage] : 2008/09/11(木) 22:41:59
>>300
Py-UNO だとマクロを拡張機能に入れて配布しにくくないか?
サービスにして com.sun.star.task.XJobExecutor インターフェースとか使わないと実行しにくい
315 : デフォルトの名無しさん[sage] : 2008/09/12(金) 07:21:33
OOoの普及率や完成度を考えたら、配布以前の問題だろ
316 : 314[sage] : 2008/09/12(金) 13:26:52
>>300
すまん。2.4.1 の PythonScriptProvider に不具合があるみたいだ

Linux 上だと動作するが、拡張機能が毎回無効にされる
WinXP 上だと ScriptURIHelper がエラーを吐く・・・。
317 : デフォルトの名無しさん[sage] : 2008/09/12(金) 22:10:23
OOoでマクロならおとなしくBasicにしとくのが無難だと思うけどね。
一番需要があるから開発の今後に(少しは)期待できる気がする。
Javaですらどれだけ使われてるのか疑問。
318 : デフォルトの名無しさん[sage] : 2008/09/12(金) 22:24:07
Basic は今後は安定化のみしかないっぽいことをどっかの issue で見た気がする
他の言語使えって言ってた
最近 Basic 関連での拡張などは Novel が VBA との互換性を向上させようとしてランタイム関数などをいじっていたもの

Type を Global 変数に入れると消えるのとか直してくれよ・・・
ttp://qa.openoffice.org/issues/show_bug.cgi?id=52057
319 : デフォルトの名無しさん : 2008/09/12(金) 22:41:05
>>317
> 一番需要があるから開発の今後に(少しは)期待できる気がする。
> Javaですらどれだけ使われてるのか疑問。

たぶん習得する時間と労力が全て無駄になる
320 : デフォルトの名無しさん[sage] : 2008/09/13(土) 00:01:01
>Basic は今後は安定化のみしかない

安定するならそれはそれで結構なことじゃないか
321 : デフォルトの名無しさん[sage] : 2008/09/14(日) 04:36:31
マクロ記録機能で吐き出されるBasicコードをなんとかしてくれ~
322 : デフォルトの名無しさん[sage] : 2008/09/14(日) 12:33:29
グラフいじったときの振る舞いとかを知りたいのに、そういうのは全く吐かれないんだっけ?
323 : デフォルトの名無しさん[sage] : 2008/09/16(火) 21:20:56
>>322
そう、全く・・・
324 : デフォルトの名無しさん[sage] : 2008/09/16(火) 21:53:03
グラフ絡みの挙動は、リファレンスで何とかならんかったっけ?
325 : デフォルトの名無しさん[sage] : 2008/09/16(火) 22:10:33
グラフに新しい系列を追加したりするのはリファじゃさっぱり・・・
326 : デフォルトの名無しさん[sage] : 2008/09/17(水) 00:26:24
>>325
http://www.oooforum.org/forum/viewtopic.phtml?t=4827
のスニペットを試してみれば?
データテーブルの先頭カラムを、x値に割り当てておくのがコツ。

// .uno:ChangeChartDataでやれたような気がしたんだけど、
// 気のせいだったみたい。
// チャートを明示的に指定できるから、こっちの方がよさげなんだけど
327 : デフォルトの名無しさん[sage] : 2008/09/17(水) 00:45:06
>>326
それでやるとGUIからやるのとは違ったものになることが多くて
ひとまとめにされたり、変に分割されたりするんよ

ちょっと .chart2.data.DataProvider を試してみる
でも getUsedData から取得できるデータに x のデータが一系列分しかみられないのは・・・
328 : デフォルトの名無しさん[sage] : 2008/09/17(水) 00:45:12
いや、結局googleでWeb上に分散している答えを探すしか方法がないってことが問題なんでしょ。

あらかじめ答えの書かれた URL が分かってるならいいけど、
それを知らず、なおかつその答えがWeb上に存在するかどうかすら怪しいものを、
疑問点が湧くたびに調べなきゃならないってのは相当なストレスだよ。

俺は一時期VBAマクロの移植作業で苦労した経験があるが、
もう当面やりたいとは思わない。
329 : デフォルトの名無しさん[sage] : 2008/09/17(水) 00:47:41
いや、GUI から出来るのにそもそも API から不可だったりすることが大問題
調べても見つからないから、ソースを見たら外部から利用できる API がなかったりする
330 : デフォルトの名無しさん[sage] : 2008/09/17(水) 01:01:24
>>327 x値は普通1系列しか無いんじゃない?

>>328 >結局googleでWeb上に分散している答えを探す
web全体まで見なくても、http://www.oooforum.org/forum/内だけで、
大抵の場合はカタが付くよ。
自分が困ってる問題には、たいがい先につまづいてる人が居るから。
331 : デフォルトの名無しさん[sage] : 2008/09/17(水) 01:07:20
>>330
XY 散布図に多系列だと、大抵は x に対応する y が必要だからさ・・・
.chart2.data.DataSequence は x と y の対応に関する指定がないっぽいから望み薄だ
332 : デフォルトの名無しさん[sage] : 2008/09/17(水) 01:19:14
今試したら俺 >>326 の方法で XY 散布図のデータ系列の追加できたけどな。
もともと x, y1, y2 の2系列があるところを x, y1, y2, y3 の3系列にするってかんじに。

あとは色とかは線の太さとかは自分で設定すればいいし。
333 : デフォルトの名無しさん[sage] : 2008/09/17(水) 01:30:29
いや、散布図で一本目と別の x に対する y の値のグラフを同じグラフに描くような感じに
2.3 頃から使えるようになったやつ
334 : デフォルトの名無しさん[sage] : 2008/09/17(水) 01:34:58
なるほど、そんな機能があるとは知らなかった。

そんな新しい機能に対するAPIが用意されてるかどうかはすこぶる怪しいな。
335 : デフォルトの名無しさん[sage] : 2008/09/17(水) 11:05:10
ダメっぽいよ。未だGUIでも個別設定と纏めて設定を切り替えるととち狂うし。
散布図から他のグラフに変えて、元に戻してもおかしくなるし。
# 要は、x軸複数系列は完成してないと見るべし。
336 : デフォルトの名無しさん[sage] : 2008/09/19(金) 19:11:41
グラフのデータ系列の操作だがどうやら
oChart = ThisComponent.getSheets().getByIndex(0).getCharts().getByIndex(0).getEmbeddedObject()
oCooSys = oChart.getFirstDiagram().getCoordinateSystems()
付近から始めるみたいだ。
337 : 336[sage] : 2008/09/20(土) 01:34:53
やっと、作成済みの散布図に新しい XY の系列の追加がうまくいったあぁ
338 : デフォルトの名無しさん[sage] : 2008/09/20(土) 10:04:47
>>337 おめ。

さぁ、後からツボった人が参照できるように、
書いたコードをどこかに晒す作業に戻るんだ。

// 公開の縛りとかが無くて、そゆ事が可能なコードならね:)
339 : デフォルトの名無しさん[sage] : 2008/09/20(土) 23:00:52
>>338
某所・・・ネットの狭間に書いといたよ
340 : デフォルトの名無しさん[sage] : 2008/09/29(月) 15:59:20
3.0 rc3 が出て、正式が 10/7 だと正式は rc3 になるんだろうけど
user/Script/python にいれた python マクロが認識されないままになりそうだ
341 : デフォルトの名無しさん[sage] : 2008/10/14(火) 13:41:17
OOo3.0をさっそく入れてみた。エクセル2003のマクロが動くかどうか試してみた。
シートオブジェクトを代入するところでつまずいた。orz

Dim ST_G As Excel.Worksheet, ST_D As Excel.Worksheet
Sub 図作成()
Set ST_G = Worksheets("Sheet1") ←ここでエラー
Set ST_D = Worksheets("Sheet2")
342 : デフォルトの名無しさん[sage] : 2008/10/14(火) 14:04:56
Dim ST_G As Excel.Worksheet
を As Object にすればいいんじゃない
343 : 341[sage] : 2008/10/14(火) 16:12:36
>342
ありがとうございます!
ところが、別のところ(セルの塗りつぶし)でもエラーが出ました。移植に必要な情報ってどこかに
あるんですか?
344 : デフォルトの名無しさん[sage] : 2008/10/14(火) 22:39:14
ちゅうかさ、v.2 の頃に以前 VBA サポートを有効にしたビルドを使ったことあるけど、
あれにあんまり期待しない方がいいと思うぞ。ほとんどが動かなかったし。
345 : デフォルトの名無しさん[sage] : 2008/10/15(水) 15:35:32
※NetBeansスレでも聞いたのですが、こちらでもお願いします。
NetBeansでOpenOffice.Apiを使ったことのある方、教えてください。

やりたいこと 「OpenOffice.Calcからjavaのメソッドを呼び出す」
調べたら
NetBeansでOpenOffice.Apiを使えば簡単にスケルトンクラスを作ってくれることがわかりました。
早速、Apiをインストールしたのですが、以下の現象がでてます。

Apiをインストールすると

アドオン、calc アドイン、component、クライアントアプリ

の4つのプロジェクトが作成可能になります。

今回のやりたことは、componentプロジェクトでできそうです。
試してみると、アドオン・calc アドインは動作するのですが、componentプロジェクトがうまく作れません。

componentプロジェクトを作成すると、サービスの登録画面が表示され、インターフェース、サービスを追加しようとしたのですが、なぜか追加できません。
インタフェースを選択し新規データ型を定義ボタンから、追加しているのですが、うまくいきません。

解決策、またはやり方の間違えを指摘できる方、お願いします。

OS:WindowsXP pro
IDE:Netbeans 6.1
OO:OpenOffice 2.4.1
SDK:StarSuite_8_SDK

で試しています。
OpenOfficeSDKは現在DLできないようなので、StarSuite_8_SDKを使ってみました。

よろしくお願いします。
346 : デフォルトの名無しさん[sage] : 2008/10/15(水) 15:42:53
>>345
こことかどうかな
ttp://wiki.services.openoffice.org/wiki/General_UNO_Component_Project_Type
347 : デフォルトの名無しさん[sage] : 2008/10/15(水) 15:51:07
>>346
早速の返信ありがとうございます。

そのサイトを参考に進めていたのですが、Interfaceを追加するところから先に進まない状況です。
Logでも吐き出してくれれば調査できるのですが、そういうのも見当たらず・・。

もしかすると、IDEとOOのバージョン組み合わせに問題があるのかもしれません。

ほかにも何か、気になることがあればお願いします。
348 : デフォルトの名無しさん[sage] : 2008/11/26(水) 12:13:34
バイナリファイルからnull terminated stringを
読む方法はありますか?
OpenOffice.org 3.0/calc/OOo Basicです。

対象のファイルはバイナリファイル
(ゲーム提督の決断4のセーブデータ)であり
アドレス2192F(h)から
8b e3 98 5a 8e ae 8a cd 90 ed 00
と記録されています。(Shift-JISで「九六式艦戦」)

Dim Result as String
Get #1, Offset+1, Result
とすると「六式艦戦」から始まる長さ51807バイトの
文字列になってしまいます。
どうやら先頭2バイトを文字列長さと認識しており、
00を文字列終端と認識しません。

Input #1, Result
とすると「ヒ ̄リZホ?ハ?ミ?」という長さ10バイトの
文字化けした文字列になってしまいます。

null terminated stringをOOo Basicのstringとして
読み込む方法を教えてください。
349 : デフォルトの名無しさん[sage] : 2008/11/26(水) 14:12:07
バイナリデータの取得自体はこのへん?
ttp://hermione.s41.xrea.com/pukiwiki/index.php?OOobbs%2F96

サイズの指定は手動でいいなら
Dim buf(10) As Byte ' 0~10の11個
oInputStream.readBytes(buf(), 11)
こんな感じでできるんじゃないの。それをどうstringに変換するかは知らんけど。

ってそういう話じゃないのかな?
350 : 348[sage] : 2008/11/26(水) 14:29:26
リンク先が参考になりました。
ありがとうございます。

バイト型の配列で読みとれたら、後は文字列への変換ですね。
Shift-JIS→Unicode変換の方法がわかれば、
Chr関数はUnicode値→文字へ変換と組み合わせることで
解決できそうです。
351 : デフォルトの名無しさん[sage] : 2008/11/26(水) 14:44:02
こういう基本的なドキュメントってどっかにまとまってるべきだよなあ
352 :  [ ] : 2008/11/26(水) 14:50:59
>>351に言い出しっぺの法則が適用されました
353 : デフォルトの名無しさん[sage] : 2008/11/26(水) 14:54:39
いや、ドキュメント作るにしたって元ネタがSunの出してる全然不足だらけのドキュメントと
掲示板に散在するTIPS集しかないじゃん。まさかソースからドキュメント起こせとでも?
354 : デフォルトの名無しさん[sage] : 2008/11/26(水) 15:11:14
やる気があるならまずは全然不足だらけのドキュメントと掲示板に散在するTIPS集の情報を一箇所にまとめてみれば?
355 : デフォルトの名無しさん[sage] : 2008/11/26(水) 15:18:54
やる気があるなんて誰も言ってないけど。俺は自力で探す方法でなんとかしのいでるし。
まあVBAのならともかく、Calc Basic のドキュメントなんて書籍化しても100部くらいしか売れないだろうな。
356 : デフォルトの名無しさん[sage] : 2008/11/26(水) 15:22:44
まあそうだろうね
やる気があるとは思っていないからあるならって仮定付きで言ったまでで
しかし書籍化なんて言葉が思い浮かぶだけでもびっくりだ
357 : デフォルトの名無しさん[sage] : 2008/11/26(水) 15:26:30
何をそんなにカリカリして食いついてくるのか理解不能だな
358 :  [sage] : 2008/11/26(水) 15:30:17
「まとめるべきだよなぁ」なんて言ってるからじゃね?
頭から他力本願な癖に「~すべきだ」なんて強要する態度が気に入らないと思われ。
359 : デフォルトの名無しさん[sage] : 2008/11/26(水) 15:33:08
何怒ってんだろう?OOo関係に文句いったらカチンとくるの?
360 : デフォルトの名無しさん[sage] : 2008/11/26(水) 15:42:07
いやOOo使ってないし
単にあがってるスレだったのが理由
さがってればスレの存在自体知らなかった
一般的な突っ込みの仕方をしただけなんで
OOoのドキュメント環境の知識はないよ
361 : デフォルトの名無しさん : 2008/11/26(水) 17:13:44
煽ってるつもりなんだろうか?
アホの考える事はわからんの~
362 : デフォルトの名無しさん[sage] : 2008/11/26(水) 21:56:25
VBA系はマじゃないからわんさかいるな・・・
363 : デフォルトの名無しさん[sage] : 2008/11/27(木) 22:40:06
>>348
seek して TextInputStream を Shift_JIS エンコードに設定して
区切り文字に chr(0) 指定の readString で読むとか

8B E3 00 8B E3 98 5A 8E AE 8A CD 90 ED 00 8B E3

Sub readtysef
sURL = "file:///E:/usr/123"

oIN = CreateUnoService( _
"com.sun.star.ucb.SimpleFileAccess")._
openFileRead(sURL)
oTxtRead = CreateUnoService( _
"com.sun.star.io.TextInputStream" )
oTxtRead.setEncoding("Shift_JIS")
oTxtRead.setInputStream(oIn)

oTxtRead.skipBytes(3) ' from 8B
sRes = oTxtRead.readString(Array(chr(0)), True)

oIn.closeInput()
End Sub
364 : デフォルトの名無しさん[sage] : 2008/12/11(木) 16:47:11
マクロ編集のエディタが使い辛いのですが、エディタの機能を拡張したり、他のエディタと置き換えたり呼び出したりとか
そういうことはできませんか?
365 : デフォルトの名無しさん[sage] : 2008/12/18(木) 22:06:11
VBAで開発して、ある程度できたらOOoにコピペして調整。
366 : デフォルトの名無しさん : 2008/12/24(水) 11:19:22

Basice IDE 上でコピペしただけで、ダウンしてしまいます。。
何なんだろう。この使いがたさは。。
367 : さいき : 2009/01/16(金) 19:16:56
base で何かを作りたいと思って 調べたことを書きました。
http://yumisaiki.blogspot.com/2009/01/open-office.html

でも、普通に今日の日付を標準で表示させるというような簡単なこともmacro書かないといけないみたいですが、
方法がどうしてもわかりません。
368 : さいき : 2009/01/19(月) 02:27:18
自己レスで=す。今日、日付フィールドの属性にあるドロップダウンというのをはいにすると
カレンダーコントロールのような入力画面になることを発見しました。

これはなかなか無料とは思えない便利な機能です!
369 : デフォルトの名無しさん[sage] : 2009/01/20(火) 22:46:37
>>368
Basic、Baseについては、http://oooug.jp/faq/ でも多くの情報が得られます。

例えば、http://oooug.jp/faq/index.php?Faq%2FBase なんてどうでしょう。
Baseでつまづいた時の参考になります。

日付フィールドに関しては、紆余跼蹐があって、初期のころは当日の日付が
入力されていたようです。以下にそんなことがかかれています。

http://oooug.jp/faq/index.php?Faq/1/334

以下を見ると、~.odbというBaseのサンプルもたくさん登録されています。

http://oooug.jp/faq/index.php?plugin=attach&pcmd=list
370 : ハンカチ仮面[sage] : 2009/03/04(水) 00:55:44
情報ありがとう
371 : デフォルトの名無しさん[sage] : 2009/03/14(土) 11:27:02
そうか
372 : デフォルトの名無しさん : 2009/03/20(金) 21:26:07
>>201
オヤスミ…
  <⌒/ヽ-、___
/<_/____/
 ̄ ̄ ̄ ̄ ̄ ̄ ̄
373 : デフォルトの名無しさん[sage] : 2009/04/15(水) 23:18:02
そうか
374 : デフォルトの名無しさん[sage] : 2009/04/20(月) 03:25:02
スレ違い
375 : デフォルトの名無しさん[sage] : 2009/05/11(月) 10:57:31
補完機能が付くのはいつくらいなんでしょうか?・・・・
376 : デフォルトの名無しさん : 2009/05/20(水) 20:52:16
>>375
何の?
377 : デフォルトの名無しさん[sage] : 2009/06/05(金) 11:21:23
OpenOfficeのGUIからはエクスポート機能を使ってPDFや画像形式でファイルを保存できますが、
コマンドラインからは同様の機能はすぐに使えるんでしょうか?

ググってみたんですが、macroを使って変換するのは見つけたんですが、機能として持っているのなら
macro使わない方法もあるかと思って質問してみました。

あと、unoconvを使ってみたんですが、これはOpenOfficeをサーバとして起動して何かを渡して
いるようなので、そういうことができるならmacroなしのコマンドラインからという手段がありそうですよね?
378 : デフォルトの名無しさん[sage] : 2009/06/13(土) 13:40:22
writerで外字を使おうとしたら文字化けしてしまう。
StarSuiteでは外字使えないんでしょうか?
windowsはsp3、IMEを使ってます。
379 : デフォルトの名無しさん[sage] : 2009/06/21(日) 17:49:09
>378
こっちで聞いてみたらどうですか?
OpenOffice.org 総合相談所 6
http://pc11.2ch.net/test/read.cgi/bsoft/1239637122/l50
380 : デフォルトの名無しさん : 2009/06/23(火) 06:48:32
OpenOffice3.1.0を使用しています.
クイック起動はオフにしています.
DelphiからOpenOffice Calcを使ってxlsファイルを読み込む処理をしています.
http://www.clubdelphi.com/trucos/index.php?id=428 ここを参考に作成しました.
ClassID:=ProgIDToClassID('com.sun.star.ServiceManager');
h:=CoCreateInstance(ClassID, nil, CLSCTX_LOCAL_SERVER, IDispatch, id);
とした時点で、soffice.bin/soffice.exeという2個のプロセスが生成されます.
その後、読み込み処理を終了して、
ワークブックのクローズ、 objDocument.Close(True); を実行した時点で、
OpenOffice Caleは表示を終了し、画面からは消えます.
しかし、最終的に TWorkbook.Destroyを実行しても、
soffice.bin/soffice.exeという2個のプロセスが消えません.
CoCreateInstanceの後始末が必要なのかなと思って、
ServiceManager.Release; としたら、サポートしていないと例外が発生しました(objServiceManager := id;).
なにか、OpenOfficeを終了させるというコマンドを投げないといけないのでしょうか (ExcelのOleFunction("Quit");の様な)
ぐぐってみても、OpenOffice Basicで終了コマンドというようなものが見つかりませんでした.
soffice.bin/soffice.exeという2個のプロセスが残らないようにする方法を教えてください.
よろしくお願いします.
381 : デフォルトの名無しさん[sage] : 2009/06/23(火) 13:58:54
>>380
終了させるには com.sun.star.frame.Desktop サービスから
css.frame.XDesktop インターフェースの terminate メソッド

普通は最後のドキュメントを閉じれば終了するはずなんだけど・・・
382 : 380[sage] : 2009/06/23(火) 20:02:01
>>381
ありがとうござます。
terminateでちゃんとsoffice.bin/soffice.exeが消えました。
383 : デフォルトの名無しさん[sage] : 2009/07/08(水) 15:08:41
access2003のファイルをBaseでは開くにはどういう操作をしたらいいのでしょう?
ExcelファイルをCalcで開くみたいには簡単にいきません。
どなたか教えてください。
384 : デフォルトの名無しさん[sage] : 2009/07/17(金) 01:30:31
ここプログラミング掲示板のOpenOffice.orgマクロ言語に関するスレッドなので、
ビジネスソフト掲示板あたりのOpenOffice.orgに関する総合スレッドで質問なさったほうが
返答を得やすいと思います。
385 : tor1.digineo.de[age] : 2009/08/17(月) 17:46:37
自動焼人 ★ = 自動保守 ◆KAWORUKOFI = 自動保守#K9K?_D[L

名言集 その4
『俺、100人規模の集団サイバーテロの主犯だったこともあるんだぜ』

http://yutori7.2ch.net/test/read.cgi/news4vip/1249830540/ のID:PVAf+dux0 = 自動焼人 ★

> 965 :以下、名無しにかわりましてVIPがお送りします [sage] :2009/08/10(月) 00:02:09.35 ID:PVAf+dux0
> まぁ何だ。
> 俺の過去の経歴に比べたら、割れ厨なんて鼻くそレベルなんだけどなw
> 100人規模の集団サイバーテロの主犯とか、いろいろとな。


----------------------------------------------
この自動焼人 ★メールマガジンの配信停止をご希望される方は
http://qb5.2ch.net/test/read.cgi/sec2chd/1250169591/
にて自動焼人 ★までご連絡ください
386 : tor.rootkit.de[age] : 2009/08/17(月) 17:57:29
自動焼人 ★ = 自動保守 ◆KAWORUKOFI = 自動保守#K9K?_D[L

名言集 その2
『お前が規制系キャップ取れるか審査してやるよ』

http://yutori7.2ch.net/test/read.cgi/news4vip/1249830540/ ID:PVAf+dux0 = 自動焼人 ★

> 36 :以下、名無しにかわりましてVIPがお送りします [sage] :2009/08/10(月) 00:31:30.02 ID:PVAf+dux0
> >>33
> キャップとコテハンの違いは何?

> 46 :以下、名無しにかわりましてVIPがお送りします [sage] :2009/08/10(月) 00:38:05.34 ID:PVAf+dux0
> >>45
> その回答では落ちるなw
> 答えは教えないがw

> 50 :以下、名無しにかわりましてVIPがお送りします [sage] :2009/08/10(月) 00:41:29.96 ID:PVAf+dux0
> Q.キャップとコテハンの違いは何?
> A.2ちゃんねるのボランティアの登録制度

> それがお前の答えかw

> 52 :以下、名無しにかわりましてVIPがお送りします [sage] :2009/08/10(月) 00:43:10.06 ID:PVAf+dux0
> まぁ、どうせ正解が出るわけもないし、次の問題。
> 君が思う面白いスレはどんなの?
----------------------------------------------
この自動焼人 ★メールマガジンの配信停止をご希望される方は
http://qb5.2ch.net/test/read.cgi/sec2chd/1250169591/
にて自動焼人 ★までご連絡ください
387 : デフォルトの名無しさん : 2009/09/03(木) 10:46:46
BASIC繁栄時代があったらしい
388 : デフォルトの名無しさん[sage] : 2009/09/03(木) 12:49:40
現在のcライクインタープリタなbasicと、
前世紀に栄えていたbasicとは、実は別言語である

という説を唱えてみる
389 : デフォルトの名無しさん : 2009/09/16(水) 23:26:07
OOoBasicで複式簿記の家計簿作ったよ

http://www.geocities.jp/retort_curry119/kakeiboPage.htm
390 : デフォルトの名無しさん : 2009/09/26(土) 21:17:35
>>389 w(゜o゜)wワオ!
391 : デフォルトの名無しさん : 2009/10/10(土) 16:05:40
OpenOfficeマクロプログラミング
宍戸輝光 工学社 09/10 \1,890

出たね。
392 : デフォルトの名無しさん : 2009/10/18(日) 14:03:53
昨日からbaseいじっております。以前も(2.0)触ってみましたが、挫折しました。
M社の2003サポート切れの心配やバージョン毎の購入にウンザリしており、今回は挫折したくありません。
オフィスソフト自体は自宅で必要ではないのに会社の為に自分も購入している方も多いと思います。
一企業が一企業のソフトに業務を依存しなくてはならない現状が非常に間違った方向だとも思いますし、、。
現在basicの書き場所がBASEでわからなく、、、探していて辿りつきました。
道は遠いですか?
393 : デフォルトの名無しさん[sage] : 2009/10/19(月) 14:13:11
残念ながらここは過疎っているので、ビジネスsoft板やソフトウェア板などの
OpenOffice一般を扱うスレッドでマクロの質問等もなさると反応がいいと思います。
マクロを中心に扱った日本語書籍がやっと世に出た段階なのでこれからですね。
394 : デフォルトの名無しさん[sage] : 2009/11/05(木) 23:10:50
>391 さんが紹介された本、誰か買って読んだ方いらっしゃいますか?
紀伊国屋書店のページ↓は見てみましたが、どんなもんなんでしょ。
http://bookweb.kinokuniya.co.jp/guest/cgi-bin/wshosea.cgi?KEYWORD=%82%6E%82%90%82%85%82%8E%82%6E%82%86%82%86%82%89%82%83%82%85%83%7D%83%4E%83%8D%83%76%83%8D%83%4F%83%89%83~%83%93%83%4F
395 : デフォルトの名無しさん[sage] : 2009/11/09(月) 21:56:59
オプソは好きだが、M$オフィスの方がまだまだずっと出来がいい
396 : デフォルトの名無しさん : 2009/11/22(日) 20:36:49
プログラミング環境としては悪くないね、OOo
397 : デフォルトの名無しさん[sage] : 2009/11/22(日) 21:17:09
「初心者向けの」プログラミング環境ってことなら、ドキュメントがろくに揃ってないことで却下だなあ。

無料ってことをウリにするなら、Visual Studio の Express Edition には適わないし
.NET限定だけど、売りもののProfessional Editionへのステップアップも容易
398 : デフォルトの名無しさん[sage] : 2009/11/28(土) 19:35:58
「プログラミング環境」って?
コード補完や文法ミスの指摘をしてくれるIDEがあるってこと?
へぇ、知らんかった。ずいぶん進化したもんだね。
399 : デフォルトの名無しさん : 2009/12/05(土) 08:08:59
>>394
本屋でパラッと見たけどSDK関連の記載がなかったみたい。
つまり、これを参考にしても何も作れない。
400 : デフォルトの名無しさん[sage] : 2009/12/05(土) 17:01:30
SDK関連の記載って例えばどういうの?
401 : デフォルトの名無しさん : 2009/12/09(水) 22:35:32
ttp://hermione.s41.xrea.com/pukiwiki/
402 : デフォルトの名無しさん[sage] : 2009/12/09(水) 23:00:57
>>401
なんかリンクが貼ってあるばかりでイマイチつかみどころのない説明ばかりだな
403 : デフォルトの名無しさん[sage] : 2009/12/09(水) 23:02:05
そもそも >>1 にあるやん
404 : デフォルトの名無しさん : 2009/12/09(水) 23:12:58
ここも役に立つよ。
ttp://blog.livedoor.jp/addinbox/
405 : デフォルトの名無しさん[sage] : 2010/01/13(水) 11:10:06
>>394
初心者がOooのBasicを始めるきっかけにするには良い本と思う。

ネットの情報は辞書的なページが多いので、簡単なチュートリアルがあるので助かった。
ダイアログの作り方とか。

ただ内容的にCalcに偏ってるし、標準関数とか全部記載していないので、
本に書いてあること以上のことをしようとするとネットに頼らざるを得ない。

どの言語の本でもそうだけど1冊だけで全て網羅するのは無理。

漏れ的には買って損はなかったよ。
406 : デフォルトの名無しさん[sage] : 2010/01/13(水) 12:11:33
本なんだからそれでいいんじゃないの
407 : デフォルトの名無しさん[sage] : 2010/01/13(水) 12:24:32
>>405
なんでPythonにしなかったの?
408 : デフォルトの名無しさん[sage] : 2010/01/13(水) 12:58:49
>>407 pythonならdteよりwebの方に良い情報がころがってるんじゃまいか?
409 : デフォルトの名無しさん[sage] : 2010/01/13(水) 12:59:17
OOo Basic で配列操作とか自前でやるの疲れるよな
410 : デフォルトの名無しさん[sage] : 2010/01/13(水) 13:34:08
PythonよりBasicの本の方が売れるでしょ
411 : デフォルトの名無しさん[sage] : 2010/01/14(木) 02:00:25
規制されてなかったらなんかマクロ書くわ
412 : デフォルトの名無しさん : 2010/01/14(木) 22:19:57
次スレは「OpenOffice.org マクロ」とでもして、言語を問わずに。
413 : デフォルトの名無しさん[sage] : 2010/01/15(金) 00:06:23
まだ半分以上スレ残りあるんだが
414 : デフォルトの名無しさん[sage] : 2010/01/15(金) 07:47:58
まさか新スレ立てるなよ
415 : デフォルトの名無しさん[sage] : 2010/01/16(土) 00:24:08
次すれになるようにマクロ書くか
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 : デフォルトの名無しさん[sage] : 2010/01/16(土) 23:07:07
ユーザー定義のツールバー探すもの
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 : デフォルトの名無しさん[sage] : 2010/01/18(月) 17:31:36
文字列検索ができません。
*や%は使えるんですか?
418 : デフォルトの名無しさん[sage] : 2010/01/18(月) 17:43:31
InStr じゃ無理だな
419 : デフォルトの名無しさん[sage] : 2010/01/18(月) 19:00:34
ありがとうございます。
解決しました。
420 : デフォルトの名無しさん : 2010/01/19(火) 20:41:01
>>415l-416 乙。どんどん頼みます。勉強になります。感謝します。
421 : デフォルトの名無しさん[sage] : 2010/01/25(月) 00:51:54
規制が解除されたからまた埋めようかと思ったけど書くことが思いつかん
422 : デフォルトの名無しさん[sage] : 2010/01/25(月) 17:45:13
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 : デフォルトの名無しさん[sage] : 2010/01/25(月) 20:42:16
段落から Contents Enumeration すると画像に相当するもんが見つからないから・・・
画像が埋め込みじゃなければ GraphicURL プロパティ
424 : デフォルトの名無しさん[sage] : 2010/01/26(火) 17:03:09
>>423
どうもです。
画像は埋め込みでないので画像のURLの情報を得ようとすると

Doc = ThisComponent
OG = Doc.getGraphicObjects
msgbox OG(0).GraphicURL

で画像のURLの情報にアクセすることは分かるのですが、
Writerに記載した順序でテキストデータに出力する場合は、
EnumerationのWhileループではできなさそうですね(^^;

APIのWikiは英語だしよく分からない(T_T

ググるとカーソル位置に画像を挿入するサンプルコードは見つかるんですけどねぇ
425 : デフォルトの名無しさん[sage] : 2010/01/26(火) 17:50:42
css.text.XTextRangeCompare インターフェース使って画像の Anchor と段落の位置関係は分かるけどな
426 : デフォルトの名無しさん[sage] : 2010/01/29(金) 10:59:56
>>425
>css.text.XTextRangeCompare
どうもです。調べてみます。
427 : デフォルトの名無しさん[sage] : 2010/02/14(日) 13:48:06
OpenOfficd.org3,2 起動時間がすごく短縮されている。
これは有り難い。

OracleによるSun買収でどうなるか心配していたけど、
今回は、まじめにやってくれたみたいね。
428 : ビギナー : 2010/02/17(水) 10:35:48
こんにちは、プログラミング未経験のものです。
株式投資で一銘柄の過去の株価データを使って色々な条件で
売買したらどのような結果になるかのプログラムをつくりたく、
ooo basic でもこのようなことができますでしょうか?

具体的には、一銘柄について
日付、株価(始値、高値、安値、終値)をデータとし
何年何日に何円で株を何単位買い、買値より10円高い売り注文
株価が10円下がるごとに買い増し、買値より10円高い売り注文
と、詳細は更に検討しています。
それで結果、どのような売買記録でどのぐらいの収益になるか
の様なものです。

こんなこともできますでしょうか?
データについては、オープンオフィスのCALCにインプット
済みです。

些細なことでも何でも構いませんので、アドバイスよろしく
お願いいたします。
429 : デフォルトの名無しさん[sage] : 2010/02/17(水) 13:52:37
>>428
>>1の参考になる主なリンクの情報だけでやりたい事を実現できます。
アドバイスをねだる前に過去ログを読んでください。
430 : ビギナー : 2010/02/17(水) 15:38:25
>>429
すいません、了解しました。
ありがとうございます。
431 : ビギナー : 2010/02/18(木) 12:44:35
オープンオフィスの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 : デフォルトの名無しさん[sage] : 2010/02/18(木) 12:46:11
multi
433 : @yuo : 2010/02/28(日) 15:18:35
初心者です。
マクロでcalcファイルを開くのにはどうしたらいいですか?
以下にふぁいるがあります。
C:\My Documents\学習\test.ods
434 : デフォルトの名無しさん[sage] : 2010/02/28(日) 17:53:53
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
>>434
プログラミング未経験で、色々調べてやっていたのですが
最初からつまずいてしまっていました。
どうもありがとうございます。
436 : mu-mu : 2010/03/11(木) 05:22:57
calcについて質問です。
マクロから日付を入力したいのですがどうすればよいのか分かりません。

Cell.String = "2010/03/11"
とすると表示は「2010/03/11」ですが、数式入力ボックスでは「'2010/03/11」
になってしまい日付として認識してくれません。

教えてえろい人orz





437 : デフォルトの名無しさん[sage] : 2010/03/11(木) 09:47:52
Cell.formula = "2010/3/11"
Cell.numberformat = 36
438 : デフォルトの名無しさん[sage] : 2010/03/11(木) 10:15:22
>>436
Cell.Value = DateSerial (2010, 3, 1)

DateSerial関数のパラメータは年、月、日の順。
そのままだと謎い数字が出てくるだけなので、
セルの書式を、日付のものに変更して。
439 : mu-mu[sage] : 2010/03/12(金) 09:10:44
>>437
>>438
さんくすこ
書式をいじいじすればいいんですね。
440 : デフォルトの名無しさん[sage] : 2010/03/12(金) 14:51:03
>>436
日付のデータって、見た目は YYYY/MM/DD だけど、格納されてるのは
OpenOffice.org が対応してる年月時間を順列にした整数なの。
0~9999999999999999999999 みたいな数で 1100年1月1日から2100年の12月31日までを管理するって感じ。
441 : デフォルトの名無しさん[sage] : 2010/03/20(土) 15:12:57
=CONCATENATE(A1:B2)
という風に範囲指定で文字列を連結したいのですが、できますか?
442 : デフォルトの名無しさん[sage] : 2010/03/21(日) 00:15:24
マクロ関数定義するならこんな感じかな

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 : デフォルトの名無しさん[sage] : 2010/03/21(日) 00:34:34
>>442
できました!ありがとうございます
444 : デフォルトの名無しさん[sage] : 2010/05/24(月) 21:18:33
OOoBasicではVBAのようにクラスモジュールは作れないんでしょうか?
445 : デフォルトの名無しさん : 2010/05/24(月) 21:47:31
yes, you can
446 : デフォルトの名無しさん[sage] : 2010/05/24(月) 21:51:14
>>445
すいませんどうやればいいんでしょうか?
ヘルプ見てもググッても見つからないのですが・・・
447 : デフォルトの名無しさん[sage] : 2010/05/25(火) 17:16:32
>>446
というかできない
448 : デフォルトの名無しさん[sage] : 2010/06/16(水) 00:14:31
クラスモジュールにしたいコードの先頭に
option vbaSupport 1
option compatible
option classModule
をつければクラスモジュールとして使えます
ただこの3つの違いがわかりません
誰か知ってる人いませんか
449 : デフォルトの名無しさん[sage] : 2010/06/22(火) 17:32:48
>>448
Option Compatible について
ttp://api.openoffice.org/servlets/ReadMsg?list=dev&msgNo=9399
450 : デフォルトの名無しさん[sage] : 2010/06/22(火) 17:47:13
コードを見ると VBASupport 1 にすると Compatible も自動的にオンになる
最近のバージョンなら区別しなくていいみたい
451 : デフォルトの名無しさん[sage] : 2010/09/08(水) 17:29:41
外部データへのリンクだと文字化けするので、ソースから読み込みしてシートに書き込みたいのだけど
正規表現で株主優待情報だけ抽出するには、この先どうしたらいいですか?

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 = "http://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 : デフォルトの名無しさん[sage] : 2010/09/08(水) 17:32:55
尖閣諸島問題で中国大使館に抗議するオフ
http://yuzuru.2ch.net/test/read.cgi/offmatrix/1283926084/
1: 2010/09/08 15:08:04 21BrBr5lsd
日時は9月12日、日曜日予定
場所は中国大使館前
453 : デフォルトの名無しさん[sage] : 2010/11/05(金) 14:40:59
ヘッダーに画像をセットしたのですが、リンクされてしまいます。
このように書きました。

StyleFamilies = objDocument.StyleFamilies 
PageStyles = StyleFamilies.getByName("PageStyles")
DefPage = PageStyles.getByName("Default")
DefPage.HeaderOn = True
DefPage.HeaderBackGraphicURL =D:\xxxx.bmp ’画像ファイルのパス

メニューで言うと次の場所になります。
書式→ページ→ヘッダー→詳細
ファイル---表示ボタンを押下しファイルを選択。

ここのリンクのチェックを外したいのですが、やり方がわかりません。
ご存知の方、教えてください!
454 : デフォルトの名無しさん[sage] : 2010/11/05(金) 15:03:53
     |┃三        / ̄\
     |┃         |     |
     |┃          \_/          
 ガラッ |┃               |          
     |┃       / ̄ ̄ ̄ \        
     |┃三    /  ::\:::/:::: \   
     |┃     /  <●>::::::<●>  \       呼んだな?
     |┃     |    (__人__)     |
     |┃三   \    ` ⌒´    /
     |┃三   / ̄ ̄ ̄ ̄ ̄ ̄ ̄ \
||>> Libre Office PART1 <<<||
http://hibari.2ch.net/test/read.cgi/software/1288792911/
455 : デフォルトの名無しさん[sage] : 2010/11/05(金) 15:30:12
>>453
リンクせずに設定して調べてみると、HeaderBackGraphicURL は空文字列で
該当するテキストオブジェクトの段落の背景に埋め込まれた画像の URL が指定されている
456 : デフォルトの名無しさん : 2010/12/21(火) 21:40:17
calcで
457 : 天使 ◆uL5esZLBSE [sage] : 2011/07/02(土) 21:05:30.50
これ ; デリミタっていうんだけどさ、これをつけなきゃエラーになるような
そんな言語使ってる奴ってどうみてもゴミだと思うんだけど

もしかして「;」これ打ち忘れてコンパイルエラー出すのが楽しいの?
そうか、二度と話かけんなよ

死ねよゴミ
458 : デフォルトの名無しさん[sage] : 2011/07/21(木) 20:56:49.23
宇宙にはデリミタ派とターミネータ派がいて
10億年も戦争を続けており終わる気配すら無い
459 : デフォルトの名無しさん : 2012/01/14(土) 13:22:56.51
マクロからフォームのテキストボックスの値を取得して変数に代入したいのですが
その方法が分かりません。

ご存知の方いませんか?
460 : デフォルトの名無しさん : 2012/01/26(木) 10:53:37.58
これだと数式として認識せずうまくいきません。

oSheet1.getCellRangeByName("A" & MyRow1).String ="=VLOOKUP(B" & MyRow1 &";'file:///C:/Users/"& myFileDate & "".csv'#$Sheet1.C1:O65536;7;0)"

どうしたらいいのでしょうか?
461 : デフォルトの名無しさん[sage] : 2012/01/26(木) 11:10:43.19
自己解決

.Stringを.Formulaにしたら、できました^^
462 : デフォルトの名無しさん[sage] : 2012/06/07(木) 15:12:26.24
↓のような構造体をVBAサポートモードで動かそうとしているのですが
シンタックスエラー(シンボルが必要)が表示されます。
具体的な解決策をご存知の方いましたら教えてください。

Private Type abc
abc As String
def As Long
ghi As Single
jkl As Double
End Type
463 : デフォルトの名無しさん[sage] : 2012/07/16(月) 20:45:03.55
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 : デフォルトの名無しさん[sage] : 2012/08/26(日) 14:58:40.62
すいません、すっごい初心な質問なんですが
総てのシートの総てのセルを対象に
特定の文字列が入っているセルだけを背景色を変える
ってマクロはどう書くんでしょうか?
465 : デフォルトの名無しさん[sage] : 2012/08/26(日) 16:39:40.28
>>464
条件付書式設定じゃダメなのかい?
466 : デフォルトの名無しさん[sage] : 2013/05/09(木) 23:15:55.11
初心者です
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 : デフォルトの名無しさん[sage] : 2013/05/09(木) 23:54:47.26
>>466
オフセット指定が aArgs(0) のセル範囲外だといけないらしい
上記の場合、A1 の値しか取得できない
468 : 466[sage] : 2013/05/10(金) 22:09:18.60
>>467
即答ありがとうございます。無事実行できました
単純移植はできないんですね
(考えると"INDIRECT"のパラメータの渡し方は自分には想像できない...)
セルに値を入れてCalcに計算してもらうかCallFunction使わない関数で
作ることにします
ありがとうございました
469 : デフォルトの名無しさん[sage] : 2013/12/05(木) 16:43:30.15
ユーザー関数を置いた自分のセルの番地を表示するマクロを作りたいです。
関数で表すと =CONCATENATE(ROW(),",",COLUMN())と結果は同じことなのですが
これをユーザー関数のマクロのみで求めることはできますか?