Sub readUrl() Dim url As String Dim mySheet As String url = "http://typhoon.yahoo.co.jp/weather/jp/earthquake/list/" ActiveSheet.Range("A1").Select With ActiveSheet.QueryTables.Add(Connection:="URL;" & url, Destination:=ActiveSheet.Range("A1")) .Name = "test" .FieldNames = True .RowNumbers = False .Refresh BackgroundQuery:=False .RefreshPeriod = 0 .RefreshOnFileOpen = False .PreserveFormatting = True .AdjustColumnWidth = True .FillAdjacentFormulas = False .RefreshStyle = xlInsertEntireRows .SavePassword = False .SaveData = True .WebSelectionType = xlAllTables .WebFormatting = xlWebFormattingNone .WebPreFormattedTextToColumns = True .WebConsecutiveDelimitersAsOne = True .WebSingleBlockTextImport = False .WebDisableDateRecognition = False .WebDisableRedirections = True .Refresh .Parent.Names(.Name).Delete End With End Sub
2012年3月28日水曜日
vbaを使ってwebページを取り込むサンプル
ラベル:
vba
2012年3月25日日曜日
amchartのamstockとRuby on Railsでファンドの基準価額を描画する、
javascriptベースのamchartではなく一つ古いのflash版でやりました。http://www.amcharts.com/
amchartに食わせるデータは基本2つ:
①チャートの設定ファイル、よくあるのはsettings.xml
②データファイル、xml,csv,jsonなど対応して、実際の描画用のデータが渡される。
※データファイルが設定ファイルの中にインクルードされる方法と、設定ファイルの中に直接データを書き出し(データファイルが無くでもいける)
今回はsetting.xmlを固定ファイルにして、データだけrailsで動的に生成するやり方で作った
setting.xml
controllers/fund/search_controller.rbに追加
3年以内の分配金再投資基準価額を純資産降順でcsv作成、csvは行は「yyyy-mm-dd,修正基準価額」になっている
htmlは
stockchart.js
amchartに食わせるデータは基本2つ:
①チャートの設定ファイル、よくあるのはsettings.xml
②データファイル、xml,csv,jsonなど対応して、実際の描画用のデータが渡される。
※データファイルが設定ファイルの中にインクルードされる方法と、設定ファイルの中に直接データを書き出し(データファイルが無くでもいける)
今回はsetting.xmlを固定ファイルにして、データだけrailsで動的に生成するやり方で作った
setting.xml
<?xml version="1.0" encoding="UTF-8"?> <!-- Only the settings with values not equal to defaults are in this file. If you want to see the full list of available settings, check the amstock_settings.xml file in the amstock folder. --> <settings> <margins>0</margins> <text_size>10</text_size> <number_format> <letters> <letter number="1000">千</letter> <letter number="1000000">百万</letter> <letter number="1000000000">億</letter> </letters> </number_format> <date_formats> <x_axis> <days>MM/DD</days> <months>MM</months> </x_axis> <legend> <days>YYYY/MM/DD</days> <weeks>YYYY/MM/DD</weeks> <months>YYYY/MM/DD</months> </legend> </date_formats> <data_sets> <data_set did="0"> <title>ファンドA</title> <color>FF0000</color> <file_name>../../fund/search/data/123</file_name> <main_drop_down selected="true"></main_drop_down> <csv> <reverse>true</reverse> <separator>,</separator> <date_format>YYYY-MM-DD</date_format> <decimal_separator>.</decimal_separator> <columns> <column>date</column> <column>close</column> </columns> </csv> </data_set> <data_set did="1"> <title>ファンドB</title> <color>FF00BB</color> <short>[ぶどうの実]</short> <file_name>../../fund/search/data/456</file_name> <csv> <reverse>true</reverse> <separator>,</separator> <date_format>YYYY-MM-DD</date_format> <decimal_separator>.</decimal_separator> <columns> <column>date</column> <column>close</column> </columns> </csv> </data_set> <data_set did="3"> <title>日経平均株価(日経225)</title> <short>日経255</short> <compare_list_box selected="true"></compare_list_box> <color>999999</color> <file_name>../../fund/search/data/634</file_name> <csv> <reverse>true</reverse> <separator>,</separator> <date_format>YYYY-MM-DD</date_format> <decimal_separator>.</decimal_separator> <columns> <column>date</column> <column>close</column> </columns> </csv> </data_set> </data_sets> <charts> <chart cid="0"> <bg_color>f5f5f5,ffffff</bg_color> <border_color>#CCCCCC</border_color> <border_alpha>100</border_alpha> <grid> <x> <dashed>true</dashed> </x> <y_right> <color>cccccc</color> <alpha>100</alpha> <dashed>true</dashed> </y_right> </grid> <legend> <show_date>true</show_date> </legend> <graphs> <graph gid="0"> <axis>right</axis> <type>line</type> <data_sources> <close>close</close> </data_sources> <compare_source>close</compare_source> <legend> <date key="true" title="true"><![CDATA[<b>{close}</b>]]></date> <period key="true" title="true"><![CDATA[open:<b>{open}</b> low:<b>{low}</b> high:<b>{high}</b> close:<b>{close}</b>]]></period> <date_comparing key="true" title="true"><![CDATA[{close.percents}]]></date_comparing> <period_comparing key="true" title="true"><![CDATA[{close.percents}]]></period_comparing> </legend> </graph> </graphs> </chart> </charts> <data_set_selector> <position>top</position> <width>300</width> <max_comparing_count>4</max_comparing_count> <main_drop_down_title>選択</main_drop_down_title> <compare_list_box_title>比較</compare_list_box_title> </data_set_selector> <period_selector> <button> <bg_color_hover>b81d1b</bg_color_hover> <bg_color_selected>b81d1b</bg_color_selected> <text_color_hover>ffffff</text_color_hover> <text_color_selected>ffffff</text_color_selected> </button> <periods> <period type="MM" count="1">1ヶ月</period> <period type="MM" count="3">3ヶ月</period> <period type="MM" count="6">6ヶ月</period> <period selected="true" type="YYYY" count="1">1年</period> <period type="YYYY" count="3">3年</period> <period type="YYYY" count="5">5年</period> <period type="YYYY" count="7">7年</period> <period type="MAX">設定来</period> </periods> <periods_title>期間:</periods_title> <custom_period_title>任意期間:</custom_period_title> </period_selector> <header> <enabled></enabled> <text><![CDATA[<b>{title}</b> {short} {description}]]></text> <text_size>12</text_size> </header> <plot_area> <border_color>cccccc</border_color> </plot_area> <scroller> <enabled>true</enabled> <height>50</height> <graph_data_source>close</graph_data_source> <bg_color>f5f5f5,ffffff</bg_color> <resize_button_color>b81d1b</resize_button_color> </scroller> </settings>
controllers/fund/search_controller.rbに追加
3年以内の分配金再投資基準価額を純資産降順でcsv作成、csvは行は「yyyy-mm-dd,修正基準価額」になっている
..... ..... def data @fundCorrectionIndex = FundCorrectionIndex.find(:all, :conditions => ["fund_id=? and as_of_date >= (NOW() - INTERVAL 3 YEAR)", params[:id]], :order => 'as_of_date desc') csv_data = "" @fundCorrectionIndex.each do |rec| csv_data += "#{rec.as_of_date.strftime("%Y-%m-%d")},#{rec.correction_value}\r\n" end render :text => csv_data end ..... .....
htmlは
<!-- headに --> <script type="text/javascript" src="/rsrc/amcharts/swfobject.js"></script> <script type="text/javascript" src="/rsrc/amcharts/stockchart.js"></script> <!-- bodyに --> <body onLoad="draw_stock('stock','/market/special/asia/settings.xml')"> <!-- 描画用divを追加 --> <div id="stock"></div>
stockchart.js
function draw_stock(id,setting_url,width,height) { if(width == undefined){ width = "700"; } if(height == undefined){ height = "500"; } if(setting_url == undefined){ setting_url = "settings.xml" } var params = { bgcolor:"#FFFFFF" }; var flashVars = { path: "/rsrc/amcharts/", settings_file: setting_url, data_file: "data.xml", chart_id: id }; swfobject.embedSWF("/rsrc/amcharts/amstock.swf", id, width, height, "8.0.0", "/rsrc/amcharts/expressInstall.swf", flashVars, params); }
お名前のニュース配信を解除
ラベル:
お名前
http://www.onamae.com/support/faq/dom_other/other_01.php
Q.お名前.com会員に配信される「お名前.comドメインニュース」を配信停止してほしい
A.お名前.comドメインニュースの配信停止方法につきましては、下記手順にてお手続きください。
■ドメインニュースの配信停止方法の流れ
ドメインNavi にアクセスし、ユーザーID(お名前ID)とパスワードでログイン
上部メニューバーの「お名前.com会員情報」をクリック
会員情報設定の「会員情報の編集」をクリック
現在の会員情報が表示されますので、 「ドメインニュース配信」にて「配信無し」をご選択の上、「確認画面へ進む」をクリック
※その他、会員情報にご変更があれば最新の情報にあわせてご変更ください
ご入力内容をご確認の上、「設定する」をクリック
受付画面が表示され、変更された会員情報を記載したメールがお名前.com会員情報のご連絡先メールアドレス宛に送信されます
結構探した…本当にうるさかった。
Q.お名前.com会員に配信される「お名前.comドメインニュース」を配信停止してほしい
A.お名前.comドメインニュースの配信停止方法につきましては、下記手順にてお手続きください。
■ドメインニュースの配信停止方法の流れ
ドメインNavi にアクセスし、ユーザーID(お名前ID)とパスワードでログイン
上部メニューバーの「お名前.com会員情報」をクリック
会員情報設定の「会員情報の編集」をクリック
現在の会員情報が表示されますので、 「ドメインニュース配信」にて「配信無し」をご選択の上、「確認画面へ進む」をクリック
※その他、会員情報にご変更があれば最新の情報にあわせてご変更ください
ご入力内容をご確認の上、「設定する」をクリック
受付画面が表示され、変更された会員情報を記載したメールがお名前.com会員情報のご連絡先メールアドレス宛に送信されます
結構探した…本当にうるさかった。
2012年3月24日土曜日
bloggerをgoogle siteに埋め込む(embed)方法
ラベル:
blogspot,
google site
<iframe src ="http://kagen88.blogspot.jp/" width="755px" height="3000"> <p>あなたのブラウザがiframeを対応していないみたい</p> </iframe>google siteのページのhtmlを編集して保存すれば、google siteにブログを貼ることができる。
もう一回編集してみると、先のiframタグが訳がわからないタグに変わった、多分サイトがiframeタグを
よろしく変更してくれたね。
横スクロールを非表示や、縦スクロールの範囲指定等色々やりたいができないことも有ります。
googleがbloggerを埋め込む用のガジェットを作ってくれないかなぁー
2012年3月23日金曜日
javascriptでXMLを読み込むライブラリーjkl-parsexml.js
ラベル:
javascript,
xml
ライブラリーはここからダウンロード
http://www.kawa.net/works/js/jkl/parsexml.html
そして読み込むXMLを作成、ファイル名をuser.xmlにします。
HTMLはこちら
http://www.kawa.net/works/js/jkl/parsexml.html
そして読み込むXMLを作成、ファイル名をuser.xmlにします。
<?xml version="1.0" standalone="yes"?> <Users> <User> <Id>1</Id> <Name>田中</Name> </User> <User> <Id>2</Id> <Name>佐藤</Name> </User> </Users>
HTMLはこちら
<html> <head> <title>XMLファイルの読み込み</title> <script type="text/javascript" src="jkl-parsexml.js"></script> <script type="text/javascript"> <!-- function requestFile(url){ var xml = new JKL.ParseXML( url ); var data = xml.parse(); var strHtml = "<table border=1>"; for (var u in data.Users.User){ strHtml += "<tr>"; strHtml += "<td>" + data.Users.User[u].Id + "</td><td>" + data.Users.User[u].Name + "</td>"; strHtml += "</tr>"; } strHtml += "</table>"; document.getElementById("resultDiv").innerHTML = strHtml; } // --> </script> </head> <body> <input id="Button" type="button" value="実行" onclick="javascript:requestFile('./user.xml')"> <div id="resultDiv"> </div> </body> </html>結果はこんな感じ
1 | 田中 |
2 | 佐藤 |
2012年3月21日水曜日
RailsのActiveRecordのfindメソッドの基礎的書き方の一例
ラベル:
rails
FundIndex.find(:all, :select =>["fund_id,value,as_of_date"], :conditions => ["fund_id=? and fund_index_type_id=?", 564,2], :limit => 100)
2012年3月15日木曜日
2012年3月8日木曜日
なぜ"-f"(--force)オプションが効かないだろう
ラベル:
linux
普通にCPコマンドを叩いたら
あれ、forceオプション追加したじゃないですか、なぜいちいち聞くの?と思ったらaliasで見たら
"-i"か!なるほど。ちなみに解決は
$ cp -rf from/dir_a to/
cp: `........................' を上書きしてもよろしいですか(yes/no)?
あれ、forceオプション追加したじゃないですか、なぜいちいち聞くの?と思ったらaliasで見たら
$ alias
alias cp='cp -i'
alias l.='ls -d .* --color=tty'
alias ll='ls -l --color=tty'
alias ls='ls --color=tty'
alias mv='mv -i'
alias rm='rm -i'
alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde'
"-i"か!なるほど。ちなみに解決は
$ unalias cp
または
$ \cp -rf from/dir_a to/
2012年3月1日木曜日
railsコンソールでモデルのfindメソッドで関節的に関係を持つデーブルへのアクセス
3つのテーブルそれそれ下記の関係
tmp_fund_index ○----● fund ●----○ fund_ranking
tmp_fund_index ○----● fund ●----○ fund_ranking
#models/fund.rb class Fund < ActiveRecord::Base has_many :fund_rankings end #models/fund_ranking.rb class FundRanking < ActiveRecord::Base belongs_to :fund end #models/tmp_fund_index.rb class TmpFundIndex < ActiveRecord::Base belongs_to :fund endまずコンソールで確認すると、出ました
$ ruby script/console
Loading development environment.
>> FundRanking.find(:all, :limit => 1, :include => [:fund => [:tmp_fund_index]])
コントローラでは
#controllers/fund/ranking_controller.rb @rank_dtl = FundRanking.find :all, :include => [{:fund => :tmp_fund_index}],ビューアーでは、こうやって参照できる
#views/fund/ranking/detail.rhtml <%- if @rank_dtl -%> <%- @rank_dtl.each_with_index do |rank, idx| -%> <%= rank.fund.tmp_fund_index.standard_price %> <%- end -%> <%- end -%>
登録:
投稿 (Atom)