Excel VBA質問箱 IV

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

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


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

【19273】お世話になります うえ 04/10/27(水) 10:05 質問[未読]
【19281】Re:お世話になります Asaki 04/10/27(水) 11:50 発言[未読]
【19285】Re:お世話になります うえ 04/10/27(水) 13:06 発言[未読]
【19286】Re:お世話になります Asaki 04/10/27(水) 13:21 発言[未読]
【19287】Re:お世話になります うえ 04/10/27(水) 13:36 発言[未読]
【19288】Re:お世話になります Asaki 04/10/27(水) 13:43 回答[未読]
【19291】Re:お世話になります うえ 04/10/27(水) 14:02 発言[未読]
【19292】Re:お世話になります Asaki 04/10/27(水) 14:05 回答[未読]
【19298】Re:お世話になります Asaki 04/10/27(水) 17:36 回答[未読]
【19299】Re:お世話になります Asaki 04/10/27(水) 17:42 発言[未読]

【19273】お世話になります
質問  うえ  - 04/10/27(水) 10:05 -

引用なし
パスワード
   エクセル上の集計で(下をセルと見たててください)

ID Q1(マルチアンサー)
1  2
2  3.4.5
3  2.4     とある物を

ID Q1
1  2
2  3
2  4
2  5
3  2
3  4   のようにするには、VBAで出来ると聞いたような気がするのですがどうでし      ょうか?それとも別の方法がありますか?教えて下さい

【19281】Re:お世話になります
発言  Asaki  - 04/10/27(水) 11:50 -

引用なし
パスワード
   こんにちは。

できると思いますが、
ご自分でどの程度おやりになっていますか?

【19285】Re:お世話になります
発言  うえ  - 04/10/27(水) 13:06 -

引用なし
パスワード
   ▼Asaki さん:
>こんにちは。
>
>できると思いますが、
>ご自分でどの程度おやりになっていますか?

出来るのではないかと聞いただけで、何も施してはいません。
正直、初心者です。初心者には理解等の点で難しいでしょうか。

【19286】Re:お世話になります
発言  Asaki  - 04/10/27(水) 13:21 -

引用なし
パスワード
   >正直、初心者です。初心者には理解等の点で難しいでしょうか。
手作業でやるとすると、どのような手順になるか書き出せますか?
それをVBAの言葉(要するにプログラム)に置き換えていくだけですが。

【19287】Re:お世話になります
発言  うえ  - 04/10/27(水) 13:36 -

引用なし
パスワード
   ▼Asaki さん:
>>正直、初心者です。初心者には理解等の点で難しいでしょうか。
>手作業でやるとすると、どのような手順になるか書き出せますか?
>それをVBAの言葉(要するにプログラム)に置き換えていくだけですが。

手作業であれば、(複数回答2・5だったとした場合)

1.もし、セルに複数個数があれば、ID番号をそのままにして、2個セルを新規に確保す  る。(2・5をバラスために2つのセルが用意される)
2.3つのうち1番左の数字「2」はそのままにする
3.次の数字を用意した二つ目のセルに移す。

手作業であればこんな作業になると思いますが。いかがでしょうか?

【19288】Re:お世話になります
回答  Asaki  - 04/10/27(水) 13:43 -

引用なし
パスワード
   >2個セルを新規に確保
というのは、具体的にどうするのですか?

ところで、Excelのヴァージョンは何でしょうか?

【19291】Re:お世話になります
発言  うえ  - 04/10/27(水) 14:02 -

引用なし
パスワード
   ▼Asaki さん:
>>2個セルを新規に確保
>というのは、具体的にどうするのですか?
>
>ところで、Excelのヴァージョンは何でしょうか?

ID Q1          ID Q1
1  2          1  2  
2  1.5 であれば    2  1 にしたいので新規に確保するのは一個ですね
3  3          2  5
             3  3
(複数回答数マイナス1)個のセルを確保すれば良いと思うのですが。
エクセルは2000です

【19292】Re:お世話になります
回答  Asaki  - 04/10/27(水) 14:05 -

引用なし
パスワード
   ですから、
>確保
という言葉に該当する具体的な作業は?

【19298】Re:お世話になります
回答  Asaki  - 04/10/27(水) 17:36 -

引用なし
パスワード
   >ですから、
>>確保
>という言葉に該当する具体的な作業は?
行挿入
とかいう答えを期待してたんですが、答えていただけないようなので。

取り敢えず、速さは追求しません。(というより、遅いです)
データがA,B列にあって、1行目はタイトル行とします。
なお、エラー処理も特にしてません。
Sub test()
  Dim i      As Long
  Dim v      As Variant
  Dim j      As Long

  For i = Cells(65536, 1).Row To 2 Step -1
    v = Split(Cells(i, 2).Value, ",")
    j = UBound(v)
    If j > 0 Then
      Rows(i).Copy
      Rows(i).Resize(j).Insert Shift:=xlDown
      Cells(i, 2).Resize(j + 1).Value = WorksheetFunction.Transpose(v)
      Application.CutCopyMode = False
    End If
  Next i
End Sub

【19299】Re:お世話になります
発言  Asaki  - 04/10/27(水) 17:42 -

引用なし
パスワード
   区切り文字を カンマ にしていますから、違うものの場合は
>v = Split(Cells(i, 2).Value, ",")
の "," の中身を書き換えてください。

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