merlionXXのプロフィール
- ベストアンサー数
- 1930
- ベストアンサー率
- 48%
- お礼率
- 93%
こんにちは、merlionXXです。 (*'∇')/゜
- 登録日2005/03/04
- 職業会社員
- エクセル2003のVBAで列を指定
エクセルで特定の列の2~10行目に対して、ある作業をする場合、列を指定する方法は以下のどれがいいでしょうか?あるいはもっといい方法があれば教えてください。 実際には列は約40列(固定)、行は1~2万行(変動)程度で、作業はもっと複雑です。 Sub test01() Dim col Dim i As Long, n As Long For Each col In Array(1, 3, 7, 8, 11) '列番号で指定 For i = 2 To 10 n = n + 1 Cells(i, col).Value = n Next i Next col End Sub Sub test02() Dim col Dim i As Long, n As Long For Each col In Array("A", "C", "G", "H", "K") '列の記号で指定 For i = 2 To 10 n = n + 1 Cells(i, col).Value = n Next i Next col End Sub Sub test03() Dim col Dim i As Long, n As Long For Each col In Range("A2,C2,G2,H2,K2") 'セルで指定 For i = 2 To 10 n = n + 1 col.Offset(i - 2).Value = n Next i Next col End Sub
- ベストアンサー
- その他MS Office製品
- emaxemax
- 回答数6
- VBAでオプションボタンを透過
ワークシート上にOLEオブジェクトのオプションボタンを設置するため、以下のようなマクロを書きました。 意図したように作動するのですが、一箇所だけ不具合があります。 .Object.BackStyle = fmBackStyleTransparent と、透過に設定してるのですが透過してくれません。(エラーにもなりません。) どこがおかしいのでしょうか? Sub test02() Dim n As Long, i As Long Dim myRng As Range With ActiveSheet For n = 3 To 5 For i = 3 To 10 Set myRng = .Cells(i, n) Set opt = .OLEObjects.Add(ClassType:="Forms.OptionButton.1", _ Left:=myRng.Left + 2, Top:=myRng.Top + 2, Width:=myRng.Width * 0.8, Height:=myRng.Height * 0.9) opt.LinkedCell = myRng.Offset(, 4).Address opt.Object.Value = False opt.Object.GroupName = "OptG" & i opt.Object.Caption = Choose(n - 2, "Yes", "No", "N/A") opt.Object.BackStyle = fmBackStyleTransparent Next i Next n End With End Sub
- ベストアンサー
- その他MS Office製品
- emaxemax
- 回答数2
- VBAでオプションボタンの設定
ワークシート上にOLEオブジェクトのオプションボタンを配置して、LinkedCellを設定し、同一行でGroupName を設定し、Caption をYesとNoにしようと思いました。 ところが、以下のコードですと、GroupName とCaption がエラーになってしまいます。 どのように直せばいいのでしょうか? エクセル2003です。 Sub test01() Dim n As Long, i As Long With ActiveSheet For n = 1 To 2 For i = 1 To 3 Set opt = .OLEObjects.Add(ClassType:="Forms.OptionButton.1", _ Left:=.Cells(i, n).Left, Top:=.Cells(i, n).Top, Width:=50, Height:=18) opt.LinkedCell = .Cells(i, n).Offset(, 4).Address ' opt.GroupName = "OptG" & i ' opt.Caption = IIf(n = 1, "Yes", "No") Next i Next n End With End Sub
- ベストアンサー
- その他MS Office製品
- emaxemax
- 回答数2
- excel 串刺しセルの値を列に並べる
excel2000を利用しています。 シートが10枚以上あるexcelブックがあるのですが、これらのシートのフォーマットは全て同じで、値がそ れぞれ独自に入っています。 一番左側のsheet1は無地です。 そして、左から2sheet目以降の全てのシートで、それぞれ 指定セル を sheet1のA列に縦にデータを保管したいです。 そして、同様にまた違う指定セルをB列、また違うセルをC列・・・・ といった具合で全シートの複数の項目をsheet1にリスト形式でまとめたいです。 どうかご教授をお願いいたします。
- VBAでのファイル削除処理
excelの表の第一列目にファイル名が複数(数は任意)かかれたリストがあるとします.この表を表Aと呼ぶことにします. 別にフォルダーがあり,そのフォルダーの中に複数(任意)のファイルが入っているとします.このフォルダーをフォルダーBとします. 次の処理を行うプログラムを考えていますが,VBAで可能でしょうか.できるとすれば,基本的な部分だけでも教えて頂ければありがたいのですが. フォルダーBを指定して,さらに表Aに書かれているxlsファイルを指定して,Bに書かれているファイル名の中に表Aに書かれたファイル名が一致するものがあれば,ファオルダーBの中から削除する.
- ベストアンサー
- その他MS Office製品
- noname#178429
- 回答数3