3

選択したセルのセルを 1 つのセルにマージする方法、選択したセルの数はさまざまですが、5 セル以上の場合もありますが、すべてのセルは A1、A2、A3 などのように連続します 。マクロでエクセル? しかし、選択したセルに対して上記のリンクの回答を使用するにはどうすればよいですか。私はExcel 2007を使用しているので、圧縮可能なコードだと思います。

4

3 に答える 3

2

これでうまくいくはずだと思います。基本的に範囲変数を使用して選択を処理します。次に、選択したセルの値で配列を埋めます。CSV は結果を含む変数です。

ここでselectedCellsは変数であり、Excel の特別な関数ではないことに注意してください。

[このコードは Excel 2002 で機能しました - 他のバージョンでは不明です。]

Dim selectedCells As Range
Dim rng As Range
Dim i As Integer
Dim values() As String
Dim CSV As String

' you may need some error handling here in case your selection
' isn't a range
Set selectedCells = Selection

ReDim values(selectedCells.Count - 1)

i = 0
For Each rng In selectedCells
  ' you may want some error handling here when populating the array
  values(i) = CStr(rng.Value)
  i = i + 1
Next rng

CSV = Join(values, ",")
于 2012-04-07T21:16:12.520 に答える