エクセルマクロなブログ

エクセル マクロ(Excel VBA)の作成・制作に携わっています。

◆お問い合わせはこちら◆

スポンサーサイト

一定期間更新がないため広告を表示しています

- | - | -

お客様によろこんでいただくと本当に嬉しいものです。

マクロの仕事をしていてお客様から感謝のお言葉を受けるのは非常に嬉しいものです。

今回はトレードスタジアムから出力されるCSVを、お客様指定のbookの指定位置にコピペするマクロだったのですが、お客様は一日50回もそのコピペをされていたそうで、腱鞘炎になられてしまわれたそうです。

私もあるメルマガの原稿を作成する際に、コピペを繰り返して腱鞘炎になったことがあります。(それでそのメルマガの原稿を自動作成するCGIや原稿を自動成形するマクロを作ったりしました)腱鞘炎は悪くすると非常に辛いですし、またPCを使わないでいられればいいですが、そうでない場合、痛い手で作業を繰り返すのでなかなか完治しません。

それなのでお客様からコピペの回数が激減したと喜んで頂けると、自分のことのように嬉しく思ってしまいます。

またブログの方でも私のこのブログを紹介して頂き、本当に感謝感激です。

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

">お客様のブログのエントリー
エクセルマクロ(ExcelVBA) | - | trackbacks(0)

Office2007SP1をインストール

マイクロソフト オフィス2007のサービスパック1が出てたんですね。
久々にマイクロソフトアップデートを手動で行ってみて知りました。

なんでもセキュリティとパフォーマンスの向上を行ったそうなので、さっそくインストール。

オフィス2007のネイティブなのは全然使ってなかったんですが、2003以前のファイルとの互換モードでのパフォーマンスが非常に悪くて、2007はほとんど使わなかったんです。

SP1では互換モードのパフォーマンスが劇的に向上しました。

SP1あてる前は互換モードは凄くとろくて、仕事に使おうという気になかなかならない速度でしたが、これなら以前のバージョンと変わりなく使えると思います。

ただヘルプが2003とかの頃よりもまだ重いですね。あとヘルプが一番上のウインドウに固定される仕様もなんかダメですね。

これでやっとオフィス2007をまともに使用できそうです。
エクセルのVBAの開発にもいけそう。今までとユーザーインターフェイスがかなり違うけど、なんとかそれもいけそうです。

やっぱりMSの新製品はSP1が出るまではベータ版と考えていいですね。
エクセルマクロ(ExcelVBA) | - | trackbacks(0)

為替のマクロのお問い合わせをされた方へ

3/3に為替のマクロをお問い合わせ下さったノグチ様。
メールアドレスが違っているようです。

お問い合わせの内容について確認致したいので、こちらを
ご覧になっておられましたらご連絡下さい。

JUGEMテーマ:ビジネス


エクセルマクロ(ExcelVBA) | - | trackbacks(0)

JUGEMブログのエントリーを分割するマクロ

この前、ロリポップブログのエントリーを分割するマクロを
作りましたが、今回はそれを応用してJUGEMブログ用の
エントリー分割マクロを作成しました。

無計画にカテゴリーを増やしてしまうとSEO的に良くないそうです。
(単一カテゴリーのモノの方がSEO的に良いらしい)
すでに長いこと書いていてカテゴリーもいろいろになってしまった
ブログをカテゴリー毎にエントリーを分割しようと思っても
手作業では大変です。

そんな時にこのマクロは役立つと思います。

JUGEMブログはエクスポーとするとなぜか</ BR>という
改行タグが自動的に挿入されてしまうので、エクスポート
ファイルをそのままインポートすると、行間が1行ずつ
空いてしまいます。

それを修正する機能もあります。
ブログのエントリーを分割しなくても、エクスポートファイルの
</ BR>だけを消すことも出来ます。
その場合はマクロ実行時にカテゴリーを指定しなければいいのです。

今回のマクロはこちら

エクセルマクロ(ExcelVBA) | - | trackbacks(0)

wordpressへ自動投稿するマクロ

今、wordpessというブログシステムに自動投稿するマクロを
作ってるんですが、はまりました。

wordpress(WP)とは、日本で独自ブログサイトを立ち上げるのに
デファクトスタンダードとなっているMovable Type(MT)と
同じく、自前のサーバに設置するブログソフトウェアです。

MTが企業の製品であるのに対してWPはオープンソースです。
海外ではどうもMTからWPへユーザーが移ってきているようで
シェアは上昇中らしいです。

で、このブログに記事を自動投稿するマクロを作成してるん
ですが、WPはメニューにDocking boxes (dbx)というAjaxを
使ったメニューを持っていまして、これが静的HTMLじゃない
んでVBAからどうやってアクセスしていいか悩みました。

今流行のAjaxですが、JavaScriptもおぼつかない私には理解
不能です。一応、どのjsファイルを使っているかぐらいは
わかったんですが、そのソースを読解できないので、
メニューをクリックして展開させるには一体どうやったら
いいのかここ数日悩みに悩みました。

パケットをモニタリングしたらどういう命令が実行されている
か分かるかもと、パケットモニタをインストールしてみましたが
これは素のパケットが見れるだけなので、どんなScriptが実行
されているか分かりませんでした。

で、今度はAjaxで使われるXMLHttpRequestをモニタリングする
ソフトを探しました。
とりあえずhttp通信のリクエストとレスポンスがみれるソフト
を見つけたので導入してみました。
(秀丸エディタの作者さんが作った横取り丸+inetspy)

しかしこれはdbxメニューをクリックしてもリクエストもレスポンスも
表示されません。通常のgetとpostとかのリクエストならば
表示されるんですけど。

で、FirefoxのエクステンションでLive HTTP headersというのを
見つけたので導入してみました。
しかし、これでもXMLHttpRequestをモニタリングできませんでした。

dbx.jsのfunctionをVBから呼び出してみたりしましたが、
functionの中身が分かってないので上手くいきません。

本当にもう途方に暮れてしまっていたんですが、ふとある方法を
思いついて実行してみたら上手くいきました。
やっぱり基本のDOMへのアクセスで上手くいくわけでした。

上手くいってホットしましたよ、ホント。

ぜひ一度お問い合わせ下さいませ。

エクセルマクロ(ExcelVBA) | - | trackbacks(0)

IE操作のマクロ

VBAでIEを操作するマクロを最近はずっと作っているのですが
ヘルプファイルがないというのが困ることです。

まぁググったりして基礎の情報は仕入れたわけですが、
肝心のIEのブラウザ内のHTMLへのアクセス方法が簡単にしか
説明されていない感じです。

Set objIE = CreateObject("InternetExplorer.Application")

でIEを起動したらどこかでブレークポイントを作っておいて
ローカルウインドウを表示してobjIEのメンバというか
プロパティとかを調べて行くのがいいかもしれません。

まぁ表示されたサイトのソースを見て、操作したい部品の
コードを見てnameとかidとかを調べて見るのも常套手段です。

objIE.document.forms.Item("login").elements("id")value="hoge"

ならformのnameかidがloginのフォームのinputタグのうち
nameがidのとこにhogeを設定するという感じです。

ここら辺はエラーが出るたびにちょこちょこ直してエラーを
つぶすという感じで、まぁ慣れが必要かも知れません。

formをsubmitするのにsubmitだけでいいものもあるし
submit.clickになるのもある。その違いがイマイチ分かってません
が、まぁ上手く動けばノープロです(笑

ここら辺はページのソースの中のJavascriptの中にヒントがあったり
します。

最近はボタンがJavascriptで作動するモノもありまして
これらは

objIE.Navigate2 "JavaScript:Editor.commands.submit('save').execute()"

とかするとよろしいです。

まぁこんな感じで日々コーディングしております。

サイトによっては自動で操作するとソースを可変させるモノも
あってその辺はなかなか厳しいモノがありますけど。

ぜひ一度お問い合わせ下さいませ。

エクセルマクロ(ExcelVBA) | - | trackbacks(0)

ロリポップブログのエントリー分割マクロ

グラフの新しいサンプルマクロを作ると言いつつ
手をつけてないんですが、自分の作業の関係で
新しいマクロを作りました。
(お仕事のは別途作成してますが)

私はロリポップでブログを持っているんですけど
何も考えずにいろんなカテゴリーで書いてしまった
ものですからSEO的にあまりよろしくない状況に
なってしまっていました。

そこでブログのエクスポート機能を使ってxmlファイルを
はき出させて、それを加工して、別サブドメインの
新しいブログにインポートすることにしました。

昔作ったテキストデータからメルマガの原稿を成形する
マクロをいじくってなんとか出来ました。

テキストファイル操作の命令openのパラメーターを
Appendにすべき所をInputとしていたため
望み通りの結果ファイルが出来なくて少し悩んでしまいました。

Inputじゃ開く度に新しいファイルになるので
前に書き込んだ情報が消えてしまうんですね。

そう言えばこの前、お仕事でlogをはき出すルーチン作った
所だというのに……。

メルマガマクロではInputで良かったけど、今回は
Appendの形式で作ってしまったのでした。

Excelは文字コードがシフトJISだから、エディタで
utf-8NからシフトJISに変換してから実行しないと
いけないところが手抜きです。

あと改行コードもLFからCR+LFにエディタで変換して
使ってください。

jugemもjugem形式のxmlをエクスポート出来ますけど
xmlの中の構造というか改行する位置が違うので
このままでは使えません。

これで変換したxmlファイルはjugemブログでも使えます。

今回のマクロはこちら

エクセルマクロ(ExcelVBA) | - | trackbacks(0)

マクロでグラフが人気のようです

このブログのアクセス解析を見ると

マクロ グラフ

というのがもしかすると一番多いかも知れない。

マクロでグラフと言うことは、大量のデータから
グラフを作りたいと言うことなんだと思う。

マクロの記録で一個グラフを作る手順を記録したら
後はグラフの範囲をプログラムで書き換えるだけで
出来そうなんだけど……。

まぁブックやシートの操作も入ってくるから
それらも上手くこなさないといけないかな。

今あるグラフマクロのサンプルはCSVファイルから
グラフを作るものだから、今度はデータシートを
読み込んでグラフを作るサンプルでも作ってみるかな。

ぜひ一度お問い合わせ下さいませ。

エクセルマクロ(ExcelVBA) | - | trackbacks(0)

e-trade向け 自動売買 マクロ サンプル Ver.0.1

なんかエクセルマクロで株の自動売買システムを組むという
本を見かけてちょっと立ち読みしてきました。

それに触発されてサンプルを作ってみました。

まぁチャート分析とかしてないので売り買いシグナルの判断は
出来ないんですけど、とりあえず以下のようなサンプルです。

サンプルの「sheet1」の各項目を埋めて「実行ボタン」を押すと
E-tradeへの自動ログインから売注文発注までを自動で行います。

各項目の説明
ユーザー:ユーザーID
パスワード:ログインパスワード
取引パス:取引パスワード
売り株コード:手持ちの株の中から売却する株の取引コード
売り株数:売却する株数
指し値:指し値

サンプルはこちら。

エクセルマクロ(ExcelVBA) | - | trackbacks(0)

最近はIEを操作するマクロを組んでます

最近は今までとちょっと毛色の変わったマクロを
組んでいます。

インターネットエクスプローラーを操作して
色々処理を行うマクロです。

ExcelのVBAというより純粋にVisualBasicな感じの
マクロですね。

例えばこんなの

Sub IE_sample()
Dim objIE As Object
Dim url As String

url = "http://yahoo.co.jp"

Set objIE = CreateObject("InternetExplorer.application")

objIE.Visible = True

objIE.navigate (url)

Set objIE = Nothing

End Sub

まぁこれは本当に一番簡単なのなんで。
あとこれにコードを追加しては色々させるわけです。


ぜひ一度お問い合わせ下さいませ。

エクセルマクロ(ExcelVBA) | - | trackbacks(0)