- ベストアンサー
Excel VBA繰り返し文の簡潔な書き方
- Excel VBAで繰り返し文を簡潔に書く方法を紹介します。
- 上記のコードを以下のように書き換えて簡潔にすることができます。
- RangeオブジェクトのFor Eachループを使用すると、簡潔に繰り返し処理を行うことができます。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
一例です。 Sub test2() Dim tbox As OLEObject Dim i As Long For Each tbox In ActiveSheet.OLEObjects i = i + 1 Range("M" & i).Value = tbox.Object.Value Next End Sub
その他の回答 (3)
- xls88
- ベストアンサー率56% (669/1189)
直接取得することもできます。 三流君VBAでIE操作 InternetExplorer.Applicationを操作する http://www.ken3.org/cgi-bin/group/vba_ie.asp
お礼
ありがとうございます。(^^) できればいいのですが、難しそうです。
- xls88
- ベストアンサー率56% (669/1189)
もう一例 Sub test3() Dim ctrl As OLEObject Dim i As Long For Each ctrl In ActiveSheet.OLEObjects If ctrl.Name Like "HTMLText*" Then i = i + 1 ActiveSheet.Cells(i, "A").Value = ctrl.Object.Value End If Next ctrl End Sub
お礼
ありがとうございました。(^^)
- xls88
- ベストアンサー率56% (669/1189)
HTMLText1~HTMLText10の正体が解らないので、通らないと思いますが 一例を示すと、下記のように記述します。 Sub teat1() Dim i As Long With Sheets("最初") For i = 1 To 10 Cells(i, "M").Value = .HTMLText(i).Value '★1 Next i End With End Sub ★1のところは Range("M" & i).Value = .HTMLText(i).Value というようにもできます。
お礼
ありがとうございます。 HTMLText10は、ホームページを全選択後、コピーしてExcelシートに貼り付けた時にあったテキストボックスです。このたくさんのテキストボックスの値をセルに書き出そうとしています。
お礼
こちらを使いたいと思います。 ありがとうございました。(^^)