Excel VBA質問箱 IV

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

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


9609 / 76734 ←次へ | 前へ→

【72686】Re:異なった内容のDo Loop を続けて使用する場合
発言  kanabun  - 12/9/5(水) 17:29 -

引用なし
パスワード
   ▼はってんちゅう さん:

>ちなみに、Do Loop系のものは、私が最初に書いたように連続して
>使用はできないということでしょうか。

Try2() の For〜Next Sampleを そのままDo〜Loopにすることはできます。
ただ、Loopの終了値があらかじめ分かっているばあいは
For〜Nextのほうがスマートですけど。

Sub DoLoop_Sample()
 Dim j As Long
 Dim sNew As String
 Dim sOld As String

'ユニット毎合計作る
  If MsgBox("ユニット別合計を作成しまぁす ☆ ", vbOKCancel) _
   = vbCancel Then
     MsgBox "中止しました"
     Exit Sub
  End If
 
  j = Cells(8, Columns.Count).End(xlToLeft).Column '8行目の最終列番号
  Do
    sNew = Cells(8, j).Value
    If sOld <> sNew Then
      sOld = sNew
      Columns(j + 2).Insert
    End If
    j = j - 2 '2列 左へ
  Loop Until j <= 2
  
End Sub

>
>私の方法が間違っている理由がお判りでしたら、教えていただけますか。

結局、i=4 で第1回目のLoopをはじめ、
 2列づつ調べていって ある列が "SY-A" で
 (i+2)列目が "SY-F" のとき i+2列目を挿入しますよね?
そうすると、つぎの「ある列が "SY-F" で (その+2列目)が "SR-B" である」
ような列は 1列挿入しているから、偶数列ではなく、奇数列になりますよね?

このように 行挿入すると、最初の番号関係がダイナミックに変わっていくので
単純にはいかないのです。

2 hits

【72680】異なった内容のDo Loop を続けて使用する場合 はってんちゅう 12/9/5(水) 11:22 質問
【72681】Re:異なった内容のDo Loop を続けて使用す... kanabun 12/9/5(水) 11:45 発言
【72682】Re:異なった内容のDo Loop を続けて使用す... kanabun 12/9/5(水) 11:55 発言
【72683】Re:異なった内容のDo Loop を続けて使用す... はってんちゅう 12/9/5(水) 14:04 質問
【72684】Re:異なった内容のDo Loop を続けて使用す... kanabun 12/9/5(水) 14:27 発言
【72685】Re:異なった内容のDo Loop を続けて使用す... はってんちゅう 12/9/5(水) 14:45 質問
【72686】Re:異なった内容のDo Loop を続けて使用す... kanabun 12/9/5(水) 17:29 発言
【72687】Re:異なった内容のDo Loop を続けて使用す... kanabun 12/9/5(水) 18:49 発言
【72688】Re:異なった内容のDo Loop を続けて使用す... はってんちゅう 12/9/5(水) 19:41 お礼
【72692】Re:異なった内容のDo Loop を続けて使用す... kanabun 12/9/5(水) 21:54 発言
【72693】Re:異なった内容のDo Loop を続けて使用す... はってんちゅう 12/9/6(木) 9:39 お礼

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