HSPポータル
サイトマップ お問い合わせ


HSPTV!掲示板


未解決 解決 停止 削除要請

2008
0421
はじめCOMOBJを用いたエクセルの操作について3解決


はじめ

リンク

2008/4/21(Mon) 22:52:26|NO.15293

現在、HSPとCOMオブジェクトを用いて、
エクセルをにデータを自動的に入力するプログラムを作成しています。
しかし、以下の点がどうしてもわかりません。
ご教授お願いします。

1、任意のセルの四方に罫線を引く
2、任意のセルの幅を任意の値にする
3、任意のセルを任意の色にする
4、任意の名前のワークシートを作成する

以上、いろいろググってみてもわかりませんでした。

また、COMオブジェクトについてのわかりやすい解説のあるサイトの
URLも教えて頂ければ幸いです。



この記事に返信する


アルティメット

リンク

2008/4/22(Tue) 12:16:49|NO.15300

HSPBCアルティメットです。
今は時間がないのでとりあえず3と4だけ。

#module #deffunc xlInit newcom xlApp, "Excel.Application" xlApp("Visible") = 1 xlApp("DisplayAlerts") = 0 xlBooks = xlApp("Workbooks") xlBook = xlBooks("Add") return #deffunc xlChangeSheetName str shname, local actSh actSh = xlBook("ActiveSheet") actSh("Name") = shname return #deffunc xlAddSheet str shname xlSheets = xlBook("Sheets") xlSheets -> "Add" xlChangeSheetName shname return #deffunc xlChangeCellColor str cell, int index, local actSh, local xlCell, local xlInterior actSh = xlBook("ActiveSheet") xlCell = actSh("Range", cell) xlInterior = xlCell("Interior") xlInterior("ColorIndex") = index // 1:黒 2:白 3:赤 4:黄緑 5:青 6:黄 7:桃 8:水 9:茶 10:深緑 … return #deffunc xlQuit xlApp -> "Quit" if varuse(xlBook) : delcom xlBook if varuse(xlBooks) : delcom xlBooks if varuse(xlApp) : delcom xlApp return #global xlInit onexit*exit xlAddSheet "ultimate" xlChangeCellColor "B5:D8", 3 stop *exit xlQuit end



アルティメット

リンク

2008/4/22(Tue) 21:19:07|NO.15311

1と2について。
参考になるページは知りません。
探すとしたらCOMで探すよりVBAで探す方が良いのでは?


#module     : (前回と同じために省略)     : #deffunc xlAddFrame str cell, int style, int weight, int index, local actSh, local xlCell, local xlBorders, local xlEdge actSh = xlBook("ActiveSheet") xlCell = actSh("Range", cell) xlEdge = 7, 8, 9, 10 // 7:xlEdgeLeft 8:xlEdgeTop 9:xlEdgeBottom 10:xlEdgeRight foreach xlEdge xlBorders = xlCell("Borders", xlEdge.cnt) xlBorders("LineStyle") = style // -4119:二重線 -4118:点線 -4115:破線 1:実線 4:一点鎖線 5:二点鎖線 13:斜め鎖線 xlBorders("Weight") = weight // -4138:太 1:極細 2:細 4:極太 xlBorders("ColorIndex") = index // 1:黒 2:白 3:赤 4:黄緑 5:青 6:黄 7:桃 8:水 9:茶 10:深緑 … loop return #deffunc xlChangeColumnWidth str columns, int w, local actSh, local xlColumns actSh = xlBook("ActiveSheet") xlColumns = actSh("Columns", columns) xlColumns("ColumnWidth") = w return #global xlInit // 初期化 onexit*exit xlAddSheet "ultimate" // シート追加(シート名:ultimate) xlChangeCellColor "B5:D8", 3 // 赤色でB5〜D8を塗りつぶす xlAddFrame "C10:F12", 1, 4, 5 // 青の太線でC10〜F12までを囲む xlChangeColumnWidth "H:J", 2 // H〜J列までの幅を「標準スタイル2文字分」に変更する stop *exit xlQuit end



はじめ

リンク

2008/4/22(Tue) 22:53:39|NO.15317

ありがとうございます。
非常に参考になりました!!



ONION software Copyright 1997-2023(c) All rights reserved.