advanced help
per page, with , order by , clip by
Results of 1 - 1 of about 19646 for 20�����������������������... (0.004 sec.)
[[20051031114136]]
#score: 2682
@digest: 85ad68b1f51cce26a9166c11c91f035c
@id: 17899
@mdate: 2005-10-31T23:36:29Z
@size: 5891
@type: text/plain
#keywords: 空行 (4063), data (3531), insert (3427), リキ (3125), ・4 (2973), xldown (2947), キリ (2908), 謝! (2783), 純丸 (2584), ・5 (2387), キさ (1935), 業務 (1717), 丸さ (1635), 累計 (1481), 数量 (1353), shift (1258), elseif (1216), 検証 (1119), 上下 (1113), 注文 (1001), until (980), cells (953), 白行 (934), integer (864), の間 (833), 挿入 (751), 如何 (750), ・・ (686), 感謝 (632), ) ( (621), rows (569), 連続 (553)
『条件になったら、行の挿入』(きぃ)
はじめまして。 すみませんが、どなたか教えて下さい。 注文の商品名と注文数の入った一覧表があります。その、数量が上から累計して20になったら 、1行の空行を挿入したいのですが、何か方法があれば教えて下さい。 宜しくお願い致します。 エクセルバージョン Excel2000 OSのバージョン Windows2000 です。 --------- この質問では、どこに行を挿入したいのか、わかりません。 もう少し、具体的に例示してください。(ダイ) ダイさん、すみませんでした。具体例を例示致します。 A(品名) B(数量) 1 りんご 15 2 みかん 4 3 バナナ 1 4 メロン 3 5 ぶどう 17 6 いちご 5 7 ・ ・ ・ と、あります。 条件としては、上から数えて合計が20になる毎に、空行の列を挿入したいのです。 例の場合では、3・4列の間と、4・5列の間に、入れたいのです。 説明が下手で、申し訳ございません・・・・ 宜しくお願い致します。 ---- >例の場合では、3・4列の間と、4・5列の間に、入れたいのです。 3・4列の間 15+4+1 = 20 4・5列の間 3 = 3 ??? もう一つ >上から数えて合計が20になる毎に そんなに都合よく、「20」になるように並んでいるのでしょうか? 「20」を跨いだ場合は、どうするのでしょう? (キリキ)(〃⌒o⌒)b 何度も、すみません・・・ 例の場合、間違えていました・・・ 3・4の間と、5・6の間の間違いです・・・。 あと、正確には20以下になると一列の空行が欲しいので、累計で19・23 のようになった時は、累計19の後に一行入れたいのです。 説明足らずですみませんでした。 度々、申し訳ございませんが、宜しくお願い致します・・・。 ---- こんな感じで如何でしょう? 1)Alt + F11 で、「Microsoft Visual Basic」を出す。 2)挿入 → 標準モジュール 3)出てきた画面に下記コードをコピペ 4)エクセル画面に戻り、Alt + F8 で「test」を実行 標準モジュールへコピペ '---------------- Sub test() Dim i As Long Dim data As Integer i = 1 '数量が2行目からなら、ここを2に変更 Do Until Cells(i, 2) = "" data = data + Cells(i, 2) If data > 20 Then data = 0 Rows(i).Insert Shift:=xlDown End If i = i + 1 Loop End Sub ※1行目から、数量が入っているものとしてます。 2行目からの場合は、変数 i を変更してください。 ※元に戻せませんので、新しく名前を付けるなどして別ファイルでお試しください。 (キリキ)(〃⌒o⌒)b キリキさん、 早々の御回答ありがとうございます!! とても分かりやすいご説明で、初心者の私でもマクロの登録出来ました!(涙) そして、空行の追加も出来ました! すごく助かります。本当にありがとうございました〜!(^o^)丿 早速、明日からの業務で使用させて頂きます!! ---- 解決済みのところ申し訳ありません。業務上は無いとは思いますが、 もしB列に21以上の数字があるとデータの最下行が65536に達するまで ループしてしまうようなので注意が必要と思います。 キリキさん、改訂版をお願いします。 (純丸)(o^-')b ---- 純丸さんありがとうございます。 業務で数量30のものもあり、純丸さんの現象が起こりました。 すみませんが、キリキさん、宜しくお願い致します。 (きぃ) ---- ひぇ〜!! 大変失礼しました。。。 純丸さん、いつもありがとうございます。 感謝!感謝! きぃさん、本当に失礼しましたm(_ _)m こちらと、差し替えてみてください。 '--------------- Sub test() Dim i As Integer Dim data As Long i = 2 Do data = data + Cells(i, 2) If Cells(i, 2) >= 20 Or data = 20 Then i = i + 1 Rows(i).Insert shift:=xlDown data = 0 ElseIf data > 20 Then Rows(i).Insert shift:=xlDown data = 0 End If i = i + 1 Loop Until Cells(i, 2) = "" End Sub 今度は大丈夫かな・・・? (キリキ)(;⌒o⌒)b ---- 21以上の数字ががあった場合、その上下に空白行が付くと思うのですが、 キリキさんのコードでは上側が空白行にならず、上方からの 数字と連続してしまいますね。検証ばかりでは何なので、 自分で考え、キリキさんのコードを一部変更してみましたが、 これできぃさんの要望通りになりますか? (純丸)(o^-')b Sub test() Dim i As Integer Dim data As Long i = 2 Do data = data + Cells(i, 2) If Cells(i, 2) >= 20 Then Rows(i).Insert shift:=xlDown i = i + 2 Rows(i).Insert shift:=xlDown data = 0 ElseIf data > 20 Then Rows(i).Insert shift:=xlDown data = 0 End If i = i + 1 Loop Until Cells(i, 2) = "" End Sub ---- 何だか楽しくなってきました! 純丸さんに、リベンジ〜♪ 20以上の数字が連続した場合、上下の空白(2個分)が出来てしまいますね〜♪ 更に、一番上に20以上があったら空白は必要無いような気がしたので、 少し編集してみました。 如何でしょう? '--------------- Sub test() Dim i As Long Dim data As Integer i = 2 If Cells(i, 2) >= 20 Then data = Cells(i, 2) i = i + 1 End If Do data = data + Cells(i, 2) If Cells(i, 2) >= 20 Then Rows(i).Insert shift:=xlDown i = i + 1 data = Cells(i, 2) ElseIf data = 20 Then i = i + 1 Rows(i).Insert shift:=xlDown i = i + 1 data = Cells(i, 2) ElseIf data > 20 Then Rows(i).Insert shift:=xlDown data = Cells(i, 2) End If i = i + 1 Loop Until Cells(i, 2) = "" End Sub (キリキ)(〃⌒o⌒)b ---- 自分のコードの検証は甘くなるなぁ〜。 □\(__;)...ハンセイ キリキさん、お疲れ様でした。完璧と思います。検証合戦?終了〜 (純丸)(o^-')b ---- お返事遅れて、申し訳ございません・・・ キリキさん、純丸さん、本当にありがとうございました!! 早速、試してみました所、結果の出る早さに、驚きでいっぱいです!! 本日の業務から早速、活用させていただきます!! 以前から、「エクセルの学校」は『新・単語検索』で活用させて頂いておりましたが、今回初めて質問させて 頂きました。キリキさん、純丸さん、色々検証頂きましたこと、本当に感謝いたします。 今後も、分からない事を質問させて頂くこともあると思いますが、どうか宜しくお願い致します。 (きぃ) ...
http://www.excel.studio-kazu.jp/wiki/kazuwiki/200510/20051031114136.txt - [detail] - similar
PREV NEXT
Powered by Hyper Estraier 1.4.13, with 97017 documents and 608144 words.

訪問者:カウンタValid HTML 4.01 Transitional