Q&A
解決済み

【Excel】VBAを利用した行のシャッフルを教えてください🙏

Yurane
Yuraneさん
レギュラー

Y. Daemonさんのコメント
ベストアンサー
ベストアンサー

iPhone XR(mineo(au)) medal ベストアンサー獲得数 35 件

mineo-vba2.png

>>4 Yuraneさん

こんにちは😊
With を使うことができます。
これは、Sheet2 にCommandButtun1 を作ってSheet1を操作します。
With ~ End With までの命令で、「.」を最初に付けると、
Sheets("Sheet1").
が最初に付いているものと同じ意味になります。

Private Sub CommandButton1_Click()

With Sheets("Sheet1") 'With入れます

Dim n As Integer
n = .Cells(Rows.Count, 1).End(xlUp).Row '.Cells で使っています

.Range("C1").EntireColumn.Insert xlShiftToRight '.Rangeで使っています

Dim i As Integer
For i = 2 To n
.Range("C" & i) = "=Rand()" ' .Rangeで使っています
Next i

'次の文は、最初の .Range と引数Key1の.Range で使っています
.Range("A2", "C" & n).EntireColumn.Sort Key1:=.Range("C2", "C" & n), Header:=xlYes


.Range("C1").EntireColumn.Delete '.Rangeで使っています

End With 'ここでWith終わりです

End Sub
ベストアンサー この回答はベストアンサーに選ばれました。
  • 9