スプレッドに挿入するには?

解決


バロシュ  2007-02-25 04:12:30  No: 135488

度々お世話になります。
今回もよろしくお願いします。

現在VB6とOCX V2.5Jで作成していて
「OK」ボタンを押すとテキストボックスの内容をスプレッドの
表に挿入、ということを行いたいのです。

しかし上書きであれば簡単に出来たのですが挿入の仕方がわからずに
困っています。
どうかアドバイスをお願いします。


大吉末吉  2007-02-26 20:00:09  No: 135489

> 「OK」ボタンを押すとテキストボックスの内容をスプレッドの
> 表に挿入、ということを行いたいのです。

1行 or 1列 追加して、追加された空行/空列に上書きすればよいのでは・・・


バロシュ  2007-02-27 06:32:22  No: 135490

アドバイスをもとに
spd.Row = spd.ActiveRow
spd.MaxRows = spd.MaxRows + 1
spd.Action = spd_action_insert_row
というのを作ってみたのですがこれでも行を追加することが出来ません。
どこが悪いのかご指摘お願いします。


大吉末吉  2007-02-27 18:04:05  No: 135491

> spd.Action = spd_action_insert_row
「spd_action_insert_row」って何です?
どう定義しています?

「SS_ACTION_INSERT_ROW」なのでは?


バロシュ  2007-02-28 05:08:37  No: 135492

spd.Row = spd.ActiveRow            
spd.MaxRows = spd.MaxRows + 1      
spd.Action = SS_ACTION_INSERT_ROW  

としても「変数が定義されていません」と出てしまいます。
ヘルプを見ると同じように書いてあるのにどうして出来ないのでしょうか?


バロシュ  2007-02-28 05:40:43  No: 135493

spd.Action =  7
にしたらちゃんと挿入することが出来ました。
ご迷惑をお掛けしました。

それでご迷惑ついでになぜ
SS_ACTION_INSERT_ROW  
では挿入できなかったのかを教えていただけると幸いです。


大吉末吉  2007-02-28 19:03:22  No: 135494

> としても「変数が定義されていません」と出てしまいます。
> SS_ACTION_INSERT_ROW  では挿入できなかった

定数「SS_ACTION_INSERT_ROW」を定義していないからでしょうね。

定数は、定義しないと使えません。
コントロールやライブラリによっては、「使用する定数の定義」が(自動的に)公開されている場合もありますが、SPREAD/OCX 2.5Jは、そういう風にはなっていません。

「自分で定数の定義を宣言する」のが原則です。

例:
> Const SS_ACTION_INSERT_ROW = 7

但し、SPREAD/OCX 2.5Jの場合、「使用する全定数の宣言を行った標準モジュール」を提供しており、
それをプロジェクトに組み込めば、自分で宣言する手間を省くことができます。

以下は、ヘルプの「スプレッドシートの定数」のページの記述です。
-------------------------------------------------------------------
スプレッドシートのいくつかのプロパティやイベントでは、
値の設定や読み出し、引数の値などに定数を使用できます。
これらの定数は、SSOCX.BASファイルの中で定義されています。
定数を使用するときには、プロジェクトファイルに、SSOCX.BASを追加してください。
-------------------------------------------------------------------


バロシュ  2007-03-01 06:25:29  No: 135495

なるほど。プロジェクトファイルにSSOCX.BASを追加していなかったから
SS_ACTION_INSERT_ROWでは挿入できなかったのですね。

ご教示いただきありがとうございました。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加