- 日時: 2012/06/06 18:59
- 名前: VBレスキュー(花ちゃん)
- ***********************************************************************************
* カテゴリー:[エクセル][][] * * キーワード:Excel VBA,Excel.Range,マクロ,エクセル,セルの文字色を設定,前景色 * *********************************************************************************** '=================================================================================================== '投 稿 日:2012.05.05 '投 稿 者:VBレスキュー(花ちゃん) 'タイトル:VB2010 から Excel のセルの文字色を設定 '========1=========2=========3=========4=========5=========6=========7=========8=========9=========0
Private Sub Button5_Click(sender As System.Object, e As System.EventArgs) Handles Button5.Click Call ExcelOpen("", "") '新規ファイルをオープンして、Excel を起動 '========================== セルの文字色を設定 ===============================
'-------------------- マクロの記録を取った場合 ---------------------------- '同じ色の場合 'ActiveCell.FormulaR1C1 = "あいうえお" 'Range("C2").Select() 'With Selection.Font ' .Color = -16776961 ' .TintAndShade = 0 'End With
'個別に指定する場合 'Range("E2").Select() 'ActiveCell.FormulaR1C1 = "あいうえお" 'With ActiveCell.Characters(Start:=3, Length:=1).Font ' .Color = -16776961 'End With '--------------------------------------------------------------------------
'指定セル内の文字色を全て赤色に設定 Dim xlRange As Excel.Range Dim xlFont As Excel.Font xlRange = xlSheet.Range("B2") xlRange.Value = "あいうえお" xlFont = xlRange.Font xlFont.Color = Color.Red MRComObject(xlFont) MRComObject(xlRange) '確認のために、1秒間表示しておく System.Threading.Thread.Sleep(1000)
'指定セル内の左から3文字目を赤色に設定 xlRange = xlSheet.Range("D2") xlRange.Value = "あいうえお" ' Debug.Print(TypeName(xlRange.Characters(Start:=3, Length:=1))) 'Characters 'Characters で s がついてはいるがデフォルトのプロパティがないので Dim xlCharacters As Excel.Characters xlCharacters = xlRange.Characters(Start:=3, Length:=1) xlFont = xlCharacters.Font xlFont.Color = Color.Red MRComObject(xlFont) MRComObject(xlCharacters) MRComObject(xlRange) '確認のために、1秒間表示しておく System.Threading.Thread.Sleep(1000)
'============================================================================= 'Excelファイルを上書き保存(True 又省略すれば)して終了処理を実行 Call ExcelClose(IO.Path.GetFullPath(".\Test.xlsx"), False) 'False の場合保存しないで終了 'Excel.EXE がタスクマネージャに残っていないか調査(実使用時は必要なし) Call ProcessCheck() End Sub
|