keithin の回答履歴
- VBA 配列とワークシートどっちがいい?
数値計算するマクロを作っていて思うことがあり質問しました。 ワークシートに3万セルのデータがあり、それを元に計算し、結果を別シートに記入します。 (1)計算をすべてワークシート上で行う方法 (2)データを全て配列に読み込み、配列上で計算し、結果のみ配列に書き出す方法 どちらがいいの? 考えや情報が色々と頭の中でぐるぐる回ってます。 ・せっかくの「表計算」ソフトなのだから当然(1)? ・シート上の方が色々な関数を使える ・配列上の方が計算速いと聞く ・3万セルごときどちらも同じ? ・10万セルの配列読み込み11秒(For Next)2秒(Range型変数使用)の書籍記事 ・100万セルの配列読み込みコンマ数秒(For Next)コンマゼロ数秒(Range型)のweb上記事 今まで私自身が体感したのは、例え3万個といえど ・行削除が多いと遅い ・コピペが多いと遅い(5千回で10秒) ・ファイル数が多いと遅い(open/close1個1秒弱) ・シート上だと関数はやっぱり豊富 ・セルへのアクセスは不明?? どっちがいいですか?100万セルでも同じですか? どっちでやってますか?
- ベストアンサー
- Excel(エクセル)
- High_Score
- 回答数1
- EXCEL2010条件付き書式に関して
http://okwave.jp/qa/q8811497.htmlで質問して、回答をいただいたのですが、 内容を良く理解できていません。。。 「=FIND(TEXT(R$4,"aaa"),$D6)」の部分は、どういった意味でしょうか。 「セルD6の中にある文字をセルR4から探す」という条件という意味でしょうか。 適用先について、例えばセルS7であれば、 「セルE7の中にある文字をセルS4から探す」というようにならないのは何故でしょうか。 わかる方いらっしゃいますか?
- ベストアンサー
- Excel(エクセル)
- donald1982
- 回答数3
- 5×5のセルの中の数字を縦に昇順に並び替える方法
どなたかご存じでしたらご回答をよろしくお願いします。 【質問】 5×5のセルの中に任意の数字が大小関係なく入っています(重複数字は無し)。 これを縦に昇順に並び替える方法が知りたいです。 【実行前】 8 9 10 21 25 2 6 18 20 23 1 5 7 14 19 4 17 24 26 29 12 15 22 28 31 【実行後】 1 2 4 5 6 7 8 9 10 12 14 15 17 18 19 20 21 22 23 24 25 26 28 29 31 ●注意事項 ・使用するエクセルは2010です。 以上、よろしくお願いします。
- ベストアンサー
- Excel(エクセル)
- moguo4649
- 回答数2
- マクロ 2つのブック 条件一致 転記
2つのエクセルブックがあります。 1つがIDデータ表になって、IDと払い出し内容と日付の3つがあります。 もう1つがID管理票で、IDを担当ごとに管理している票です。 IDデータ表のIDとID管理票のIDを一致したら IDデータ表の払い出し区分の単語を基準に(新規・変更・廃止) ID管理票.xlsに乗っているIDの横に 払い出し区分の単語の条件で 新規の場合,ID右隣に日付を転記 変更の場合,IDの2つ右隣に日付を転記 廃止の場合,IDの3つ右隣に日付を転記を行いたいのですが FINDメソッドを使い、行のB列の区分で判定して、日付を書き入れるのと Offセットでセルの位置を指定するのと「IDデータ表」.xlsの特定の範囲のデータを繰り返す というアドバイスをもらいましたが 繰り返し処理(ForやLoop)をよく理解していないからだと思います。 どなたかご教示くださいますでしょうか。 下記に簡素でありますが構成状態と 処理の概要と画像添付させて頂きます IDデータ表.xls A列 B列 C列 1 ID番号 払い出し区分 日付 2 110001241 新規 10/2 3 120000065 変更 10/3 4 190000036 廃止 10/4 ↓ 以下100行くらい続いています ID管理票.xls ID番号の場所がバラバラで AO列にあったりBC列にあったりしています。 また、ID管理票にすでに日付が入っていることもありますが それはそのまま上書きで問題ありません。 110001241, 10/2 (新規区分なのでIDの右隣に日付を転記) 120000065, 空白 10/3 (変更区分なのでIDの右2つ目に日付を転記) 190000036, 空白,空白,10/4 (廃止区分なのでIDの右3つ目に日付を転記) お手数ですがよろしくお願いいたします
- ベストアンサー
- Excel(エクセル)
- samohankinpo
- 回答数1
- EXCEL2010 条件付き書式ワイルドカード関連
エクセル上のカレンダーで、対象曜日の列のに色を付けたいと思います。 次のように、データが並んでいます。 C D R S T U 1 2 1 2 3 4 3 4 水 木 金 土 5 店舗 曜日 4 5 6 7 6 店舗1 月木 7 店舗2 火木 8 店舗4 月水金 D列・・・E列~P列の情報を元に、E5&F5&G5&H5&I5&J5のような感じで対象曜日を表示させて「&」でくっつけています。 R列・・・ R2.4.5 は 2014/10/1 の情報です。 R2 は セルの書式設定を使用して、2014/10/1の情報の日付のみを表示させています。 R4 は セルの書式設定を使用して、R2の曜日を表示させています。 R5 は WEEKDAY関数を使用して、数字を表示させています。 店舗数ごとの、対象の曜日の列に色をつけたいと思っています。 6行目であれば、D列に月木とあり、それぞれの列の4行目が「月木」のどちらかであれば、セルに色を付けるといったように設定したいと思っています。 そのような場合、条件付き書式の設定でうまく解決する方法はないでしょうか。
- ベストアンサー
- Excel(エクセル)
- donald1982
- 回答数1
- リストボックスの値をVBAで表示させる方法をご教授
ListFillRangeプロパティを使わずに、ActiveXコントロールのリストボックスにVBAで値を入力するには? OLEObjectsとAddItemメソッドでできるはずなのですが うまくできません。 シート上のリストボックスに あああ いいい ううう とVBAで表示させる方法をご教授ください。
- 締切済み
- Excel(エクセル)
- ovvqgasvhcbe
- 回答数1
- 【再】エクセル2013 マクロをご教示ください
Sheet1で選択しているセルの行をSheet2に転写したいです。 Sheet1とSheet2の4行目に見出し。 Shet1にはA~U列までデータがあります。(途中空白セルの場合もあり) Sheet1の5行目以降の、あるセルを選択してマクロを実行すると Sheet1のC~S列までをSheet2のA~Q列へコピペしたいです。 Sheet1は H列に必ずデータがあるので それらを最終行の判断基準とします。 Sheet1での選択セルは複数の場合もあります。 ただし、同じ行のセルを複数選択しても Sheet2への貼り付けは1行とします。 マクロを実行する度に、Sheet1での選択セルの該当行が Sheet2へ追加されるようにしたいです。 (Sheet2へコピペされたデータは残します) また、Sheet2への貼り付け内容が同じだった場合は 注意喚起のため メッセージで 「重複データが存在します」を表示したいです。 重複の判断基準はSheet2の B、D、F列とします。 宜しくお願い致します。
- ベストアンサー
- Excel(エクセル)
- maron1010
- 回答数2
- エクセルの住所録で別シートのデータの1列だけ統合
ネットを探してもわからなかったので質問いたします。 エクセルの住所録で別シートのデータ1列だけ統合したいのです。 具体的にはエクセル2010で会社の住所録を作っています。 その住所録で商談会の案内状を出しているのですが、マスター住所録シート(全顧客の住所録)にてお客様のステータスを一列で見たいのです。 私がやっている案内状を出すときの流れは、 例えば2014年神戸での商談会の場合、 1、マスター住所録を別シートにコピーし2014神戸案内状送付とシート名を変更 2、住所順に並べ替え 3、兵庫、大阪、京都のお客様以外を削除 4、個別に追加や削除 5、宛名ソフトにて読み込み住所印刷、発送 ~商談会後~ 6、マスター住所録に列(2014神戸案内状送付)を追加、新規のお客様を入力し、お客様の行動を入力(来場、購入、新規など) これが一連の流れです。 やりたいのが案内状を発送したお客様を列(2014年神戸)に「案内」としたいのです。このやり方だとマスター住所録と2014神戸案内状送付の2シートができ、どの人に案内状を送ったのかをマスター住所録にフィードバックできないのです。 案内状を送った人が誰で、誰が来場、購入してくれたのかをマスター住所録にて一覧できたらうれしいです。 エクセル風に書くとこうなります。 シート1(マスター住所録) A列(お客様番号)B列(お客様名) C列(住所) 1032 高橋正夫 京都 1046 渡辺博 東京 1123 田中義男 兵庫 1162 木村和夫 大阪 1256 伊藤政徳 北海道 1390 大沢真一 兵庫 ・・・・・・ ↓シートコピー、住所順に並べ替え兵庫、大阪、京都のみ残し、個別に追加や削除、案内状を発送 シート2(2014神戸案内状送付) A列(お客様番号)B列(お客様名) C列(住所) 1032 高橋正夫 京都 1390 大沢真一 兵庫 1123 田中義男 兵庫 1162 木村和夫 大阪 1887 坂口良太 岡山 ・・・・・・ ~商談会後~ ↓D列(2014神戸商談会)作成、新規のお客様を追加、 シート1(マスター住所録) A列(お客様番号)B列(お客様名) C列(住所) D列(2014神戸商談会) 1032 高橋正夫 京都 来場 1046 渡辺博 東京 1123 田中義男 兵庫 1162 木村和夫 大阪 1256 伊藤政徳 北海道 1390 大沢真一 兵庫 1887 坂口良太 岡山 購入 2567 大江雅人 京都 新規 2568 横井洋介 兵庫 新規 ・・・・・・ これが現在のやり方です。 ↑これをこう↓したいのです。 シート1(マスター住所録) A列(お客様番号)B列(お客様名) C列(住所) D列(2014神戸商談会) 1032 高橋正夫 京都 来場 1046 渡辺博 東京 1123 田中義男 兵庫 案内(←これを入れたい!) 1162 木村和夫 大阪 案内(←これを入れたい!) 1256 伊藤政徳 北海道 1390 大沢真一 兵庫 1887 坂口良太 岡山 購入 2567 大江雅人 京都 新規 2568 横井洋介 兵庫 新規 ・・・・・・ 2つ質問があります。 Q1、 今後、このようなことを全て手入力でなくできますか? Q2、 このようなやり方をしているので現在マスター住所録では誰に案内状を送ったのかがまったくわかりません。商談会ごとの案内状送付リストは残っていますがその分も「案内」印をいれられますか? (ちなみに案内状が返還されてきたりしてマスター住所録から削除したお客様もいままで多くいます) 両方とも一気に解決できる方法があればなお良いですが、Q1、2で方法が別々でもOKです。 質問がわかりにくいとは思いますが、解決できる方、よろしくお願いします。
- 締切済み
- Excel(エクセル)
- mats
- 回答数2
- 二つのシートから名前で検索して抽出するには
ある条件の項目以外は同じようなデータが入っているシートが二つあります。 その二つのシートからある項目(たとえば名前)を検索条件にして一致する行全体を抜き出したいのですがどうすればいいのでしょうか。 添付の図はオープンオフィスですが、使用したいのはエクセルの2013です。
- ベストアンサー
- Excel(エクセル)
- de_viant
- 回答数2
- マイクロソフト 表 作成
パワーポイントで教科書をまとめてくるように言われているのですが、このような表を作成するためには、どのようなソフトを使えばよいのでしょうか。また、どのような手順で作成すればよいのでしょうか。教えてください。
- ベストアンサー
- オフィス系ソフト
- kanatatatata
- 回答数4
- エクセル2013 マクロをご教示ください
Sheet1 4行目に見出し。 5行目A列からU列までデータが入力されています。 中には空白セルもあります。 1行目から4行目迄はロックされています。 5行目以降の、あるセルをアクティブにすると、 該当行のC列からS列迄を Sheet2のA列を先頭に 5行目にコピペするには どうしたら宜しいでしょうか? Sheet2も4行目が見出しです。 Sheet1でのアクティブセルは 複数の場合もあります。 ただし、同じ行でセルを複数アクティブにしても Sheet2への貼り付けは1行とします。 よろしくお願いします。
- ベストアンサー
- Excel(エクセル)
- maron1010
- 回答数2
- エクセル2013 マクロをご教示ください
Sheet1 4行目に見出し。 5行目A列からU列までデータが入力されています。 中には空白セルもあります。 1行目から4行目迄はロックされています。 5行目以降の、あるセルをアクティブにすると、 該当行のC列からS列迄を Sheet2のA列を先頭に 5行目にコピペするには どうしたら宜しいでしょうか? Sheet2も4行目が見出しです。 Sheet1でのアクティブセルは 複数の場合もあります。 ただし、同じ行でセルを複数アクティブにしても Sheet2への貼り付けは1行とします。 よろしくお願いします。
- ベストアンサー
- Excel(エクセル)
- maron1010
- 回答数2
- StrReverseメソッド
Sub test() Dim i As Long i = InStr(1, StrReverse("1234567"), "123") End Sub なぜこの場合の返り値が0なのでしょうか? 1234567の中に123は含まれるから、右から何文字目にあるかが返ると思ったら、0です。 i = InStr(1, "1234567", "123") のように、左から何文字目かを取得するなら、1が返ります。
- 締切済み
- オフィス系ソフト
- TDYPWGNTINAH
- 回答数1
- Word2013:あるページの先頭を固定したい
お尋ねしたいことがあります。 Word2013を使用しています。 あるページの先頭を固定することはできますか? 例えば、10ページ文書を作ったとして、3ページ目を 固定することはできるでしょうか? というのは、1ページ目やページ目に何行か挿入すると、 通常なら3ページ目の文章も、何行か移動します。 しかし、移動しないようにしたいのです。 ご存じの方、どうかアドバイス願います。
- 締切済み
- Word(ワード)
- momotarosansan
- 回答数3
- エクセル VBA不良率算出について
大変悩んでおり、質問させてもらいました。 内容ですが、エクセルにて不良率を出しているのですが、たまに計算式を消されるトラブルが発生いたしまして、解消にむけVBAにて自動で不良率を出したいと考えております。 不良率を出したいのは2箇所でして。 例としてはセル Dの35に検査数 Dの36に不良数 Dの37に不良率1 続いてYの35に検査数 Zの35に不良数 AAの35に不良率2 以下の条件でマクロ組めませんか アドバイス願います
- 締切済み
- Excel(エクセル)
- kazunoko1689
- 回答数2
- 複数のbookから特定のセル(行)を削除する
社内販売の取りまとめをしています。 全社員に同じ注文書を送付し注文を受け付けました。 ところが送付した注文書が間違っており、正しいファイルにはないはずの行が挿入されていることがわかりました。 集計は別のbookにマクロが組んであり、それを利用します。 集計用book中のボタン押下で注文書から必要項目を抽出してくれる仕組みになっています。 誤送付したbook(注文書)に余分な行が挿入されているため注文項目がずれてしまい正しい集計ができません。 注文書は200枚以上あり、一つ一つのbookを開いて不要な行を削除していくのは気の遠くなるような作業になってしまいます。 一度に複数のbookから特定の行を削除するような方法はあるでしょうか? よろしくお願いします。
- ベストアンサー
- Excel(エクセル)
- excelqanda
- 回答数4
- エクセルで特定の文字列を含む値を重複を除いて数える
いつもお世話になります。 今回の質問ですが、例えば、セルA1からA1000に、いろんな人の名前がフルネームで入っているとします。 同じ人物が複数回登場することはありますが、同姓同名の人はいないものと考えてください。 そして、このリストの中に、「山田」さんは何名いるのかを、同人物の重複を除いて数えたいわけです。 重複して数えていいならば、「=COUNTIF(A1:A1000,"山田"&"*")」で、 山田さんに限らずに、重複を除いた人数を調べたいならば、「=SUMPRODUCT(1/COUNTIF(A1:A1000,A1:A1000))」でそれぞれ調べられますが、山田さんの重複を除いた人数となると、どうすればよいでしょうか。 私に考えつく方法では、B1に「=COUNTIF(A1,"山田"&"*")」と入力し、以下B列にこれをコピーをしておけば、「=SUMPRODUCT((B1:B1000)/COUNTIF(A1:A1000,A1:A1000))」で求めたい値を得られますが、できれば作業列は使用しないでこの値を求めたいです。
- ベストアンサー
- Excel(エクセル)
- licor
- 回答数2
- 関数を教えてください。
表) A B C D 1 2 3 4 5 ●やりたいこと Dのセルに、プルダウンでリストの AAセル<品名> を選択します。 Dのセルの元となるプルダウンリスト↓ (AA1~AD6にリストがあり、AAセルのいずれかを選びます) AA AB AC AD 1 <品名> <産地> <契約会社> <型番> 2 りんご 青森 A社 FT001 3 みかん 愛媛 B社 FT002 4 バナナ 台湾 C社 FT003 5 アボカド メキシコ D社 FT004 6 パパイヤ インド E社 FT005 Dのセルにいずれかを選択すると、A,B,Cセルにリストの情報(産地、契約会社、型番)が 自動反映されるようにしたいです。 例)D1セルに「アボカド」をプルダウンで選択する。 A1、B1、C1のそれぞれのセルに下記内容が自動反映される。 A1:メキシコ、B1:D社、C1:FT004 表としては、一列がすべて埋まります。A1:メキシコ、B1:D社、C1:FT004、D1:アボカド 関数初心者で色々設定してみましたが、 自動反映希望場所が「#N/A」になってしまったり、それをなくそうとすると 空白になってしまったり、どうすればいいのかよくわからなくなってしまいました。 プルダウン選択する前は、すべて空白。(例:D1未選択=空白時、A1、B1、C1も空白) プルダウン選択した際(Dセル)、自動反映(A1,B1,C1)。 プルダウン情報しか入らないので、エラー表示は出ないようにしたい。 どなたかご教授いただけませんでしょうか。 よろしくお願いします。
- ベストアンサー
- Excel(エクセル)
- mameta77
- 回答数2
- エクセルのショートカットORマクロ
お世話になります。 XP/エクセル2003使用です。 早速ですが、質問させていただきます。 エクセルのショートカットで、 同じ値の最後のセルまでセル範囲を選択するショートカットを探しています。 -------- 同じ値の1個目のデータが複数行に渡ってあります。 そして、1個目のデータに続いて、1個目とは異なる値の2個目のデータが複数行に渡ってあります。 3個目以下同じ繰り返しです。 例えば、A列の 1~800行目 あああ 801~1100行目 いいい 1101行目~1205行目 ううう 1206行目~1310行目 えええ 1310行目~1499行目 おおお 同じ値が入力された連続する行の数に規則性はありません。 また、異なる値の個数も作業の都度変わります。(”あああ”などの値の個数のことです) エクセルのショートカットで、 入力された最後のセルを探すのは、 「Ctrl」+「Shift」+「↓キー」で可能ですが、 同じように、同じ値が入力された最後のセルまで 何かのショートカットでセル範囲の選択をできますでしょうか? または、マクロで記述するとすると どのようなコードになりますでしょうか? 作業としましては、 A1セルを選択した状態でA800セルまでセル範囲を選択し、ある作業をします。 次に、A801セルを選択した状態でA1100セルまでセル範囲を選択し、上記と同じ作業をします。 これの繰り返しです。 行数が多いので、セル範囲を選択するときに スクロールで上手く上下させることができず面倒になっています。 よろしくお願いします。
- ベストアンサー
- Excel(エクセル)
- ken123
- 回答数4
- excel2003 複数の行のデータを連動して消す
excel2003 のvbaで質問です。 changeイベントで、とある列で複数行のデータを消すと、 それと同じ複数行の指定列を連動して消せるようにしたいです。 https://www.dropbox.com/s/01saveqkt1u93zj/%E3%82%AD%E3%83%A3%E3%83%... 私がやると、どうしても先頭の一行しか消すことができず投稿いたしました。 どのように記述したらいいか、教えていただけないでしょうか。
- ベストアンサー
- Excel(エクセル)
- puyopa
- 回答数1