[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『範囲を指定してマクロを実行したい』(mo-.-mo) セルで範囲を確定した後、線色の一括変更したいのですが、 過去の質問を参考にシート内の線色の一括変更までは出来ましたが、 範囲指定が出来ません、 調べていろいろ試しましたが・・・トホホ(基本が解ってないもので) お教え頂けませんでしょうか。
Sub 緑色に一括変換() Dim r As Range
For Each r In ActiveSheet.UsedRange With r If .Borders(xlEdgeLeft).LineStyle <> xlLineStyleNone Then .Borders(xlEdgeLeft).ColorIndex = 4 End If
If .Borders(xlEdgeTop).LineStyle <> xlLineStyleNone Then .Borders(xlEdgeTop).ColorIndex = 4 End If
If .Borders(xlEdgeBottom).LineStyle <> xlLineStyleNone Then .Borders(xlEdgeBottom).ColorIndex = 4 End If
If .Borders(xlEdgeRight).LineStyle <> xlLineStyleNone Then .Borders(xlEdgeRight).ColorIndex = 4 End If
End With Next r End Sub
>ActiveSheet.UsedRange 「アクティブシートの使用セル範囲」です。 この部分を指定したいセル範囲に置き換えます。 (MARBIN)
MARBINさん申し訳ありません、ど素人なので? セルで範囲を指定した後マクロ実行させたいのですが、出来ますでしょうか。 (mo-.-mo)
セル範囲を指定するにはいくつか方法があります。
直接選択する If TypeName(Selection) = "Range" Then MsgBox Selection.Address Else MsgBox "セルを選択してから実行してください。" End If
InputBoxで指定する
Dim rng As Range Set rng = Application.InputBox(prompt:=セル範囲を選択してください, Title:=セル指定, Type:=8) MsgBox rng.Address
RefEditコントロールで指定する (MARBIN)
MARBINさんがくわしく説明されているので試してみるのがよいと 思いますが、一応、「セル範囲を選択してから」マクロを実行と いうことであれば、For Each r In Selection でよさそうです。 (純丸)(o^-')b
MARBINさん 純丸さん 有り難うございます 新しいシートで試すとOKなのですが、 書き換えたい作成してあるシートで実行すると下記の表示が出ます、何が原因なのでしょうか?
border クラスの colorndex プロパティを設定出来ませんと出ます
Sub 緑色に一括変換() Dim r As Range For Each r In Selection
With r If .Borders(xlEdgeLeft).LineStyle <> xlLineStyleNone Then .Borders(xlEdgeLeft).ColorIndex = 4 End If
If .Borders(xlEdgeTop).LineStyle <> xlLineStyleNone Then .Borders(xlEdgeTop).ColorIndex = 4 End If
If .Borders(xlEdgeBottom).LineStyle <> xlLineStyleNone Then .Borders(xlEdgeBottom).ColorIndex = 4 End If
If .Borders(xlEdgeRight).LineStyle <> xlLineStyleNone Then .Borders(xlEdgeRight).ColorIndex = 4 End If
End With Next r End Sub
シートを保護していませんか? (MARBIN)
シートに保護がしてあります、ロックがかかている為解除出来ませんでした。 他の時に使用します、 皆様 有り難うございました。(mo-.-mo)
コードから保護解除、再保護、としては?
Activesheet.Unprotect '処理 Activesheet.Protect (MARBIN)
MARBINさん有り難うございます。 マクロで途中までは色が変わるのですが、 (実行時エラーで'1004' border クラスの colorndex プロパティを設定出来ません) になります、 その後マクロではなく、線色を一つずつ変えてみると (セルの書式が多すぎるため書式を追加できません) とメッセージが出ました、 この所が問題なのかとも思います、いろいろ有り難うございました。 (mo-.-mo)
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.