[ 掲示板に戻る ]

過去ログ閲覧モード

Excelグラフ軸の最大値・最小値を変更したい / MM
UWSCを使って、Excelグラフの横軸の表示(最大値・最小値)を変更する
ことはできるでしょうか?

VBAを呼び出せば可能なようですが、実行環境(Excelのマクロ許可の設定)に
左右されたくないので、可能な限りUWSCで完結させたいです。

下記が作ってみたマクロです。
「XLCATEGORYが定義されていません」とエラーが出ます。

******************************
EXCEL.workbooks.open(GET_CUR_DIR + "\テンプレート.xlsx") //グラフ作成済みの空ファイル
CTRLWIN(EXCEL,ACTIVATE)

SLEEP(5)

EXCEL.Activeworkbook.SaveAs(GET_CUR_DIR + "\" + 【ファイル名】 + ".xlsx")

【外部ファイル(.csv)から数値を取り込み】

【取り込んだ数値をセルに入力】

※エラー発生箇所
Excel.ActiveChart.Axes(xlCategory, xlPrimary).MaximunScale = EXCEL.Activesheet.Cells(a, b).value
Excel.ActiveChart.Axes(xlCategory, xlPrimary).MinimunScale = EXCEL.Activesheet.Cells(c, d).value

CTRLWIN(EXCEL,ACTIVATE)
EXCEL.ActiveWorkbook.Save

SLEEP(3)

EXCEL.ActiveWorkbook.Close

print "すべての処理が終了しました"
******************************

現在使っているのはフリー版ですが、Pro版限定の方法でもかまいません。

どうぞよろしくお願いします。

No.734 2015/01/21(Wed) 09:29:04

Re: Excelグラフ軸の最大値・最小値を変更したい / yanyan
Excel定数はUWSCで定義されていません。あらかじめ定数設定する必要があります。
ググるといつ覧表がみつかるかも。

ちなみに下記の値となっています。
CONST xlCategory = 1
CONST xlPrimary = 1

No.738 2015/01/21(Wed) 12:27:24

Re: Excelグラフ軸の最大値・最小値を変更したい / MM
返信ありがとうございます。

xlCategoryとxlPrimaryを定義して上記のエラーは解消されましたが、
今度は「COM_Error:例外が発生しました。」となり、やはりできませんでした。

Excelファイルは、シート1枚のみ、その中にグラフのもとになったセル、
およびグラフ(軸の最大値・最小値を変更したい対象)が存在します。

どこに問題があるのでしょうか?

よろしくお願いします。

******************************
//エラーの該当部分
Excel.ActiveChart.Axes(xlCategory, xlPrimary).MaximunScale = EXCEL.Activesheet.Cells(a, b).value
Excel.ActiveChart.Axes(xlCategory, xlPrimary).MinimunScale = EXCEL.Activesheet.Cells(c, d).value
//(a,b)、(c,d)はどちらも、グラフの存在するExcelシート上の任意のセル。値は数値(例:18.315)。
******************************

No.751 2015/01/24(Sat) 00:54:35

Re: Excelグラフ軸の最大値・最小値を変更したい / yanyan
このスクリプトの実行前に、エラー該当部分が実行できる状態か確認する必要があります。
操作しようとしているchart関係のオブジェクトが得られているか、まとめないで、1階層ずつきちんとたどっていくなど。

No.753 2015/01/24(Sat) 10:05:57

Re: Excelグラフ軸の最大値・最小値を変更したい / MM
返信ありがとうございます。

>操作しようとしているchart関係のオブジェクトが得られているか

について調べ、「Activechart」部分を「charts(1)」「chartobject」などにしてみた
のですが、同じエラーとなりました。
UWSCの記録機能も使ってみたのですが、オブジェクトの値は取得できません。

オブジェクトを一意に指定するにはどのような方法があるのでしょうか?

VBAに疎く、人頼みばかりになってしまいたいへん恐縮なのですが、何卒、よろしくお願いします。

No.754 2015/01/24(Sat) 12:07:53

Re: Excelグラフ軸の最大値・最小値を変更したい / Liners
ヒント:UWSCはExcelではないので、暗黙の省略が使えません。
データ・環境・バージョン等が不明なので未検証ですが一般的なパターンを示します。

Excel.ActiveSheet.ChartObjects(1).Chart.Axes(xlCategory, xlPrimary).MaximunScale

No.756 2015/01/24(Sat) 22:58:23

Re: Excelグラフ軸の最大値・最小値を変更したい / MM
返信ありがとうございます。

ご指摘の通り、省略部を明記することで動作しました!
Chartobjectsとchartが違う意味を持つという点を理解できていなかったことが原因でした。

ありがとうございました。

No.772 2015/01/30(Fri) 18:49:21
Firefoxでの条件分岐について / san@
お世話になっております。
首記の件ですが、ご教示いただければと思います。

ページ内に、指定した文字列が存在する場合は条件aで存在しない場合は条件bという
スクリプトを書きたいのですが、可能でしょうか。

該当の文字列は clkitemでクリック可能なので、現在、クリックしたら条件aで不可の
場合は条件bという回りくどい方法で処理しています。

クリック無しで、文字列で判定できるコードが御座いましたら、ご教示下さい。。。

よろしくお願い致します。

No.765 2015/01/29(Thu) 15:15:54

Re: Firefoxでの条件分岐について / san@
訂正します。
条件abという書き方はおかしいですね。

条件は指定文字列の有無で、処理a or 処理bというスクリプトが書きたいです。

No.766 2015/01/29(Thu) 17:00:33

Re: Firefoxでの条件分岐について / Nagatani
POSを使えばできると思います。
//戻値 = POS( 探す文字, 探される文字列, [n個目] )

探される文字列="ページ内に、指定した文字列が存在する場合は条件aで存在しない場合は条件bというスクリプト"
IF Pos("条件a",探される文字列) >= 1 Then
MsgBox("処理aを選択 "+Pos("条件a",探される文字列)+"文字目にあります。")
ELSE
MsgBox("処理b")
ENDIF

No.767 2015/01/29(Thu) 21:05:42

Re: Firefoxでの条件分岐について / san@
Nagatani様

ご返信ありがとうございます。
一度、実施してみたいと思います。
ありがとうございました。

No.768 2015/01/30(Fri) 01:13:13
(No Subject) / A
DOSCMDでテキストファイルを開くと、UWSCがとまってしまいます。対策はないでしょうか。


DOSCMD("C:\Users\A\Desktop\note\note1.txt")

Windows7,IE11

No.760 2015/01/27(Tue) 13:01:58

Re: / routa
ヘルプを見ましょう。
DOSCMD("C:\Users\A\Desktop\note\note1.txt", true)

No.761 2015/01/27(Tue) 21:25:18
(No Subject) / msk123
お世話になります。
初めての投稿なのでよろしくお願いします。

あるソフトの操作をマクロで記録しましたが、
CLKITEM関数のアイテム名を取得できません

id = GETID("ソフト名タイトル", "WindowsForms10.Window.", -1)
SLEEP(1)
CLKITEM(id, "", CLK_ACC, True, 2)

これは、アイテム名を認識することはできないということでしょうか?
他に、何かを調べればアイテム名を認識させる方法があるかどうかを知りたいです。

ちなみにソフトは、サイト作成を行うソフトです。

よろしくお願いします。

No.736 2015/01/21(Wed) 10:43:33

Re: / routa
// 指定ウィンドウの全オブジェクトの文字を種類別に取得する  #n56
http://www.uwsc.info/sample.html#n56
これで調べてみたらどうでしょう。

No.741 2015/01/21(Wed) 21:35:57

Re: / msk123
routa さま

ご回答ありがとうございます
なるほどこのような拾い方があるのですね。

残念ながらテンプレの全オブジェクトの中で拾えなかったのですが
もう少し勉強してみます!

ありがとうございまいた

No.750 2015/01/23(Fri) 01:11:27
IEでボタン(button type)がクリックできない / しまりす
初心者です。ありがちな質問かもしれませんが、教えて下さい。

<button type="button" id="navi_login_r" style="width:115px;height:24px;margin:10px 0px 0px 0px;" onClick="javascript:return fcSubmitRestrict(FRM_RSGK001,'LOGIN','rsv.bean.RSGK001BusinessLogin','RSGK001');"><img src="./../image/button/btn_login_r.gif" alt="ログイン" width="115" height="24"/></button>


↑のボタンを押したくて、iesetdataを使おうとしているのですが、
押せません。nameやValueがないので、どのように入れたらいいのかわからず、
ググると「input type」はよく見かけるので、

IESetData(IE,True,"","src=htt〜絶対指定パス〜/image/button/btn_login_r.gif")

や、

IESetData(IE,True,"")
IESetData(IE,True,"ログイン")

を試しても駄目でした。
初めての投稿なので、情報不足でしたらご指摘ください。

よろしくお願いします。

No.747 2015/01/22(Thu) 15:43:11

Re: IEでボタン(button type)がクリックできない / むっちー
//画像は絶対パスでお願いします。
IESetData(IE,True,"TAG=IMG","./../image/button/btn_login_r.gif")

//IEのバージョンによっては動かないかも…(Win8.1/IE11で動作確認済)
IE.document.getElementById("navi_login_r").click()
はどうでしょうか?
IEのバージョンやどこのサイトかを教えていただければ、もう少し詳しくご教授できるかと思います。
参考になれば幸いです。

No.748 2015/01/22(Thu) 16:31:53

Re: IEでボタン(button type)がクリックできない / しまりす
むっちーさん、
お返事ありがとうございます。
教えて頂いたどちらの方法でもクリックできました。
また不明点がありましたら、ご教授をお願い致します。

No.749 2015/01/22(Thu) 22:14:05
文字化けを直したいです / bcd
テキストファイルに「abréger」というフランス語の単語が書かれています。このテキストファイルを読み込み、SENDSTRを使って適当なテキストボックスに出力すると、「abr馮er」と出力されてしまいます。テキストファイルを開くとき、文字コードを「欧文」にすれば正常に表示されましたので、同じように文字コードを指定してやればよさそうですが、やり方が分かりません。どうすればよいでしょうか?
No.733 2015/01/21(Wed) 01:16:15

Re: 文字化けを直したいです / stuncloud
テキストファイルをUTF8やUTF16で保存しておけば大丈夫ではないですかね?
例えばメモ帳であれば、ファイルに「abréger」と書き込んでから名前をつけて保存で文字コードをANSIではなくUnicodeにしてから保存する、等

fid = fopen("Unicode.txt", F_READ) // Unicodeで保存した「abréger」と書かれたファイル
str = fget(fid, 1)
fclose(fid)
id = getid("ファイル名を指定して実行")
sendstr(id, str, 1, TRUE) // 「abréger」が入力される

No.737 2015/01/21(Wed) 11:52:16

Re: 文字化けを直したいです / bcd
ダメでした。秀丸でエンコードの種類をUTF-7,8,16,32やECU,JISに変えてみましたが、やはり文字化けします。ちなみに出力はSENDSTRでもMSGBOXでも同じ結果です。
No.740 2015/01/21(Wed) 21:13:44

Re: 文字化けを直したいです / bcd
ASCでUnicodeの数値に変換→CHRでunicode文字へ変換という処理を一文字ずつ適用したところ、うまくいきました。encodeは「abreger」へ変換されただけで微妙に違っていたのでダメだったのでこの方法を試しましたが、もう少しスマートな方法があるような気がします。
No.746 2015/01/22(Thu) 01:10:03
chkimgの不具合について / Nyu
更新お疲れ様です。

前回のバージョン(5.0.4)でも同様の事が発生したのですが、mouseorgを使って座標を相対座標にしchkimgを行った場合、対象ウインドウがモニタ外にはみ出しているとクリック座標がはみ出している分ずれます。

少し前のバージョンでははみ出した状態でも正常に動いたと思うので不具合と思い報告しました。
具体的なバージョンナンバーは思い出せませんが・・。
お手数をおかけしますがご対応の程よろしくお願いいたします。

OS:Windows7
UWSC:Pro 5.1.0

No.726 2015/01/19(Mon) 12:16:57

Re: chkimgの不具合について / umiumi
当方では問題を確認できません。
対象アプリは何か、確認用のスクリプトの提示をお願いいたします。

また、なにか画面関係の設定やツールを使用してないか、別アプリではどうか
SAVEIMG関数にて画像が正しく取れているか等の確認をしてみてください。

No.732 2015/01/20(Tue) 22:41:11

Re: chkimgの不具合について / Nyu
・スクリプト解説
UWSC公式サイトをブラウザで開き以下のスクリプトを実行します。
ブラウザが画面の表示領域外(左側)に存在すると、その分クリック座標やsaveimg座標がずれます。
なおブラウザによって画像の表示方法が異なるためか(?)画像判定に失敗したため、画像判定にはIMG_MSK_BGR4を指定しております。


・確認用スクリプト
dim WindowID = getid( "UWSC", , 0.01 )
mouseorg( WindowID, MORG_CLIENT, MORG_FORE )
chkimg( ".\test.bmp", , , , , , , IMG_MSK_BGR4 )
btn( LEFT, CLICK, G_IMG_X, G_IMG_Y )
saveimg( ".\test2.bmp", WindowID, G_IMG_X, G_IMG_Y, 100, 100, true )


・使用した画像
test.bmp(UWSC公式サイトの電卓画像に表示されている数値部分です)
http://www.dotup.org/uploda/www.dotup.org117591.bmp.html


・該当ブラウザ
InternetExplorer, GoogleChrome, Firefox
上記3つのブラウザで試しましたが全て再現しました。


・補足
mouseorgにMORG_DIRECTを用いた場合につきましても同様の現象が発生しました。
画面関係の設定で行っている事としてはエアロをオフにしています。それ以外の事は何もしていないと思います。

画面領域外の左側にはみ出した時のみ発生する事を確認しました。
テストした限りでは下側や右側にはみ出した時は該当の現象は発生しませんでした。
上側にはみ出すとウインドウのY座標が強制的に画面領域内に移動するので、上側については確認出来ませんでした。

No.735 2015/01/21(Wed) 09:45:12

Re: chkimgの不具合について / umiumi
確認しました。
対処します。
MORG_FORE指定時なので MORG_FOREを外せば大丈夫です。

No.742 2015/01/21(Wed) 22:40:03
エクセルでWEBクエリ編集で画面が出るまで待ってくれない / すぽんじ
想定外かも知れませんが、エクセルのWEBクエリの編集で使っています。

外部サイトを表示するときに
GETID関数に第3引数(待ち時間指定)を付けていますが、画面が出るまで待ってくれません。
これはどうしようもないですか?
それとも有料バージョンでは出来るのでしょうか?

No.719 2015/01/18(Sun) 15:36:21

Re: エクセルでWEBクエリ編集で画面が出るまで待ってくれない / routa
スクリプトを提示したらどうですか。
これでは何もわからないですよ。

No.720 2015/01/19(Mon) 00:06:54

Re: エクセルでWEBクエリ編集で画面が出るまで待ってくれない / stuncloud
excel2007ですが

excel = getid("Excel", "XLMAIN")
clkitem(excel, "Web クエリ", CLK_ACC)
query = getid("新しい Web クエリ", "bosa_sdm_XL9", -1)
msgbox(status(query, ST_TITLE))

としたらちゃんと「新しい Web クエリ」ウィンドウの出現を待っていました
ウィンドウ内で描画されるWebページの読み込み完了待ちをしたいということでしたら…なんとなく過去の経験から出来なくもないんじゃないかという予感はありますが、容易ではないです

# 中身はIEコンポーネントっぽいのでInternet Explorer_Serverが見つかればしゅんさんの書かれた
# http://d.hatena.ne.jp/junjun777/20120212/uwsc_hwnd_ie_object
# にある方法でアクセス出来るんじゃないかなぁ…?

No.727 2015/01/19(Mon) 15:49:40

Re: エクセルでWEBクエリ編集で画面が出るまで待ってくれない / すぽんじ
>>stuncloud さん
ありがとうございます。
「画面が出るまで」ではどっちだかわかりませんね、失礼しました。
WEBクエリのウィンドーが出て、その画面の中で検索をし、画面が更新されるのを待たない
という事です。
まさに「読み込み完了」待ちをしたいということです。容易ではないんですね、分かりました。
リンク先も見てみますが、難しいなら今までのように時間をあけて我慢しようと思います。

>>routa さん
確かにスクリプト提示すればよかったですね、ごめんなさい。

No.728 2015/01/19(Mon) 19:09:39

Re: エクセルでWEBクエリ編集で画面が出るまで待ってくれない / stuncloud
Webクエリ画面の中で、あるクリック可能なアイテムが表示されていれば(クリック可能であれば)読み込みも終了していると判断できるという発想で

repeat
 sleep(0.1)
until clkitem(id, 対象名, CLK_ACC, FALSE)

として待ってみるとか
clkitemの第4引数をFALSEにしておけば実際にはクリックしませんが、対象があればTRUEを返します
例ではCLK_ACCにしてみましたが押せそうなものならなんでも良いと思います

No.729 2015/01/20(Tue) 11:29:02

Re: エクセルでWEBクエリ編集で画面が出るまで待ってくれない / すぽんじ
ありがとうございます!!
週末に時間が取れるので試してみます。

No.739 2015/01/21(Wed) 13:41:49
IEのダウンロードダイアログの「開く(O)」ボタンを押したい / ざろん
http://excelfactory.net/excelboard/excelvba/excel.cgi?mode=all&namber=167199&rev=0

上記でも質問させていただいてますが、回答がないため
こちらにも質問させていただきたいと思います。



h ttp://oshiete.goo.ne.jp/qa/8035721.html
h ttp://soudan1.biglobe.ne.jp/qa1809850.html

上記2点を参考にやってみましたが、上手く来ませんでした。

そのブラウザを開いた状態で、ダウンロードダイアログも出ている状態です。

ダイアログには
XXX.XXX.XXX.XXXからXXXXX.csvを開くか、または保存しますか?
と表示されています。
(XXXには、IPアドレスが入ります。)

UWSCを使い、「#32770」だというのも確認し、
参考サイトを元に作ってみましたが一向に動きません。

開いているウィンドウの一覧を取得し、
その名前が XXX.XXX.XXX.XXXからXXXXX.csv など含む場合
開く(O)をクリック、など出来ないのでしょうか?

ダウンロードダイアログは、
ウィンドウの下のほうに黄色く出るものです。
分かりにくくてすみません…

直接、URLを参照してダウンロードしてみる方法も
試してみたのですが、
全然関係ない、HTMLのソース?みたいなファイルが取得されました。

VBA  Windows7 32bit Excel2003 InternetExplorer9

No.705 2015/01/16(Fri) 14:25:32

Re: IEのダウンロードダイアログの「開く(O)」ボタンを押したい / Nagatani
情報が少ないので間違っているかもしれませんが・・・・
ここを参考にされては?
// IE にてファイルのダウンロード処理  #n58
http://www.uwsc.info/sample.html#n58

IE11なら下記です。
CLKITEM(GetID("ダウンロード - Internet Explorer","IEFrame",-1),"ファイルを開く",CLK_ACC)

No.709 2015/01/16(Fri) 22:51:20

Re: IEのダウンロードダイアログの「開く(O)」ボタンを押したい / Nagatani
こちらのほうが分かりやすいかも?

http://www3.bigcosmic.com/board/s/board.cgi?id=umiumi&start=70&log=ON&cnt=39

No.710 2015/01/16(Fri) 23:06:36

Re: IEのダウンロードダイアログの「開く(O)」ボタンを押したい / ざろん
返信遅れて申し訳ありません。
Nagatani様、情報ありがとうございました!
色々と試しておりますが やり方がいまいち良く分かっておらず…

質問内容に書き忘れていましたが
UWSCが入っていないパソコンでも動作するようにしたいと思っていましたが
中々難しそうだということが分かりました。(sendkeysならいける…?)

頂いた情報をしっかり読み込み、理解したうえで
どうするか検討しようと思います。
ありがとうございました^^

No.730 2015/01/20(Tue) 11:56:24

Re: IEのダウンロードダイアログの「開く(O)」ボタンを押したい / Nagatani
名前を付けて保存は
ScKey(GetID("名前を付けて保存","#32770"),Vk_Ctrl,Vk_V)
ですのであとは替えて下さいね!

No.731 2015/01/20(Tue) 12:15:58
UWSC ver 5.1.0 / umiumi
IE関連の関数にて マルチフレームでの操作が NGなのを修正(KB3025390対策、別ドメインフレームへのアクセス可)
文字関連の関数にて サロゲートペア1文字が カウント2されるのを 1に変更
サロゲートペア1文字を 2でカウントする LENGTHS関数を付けた
POWERSHELL関数にて \文字がエスケープシーケンスされるのを修正
STATUS関数の ST_MONITORの値が MONITOR関数と符合してなかったのを修正
Pro版:
CREATEFORM関数にて フォームを 2つまで作れるようにした
RecIE: マルチフレームにて 記録できないパターンがあったのを修正

No.721 2015/01/19(Mon) 06:25:53

掲示板検索(過去ログ(〜2015/01/09)・検索ツール) / umiumi
検索ツール 更新しました。
No.722 2015/01/19(Mon) 06:27:18

KB3025390 / umiumi
Windows Update KB3025390(2014/12/19配布) にはバグがあり、外部からのIEへのアクセスが一部できない問題があります。
このバグは次の Windows Update時に修正されそうです。
https://connect.microsoft.com/IE/feedback/details/1062093/installation-of-kb3025390-breaks-out-of-process-javascript-execution-in-ie11
>Thank you. We're aware of this issue and on track to release a fix as part of the next IE cumulative update.

Ver5.1.0では、この問題を回避する為の対策をとりましたが
副産物として セキュリティ的にNGだと思ってた 別ドメインフレームへのアクセスができるようになりました。

No.723 2015/01/19(Mon) 06:30:40

Re: UWSC ver 5.1.0 / yanyan
検索ツールの行進確認しました。ありがとうございました。
No.724 2015/01/19(Mon) 08:30:15

Re: UWSC ver 5.1.0 / yanyan
NO.602の返信が締め切られていますので、こちらに書き込みします。

障害の発生したサイトをUWSC ver 5.1.0のIELink(Rec-IEによる)に戻してみましたが、ダメでした。
CHKIMGによるCLIKを継続します。
------------------------------------
★ Windows UPDATE KB3025390 / artichoker
Windows UPDATE KB3025390が適用された後、IELinkやIESetdataが動作しなくなってしまったサイトがでてきました。
アンインストールしたところ、正常に動作するようになりました。
なお、すべてのサイトで動かないわけではなく問題なく動作するところもありました。
念のため報告させていただきます。
No.602 2014/12/19(Fri) 14:22:47

☆ Re: Windows UPDATE KB3025390 / umiumi
確認ができません。
環境と確認できるURLの提示をお願いします。
No.611 2014/12/20(Sat) 01:33:02

☆ Re: Windows UPDATE KB3025390 / yanyan
私も、同様な問題が株取引サイト(https)で発生しました。URLは公表できませんが、ログイン後のIELINK障害(IE.navigateも当然ダメ)です。セキュリティー強化のためかと理解し、やむ得ず、CHKIMGによるCLIKに変更しました。20サイト程度にIELINKを使用していますが、発生は1サイトのみです。
No.613 2014/12/20(Sat) 10:17:26

No.725 2015/01/19(Mon) 09:42:01
全1170件 [ ページ : << 1 ... 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 ... 117 >> ]