|
▼Ex初心者 さん:
こんにちは、初めての機能を使うときはそれ単独で動作確認をすると
良く内容が理解できると思います。Msgboxの利用が有効かも
新しいBOOKの標準モジュールに以下のマクロを貼り付け実行してから
各シートのA1セルを確認してみてください。
Sub test()
Dim mySheet As Worksheet
For Each mySheet In Worksheets
'>〜
'>内
mySheet.Range("A1").Value = mySheet.Name
'>容
'>〜
Next mySheet
End Sub
>度々の質問失礼します。
>
>超初心者様のお陰で、マクロは無事に完成したのですが
>それを複数のシートにて実行したいのですがどうすればいいでしょうか?
>
>シート名は1,2,3・・・40までありましてその後 1〜40までのデータをまとめるシートが用意されている状態です
>
>この1〜40のシートにて一度にマクロを実行させたいのです
>手動で40シート分でもいいのですが、できればスマートにしたいなぁと思ったもので・・・
>
>中身は、超初心者さんのものを使わせて頂きました!
>
>Sub sub_sampleple()
> Dim myB2 As Integer
> Dim myMOVE As Boolean
> Dim myRow As Long
> Dim myRowMax As Long
> Dim myCnt As Long
>
> '第一条件の判定
> Select Case Range("B2").Value
> Case "あ", "い", "う"
> myB2 = 1
> Case "え", "お"
> myB2 = 2
> End Select
>
> myRow = 3 'B3から
> myRowMax = 20 'B20までをチェック
> Do
> '第二条件の判定
> Select Case Cells(myRow, 2).Value
> Case 1, 11, 20
> myMOVE = (myB2 = 1)
> Case 50, 100
> myMOVE = (myB2 = 2)
> Case Else
> myMOVE = False
> End Select
>
> '移動処理
> If myMOVE Then
> Rows(myRow).Cut
> Rows(30 + myCnt).Insert Shift:=xlDown '30行目に挿入
> Rows(30 - 1).Insert Shift:=xlDown
> myCnt = myCnt + 1
> myRowMax = myRowMax - 1
> Else
> myRow = myRow + 1
> End If
> Loop Until myRow > myRowMax
>
>End Sub
>
>これを1〜40までのシート内を一気に実行は可能なのでしょうか?
>
>Dim mySheet As Worksheet
>For Each mySheet In Worksheets
>〜
>内
>容
>〜
>Next mySheet
>
>これを改良する感じなのでしょうか?
>度々申し訳ありませんが、再度お知恵をお貸しください
|
|