Excel VBA質問箱 IV

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

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


7201 / 13644 ツリー ←次へ | 前へ→

【40448】ブック内のシートに連番をふりたい。 sacchi 06/7/13(木) 22:04 質問[未読]
【40451】Re:ブック内のシートに連番をふりたい。 kobasan 06/7/13(木) 23:47 回答[未読]
【40461】ほとんど遊びだけど...。 Jaka 06/7/14(金) 9:49 発言[未読]
【40571】Re:ブック内のシートに連番をふりたい。 sacchi 06/7/18(火) 12:35 お礼[未読]
【40575】Re:ブック内のシートに連番をふりたい。 Jaka 06/7/18(火) 13:30 発言[未読]

【40448】ブック内のシートに連番をふりたい。
質問  sacchi  - 06/7/13(木) 22:04 -

引用なし
パスワード
   最近、VBAで処理せざる得なくなった初心者です。
ここ4日間、本屋とネットでやり方をさがしているんですが、どうしてもうまくいきません。
どうかご存知のかたいらっしゃいましたら、ご教授ください。
お願いします。

以下の作業を同じブックの複数のシートで同時操作したいのですが、ForEach〜NEXTをくっつけたり色々やってはみるんですが駄目でした。

Sub AutoFill_1()

Worksheets("Sheet1").Select

Range("B1").Value = 1

Range("B1").AutoFill Destination:=Range("B1:B7"), Type:=xlFillSeries

End Sub

【40451】Re:ブック内のシートに連番をふりたい。
回答  kobasan  - 06/7/13(木) 23:47 -

引用なし
パスワード
   sacchi  今晩は。

>Sub AutoFill_1()
>
>Worksheets("Sheet1").Select
>
>Range("B1").Value = 1
>
>Range("B1").AutoFill Destination:=Range("B1:B7"), Type:=xlFillSeries
>
>End Sub

Sub Macro()
Dim w As Worksheet
For Each w In ThisWorkbook.Worksheets
  With w
    .Range("B1").Value = 1
    .Range("B2").Value = 2
    .Range("B1:B2").AutoFill Destination:=.Range("B1:B7"), Type:=xlFillDefault
  End With
Next
End Sub

これでどうですか。

【40461】ほとんど遊びだけど...。
発言  Jaka  - 06/7/14(金) 9:49 -

引用なし
パスワード
   Sheets.Select
Range("B1:B2").Select
Selection.Value = Application.Transpose(Array(1, 2))
Selection.AutoFill Destination:=Range("B1:B7"), Type:=xlFillDefault

【40571】Re:ブック内のシートに連番をふりたい。
お礼  sacchi  - 06/7/18(火) 12:35 -

引用なし
パスワード
   ご返答ありがとうございます。
またお礼のほう大変遅くなりまして申し訳ございません。

先ほど解決しました!
Sub seq_num()
  Dim i
  i = 2
  'Cells(i, 3) = 1
  Do While Cells(i, 2) <> ""
   If Cells(i - 1, 2) <> Cells(i, 2) Then
    Cells(i, 3) = 1   'cells(行,列)
   Else
    num = Cells(i - 1, 3) + 1
    Cells(i, 3) = num
   End If
  i = i + 1
  Loop
End Sub

最初に複数シートを1枚にして、隣のセルを参照しながら連番を振る形にしました。

お二人のご返答が大変参考になりました。
また質問することがあると思います。
そのときにはどうかよろしくお願いいたします。

【40575】Re:ブック内のシートに連番をふりたい。
発言  Jaka  - 06/7/18(火) 13:30 -

引用なし
パスワード
   今ごろですが、連番振るだけならこっちの方が速いです。
(フィルと変わらないと思うけど)
注)Range("B2").End(xlDown)の扱いが解っているとして

連番ステップ数 = 10
Range("C2").Value = 1 '初期番号
Range("B2", Range("B2").End(xlDown)).Offset(, 1).DataSeries _
    Rowcol:=xlColumns, Step:=連番ステップ数

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