category: VBA 1/1
複数の列をループで処理する @VBA
複数の列を行方向にループさせたい場合は、こんな感じ。 Set tmp_sheet = Sheets("Sheet1") Set tmp_range = tmp_sheet.Range("F:H,J:J") last_row = ... ' 最終行 For r = 3 To last_row For Each tmp_area In tmp_range.Areas ' Range の Area For c = 1 To tmp_area.Columns.Count Set cell = tmp_area.Cells(r, c) real_r = cell.Row ' セルの行 real_c = cell.Column...
Proxy を乗り越える @VBA
Set xhr = CreateObject("MSXML2.ServerXMLHTTP.6.0") url = "http://jimsie.blog57.fc2.com/" xhr.Open "GET", url , False xhr.setProxy 2, "proxy.com:8080" xhr.setProxyCredentials "proxy-user", "proxy-password" xhr.Send MSDN setProxy Method (ServerXMLHTTP/IServerXMLHTTPRequest) setProxyCredentials Method (ServerXMLHTTP/IServerXMLHTTPRequest)...
メモリが不足しています @VBA
エラーが出てるのは、正規表現でのパターンマッチをしている行。 こんなコード。 Set re = CreateObject("VBScript.RegExp") re.Pattern = ... For c = 1 To last_col Set mat = re.Execute(Cells.Value) ' ★ここでエラー 検索しても、引っかかるのは配列が大き過ぎじゃんとか、そんなのばかり。 たいしてメモリを使うような処理じゃなかったし、デバッグの途中だったから開放漏れの COM なんかがあるのかと思...
選択してる行に色を付ける@Excel
社内システムが使いづらくって、画面を見ながら考えて入力できるような代物じゃない。 なので、予め Excel で数字を計算しておいて、それを見ながら打ち込むわけだけど、件数が多くなると、どこを見てるのか分からなくなる。 オペレータさんがやってる、紙に打ち出した一覧表に定規を当てて、行を特定しながら入力するのをやりたくって。 ググって みたら、こんなの を見つけた。 対象範囲に条件付書式を設定する 条件...
Excel で XML-RPC (by XMLHTTPRequest)
XMLHTTPRequest って、同一のドメイン内じゃないとセキュリティのエラーになるから、Excel で使おうなんて思ったことなかった。でも、使えるんだねえ、Excel でも。ついでなので、XML-RPC を試してみた。サービスは 郵便専門ネット。XML-RPC の仕様は こちら。使ってみたのは、yubin.fetchAddressByPostcode (郵便番号から住所を取得する) 。Sub fetchAddressByPostcode(postcode) Dim xhr As XMLHTTP Dim xml As DOMDocumen...