tagCANDY CGI VBレスキュー(花ちゃん) - VBレスキュー(花ちゃん)の投稿サンプル用掲示板 - Visual Basic 6.0 VB2005 VB2010
VB2005用トップページへVBレスキュー(花ちゃん)のトップページVB6.0用のトップページ
VBレスキュー(花ちゃん)の投稿サンプル用掲示板
     サンプル投稿用掲示板  VB2005 〜 用トップページ  VB6.0 用 トップページ
VB2010からExcelのセルの文字色を設定(VB.NET) ( No.7 )  [親スレッドへ]
日時: 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



 [スレッド一覧へ] [親スレッドへ]