ka_na_de の回答履歴
- [EXCEL]AVERAGEでブランクを飛ばした計算式
みなさん、こんばんは。 [EXCEL]AVERAGEでブランクを飛ばした計算式を教えてください。 よろしくお願いします。 まず A列1~13に 10 20 30 40 50 60 (空白/ブランク) 10 20 30 40 50 60 と数字が入っています。 B列6行に =IF(A6="","",AVERAGE(A1:A6))と式を入れ、この式をB列13まで延ばすと、 B列6~13は 35 38 36 34 32 30 35 となります。 私の希望は7行目のブランクを無視して数字があるところだけを指定範囲(今回は範囲は6行)計算したいのです。 結果としてB列6~13は 35 35 35 35 35 35 35 となるのが希望です。 B列6、13は、連続していますので、そのままの平均なので35ですが、 他はブランクがありますので、そのブランク1つ分を計算範囲に入れず、 範囲先頭部分をひとつ増やして計算させたいのです。 B列8ならA7を除く、A2~A6,A8の平均(AVERAGE(A2:A6,A8)) B列10ならA7を除く、A4~A6,A8~A10の平均(AVERAGE(A4:A6,A8:A10)) という感じにです。 よろしくお願いします。
- マクロVBAで連番を作成するには?
Excel2003です。 VBAを使って、(L,2)から連番を作成し、一列目の値が変化したら(Aの次がBになる)また(L,2)から10からの連番をふりなおす方法を教えてください。 また、オートフィルで列を増やしても同じ動作が起こるようにする方法も、わかったら教えていただけると助かります。よろしくお願いします。
- 締切済み
- オフィス系ソフト
- noname#41451
- 回答数3
- マクロVBAで連番を作成するには?
Excel2003です。 VBAを使って、(L,2)から連番を作成し、一列目の値が変化したら(Aの次がBになる)また(L,2)から10からの連番をふりなおす方法を教えてください。 また、オートフィルで列を増やしても同じ動作が起こるようにする方法も、わかったら教えていただけると助かります。よろしくお願いします。
- 締切済み
- オフィス系ソフト
- noname#41451
- 回答数3
- エクセルのマクロでセルを自動的にクリアにする方法
(休日登録) A20~25セルを”休日”と定義 A20に9/3と入っているとします。 (シート) A B C 1 日付 曜日 合計時間 2 9/1 (金) 8:30 3 9/2 (土) 8:00 ←この日が休日だとすると・・・ 4 9/3 休 ←自動で休みと入るようにしてあります。 このようなシート入力があるとして 休日を9/3と登録し、入力規則のユーザー設定で =COUNTIF(休日,A4)=0と入力し休日を判定して 休日のC4セルには入力不可に設定してあります。 ところが、9/2も休日だとあとで分かり、9/2もA21のセルに休日として追加したとします。 しかし、9/2のC3セルにはあらかじめ数字が入っているため、休日に変更しても 数字は残ってしまいます。 これをマクロの機能を使って、曜日欄が休日となったら 自動的にC3セルを自動クリアにするというような事は出来ませんか? それかマクロを使わなくても可能であれば宜しくお願いします。
- ベストアンサー
- オフィス系ソフト
- level42195
- 回答数2
- マクロVBAで連番を作成するには?
Excel2003です。 VBAを使って、(L,2)から連番を作成し、一列目の値が変化したら(Aの次がBになる)また(L,2)から10からの連番をふりなおす方法を教えてください。 また、オートフィルで列を増やしても同じ動作が起こるようにする方法も、わかったら教えていただけると助かります。よろしくお願いします。
- 締切済み
- オフィス系ソフト
- noname#41451
- 回答数3
- 一覧表から一行ごとのデータを別ブックに保存するには?
あまり使用頻度はないかもしれませんが・・・・ (例) ○元になる一覧表のブック(BOOK_1.xls) 1行目:項目 (A1:一連番号 B1:氏名 C1:住所) 2行目:データ1(A2:1 B2:山田太郎 C2:東京都) 3行目:データ2(A3:2 B3:山田次郎 C3:大阪府) ・ ・ 以降10行目まで同様のデータが入っているとします。 上記のファイルから ○あらかじめ決められた単票形式のブック(FORMAT.xls) A1:一連番号(文字列) B1:空白 A2:氏名(文字列) B2:空白 A3:住所(文字列) B3:空白 を呼び出し ○BOOK_1.xlsの一行目の項目のデータを FORMAT.xlsの B1 B2 B3 の空白部分にコピーペーストし ○BOOK_1.xlsのA2の一連番号の数字をファイル名として取得 し"1.xls"として新規保存をする。 ○そのあとは10行目までその作業を繰り返し、1.xlsから10.xls というファイルを10個作成し終了する 以上のようなことが可能でしょうか? 実際は列数は30程度、行数が1500行程度あり、1500ほどの ファイルができるようになるんですけど・・・。 よろしくおねがいします。
- エクセルのマクロでセルを自動的にクリアにする方法
(休日登録) A20~25セルを”休日”と定義 A20に9/3と入っているとします。 (シート) A B C 1 日付 曜日 合計時間 2 9/1 (金) 8:30 3 9/2 (土) 8:00 ←この日が休日だとすると・・・ 4 9/3 休 ←自動で休みと入るようにしてあります。 このようなシート入力があるとして 休日を9/3と登録し、入力規則のユーザー設定で =COUNTIF(休日,A4)=0と入力し休日を判定して 休日のC4セルには入力不可に設定してあります。 ところが、9/2も休日だとあとで分かり、9/2もA21のセルに休日として追加したとします。 しかし、9/2のC3セルにはあらかじめ数字が入っているため、休日に変更しても 数字は残ってしまいます。 これをマクロの機能を使って、曜日欄が休日となったら 自動的にC3セルを自動クリアにするというような事は出来ませんか? それかマクロを使わなくても可能であれば宜しくお願いします。
- ベストアンサー
- オフィス系ソフト
- level42195
- 回答数2
- Excelにて、別シートからデータの一部分を選択してコピーする
XPにてexcel2007を使っています。 現在、順位表を作っているのですが、VBAというものの入門本を読んでみたのですが、いまいちやり方が分からないため質問させていただきます。 1つ目のシートに総合順位の表【シート名:順位表】を作りたいと思っています。 今、別のシート【シート名:第1回結果】に 1班 1.赤井 80ポイント 2.井上 3.上松 90ポイント 4.江藤 60ポイント 5.岡田 ・ ・ ・ 18.山根 2班 1.安藤 75ポイント ・ ・ ・ 18.渡辺 70ポイント と入力しています。3班あり、各班とも18人います。 名前が「あいうえお順」に並んでいて、参加者のみポイントが打ち込んであります。 やりたいことは、この別のシート【第1回結果】から参加した人(ポイントありの人)のみ 名前とポイントをコピーして【順位表】の表に貼り付けたいと思っています。 どうやったこのようにうまくいくのでしょうか? 自分が悩んでいるところは、 (1)今回の参加者(ポイントを記入してある人)のみを選択するところ。 (2)1班、2班、3班と参加人数がちがうのに、【順位表】のシートに隙間なく、貼り付けるところ。 あたりです。 また、こういったものを参考するのに適した本を紹介していただけないでしょうか? よろしくお願いします。
- ベストアンサー
- オフィス系ソフト
- freebird11
- 回答数3
- excelでシートの存在を確認するには...
Sheet1のB2から下のセルにaaa1,aa2,aa3...と入力されていたとします。 そのセルの文字列の名前が同じエクセルのワークシート名として、存在するかどうかをC2から下に「OK」、「NG」と記載できるようなマクロを検討しています。 わかる方いらっしゃいますか?
- 【Excel】 空白以外の行を選択するマクロを教えてください。
こんにちは Excelで、オートフィルターを使い「空白以外のセル」を表示させ、 その空白以外の行をコピーしたいのですが、ここまでをマクロにすると どのようになるでしょうか。 よろしくお願いします。
- エクセルの置換?
エクセルのA列に以下のようなURLがあるとします。 http://wrs.search.yahoo.co.jp/途中省略/*-http://URL1 http://wrs.search.yahoo.co.jp/途中省略/*-http://URL2 http://wrs.search.yahoo.co.jp/途中省略/*-http://URL3 http://wrs.search.yahoo.co.jp/途中省略/*-http://URL4 http://wrs.search.yahoo.co.jp/途中省略/*-http://URL5 http://wrs.search.yahoo.co.jp/途中省略/*-http://URL6 http://wrs.search.yahoo.co.jp/途中省略/*-http://URL7 このURLを http://URL1 http://URL2 http://URL3 http://URL4 http://URL5 http://URL6 http://URL7 にしたいのですが、どうすれば簡単に出来るでしょうか? 途中省略の部分は全部ちがいます。 エクセルはほとんど初心者ですが、よろしくお願いします。 ちなみにエクセル2003です。
- エクセルのセルの並べ替え
お世話になります。エクセル2007を使用しているのですが、手動でコピペではかなり面倒なことになったので質問させていただきます。 A1からA100のセルに数値のデータが入っているとして、 A1~A100のデータを順に4つづつA1,A2,A3,A4、次は隣の列にいってB1,B2,B3,B4そしてまた次の列にいってC1,C2,C3,C4・・と 最終的に4行25列に並べ替えたいのですが、楽に並べ替える手法はあるでしょうか。 この作業を何回も繰り返さないといけないので、やり方がわかる方どうか教えて下さい。
- VBA 表の並び替え (追加質問)
先日表の並び替えでVBAを教えていただいたのですが、 できればもう少し詳しくご教授願いたいと思います。 【前回の質問】 同じ請求書内に含まれる情報をひとつの請求書列の横に並べて配置したいのですが。 請求書 製品 価格 個数 aaa AAA 200 10 aaa BBB 400 10 aaa CCC 300 5 bbb AAA 100 50 bbb BBB 500 10 請求書 製品 価格 個数 製品 価格 個数 製品 価格 個数 aaa AAA 200 10 BBB 400 10 CCC 300 5 bbb AAA 100 50 BBB 500 10 にたいして、 Sub test() Dim LastCol_1 As Long Dim LastCol_r As Long Dim LastCol_Max As Long Dim LastRow_A As Long Dim r As Long LastCol_1 = Cells(1, Columns.Count).End(xlToLeft).Column LastRow_A = Cells(Rows.Count, "A").End(xlUp).Row Application.ScreenUpdating = False 'データの並べ替え For r = LastRow_A To 3 Step -1 LastCol_r = Cells(r, Columns.Count).End(xlToLeft).Column If Range("A" & r).Value = Range("A" & r - 1).Value Then Range("A" & r).Resize(, LastCol_r - 1).Offset(, 1).Copy _ Destination:=Cells(r - 1, LastCol_1 + 1) Rows(r).Delete End If Next r '見出し行の編集 With ActiveSheet.UsedRange LastCol_Max = .Cells(.Cells.Count).Column End With Range("A" & 1).Resize(, LastCol_1 - 1).Offset(, 1).Copy _ Destination:=Cells(1, LastCol_1 + 1).Resize(, LastCol_Max - LastCol_1) Application.ScreenUpdating = True End Sub というVBAコードをいただきました。 結果は大満足だったのすが、たとえばもし請求書columnの横に繰り返したくないcolumnがもう1列ある場合はどのようにしたらよいのでしょうか。請求書番号と同様1行に1回のみ表示させたいのです。 請求書 Year 製品 価格 個数 aaa 2007 AAA 200 10 aaa 2007 BBB 400 10 ↓↓↓↓↓↓↓↓↓ 請求書 Year 製品 価格 個数 製品 価格 個数 aaa 2007 AAA 200 10 BBB 400 10 お手数ですが、コメントいただければ幸いです。
- 締切済み
- オフィス系ソフト
- shallowimp
- 回答数2
- VBA 表の並び替え (追加質問)
先日表の並び替えでVBAを教えていただいたのですが、 できればもう少し詳しくご教授願いたいと思います。 【前回の質問】 同じ請求書内に含まれる情報をひとつの請求書列の横に並べて配置したいのですが。 請求書 製品 価格 個数 aaa AAA 200 10 aaa BBB 400 10 aaa CCC 300 5 bbb AAA 100 50 bbb BBB 500 10 請求書 製品 価格 個数 製品 価格 個数 製品 価格 個数 aaa AAA 200 10 BBB 400 10 CCC 300 5 bbb AAA 100 50 BBB 500 10 にたいして、 Sub test() Dim LastCol_1 As Long Dim LastCol_r As Long Dim LastCol_Max As Long Dim LastRow_A As Long Dim r As Long LastCol_1 = Cells(1, Columns.Count).End(xlToLeft).Column LastRow_A = Cells(Rows.Count, "A").End(xlUp).Row Application.ScreenUpdating = False 'データの並べ替え For r = LastRow_A To 3 Step -1 LastCol_r = Cells(r, Columns.Count).End(xlToLeft).Column If Range("A" & r).Value = Range("A" & r - 1).Value Then Range("A" & r).Resize(, LastCol_r - 1).Offset(, 1).Copy _ Destination:=Cells(r - 1, LastCol_1 + 1) Rows(r).Delete End If Next r '見出し行の編集 With ActiveSheet.UsedRange LastCol_Max = .Cells(.Cells.Count).Column End With Range("A" & 1).Resize(, LastCol_1 - 1).Offset(, 1).Copy _ Destination:=Cells(1, LastCol_1 + 1).Resize(, LastCol_Max - LastCol_1) Application.ScreenUpdating = True End Sub というVBAコードをいただきました。 結果は大満足だったのすが、たとえばもし請求書columnの横に繰り返したくないcolumnがもう1列ある場合はどのようにしたらよいのでしょうか。請求書番号と同様1行に1回のみ表示させたいのです。 請求書 Year 製品 価格 個数 aaa 2007 AAA 200 10 aaa 2007 BBB 400 10 ↓↓↓↓↓↓↓↓↓ 請求書 Year 製品 価格 個数 製品 価格 個数 aaa 2007 AAA 200 10 BBB 400 10 お手数ですが、コメントいただければ幸いです。
- 締切済み
- オフィス系ソフト
- shallowimp
- 回答数2
- エクセルVBA
Sub 金額未記入のセルをカウント() Dim kensu As Long Range("I100").End(xlUp).Select 'リストの最終行を、上方向に向けて指定する Selection.Offset(0, 1).Select '上で指定したセルの、右の列のセルを指定する Selection.Font.Bold = True '選択しているセル範囲の文字を太字にする Range(ActiveCell, "J4").Select '最後のセルから上までの範囲を選択する ActiveWorkbook.Names.Add Name:="kingaku", RefersToR1C1:=Selection '金額の範囲に名前をつける Range("I1").FormulaR1C1 = "=COUNTBLANK(kingaku)" 'セルI1に式を代入する End Sub 経常費ファイルについての質問です。 月ごとに、ワークシートがあり、品名、個数のあとに、総額を入れています。 個数は最初からデータが入っているため、総額のところが未記入だと、まだ 品物が入荷していない、と、わかるように工夫しました。 上記のマクロで、各ワークシートごとには、未記入セルの個数を表示できるのですが、 違う月のワークシートでも、その数字が表記されてしまいます。 そこで、マクロを実行するボタンを押すと、その月の未記入セルの個数を出すことは できるのですが、 ワークシートごとに、そのワークシートにあった数字を表記できたままにするには、 どうしたらよろしいでしょうか。 わかりにくい質問で、申し訳ありませんが、よろしくお願いします。
- HLOOKUPで複数の結果を取得する方法
元データ 1 2 4 2 2 2 3 3 3 2 1 A B C D E F G H I J K から、以下のように、 1を入力すると、A と K が、 3を入力すると、G と H と I が右のセルに表示される、といったものを 作成しているのですが、なかなかうまくいきません・・・。 ↓入力データ 1 A K 2 B D E F J 3 G H I 4 C ↑ ↑ここから右、HLOOKUPで引っ張れないデータ ↑HLOOKUPで引っ張れるデータ HLOOKUP関数を駆使すれば、なんとかなりそうな気もするのですが・・・ どなたかご教授願えないでしょうか??
- Excelでエラーのセルを検索する方法はありますか?
Excelで #N/A というエラー値がところどころ出るデータを仕事であつかっています。 そのエラー値がどこにあるかチェックして目立たせたいのですが、エラーの部分だけを検索することはできますか? 編集→検索で「#N/A」といれても検索されませんでした。 詳しい方教えてください。お願いします。
- Excel ファイル1から、条件のあった物の抽出(並び替え?)
Excelで作った商品データのファイル1、から条件にあった商品を抽出(並び替え?)のしかたを教えて下さい。 ファイル1の中身は、商品コード、商品名、規格、等がありまして、 これは商品コード順に並んでいます。 それぞれの商品がバスケットAに何個、バスケットBには何個……。といった作りをしています。 |商品コード|商品名|規格|……|バスケットA|バスケットB|…… ―――――――――――――――――――――――――――――― | 0001 |灰皿A|白色|……| 1 | |…… | 0002 |灰皿B|黒色|……| | 1 |…… | 0003 |手帳A|赤色|……| | 2 |…… | 0004 |手帳B|青色|……| 1 | 3 |…… | 0005 |財布A|橙色|……| 2 | |…… このファイルから、今度はバスケットAには、何が何個入っているか、 が分かるファイル2を作りたいと思っています。 |商品コード|商品名|規格|……|数量|バスケット名| ―――――――――――――――――――――――― | 0001 |灰皿A|白色|……| 1|バスケットA| | 0004 |手帳B|青色|……| 1|バスケットA| | 0005 |財布A|橙色|……| 2|バスケットA| ―――――――――――――――――――――――― | 0002 |灰皿B|黒色|……| 1|バスケットB| | 0003 |手帳A|赤色|……| 2|バスケットB| | 0004 |手帳B|青色|……| 3|バスケットB| さらに、ファイル1のバスケットに入る数量を変更すると、ファイル2の内容も変更できるようにしたいです。 どなたか知恵というか、知識をかしてください。 よろしくお願いします。
- ベストアンサー
- オフィス系ソフト
- noname#150326
- 回答数3
- VBAで複数条件に合致した件数を数える
A B C 1 code 質問1 質問2 2 0001 1 3 3 0001 2 3 4 0001 1 2 5 0005 2 1 6 0005 3 2 7 0005 2 3 8 0007 1 2 9 0007 2 3 というようなデータがある中で、 code「0001」と質問2「3」を同時に満たすデータの件数を数えたいのですが、 VBAでコードを作る際にはどのようにすればよろしいでしょうか? ちなみにセルはA2という形ではなくcells(2,1)という形を使うことも条件の一つです。