- 締切済み
エクセルVBA セルの抽出とコントロール
エクセルVBAについての質問です。 結論から言いますと、添付ファイルのエクセルシートで以下の処理をしたいです。 1.「有無」の列の内容を判断し、「有」となっているもののみ、 E列に表示。 2.このままだと、抽出結果の行が飛び飛びになってしまう。 たとえば、「福利厚生費」の下は「荷造運賃発送費」となるが、間に3行 空いてしまう。これをしっかりくっつける形で処理されるようにしたい。 ※データ並び替えの機能を使えばできるように思うが、そうすると50音順等になってしまうのでできない。 3.販売管理費抽出のコントロールボタンを押せば、上記の処理がなされるようにしたい。 以上です。VBAの教科書をあさってみましたが、どうも応用の仕方が分かりませんでした。 お忙しいところまことに恐れ入りますが、ご検討の程お願いします。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- hige_082
- ベストアンサー率50% (379/747)
一例です Sub test() Dim i As Long For i = 2 To Cells(Rows.Count, 1).End(xlUp).Row If Cells(i, 1).Value = "有" Then Cells(Rows.Count, 4).End(xlUp).Offset(1, 0).Value = Cells(i, 2).Value Next i End Sub こんな方法も有るんだ程度で
- kenpon24
- ベストアンサー率64% (66/102)
Dim i As Long Dim dest As Long dest = 2 '書き込み開始行 For i = 2 To Range("A2").End(xlDown).Row '2行目から最終行まで If Range("A" & i) = "有" Then Range("E" & dest) = Range("B" & i) '勘定科目をE列に入力 dest = dest + 1 '書き込み先の行を1加える End If Next i これで実現できると思います
お礼
ご親切、かつ丁寧な回答をいただき、まことに有難うございました。 本当に助かりました。
お礼
すごい!!! マジ助かります。本当にありがとう^^。 感謝致します。