Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


19690 / 76732 ←次へ | 前へ→

【62470】Re:選択範囲内で中央の選択範囲の取得
質問  ON  - 09/7/23(木) 14:13 -

引用なし
パスワード
   >デバッグしながら、闇雲アプローチで

>わかりにくいと思いますが
>この辺の考え方アドバイス頂けると嬉しいです


訳のわからない書き込みん申し訳ありませんでした

再現出来ずに申し訳ないのですが
ももさんにご提示頂いたコードで

 ElseIf flgStyle Then
  Set rngBuf = Application.Union(rngBuf, c)

オブジェクト Is Nothing エラー みたいなことがありました

動作確認とエラー回避のため、下のような修正を行いました

で、下記Qが出てしまいました

Q1
'←コレ2
で、セルの背景色がピンクになる場合はどのようなときでしょうか

Q2
再現できないエラーで申し訳ないのですが
'←コレ1 で 回避したエラー処理は、不適切でしょうか

Q3
'←コレ1 と '←コレ2
とは、重複しているような気もしますがどうなんでしょう


アドバイスあればよろしくお願いいたします


Option Explicit


Sub test2()

Dim rngBuf As Range, c As Range
Dim flgStyle
Dim flgValue

For Each c In Selection

 flgStyle = (c.HorizontalAlignment = xlCenterAcrossSelection)
 flgValue = (c.Value <> "")
 
 If flgStyle And flgValue Then
 
  If rngBuf Is Nothing Then
   Set rngBuf = c
  Else
   Debug.Print rngBuf.Address
   rngBuf.Interior.ColorIndex = 43 '緑
   Set rngBuf = c
  End If
  
 ElseIf flgStyle Then
 
  'Set rngBuf = Application.Union(rngBuf, c)
 
  'On Error Resume Next
  'Set rngBuf = Application.Union(rngBuf, c)
  'On Error GoTo 0
  
  'If rngBuf IsNot Nothing Then  'NG
  '  Set rngBuf = Application.Union(rngBuf, c)
  'End If
  
  If Not rngBuf Is Nothing Then
    Set rngBuf = Application.Union(rngBuf, c)  '←コレ1
  End If
  
  
 ElseIf Not rngBuf Is Nothing Then
  Debug.Print rngBuf.Address
  rngBuf.Interior.ColorIndex = 6 '黄
  Set rngBuf = Nothing
 End If
 
Next c

If Not rngBuf Is Nothing Then  '←コレ2
 Debug.Print rngBuf.Address
 rngBuf.Interior.ColorIndex = 38 'ピンク
 Set rngBuf = Nothing
End If

End Sub


サンプルDT増やしてみました

Sub SET_DT3()

  Range("B2").Value = ">゜))))彡   魚"
  Range("B2:D2").HorizontalAlignment = xlCenterAcrossSelection
  
  Range("F2").Value = ">゜))))彡2   魚"
  Range("F2:H2").HorizontalAlignment = xlCenterAcrossSelection

  Range("B4").Value = "くコ:彡   いか"
  Range("B4:D4").HorizontalAlignment = xlCenterAcrossSelection
 
  Range("E4").Value = "~ >゜)〜〜〜    へび"
  Range("E4:H4").HorizontalAlignment = xlCenterAcrossSelection
  
 
  Range("B2:H4").Copy
  Range("B8").PasteSpecial
  Range("D14").PasteSpecial
  Application.CutCopyMode = False
  
  Range("B1:J17").Select
  
 
End Sub

107 hits

【62416】選択範囲内で中央の選択範囲の取得 ON 09/7/21(火) 16:27 質問
【62418】Re:選択範囲内で中央の選択範囲の取得 つるりん 09/7/21(火) 17:01 発言
【62419】Re:選択範囲内で中央の選択範囲の取得 ON 09/7/21(火) 17:10 発言
【62420】Re:選択範囲内で中央の選択範囲の取得 つるりん 09/7/21(火) 17:23 回答
【62426】Re:選択範囲内で中央の選択範囲の取得 ON 09/7/21(火) 17:50 発言
【62427】Re:選択範囲内で中央の選択範囲の取得 つるりん 09/7/21(火) 18:32 回答
【62428】Re:選択範囲内で中央の選択範囲の取得 ON 09/7/21(火) 18:48 発言
【62429】Re:選択範囲内で中央の選択範囲の取得 つるりん 09/7/21(火) 20:32 回答
【62437】Re:選択範囲内で中央の選択範囲の取得 ON 09/7/22(水) 15:16 発言
【62439】Re:選択範囲内で中央の選択範囲の取得 ON 09/7/22(水) 15:51 発言
【62442】Re:選択範囲内で中央の選択範囲の取得 つるりん 09/7/22(水) 16:39 発言
【62443】Re:選択範囲内で中央の選択範囲の取得 つるりん 09/7/22(水) 16:44 発言
【62446】Re:選択範囲内で中央の選択範囲の取得 つるりん 09/7/22(水) 17:00 回答
【62447】Re:選択範囲内で中央の選択範囲の取得 ON 09/7/22(水) 17:12 発言
【62451】Re:選択範囲内で中央の選択範囲の取得 ON 09/7/22(水) 18:12 お礼
【62425】Re:選択範囲内で中央の選択範囲の取得 つるりん 09/7/21(火) 17:45 回答
【62452】Re:選択範囲内で中央の選択範囲の取得 もも 09/7/22(水) 18:35 発言
【62455】Re:選択範囲内で中央の選択範囲の取得 つるりん 09/7/22(水) 19:31 発言
【62456】Re:選択範囲内で中央の選択範囲の取得 ON 09/7/22(水) 19:38 お礼
【62470】Re:選択範囲内で中央の選択範囲の取得 ON 09/7/23(木) 14:13 質問

19690 / 76732 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free