これは奇妙ですが、第1行の出力と第2行の出力&の出力には違いがあります。行641 & 641がR1C1形式で欠落していることに注意してください。range.AddressとRange.Address(,, xlR1c1)の差異
ヒント?
PS:読みやすくするためにスペースを手動で追加しました。
Debug.Print rngVisibleRange.Address
$ A $ 1:$ XEW $ 1、$ A $ 226:$ XEW $ 226 $ A $ 239:$ XEW $ 239 $ A $ 370:$ XEW $ 370 $ A $ 373:$ XEW $ 374 $ A $ 462:$ XEW $ 462、$ A $ 474:$ XEW $ 474、$ A $ 479:$ XEW $ 481、$ A $ 491:$ XEW $ 491、$ A $ 523:$ XEW $ 524、$ A $ 560:$ XEW $ 560、$ A $ 582 :$ XEW $ 584 $ A $ 590:$ XEW $ 591 $ A $ 637:$ XEW $ 639 $ A $ 641:$ XEW $ 643 $ A $ 648:$ XEW $ 648
Debug.Print rngVisibleRange.Address(, , xlR1C1)
R1C1:R1C16377 R276C1:R226C1:R462C16377、R474C1:R474C16377、R474C16377、 R479C1:R481C16377、R491C1:R491C16377、R523C1:R524C16377、R560C1:R560C16377、R582C1:R584C16377、R590C1:R591C16377、R637C1:R639C16377
検証可能例:これは希望の場合
Public Sub test()
Dim r As Range
Set r = [A1:XEW1,A226:XEW226,A239:XEW239,A370:XEW370,A373:XEW374,A462:XEW462,A474:XEW474,A479:XEW481,A491:XEW491,A523:XEW524,A560:XEW560,A582:XEW584,A590:XEW591,A637:XEW639,A641:XEW643,A648:XEW648]
Debug.Print r.Areas.Count ' 16
Debug.Print UBound(Split(r.Address, ",")) ' 15
Debug.Print UBound(Split(r.Address(0, 0), ",")) ' 15
Debug.Print UBound(Split(r.Address(, , xlR1C1), ",")) ' 13 (2 areas missing)
End Sub
おそらく、 'String'の最大長255を渡していますか?より短い範囲を試してみるか、上記の範囲から最初の4つの範囲を削除し、それが正しく表示されるかどうか確認してください。 –
@ShaiRado、私はdebug.printを使ってコンソールに表示しています。 –
@avdheshmaurya私はあなたが気にしないことを願っています。私はちょうどあなたの記事に問題を再現するための小さな証明可能な例を追加しました。 – Ralph