Excelに関する質問は、ここで!
▼━ 質問のしかた ━━━━━━━━━━━━━━━━━━━━
★1 質問するときは環境や条件はきちんと書いてね。情報後出しはダメ。
★2 要望は具体例や図を使って明確かつ具体的に。
★3 質問前に
>>2-10 あたりの注意書きやQ&Aを必ず読むこと。
★4 質問テンプレ(雛形)は必須じゃないけど、
OSやExcelのバージョン、VBAの可否など(下記テンプレ1〜4の情報)は必須情報。
▼━質問テンプレ (出来れば使ってね) ━━━━━━━━━━━━
【1 OSの種類 .】 Windows**
【2 Excelのバージョン 】 Excel**
【3 VBAが使えるか .】 はい・いいえ
【4 VBAでの回答の可否】 可・否
【5 検索キーワード 】 Googleやヘルプでの検索キーワード
※【4】は、VBAはわからないけどコード書いてくれるならVBAでもいいって場合は「可」
VBAを使うのは避けたいって場合は「否」にしましょう。丸投げする場合は、必要に応じてブックをアップすること。
※【5】は、あなたがGoogleやヘルプで検索した際に使ったキーワードを書いてください。
まだ検索してないなら、質問の前にGoogleやヘルプで検索してみてください。
ttp://www.google.co.jp/ 前スレ
Excel総合相談所 65
http://pc11.2ch.net/test/read.cgi/bsoft/1204443608/l50
▼━質問時の注意・決まり事━━━━━━━━━━━━━━━━━━━━ ・1 現行スレ内で既出の質問が無いか、ページ内検索をしよう。(Ctrl+F) ・2 図やコードを書く場合、TABや連続する半角スペースは無視されるので注意 ・3 VBAコードを貼る場合は、部分的に伏せたり省略したりせずに全て貼りましょう。何レス使っても構いません。 ・4 2回目以降の質問では名前欄に初回質問の番号を入れよう。 ・5 回答内容でわからない部分があっても、すぐに聞き返さずにヘルプやGoogleなどで検索しましょう。 ・6 バグ・動作上の不都合・仕様に関する質問などはマイクロソフトのサポートを受けましょう。 ここは技術的な質問のみで。 ・7 VBAはプログラム言語のVisualBasic(6以前)に近い処理が可能で Excelに関係ないことも出来ます。 Excelの操作に関係ない部分は、スレ違いなのでここで聞かずにVB言語やAPI、COMについて自分で勉強し、 どうしてもわからない部分はVBスレやAPIスレなどの該当スレで質問しましょう。 但し向こうはプログラマのスレなので、構文規則などの最低限の事は覚えてから質問しましょう。 ここみたいに丸投げはダメですよ。 ・8 うまくいかなかったにしても自分でやってみたこと(組んだ数式やコード)は書きましょう。 例えエラーになる式やコードでも、何をやりたいのかを的確に把握する手がかりになります。 その上で、どううまくいかないのかを具体的に書きましょう。 エラーが出るなら、何処でどういうエラーが出るのか、 想定外の結果が出るなら、条件と想定上の結果、実際の結果などを詳しく書いてください。 ・9 マルチはダメ。一度マルチしたら、謝っても他のスレの質問を取り下げても回答は得られないと思ってください。 ・A テキストボックス(エディトボックス)、コンボボックス(ドロップダウンリスト)、リストボックス、コマンドボタン、 チェックボックス、オプションボタン(ラジオボタン)、スピンボタン、スクロールバー、等の質問をするときは、 ユーザーフォーム、コントロールオブジェクト、フォームオブジェクトのどれなのかを必ず書くこと。 ・B 書籍や解説サイトの紹介以来はスレ以外。ここは技術的な質問のみで。
★ルールを無視すると…
>>1-2 あたりのルールに従うか否かは自由だけど、従わないと以下のような不利益があるよ
1.マルチをしてしまったら…
A.謝っても他での質問を取り下げても、以後その質問に対する回答は付かない物と思ってください。
それが嫌なら初めからマルチなんてしないように。
>>2 にマルチ禁止と書いてあり、
マルチの意味が分からなければ検索すれば出てくるので、「知らなかった」は通用しません。
2.
>>1 ★4に従わず、必要な情報を出さないと…
A.自分の使用しているバージョンで使えない機能を答えられたり、VBA使えないとか使いたくないと書かないと
VBAでの解決OKで自分でコード書けるものと勝手に解釈されて、「VBAで出来るから自分でコード書いて」程度の
適当な回答を返されたりします。また、ここではVBAコード書けない人の丸投げ依頼を許可してますが
これはきちんとルールに従って質問、依頼した人のみの特権です。
3.情報・条件を後出しすると…
A.後から出された情報は意図的に無視されたり、質問自体を放置されたりします。
>>1 ★4の必須情報はもちろんのこと、要望や条件、既に試したことなどは、
長文になってもいいので詳細かつ明確かつ具体的に書きましょう。
★VBAについて
VBAとは、『Visual Basic for Application』の略で
Application
├Workbooks
|└Workbook
| ├Worksheets
| |└Worksheet
というApplication以下のオブジェクトを、VB言語で操作するものを指します。
例えExcel付属のVBE(Visual Basic Editor)を利用しようとも、このApplication以下のブックやシート、
セルやオブジェクト等を操作するもの以外はVBA分野の話ではないので、ここでは聞かないでください。
★ Excelで出来ないこと、仕様上の制限 (括弧内は代用法) ▼環境・書式 ・ 列数を256列以上、行数を65'536行以上に増やす (Excel2007では16'384列、1'048'579行扱える) ・ Excel2003以前で条件付き書式を3つ以上設定する (文字色だけなら、入力規則でも3つ設定可能。それ以外はVBA) ・ 行の高さを0.25きざみ以下の単位で指定する ・ セル内の文字を○で囲む、一部のみ2段にする (オートシェイプ、オブジェクト) ・ オートフィルタで英字の大小文字を区別する (小文字 → 半角、大文字 → 全角、と使い分ける) ・ 祝日を判断する (作業セルに祝日を列挙、VBA) ・ 同一列内でセル(行)ごとに列幅を変える、同一行内でセル(列)ごとに列高を変える (セルの結合) ・ ヘッダー・フッターのページ番号の開始番号任意指定、ページ番号演算、同シート内で違ったものを指定など ・ セルのサイズ(幅、高さ)を、長さの単位(ミリメートルなど)で指定する ・ 罫線幅の自由指定 ・ 表示形式で「10/ 1」といった書式を指定し、日付が一桁の場合のみ日付の前にスペースを入れる (TEXT関数、VBA) ・ 書式設定の「折り返して全体を表示する」と「縮小して全体を表示する」を同時に使う (折り返しを有効にして、手動で文字サイズを調整) ▼操作 ・ ファイラーの右クリックメニューからの新規作成で、Excelで設定したシート数のブックを作る (任意のシート数のテンプレートを作成) ・ 複数シートを選択して入力規則やシートの保護を設定する (VBA) ・ オートコンプリート機能を、別列や離れたセルで動作させる (VBA) ・ 選択範囲から一部を除く、Ctrlを押しながらの複数選択で一部を取り消す (VBA) ・ 優先キーを3つ以上指定しての並べ替え (優先度の低い方から順に並べ替える) ・ 1セルを分割 (分割したいセル以外を結合)
★ Excelで出来ないこと、仕様上の制限 (括弧内は代用法) ▼数式・関数 ・ 表示形式以外の書式の取得設定、書式情報を条件とする数式 (ユーザー定義関数) ・ 関数式でセルの選択状態を取得する (VBA) ・ セルの値でパスを補完して、開いてないブックのセルを参照する (VBA) ・ 入力したセルに結果を返す (VBA) ・ 範囲を引数にしての文字列連結 (ユーザー定義関数) ・ 値の書き換え、値の保持 (VBA) ・ 複数の結果を抽出、不定な数の結果を返す (VBA、結果の最大数が解っていれば最大数以上の式を論理式で組む) ・ 空白のセルの部分を上詰め、左詰めなどで表示する (作業セルを使って別セルに詰めて表示なら可能、それ以外はVBA) ・ VLOOKUP,HLOOKUP,MATCH等の関数で、検索語を全半角両方にマッチさせる (ユーザー定義関数) ▼VBA ・ ExecuteExcel4Macroの参照で空セルと0値を区別する ・ セルの値や変数値で直接変数名を指定する (配列、コレクション) ・ VBのコントロール配列と同じような操作をしたい (イベント以外ならコントロール名を「同名+連番」にしてControls(名前 & インデックス)で処理、イベントはクラスでWithEvents) ▼ユーザーフォーム ・ フォーム上から変更したプロパティ値の保持 (シートや外部ファイルに書き出して、次回読み込む) ▼グラフ ・ 棒グラフでひとつだけ突出したデータがあった場合に波線を入れて位置を合わせる (オートシェイプなどで見た目だけそうなるように弄る、別アプリでグラフを作り、オブジェクトとして挿入) ┌┐ 〜〜 ||
上記 「Excelで出来ないこと、仕様上の制限」 は、一般的に出来ないとされていること、出来ないと思われるものです。 間違いがある可能性もあるので、上記に挙がってるもので「コレはこうすれば出来るよ」というものがあったらご指摘ください。 Excel2007についても未確認な項目が多いので変更点が有ればご指摘下さい。 また、ここに書かれてないことでも、Excelで出来ないことはたくさんあります。 ここに書かれてないからといって必ず出来るはずだなんて思わないように。 >▼環境・書式 > ・ セルのサイズ(幅、高さ)を、長さの単位(ミリメートルなど)で指定する 補足 2007ではページレイアウトビューの表示時に限り、幅・高さともcm単位で表示され、 指定も同じくcm単位でできる。 ただし大元がインチ系なのでなかなかピタリの値は出ない。1cm→0.98cmのように 近い値に勝手に丸められる。
________________________________
||
|| ━ 質問のしかた ━
||
|| ★1 質問するときは、環境や条件をキチンと書くこと。情報後出しはダメ。
|| ★2 要望は具体例や図を使って明確かつ具体的にしる。
|| ★3 質問前に
>>2-20 あたりの注意書きやQ&Aを必ず読むこと。
|| ★4 質問テンプレ(雛形)は必須ではないが、
|| OSやExcelのバージョン、VBAの可否などは必須情報。
||
|| ∧ ∧ 。
|| ( ,,゚Д゚)/ ジュウヨウ!! E[]ヨ
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ノ つ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
/  ̄ ̄ ̄ ./| ________________
| ̄ ̄ ̄ ̄| | |
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄|____|/|
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
\ は〜〜〜〜い /
∧ ∧ ∧,,∧ ∧ ∧
( ,, ∧▲ ミ ∧ ∧ ( ∧ ∧
〜(_( ∧ ∧_( ∧ ∧_ミ・д・∧ ∧
@(_(,,・∀・)@ ( *)〜ミ_ ( ,,)
@(___ノ 〜(___ノ 〜(___ノ
すれ立て乙>1
>1 π乙
入力中にミスを訂正しようとして「←」を押すと、フォーカスが左隣のセルに移動してしまうのを セル内で1文字戻るようにする設定はどこにありますか?
11 :
名無しさん@そうだ選挙にいこう :2008/04/10(木) 15:50:15
【1 OSの種類 .】 Windows Vista 【2 Excelのバージョン 】 Excel2007 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 EXCEL2007 保存時 プロパティ 今までExcel2003を使用しておりましたが、その際は[ツール]→[オプション] →[全般]タブに「保存時にプロパティを確認する」というチェックボックスが あったのですが、2007に変えてから、その機能がどうしても見つけられません。 同等の機能があれば、使用法をぜひともお教えください!!
12 :
名無しさん@そうだ選挙にいこう :2008/04/10(木) 16:08:47
【1 OSの種類 .】 Windows XP SP2 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】いいえ 【4 VBAでの回答の可否】否 縦棒グラフを作っているのですが、下記の資料で 資料 平成19年 11億1111万円 平成20年 12億1234万円 平成21年 13億2345万円 ・ ・ ・ 現在金額の入力されているセルの書式設定をユーザー定義で『##"億"####"万""円"』にして 平成19年だと111111と入力して11億1111万円と表示していますが、グラフにした時に数値軸の表示が 15億0000万円 10億0000万円 5億0000万円 という風になっているのを 15億円 10億円 5億円 という風に短縮して表示することはできないのでしょうか?
>>12 軸の書式設定で
目盛、表示単位を万にする
表示形式、ユーザー定義で##"億円"にする
シートとリンクするのチェックをはずす
15 :
12 :2008/04/10(木) 17:13:53
紙を横に向けて印刷した文章に、縦向きのページ番号を入れたいのですが どうやったらできますか? 印刷は終わってるのですがページ番号だけついてません。
ページ番号だけの文書を縦で作って差し込み印刷
ページ番号が6とかだったらどこで設定すればいいんですか?
19 :
名無しさん@そうだ選挙にいこう :2008/04/10(木) 19:10:52
エクセルで+や=といった数記号を表示するには どうすればよいのでしょうか?
+だけって事? '+と'を付けたら?
21 :
20 :2008/04/10(木) 19:21:48
ごめん。 何か勘違いした。スルーして。
22 :
19 :2008/04/10(木) 19:27:57
あ、それでできました ありがとうございました
【1 OSの種類 .】 Windows2000 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 【5 検索キーワード 】エクセル VBA プリンタ トレイ プリンタの設定 トレイの設定 API32 VBAでプリントする際,トレイを指定出来ないでしょうか。 過去ログでポート番号指定って見かけたのですが、ご存知の方は詳しく教えてください。
>>18 印刷メニューの中にページ範囲を指定する部分があるでしょ
>>25 ありがとう わからないけど ありがとう。
27 :
名無しさん@そうだ選挙にいこう :2008/04/10(木) 22:17:09
>>18 最悪右下セルに6/10(10ページ中6枚目)なんか作って書式設定→範囲、方向で「文字列」をドラッグしながら上に
ひっぱれば上に向いてくれる
とりあえず、ページ数だけ別の向きに印刷はできんよ
【1 OSの種類 .】 Windows Vista 【2 Excelのバージョン 】 Excel2007 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 関数 行 削除 注文データが一日4回入るのですが、2回目以降のデータには一回目からのデータが重複しており、注文番号でこちらは判別しております。 ※シートの行にそれぞれ注文番号〜住所までレコードとして存在します。 ”シート1”のAセルと”シート2”のAセル(注文番号)を比較(VLOOKUP関数)してデータが重複していないかチェックしているのですが 注文番号を比較してIF文で重複している場合はメッセージを別セルに出しているのですが、メッセージを出しても今は削除はそのメッセージを見ながら”行ごと削除”と言った事をやっております。 一日下手をすれば500行程度になってしまうので出来ればそのメッセージで自動的に判別して行の削除を関数で行いたいのですが・・・わかりませんでした。 よろしければアドバイスをお願いします・・・
削除は関数では無理。
31 :
18 :2008/04/10(木) 23:08:20
できないんですか。ありがとうございます。
32 :
名無しさん@そうだ選挙にいこう :2008/04/10(木) 23:08:21
フィルタで抽出して、可視セルのみ選択してから[CTRL]+[-]で一括削除できるよ
エクセル開いてページ数だけ印刷できるんですか? それとも印刷する文章がないと印刷始まらないんですか?
34 :
名無しさん@そうだ選挙にいこう :2008/04/10(木) 23:20:14
>>28 K1が5の時f1を空白
f1に=if(K1=5,"",K1)
Kが重複データかどうか判別する列として、後はifかン数を組み合わせれば修復も楽に・・
なるかも?
vbaの前に、入力規則・条件付書式等も考えてみて。findやcountifでセルを真っ黒にしてみたりすれば嫌でも重複行に気づくはず
でもちょっと前時代的
>>33 全くデータがないと無理
逆にページ番号だけのページを作れるようにしておけば、工夫次第ではかなり楽できると思う
35 :
28 :2008/04/10(木) 23:33:18
>>30 orz
>>34 今でも、あなたの言うような感じでvlookupとIF文でチェック自体は作っており漏れもなく100%できてるんですが、行の削除を手動でやるのが基本的に前時代というのと
、実際の作業量が手動でやることでやっぱり時間に圧される事もあるので・・・
ちょっとVBAでぐぐってみます。
ありがとうございました。
36 :
名無しさん@そうだ選挙にいこう :2008/04/10(木) 23:49:28
>>35 DAKARA・・・
フィルターをかけて重複のみ表示させてそのまま表示されている
全ての行を選択して 行削除をすれば500程度のデータなら3分以内に
終わるということが>32に書いてあるっつーの
【1 OSの種類 .】 Windows Vista 【2 Excelのバージョン 】 Excel 2007 右クリックすると切り取りとかの上、または下にフォントの種類とかの 枠が出てくるようになってしまったのですが表示させないように するにはどうしたらいいのでしょうか?
>>38 Excel2003にダウングレードする。
要はExcel2007の仕様だから無理っつーこと
>>39 そうなんですか?
最近PC買ったばかりでこの前まで出てなかったのに
今日エクセル使ってたら、その枠が邪魔で気になっていました...
>>40 本当にこの前まで出てなかったの?
右クリックをしてなかっただけとか・・・
少なくとも俺が持っている本には表示させないようにはできないと書いてある。
>>40 本当にこの前まででてなかったと思います。
切り取りは右クリックを使っていたので。
今まででてなかったから枠が気になって仕方がないです。
使ってれば気にならなくなるのかな?
あまり使う様なものでもないしできれば消したいです
精神疾患の類だから病院行って来い
>>35 その道場はちょっとねぇ。
あんた本人かい?
他にもう一つ有名なクソサイトもあるがw
本人が恥ずかしげもなくいつもリンク張ってる。
46 :
名無しさん@そうだ選挙にいこう :2008/04/11(金) 08:47:05
だいじょうぶですか?
手遅れです。
>>28 一行1レコードなら、データ→並び替え(受注No) → A列に列挿入 → "=A1=A2"を入力して最下行までコピー → A列コピー → そのまま値複写 → A列をキーに再度並び替え →
TRUEの行がまとまるので、まとめて削除 → A列削除 30秒フラットw COUNTIFでもいいが。
49 :
48 :2008/04/11(金) 09:28:04
おっと。 "=A1=A2"の"A"は、受注Noの列を対象に。
50 :
名無しさん@そうだ選挙にいこう :2008/04/11(金) 11:52:19
初歩的な質問で申し訳ありません。ご教授願います。 【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 & 文字列 変換 セルA1に 100 セルA2に =A セルA3に 1 セルA4に =A2&A3 と入力されています A4に 100 と表示させたいのですが、=A1と表示されてしまいます "値の貼付け"以外で解決したいのですが。。。
indirect
52 :
名無しさん@そうだ選挙にいこう :2008/04/11(金) 12:00:33
ありがとうございます。 昼休み中に解決できて助かりました
53 :
名無しさん@そうだ選挙にいこう :2008/04/11(金) 14:27:03
【1 OSの種類】 WindowsXP 【2 Excelのバージョン】 Excel2000 【3 VBAが使えるか】 はい勉強中です 【4 VBAでの回答の可否】 可 以下の作業をマクロで作れないでしょうか? sheet1 テキストフォームに数字4桁○○○○を入力、ボタンを押す →特定のフォルダのABC○○○○.csvを検索 →csvが開く、※注 →sheet2のセル(A1)の数式 =\***\◇◇◇◇.csv →◇◇◇◇を取得 →◇◇◇◇を○○○○で置換え。 以上です。 宜しくお願いします。 ※通常ここでブックが非アクティブになると思われるので、csvを非アクティブで開く方法があれば尚よいです。
>>53 もちろん、出来るんだが・・・・・
普通なら、microsoft forms DLLを参照設定して、FileSystemObjectを取得してファイルを探して、textstreamでcsvを読み込んで タブで区切って変数に
と言う流れか。
ワケわかめなら、無理しない方がいい。
55 :
名無しさん@そうだ選挙にいこう :2008/04/11(金) 14:44:12
春は質問も回答も頭のおかしい奴ばっかだな
>>50 極めて当たり前の結果に思えますが?
「やりたいこと」を整理した方が、よさげ
もう解決してるだろ 本当に大丈夫かアンタ
58 :
名無しさん@そうだ選挙にいこう :2008/04/11(金) 14:57:14
excel wordの本買おうと思うんだけど、どれが一番いい?
基本的にどれも内容は似たようなもん 強いて言うなら、横に長い本がおすすめ 開けながら作業しやすいしね あと全体的に高いので、古本屋で探したほうがいいかもしれない 後はダイソーでも売ってるので(もちろん\100)個人的におすすめ
60 :
名無しさん@そうだ選挙にいこう :2008/04/11(金) 15:09:36
うっわあ…書きこまなきゃいいのに… 真剣に病院行った方がいいっすよ
当方学生なのですが、プログラミングを勉強するために エクセルについてるVBAをVB等の代わりに使うのはやめたほうがいいでしょうか? あまりお金がないので高価なソフトは買いにくいのです・・orz
DDEでマクロを実行して、その結果を取り出すにはどうすれば よいのでしょう? 例えばGET.DOCUMENT(50)をDDEExecuteで実行して、その結果を DDERequestとかで取り出すのでしょうか?
ページ番号を15番からつけたいのですが、 フッターのところに15といれたら、5枚ほど全部15というページ番号に なってしまいます。 通し番号は自動になってるのですが・・・ どこを変更すればいいのでしょうか? 15〜19にしたいのですが・・・
>>65 メニューの「ファイル」→「ページ設定」→「先頭ページ番号」を自動から好きな数字に変更
ありがとうございます。これって2007ですよね。ないような。
だから何故テンプレを使わない
>>66 フッターの設定で
&[ページ番号]+14 ページ
カンでやったらできたわん
2007ならページレイアウトのページ設定だ。バージョンくらい書けよ。
【OSの種類】 WindowsXP 【Excelのバージョン】 Excel2003 たぶんすごく簡単なことでしょうが、 検索が下手で見つけることが出来ませんでした。 入力した数値が1〜5ならA 6〜10ならB 11〜20ならCと別セルに表示させるには何という関数を 使用すればいいかご存じの方がいたら教えていただけないでしょうか?
>>71 A1に数値が入ってるとして
=CHAR(64+INT((A1-1)/5)+1)
=CHAR(64+ROUNDUP(A2/5,0))
>>72-73 71じゃないけど発想がスゴイね
パッと思いつかんかった
76 :
71 :2008/04/12(土) 08:46:19
ありがというございます。 やってみます。
>72-73,75 問題をよく読みましょう。 >76 >74が正解
>>77 やっぱりそうだよなあ。
問題が非線形なのにどうして一次関数で表現できるのか不思議だったんだ。
入力した数値が1〜5ならA 6〜10ならB 「11〜20」ならC かw でも11-15のような気もする
80 :
名無しさん@そうだ選挙にいこう :2008/04/12(土) 13:35:38
Excel のVBAのパスを1に書き換えるアプリの 置き場所知ってる人いらしゃいませんか?
そうでもないな
>71 =CHOOSE((A1-1)/5+1,"A","B","C","C")
>82 いかにも糞シートができあがりそうな関数だなw
>>83 文句だけじゃなく、他の案を出してやれよ。
お前みたいのが一番糞w
>>72-73 ,77,82
質問者のレベルを考えて基本の式も書いてやれよ。知識自慢はお腹一杯。
>>71 =IF(AND(A1<=1,A1<=5),"A",IF(AND(A1<=6,A1<=10),"B",IF(AND(A1<=11,A1<=20),"")))
=IF(A1<=5,"A",IF(A1<=10,"B",IF(A1<=20,"C","")))
>>72 ,73が知識自慢に見えるって・・相当病んでるとしか
>>84 =IF(AND(A1<=1,A1<=5),"A"・・・・・・
↓
=IF(AND(A1>=1,A1<=5),"A"・・・・・・
>>86 普通にすまんかった。
=IF(AND(A1>=1,A1<=5),"A",IF(AND(A1>=6,A1<=10),"B",IF(AND(A1>=11,A1<=20),"")))
88 :
82 :2008/04/12(土) 15:34:38
>83 =MID("AAAAABBBBBCCCCCCCCCC",A1,1)
90 :
名無しさん@そうだ選挙にいこう :2008/04/12(土) 15:55:46
>>88 VLOOKUP使うほどの規模じゃないときはこれシンプルでいいな。いいこと覚えた。
CHARとか使うやつは学生なんだろうな。 実務でCHARなんか役立つ事はほとんどない。 解答は出せても回答はできないような春厨確定だな。 88の式も似たようなもんだ。でも82を先に書いているから88はネタだな。
92 :
名無しさん@そうだ選挙にいこう :2008/04/12(土) 16:16:10
ごてごてのIF文でいい気になってるやつはしねばいいのに
93 :
名無しさん@そうだ選挙にいこう :2008/04/12(土) 16:18:18
▼━質問テンプレ (出来れば使ってね) ━━━━━━━━━━━━ 【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 はい(専門書片手に何とか) 【4 VBAでの回答の可否】 可 下記のVBAを書いてみて実行してみたのですが 「Elseに対応するIfがありません」なるエラーが出ました。 当方皆目見当が付きません。 ご教授の程宜しくお願いいたします。 Sub 範囲指定印刷() If Range("A1") = 1 Then With Worksheets("Sheet1") .PageSetup.PrintArea = "A7:E9" .PrintPreview ElseIf Range("A1") = 2 Then With Worksheets("Sheet1") .PageSetup.PrintArea = "A10:E12" .PrintPreview ElseIf Range("A1") = 3 Then With Worksheets("Sheet1") .PageSetup.PrintArea = "A13:E15" .PrintPreview ElseIf Range("A1") = 4 Then With Worksheets("Sheet1") .PageSetup.PrintArea = "A16:E18" .PrintPreview ElseIf Range("A1") >= 5 Then MsgBox ("他の数字を入れてください。") End If End Sub
雑談は雑談スレでやれカス共
>>94 end withが抜けてる
Sub 範囲指定印刷()
If Range("A1") = 1 Then
With Worksheets("Sheet1")
.PageSetup.PrintArea = "A7:E9"
.PrintPreview
End With
ElseIf Range("A1") = 2 Then
With Worksheets("Sheet1")
.PageSetup.PrintArea = "A10:E12"
.PrintPreview
End With
ElseIf Range("A1") = 3 Then
With Worksheets("Sheet1")
.PageSetup.PrintArea = "A13:E15"
.PrintPreview
End With
ElseIf Range("A1") = 4 Then
With Worksheets("Sheet1")
.PageSetup.PrintArea = "A16:E18"
.PrintPreview
End With
ElseIf Range("A1") >= 5 Then
MsgBox ("他の数字を入れてください。")
End If
End Sub
それと最後は Elseif〜ではなくElse〜にしたほうが良い にしたほうが良い。
98 :
名無しさん@そうだ選挙にいこう :2008/04/12(土) 16:28:43
>>95 抜けてました!
上手くいきました。
ありがとうございました!
>>97 初歩的で申し訳ありません。
最後というのは
>>93 の下から4行目だけのことでしょうか?
また、Elseにした方がいいのは何故なのでしょうか?
>93 重複が多すぎる Sub 範囲指定印刷() Select Case Range("A1") Case 1 PA = "A7:E9" Case 2 PA = "A10:E12" Case 3 PA = "A13:E15" Case 4 PA = "A16:E18" Case Else MsgBox ("他の数字を入れてください。") Exit Sub End Select Worksheets("Sheet1").PageSetup.PrintArea = PA Worksheets("Sheet1").PrintPreview End Sub
ソースの可読性が上がる&エラー検地が容易になるから、かな これぐらい短いソースなら特に問題ないけど
101 :
名無しさん@そうだ選挙にいこう :2008/04/12(土) 16:41:49
>>99 こ、こんなにすっきりするもんなんですか!?
重複といわれても、何が余計なのかピンときておりません。
初心者ですみません。
あとSelectCaseを勉強してみます。
ありがとうございました。
こんなんでも動きますか? Sub test() Dim 範囲指定印刷 As Long A1Value = Range("A1").Value If Not (1 <= A1Value And A1Value <= 4) Then MsgBox "他の数字を入れてください。": End Worksheets("Sheet1").PageSetup.PrintArea = _ Range("A7:E9").Offset((A1Value - 1) * 3, 0).Address(False, False) Worksheets("Sheet1").PrintPreview End Sub
Dim A1Value As Longじゃないのころころすわよ
それをゆーなら、こうだろ Sub test2() If 1 > Range("A1") Or Range("A1") > 4 Then MsgBox "他の数字を入れてください。": End Worksheets("Sheet1").PageSetup.PrintArea = Range("A7:E9").Offset((Range("A1") - 1) * 3, 0).Address(False, False) Worksheets("Sheet1").PrintPreview End Sub
>88としては、こうかな Sub test3() If 1 > Range("A1") Or Range("A1") > 4 Then MsgBox "他の数字を入れてください。": Exit Sub Worksheets("Sheet1").PageSetup.PrintArea = Mid(" A7:E9A10:E12A13:E15A16:E18", Range("A1") * 7 - 6, 7) Worksheets("Sheet1").PrintPreview End Sub
106 :
82 :2008/04/12(土) 18:33:00
>88 まいりましたw
107 :
83 :2008/04/12(土) 18:33:49
>106 名前ミスッたorz
日付-日付で経過日時を出した後、1ヶ月を超えてもx月xx日とせずに xx日と日にちのみで表示したいのですがいい方法はありませんでしょうか?
109 :
名無しさん@そうだ選挙にいこう :2008/04/12(土) 19:57:02
>>108 A1に開始日B1に終了日として
C1に=DATEDIF(A1,B1,"d")
後は=DATEDIF(A1,B1,"d")&"日"
か書式設定で0"日"
28-31日越えたら表示上1日に戻るってことでしょ
質問文を読めない回答者が多いな
114 :
109 :2008/04/12(土) 20:28:05
115 :
名無しさん@そうだ選挙にいこう :2008/04/13(日) 01:43:22
初歩的で申し訳ないのですが、教えてください。 IPアドレスの表を作って並べ替えをする場合、 192.168.0.1〜192.168.0.254までのデータを並べ替えると 192.168.0.1 192.168.0.2 192.168.0.3 と若い順に並べたいのに 192.168.0.1 192.168.0.10 192.168.0.11 192.168.0.12 という感じで 1がついてしまうものが先に来てしまいます。 どうすれば若い順に並びますか?
>>115 作業用の列を設けたらどうかな。
A列 B列
1 ="192.168.0."&A1
2 ="192.168.0."&A2
3 ="192.168.0."&A3
みたいな感じで。並べ替えはA列を使って並び替える。
>>115 IPアドレスを値に直す関数を作ってみたが難易度高いぞ。
セルA1にIPアドレスが入っている場合、
=VALUE(LEFT(A1,FIND(".",A1,1)-1))*2^24+VALUE(MID(A1,FIND(".",A1,1)+1,FIND(".",A1,FIND(".",A1,1)+1)
-FIND(".",A1,1)-1))*2^16+VALUE(MID(A1,FIND(".",A1,FIND(".",A1,1)+1)+1,FIND(".",A1,FIND(".",A1,FIND(".",A1,1)+1)+1)
-FIND(".",A1,FIND(".",A1,1)+1)-1))*2^8+VALUE(RIGHT(A1,LEN(A1)-FIND(".",A1,FIND(".",A1,FIND(".",A1,1)+1)+1)))
(途中で改行が入っているが、これを1行にする)
これでIPアドレスが値に変換されるので、これでソートしてくれ。
>>117 A1に192.168.0.1と入れたら
3232235521と返って来た。
>>116 でいいと思うよ。寝よ
>>118 192.168.000.001でも3232235521が返ってくるわけで。寝よ
120 :
名無しさん@そうだ選挙にいこう :2008/04/13(日) 08:59:11
>>115 既存のデータをいじるなら、分解して使うのが便利。
まず、元データを隣の列に複写して「データ/区切り位置」で分割、
それをキーにしてソートする。
>>117 32ビットのIPアドレスを十進数に変換してるっぽいな
>115 ソートとはそういうもんだ。それが嫌なら 01にするとか、ソート用の列を用意するとか つかExcelの質問じゃないし、、 >116 B列に式なんか入れずに 192.168.0.1 のままで良いんでね
IPアドレスを比較したいだけなら、変換後の数値は無意味だけどこういう方法もある。 =(LEFT(A1,FIND(".",A1,2)-1)&MID(SUBSTITUTE(A1,".",".00"),FIND(".",SUBSTITUTE(A1,".",".00"),5)-3,3)&MID(SUBSTITUTE(A1,".",".000"),FIND(".",SUBSTITUTE(A1,".",".000"),12)-3,3)&RIGHT(SUBSTITUTE(A1,".",".00"),3))+0
また知識自慢か
>>124 それならもうちょっと短くできるぞ
=(LEFT(A1,FIND(".",A1,2))&MID(SUBSTITUTE(A1,".",".00"),FIND(".",SUBSTITUTE(A1,".",".00"),5)-3,3)&MID(SUBSTITUTE(A1,".",".000"),FIND(".",SUBSTITUTE(A1,".",".000"),12)-3,3)&RIGHT(SUBSTITUTE(A1,".",".00"),3))+0
これでもいけるはず。少数以下の変換誤差がちょっと怖いけど。
127 :
名無しさん@そうだ選挙にいこう :2008/04/13(日) 14:26:11
>>125 知識のカケラもないアンタにゃ理解出来ない世界だ
ぶっちゃけ、意味がわからん
>>124 はIPアドレスを
192168000001
という12桁の10進数に変換している。
>>126 は
192.168000001
という、少数以下が9桁の10進数に変換してる。
確かに大小の比較だけならこれでも問題なくできてしまう。
すでにExcelの問題ではなくなってるけどな。
アナルほど
知識自慢ならどんどんしてほしい そのためにこのすれに来てる奴もいるだろう
132 :
初めてさん :2008/04/13(日) 16:14:46
【1 OSの種類 .】 WindowsVista 【2 Excelのバージョン 】 Excel2007 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 セル内 1文字 フォントサイズ変更 色変更 前は2000を使っていまして 確か セル内の文字列を 1文字等任意で選んで フォントサイズや色の変更が出来たと思うのですが 2007だと同じことを しようと思っても フォントサイズ等の所が 暗転して選べません 何か方法あれば 教えて頂ければとっても助かります よろしくお願いします
>>132 数式バーで文字を選択したら項目が出てきたゾ?
おまいのは出ないのか?
135 :
初めてさん :2008/04/13(日) 17:42:00
数式バーで文字選択したら フォントの変更の所 暗転して 選べなくなるんです・・・ スクショ??? すみません
スクール水着の写真をよこせってことだよ
137 :
初めてさん :2008/04/13(日) 18:04:42
そうか、先頭が+だからか 更に先頭に「'」をつけるか、+だけ別のセルに表示させるといいよ ちなみに「=」も同じ
141 :
初めてさん :2008/04/13(日) 18:16:38
できましたぁ〜!! ありがとうございました
他の場所と同じにすりゃいいのに、そこだけセル内でやるのは何故だ
このまま印刷したら字が切れそう それにしても、最近の小学生は補数なんて勉強してるのか。驚きだ。
20年ぐらい前も似たようなやり方を聞いたような
【1 OSの種類 .】 WindowsXP Pro SP2 【2 Excelのバージョン 】 Excel2007 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 日付 書式 1桁 日付けの月と日が1桁の時にスペースを入れて幅を合わせる方法を教えてください。 書式でmを指定すると文字数が合わなくなり、mmだと0が入ってしまいます。
書式では無理 IF関数組み合わせて作るしかない
大半のフォントでずれると思うけど A1に2008/1/1みたいな形式で値が入ってるとする B1=IF(MONTH(A1)<10," "&MONTH(A1),MONTH(A1)) C1=IF(DAY(A1)<10," "&DAY(A1),DAY(A1)) D1=YEAR(A1)&"/"&B1&"/"&C1 作っておいてアレだけど、mm入れて0であわせるほうがよっぽどマシ
>>146 わかりました。ありがとうございました。
>>147 そのあたりはぬかりなく、固定ピッチフォントを指定してあります。
幅を合わせたいってだけなら B1=YEAR(A1) C1=MONTH(A1) D1=DAY(A1) みたいな感じで年月日を別の列に右揃えで表示すればいいだけじゃね?
=RIGHT(" "&MONTH(A1),2)
2007って条件付き表示形式が
>>145 書式では無理なので、セルA1に日付が入っているとして
=SUBSTITUTE(SUBSTITUTE(TEXT(A1,"yyyy年mm月dd日"),"年0","年 "),"月0","月 ")
とする。
−補足− この方法は日付データが文字列データに変換されるので注意のこと。
156 :
名無しさん@そうだ選挙にいこう :2008/04/14(月) 01:12:25
マクロ1とマクロ2を作って(マクロの記録)、 シートにコマンドボタンを作成して、 コマンドボタンを押すとマクロ1と2を実行する マクロ3を作った(マクロの記録)のですが、 ファイル名を変えると「メソッドが取得できませんでした」とでてマクロが実行できませんです。 何か良い方法はありませんでしょうか?
2007から条件付き書式でユーザー定義が選べるようになったから MONTHとDAYがそれぞれ10以上かどうか判定する条件を3つ入れて 「 m/ d」「 m/dd」「mm/ d」「mm/dd」の4通りに書式を分ければいい。
>156 ファイル名が違うと当然、エラーが出る。 同一ファイル内で実行するか、ファイル名を選択するメッセージボックスを作る。
【1 OSの種類 .】 WindowsVista SP1 【2 Excelのバージョン 】 Excel2007 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 条件値が2つ ワークシート1に 条件A(文字列) 条件B(数字) データ というように入力されており、条件AとBにあうデータを 別のワークシートから取り出します。 データ自体はワークシート2に 条件A1 条件A2 条件A3・・・ データ1 データ21 データ31 データ2 データ22 データ32 と入力されており、条件Aで列が、条件Bで行が決定し、それに対応するデータを ワークシート1の方に表示させたいのです。 このようなことはどうしたらいいのでしょう? 条件Aが数字ならばINDEX関数あたりで処理できるのですが・・・
160 :
名無しさん@そうだ選挙にいこう :2008/04/14(月) 22:10:46
データの表は1次元にすると楽 条件A1 データ1 条件A1 データ2 条件A2 データ1 条件A2 データ2 てな感じ。
>>159 INDEXにMATCHをネストしてみたら?
>>161 ありがとうございます。
その通りの方法でできました。
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 可・否 【5 検索キーワード 】 メメント・モリ しょぼくれた質問ですみません。ExcelでシートをA4で印刷する際、印刷プレビューで 見ると画面が切れてしまい実際に印刷してみてもプレビューどおり切れてしまいます。 まだ切れるのはいいとしても、二枚目が存在しないんです。 つまり、一枚に出力できる範囲を超えたから切れているというわけではなさそうなのです。 倍率を下げると一応印刷はできるのですが、元々A4に収まりそうなものなので、まるで 縮小をかけたように一回り小さくなってしまいます・・・。当然ながら以下の点は抑えています。 ・印刷範囲の指定 ・隠された行・列の有無 ・フィルタ これら全て問題はありませんでした。 他のPCで(Excel2003)開いても印刷すると、多少差異はあれど同様の印字結果になるようです。 しかし、別PCのExcel2007でファイルを開いて印刷すると、当然のようにイメージどおりA4で出せましたw 自分の知り得る範囲では調べたのですがどうも解決できません。 上記の状況から、何か思い当たるような原因はありますでしょうか?
164 :
名無しさん@そうだ選挙にいこう :2008/04/15(火) 01:09:19
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 2007年 2008年 対前年差額 みかん 10 20 10 りんご 30 10 -20 ピボットテーブルで上記のように対前年との差額を作成したいのですが、ご教授下さい。
なぜにピボット? D4=D3-D2 じゃだめなの?
166 :
164 :2008/04/15(火) 07:18:05
>>165 他のデータもありいろいろ入れ替えたりするの為、ピボットでないとダメなのです。
>>166 今は説明できる時間がないができる。
2008年セルの上で右クリックして「数式」→「集計アイテム」ね。
>>163 エクセルの印刷プレビューには誤差がある
更にバージョンが変わるとまた誤差が出る
つまりエクセルが内部的に一枚で印刷できると思ったけど端が切れたってことだな
ピッチの狭いフォントに変えるか、一行小さくするか
嫌いじゃなかったら印刷だけワードにするのもいい。俺は嫌いだけど
169 :
名無しさん@そうだ選挙にいこう :2008/04/15(火) 18:03:01
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2002 【3 VBAが使えるか .】 勉強します 【4 VBAでの回答の可否】 可 【5 検索キーワード 】エクセル VBA 条件付き書式 4 以上 エラー 400 A1に10、B1に30、C1に20、D1に40と4つのセルに数値を入力しております。 数値の大きい順にセルの背景色を4つに色分けしたく、以下のVBAを実行したところ、上位から3つ目までは 色分けされましたが、一番小さい数値のセルだけ背景色が変わりません。(エラー400と表示されます) なんとかして自動で色分けをしたいのでよろしくお願いします。 Sub 支持率() Range("A1:D1").Select Selection.FormatConditions.Delete Selection.FormatConditions.Add Type:=xlCellValue, Operator:=xlEqual, _ Formula1:="=LARGE($A$1:$D$1,1)" Selection.FormatConditions(1).Interior.ColorIndex = 37 Selection.FormatConditions.Add Type:=xlCellValue, Operator:=xlEqual, _ Formula1:="=LARGE($A$1:$D$1,2)" Selection.FormatConditions(2).Interior.ColorIndex = 35 Selection.FormatConditions.Add Type:=xlCellValue, Operator:=xlEqual, _ Formula1:="=LARGE($A$1:$D$1,3)" Selection.FormatConditions(3).Interior.ColorIndex = 36 Selection.FormatConditions.Add Type:=xlCellValue, Operator:=xlEqual, _ Formula1:="=LARGE($A$1:$D$1,4)" Selection.FormatConditions(4).Interior.ColorIndex = 38 End Sub
>>169 Excelの制限で条件付き書式は3つまでしか設定できない。
どうせVBA使うんなら順位の判定から色の変更まで全部VBAでやってしまえばいい。
別の解決方法として、Excel2007に乗り換えれば4つ以上の条件が設定できるようになる。
171 :
169 :2008/04/15(火) 18:51:32
>>170 自分の使用しているExcelのVer.が古いので、169では4つ目のところでエラーが出てしまうと言うことですね。
>Excel2007に乗り換えれば
これは無理ですが、
>VBA使うんなら順位の判定から色の変更まで全部VBAでやってしまえばいい。
これなら色々調べれば出来そうなので(と言っても自分にはムリかも)もうちょっと試行錯誤してみます。
アドバイスありがとうございました。
VBAでやるなら条件付き書式を使う意味が無いし 条件付き書式を使うならVBAでやる意味も無いんじゃね? それともプレゼン用に、ボタンを押すとパッと色が付く、みたいな事をやりたいのかな? そうでなければ4色までなら条件付き書式だけで塗り分けられると思うけど。 (元の1色+条件付き書式の3色=4色)
>>172 >ボタンを押すとパッと色が付く、みたいな事をやりたいのかな?
VBA超初心者の自分にとっては無謀なことかもしれませんが、全くその通りです。
>そうでなければ4色までなら条件付き書式だけで塗り分けられると思うけど。(元の1色+条件付き書式の3色=4色)
これは思いつきませんでした。確かに出来ますね。ありがとうございます。
誰かサラサラっと構文を書いてく(ry
>>173 コマンドボタンを設定するのは出来るの?
Sub aaa() Dim i As Long Range("A1:D1").Interior.ColorIndex = xlNone Range("a1").Select For i = 1 To 4 If Application.WorksheetFunction.Rank(Selection.Value, Range("a1:d1")) = 1 Then Selection.Interior.ColorIndex = 37 ElseIf Application.WorksheetFunction.Rank(Selection.Value, Range("a1:d1")) = 2 Then Selection.Interior.ColorIndex = 35 ElseIf Application.WorksheetFunction.Rank(Selection.Value, Range("a1:d1")) = 3 Then Selection.Interior.ColorIndex = 36 Else Selection.Interior.ColorIndex = 38 End If Selection.Offset(0, 1).Select Next End Sub 久々のVBA まーこの処理が1万行ぐらい続くなら少しは意味があるだろうな、まさか四行で終わらないよな、と思いつつ寝る
176 :
名無しさん@そうだ選挙にいこう :2008/04/15(火) 21:54:10
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 少し 【4 VBAでの回答の可否】 可 数式を消されたくないので特定のセルの保護をしたいのですが どうしたらいいでしょうか。 「シートの保護」では、セルの数値の入力ができなくなるから困るのです。
>>176 数値を入れるセルで、
セルの書式設定→保護→ロック解除した後に
シートを保護
【1 OSの種類 .】 WindowsXP SP2 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 職場のPCですでにユーザー設定リストに入力されているモノをそのまま Vistaマシンにコピーしたいのですがユーザー設定リストはどこかにファイルとして保存されているのでしょうか? ファイルとして保存してあるのであれば参照先など教えて頂けるとありがたいです。 ファイルとして保存されていないのであれば一から入力し直すしかないのでしょうか。
179 :
169 :2008/04/15(火) 22:26:23
>>175 出来ました。ありがとうございます。
自分も少しでもVBAが理解出来るように勉強したいと思います。
175さんに素敵な夢が見られますように。
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel 2007 【3 VBAが使えるか .】 使えません 【4 VBAでの回答の可否】 否 初心者の質問で申し訳ありません。 宜しくお願い致します。 ひとつのセルに県名から番地まで一続きに入力されている住所録があるのですが その中から例えば「○○市」のような単語を含むセルのみを抽出して、 新しく住所録を作ることは可能でしょうか。 Excelだったのでこちらで質問させていただいた次第です。 申し訳ありませんが、どなたかお願い致します。
>>181 オートフィルタのオプションで「○○市を含む」データを抽出
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel 2007 【3 VBAが使えるか .】 否 【4 VBAでの回答の可否】 否 A列に100行程度 数字が入るのですが、同じ数字を一つのグループとしてその個数を数えて合計を出す事はできないでしょうか。 例えば、「1」「2」「1」「2」「4」「6」「6」「6」 なら1が2個、2が2個、4が1個、6が3個 つまりグループとしての個数は「8」となるような。 数字の値は上限、下限がなくばらばらなので、非常にてこずっております。 もし知恵をお貸しいただけるのでしたらお願いします。 今の時間までがんばりましたが無理でした・・・
184 :
183 :2008/04/16(水) 05:09:40
すいません、あせってミスりました・・・ ○例えば、「1」「2」「1」「2」「4」「6」「6」「6」 なら1のグループ、2のグループ、4のグループ、6のグループ ○つまりグループとしての個数は「4」となるような。
ピボットテーブル かオートフィルタ→フィルタオプションで重複するレコードは無視する か並び替えてB1に=IF(A1=A2,"",1) かデータ→集計でツリーをとじて数を数えるか
>>183 質問の意味がよくわからない。合計って何と何の合計?
数字が何種類あるか調べるだけならA列を選択してからデータ→重複の削除
>>185 2007では「集計」じゃなくて「小計」に機能の名称が変わった。
小計を使うには、あらかじめデータをソートして、列にタイトルを付ける必要があるからちょっと面倒だな。
>>181 気をつけないと佐野市を抽出するつもりが泉佐野市まで抽出するはめになる。
フィルタオプションを使えば簡単だ。
検索条件範囲を
タイトル タイトル
*佐野市* <>*泉佐野市*
と並べればいけると思うが。
189 :
188 :2008/04/16(水) 07:52:29
タイトル 栃木県佐野市* 佐野市* でもいいか。
*県佐野市*だろw
191 :
188 :2008/04/16(水) 09:16:09
>>190 下らん突っこみするなよ。
そんなのは分かってるって。
それを書こうかとも思ったが、栃木県佐野市* でも問題ないだろ?
大阪は泉佐野市のほかに 泉大津市、大阪狭山市、河内長野市あたりも控えてるな やばいな…
>>169 まだみてるかな
Sub hoge()
ColLst = Array(37, 35, 36, 38)
Range("A1:D1").Interior.ColorIndex = xlNone
For i = 1 To 4
n = 0
For j = 1 To 4
If Cells(1, i) < Cells(1, j) Then n = n + 1
Next
Cells(1, i).Interior.ColorIndex = ColLst(n)
Next
End Sub
195 :
名無しさん@そうだ選挙にいこう :2008/04/16(水) 12:41:56
質問させて下さい。 関数で数値検索をした時に、検索でヒットした数値じゃなくセル番号を表示させる為にはどうすれば良いのですか? 例えば =MAX(A1:A8) でA5に入力された200という数値ではなく、A5と表示させたいんです。 =CELLで表示させようとしたんですが駄目でした。 VBAとか難しい事はわからないので、どうにか関数だけで表示させたいです。 物凄く初歩的な質問かもしれませんが、どなたかお願いします。
>>195 関数では分からない・・ので次善策
=if(a1=max(a:a),a1,"")
と入れてオートフィルタ、もしくはctrl+↓なんかで探せば見つかる
けどスマートじゃないなぁ
>>195 =ADDRESS(MATCH(MAX(A1:A8),A1:A8),1,4)
198 :
名無しさん@そうだ選挙にいこう :2008/04/16(水) 13:28:53
>165 A1から始まっている場合は、これで ="A" & MATCH(MAX(A1:A8),A1:A8,0)
199 :
名無しさん@そうだ選挙にいこう :2008/04/16(水) 17:45:33
質問です。 エクセルの本を買ってきたんですけど、付属のCD-ROMの ダウンロードが出来ません。 どうもDVD-ROMというものがいっぱいのようで。 DVD-ROMって分かりますでしょうか? このDVD-ROMの中身の削除って、してしまっても 大丈夫なのでしょうか? どうぞ宜しくお願いします。
用語の使い方がほとんど間違ってるので理解できない PCの機種名と本の名前かいたら回答できるかも
>>199 ROM=Read Only Memory=読み込み専用の記録媒体
読み込み専用だからCD-ROMもDVD-ROMも中身を削除なんてことはできない
物理的に無理
わからないなりにも用語を正確に使ってから質問しよう
202 :
名無しさん@そうだ選挙にいこう :2008/04/16(水) 19:08:29
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 2つのセルの文字をくっつけるにはどうしたらいいでしょうか? &とか関数以外で何か方法はありますでしょうか?
むしろどういった目的で&とか関数以外で文字をくっつけたいんだ
204 :
名無しさん@そうだ選挙にいこう :2008/04/16(水) 19:20:51
普通は&でくっつけて結果をコピー→テキストのみ貼り付けしていらな文字列消す
>>202 普通は&を使うモノだから、
&を使えない(使いたくない)理由を書いたほうがいいと思う
そっちから別の答えが出るかもしれない
206 :
名無しさん@そうだ選挙にいこう :2008/04/16(水) 19:44:26
>>202 です!
>>204 さんで解決しましたありがとうございます!
CSV形式であるソフトに取り込もうとした時に
関数が入っているとエラーになってしまったので
質問しました。
みなさんありがとうございました。
&とか関数以外の方法 セルB選択>F2>Shift+Ctrl+←>Ctrl+X セルA選択>F2>Ctrl+V 多分望んだ方法じゃないだろうけど
【1 OSの種類 .】 WindowsVista 【2 Excelのバージョン 】 Excel2007 【3 VBAが使えるか .】 いくらか 【4 VBAでの回答の可否】 可 ワークシート関数をたくさんネストせずにすませるために、ユーザー定義関数を作成しています。 うまくいかないので、最小限の部分だけ抜き出してみましたが、エラーになってしまいます。 分類名を引数にして、製品ワークシートのセル範囲の中の相対的な位置を求めたいのです。 Function ichi(分類名 As String) As Integer ichi = WorksheetFunction.Match(分類名, Worksheets("製品").Range("A2:d2"), 0) End Function これだけなら、match関数でいいのですが、この値を更に別の関数に入れなくてはならないのです。 おかしいところご教示ください。
>>208 直接の回答ではないけど、とりあえず一点。
検索結果が#N/Aになった時のことを考慮していない。
>>208 関数をそのままコピペして試してみたけど、まったく問題なく動作した。
どこで、なんてエラーが出てんの?エラーメッセージをそのまま書いて。
勝手に略したり翻訳したりしないで、そのまま書き写して。
211 :
195 :2008/04/17(木) 03:41:25
>196 >197 出来ました。 有難う御座いました。
>>208 >>210 それじゃ製品シートのA2:D2を変更しても再計算しねーなぁ。
まさかApplication.Volatileを書くわけにもいかんし、そういうユーザー定義関数は作っちゃいかんよ。
そもそもMatchの検査範囲は1行または1列だよなぁ。
俺はエクセルが使える と公言するためには、 関数 VBA マクロ ピボットテーブル あとどんな知識が必要でしょうか?
>214 実際の業務をExcel上で表現できるだけの理解力と判断力 加えて他人から「Excelで何をやりたいのか」を正確に聞き出せるだけのコミュニケーション能力 知識はそれ単体ではたいした意味はない
>214 あつかましさ
>>214 VBA
マクロ
この二者、イコールではないんだけど、ここで二つを出すこと(VBAとマクロが使えます)は
少しおかしい。
>>213 A2:D2は一行だね。
>>214 ピボットテーブルは必須じゃねーな。
知らなくたって同じことは簡単に出来るし。
ピボットテーブルが出来なくたって同じことはVBAまたは手操作で出来るから必須じゃねーだろ?
220 :
219 :2008/04/17(木) 12:31:27
すまん、上の最後の行は消し忘れだ。
こういう質問は荒れそう・・・ 環境によるとしか言えない
四則演算ができる お絵かきができる
一般事務ならsum・if関数は必須だけど、後はフォント弄ったり グラフ作れればいいんでない あとはこのスレで回答者が理解できるように質問することができるなら、 大抵なんとかなると思うけどな〜
エクセル使えるかどうかの基準。 個人的にはピボットテーブル使えるかどうかで判断してる。 ピボット使えないやつは何もできないのと同じ。
以上、ピボット厨の発言でしたww
アンケ−ト集計しカ使ったことねーよ
・大企業では会社のdbにアクセスして数字を引っ張ってこれるだけのaccsessの知識があればまず困ることはない ・中企業では変な専用ソフトが根付いててそれを覚えるのが最優先 ・零細企業ではエクセルでDBモドキを組み立てることができるとあっというまに自分の仕事が無くなって営業に飛ばされる。下手すればwordから数字をかき集めろとか言われる 以上、5社渡り歩いた俺の経験 大企業のdb構築の基礎でも学んでおけばよかったと後悔している・・orz
>>226 なんでアンケート集計にVBA使わなかったの?
5択みたいなアンケートならピボットのほうが早いんでない 個人的には集計の法が好きだけど
pivotでsoftがあったから 手直しただけ 普通なら、accessでやると思った
>>227 考えさせられるなあ。
大企業ほど環境が整えられていて,正しいアプローチでのコンピュータ利用が
啓蒙されている。
中小から零細になるほど環境も悪く,使い方もDQN。
こういう傾向はあるだろうな。
ちなみにうちは中小。
>>231 ピボットテーブルにしてしまうとピボットを知らない人は加工できなくなる
(こともないんだけど、そうおもわれてしまう)
集計は確かに貧弱だけど、逆に言うと他人でも容易に手を加えられるという点が長所ね
まぁ・・あらゆる人が正しいテーブルを使うことができれば、全てピボットでいいんだけど、
現実はそうもいかないし、正しくないからこそナァナァだからこそ儲けを得る変態的な営業もいる訳で
234 :
233 :2008/04/17(木) 22:34:09
送信してしまった まぁ、集計がいらないというのは"良い"会社だと思っていい 本当にw 修正に次ぐ修正がある弊社ではそういうわけにはいかないんだ でもそれで利益があがる以上、総務&経理はそれに従うしかなく・・・orz 適材適所、両方つかえて尚且つ、どれが最適か?を選択することができるならもはや何もいう事はない
元銀行員だが
>>232 一流企業になると、営業は正しい利用法・・というよりもはや営業+入力業務
入力するだけで全てのデータが正しい方向に動く(もし誤動作があった場合すべて保険で補償されているw)
ので、確実に入力さえすれば全てok!な世界
中小は変なシステムだが、オバサン達はすさまじいスピードで数百枚の伝票を入力している。すごいけど潰しは利かないだろうなという印象
(営業はほぼ外回りオンリー)
そして零細は・・\(^o^)/
本当になんのシステムもないが、システム自体を買う金も無いので、
一般事務に無理矢理エクセルをおぼえさせてdbもどきのようなものを作らせると・・
このスレの回答者みたいな連中がそういうところで手助けもらう日を信じて・・!
寝ます
ピボット論議に結論づけてやるw ピボットは「エクセル中級の最初のもの」。 目的に応じたクロス集計表を作成するのに最適。 エクセルのデータ処理機能・操作のほんの一部 (=エクセルという大海のオアシスw? がピボット機能) それ以下でも以上でもない。
>>236 まったくその通り。
ピボットは簡単に覚えられるし,使うのも簡単。
目的に最適。
エクセルのほんの一部だけどこれだけでほぼなんでもできる。
難しいこと覚える必要ない。
まさにオアシス。
ピボット最大の問題はピボットが妙に使いにくいこと&知名度が低いこと テーブルの作り方&ピボットをマスターできれば大半の関数、それもsumですら不要になる場合が多いのに、 それを全然推さずに機能の一つに留まっていること あと初めて使うときは非常に使いにくく、初心者離れを起こしやすい それがなければね
単に合計を出したいだけならΣボタン押すだけの方が
まあSUMくらいは覚えといても損はないね。 SUMIFとかCOUNTIFは覚える必要ないけども。
241 :
名無しさん@そうだ選挙にいこう :2008/04/17(木) 23:53:44
ピボットで盛り上がっているスレの流れと、全く関係ありませんが質問です。 【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 はい(ちょっと) 【4 VBAでの回答の可否】 可 下記VBAを書いたのですが(Dドライブ直下にあるtxtをSheet3に読み込みたい) 「シートは既に開いています」と表示されました。 勿論シートは開いていません。またデバッグ画面にもなりません。 どうすれば解決できるのでしょうか? 専門書通りに記述したのですが・・・ ご教授の程宜しくお願い致します。 Option Base 1 Sub テキストファイル入力() Dim myWord(6) As String Dim i As Integer, j As Integer Worksheets("Sheet3").Activate Open "D:\TEST修正後.txt" For Input As #1 Do Until EOF(1) Input #1, myWord(1), myWord(2), myWord(3), myWord(4), myWord(5), myWord(6) i = i + 1 For j = 1 To 6 Cells(i, j).Value = myWord(j) Next j Loop Close #1 End Sub
242 :
名無しさん@そうだ選挙にいこう :2008/04/17(木) 23:57:55
>>241 の訂正です
×「シートは既に開いています」と表示されました。
○「ファイルは既に開かれています」と表示されました。
244 :
241 :2008/04/18(金) 01:21:17
すいません。
自己解決してしまいました。
>>243 ありがとうございました。
OS XP バージョン 2003 年令のリストを作成するのに =DATEDIF(B3,$A$1,"y") として、A1に本日の日付 B2からその列に名前 B3からその列にに生年月日を入力し、 年令が表示されるようにしたいと思っているのですが、生年月日が未入力の時に 年令が108と表示されます。 生年月日が未入力のときには何も表示させないようにしたいのですが お力をお貸しください。
ISNUMBER
>246 ありがとうございました。 うまくいきました。
ピボット と ホビット は、つい混同してしまう。
2007のPDFに変換する機能を消してしまったのですが 再インストールしか復旧手段はありませんか?
251 :
250 :2008/04/18(金) 12:30:01
↑すみません、自己解決しました
>>234 修正に次ぐ修正があるならなおさらピボットでしょ。
問題の本質を把握できていないだけじゃない?
>252 ピボット云々の問題ではないだろ。 問題の本質を把握できていないのはお前の方だと思うぞ。
おれもそう思う。
日付について質問させて下さい。 OS:XP Excelバージョン:2000 VBAは使えません(簡単な物でしたら指示に従い行動いたします) 内容 Excelにて日報形式の書類を作成しました。 1年分の日報を作成しなければいけなく別シートにしていくには多すぎたので1つのシート内にまとめることにしました。 1日分の完成した日報をそのまま下へ下へコピーし、365日分作成したいのですが日付の表示を連続した物に出来ないでしょうか? 何か良い方法があれば教えて下さい。
>>255 まず1日目の日付欄に「平成20年4月1日」などと普通に日付けを入れる。
たとえばこの日付が入ったセルがZ8だったとする。
2枚目の日付欄には「=Z8+1」と入れる。あとは、2枚目をどんどんコピペしていくだけ。
コピー元の範囲を倍々に増やしていけば9回のコピペで365枚に増やせる。
でも完成した形の日報を並べるんじゃなくて、内容や担当者みたいな変更のある部分だけを
日付をキーにした一覧表にして、印刷は別のシートかフォームでやった方がいいぞ。
364日分手打ちすればいいと思うよ
259 :
255 :2008/04/18(金) 15:53:50
>>257 コピペで出来ました!本当に助かりました。ありがとうございます。
チラシの裏
無理やり1ファイルにまとめずに1日分=1ファイルでいいと思ったり。
というかどうせ印刷してファイリングするんだろうから、パソコン内に過去の日報を保存する必要もないような。
保存するなら
>>257 の言うような一覧表の形じゃないとExcel使ってるメリットがあまり無いような。
グラフについてお教えください。 ある現象が起こった時点とその値の累積値を折れ線グラフにしたいと考えています。 セルの記入状況は以下のような感じです。 時点|累積値 000|000 100|050 120|060 150|100 160|120 上記の「時点」をX軸(項目軸)とし、「累積値」をY軸(数値軸)としてグラフ化するのですが、 「時点」の間隔が不均等にもかかわらず、項目軸の間隔は均等(セルの行数通り)になってしまいます。 「時点」の間隔が不均等なことも含めてグラフ化するには、どのようにしたらよいのでしょう。 (各「時点」間にその間隔を反映させた空白セルでも挿入すれば可能かもしれませんが、表の都合上、空白セルを間に挟みたくはありません。) もし解決策をご存知の方がいらっしゃいましたら、お教えいただければありがたいです。 よろしくお願い申し上げます。
262 :
261 :2008/04/18(金) 16:36:04
すみません、テンプレ書き添え忘れました。 OS:Windows XP Excelのバージョン:Excel2002 VBA:使えません VBAでの回答:否 検索キーワード :「エクセル グラフ 項目が等間隔でない」 よろしくお願い申し上げます。
264 :
261 :2008/04/18(金) 16:47:39
連投すみません。 検索キーワードの「エクセル」を「Excel」に変えたら簡単に見つかりました。 (→「グラフの種類」を「散布図」にすればよいとの事でした。) お騒がせして大変申し訳ありませんでした。m(_ _)m
解決策が見つからないので質問させてくれ、すまん 「バブル」のグラフを複数作りたいのだけど どうもバブルの最大面積が固定されているらしく 一つのグラフでは最大値が9人、もう一つのグラフでは16人なのに その大きさが一緒になってしまっている。(一人を表す面積が異なる) 複数のグラフ同士でもバブルサイズの比率を等しくできる?
266 :
265 :2008/04/18(金) 20:15:28
追加!ごめん OS:Windows VISTA Excelのバージョン:Excel2002 VBA:× VBAでの回答:× 検索キーワード :「Excel バブルサイズ」
バブルヲクリック→データ系列の書式設定→オプション→バブルサイズの比率とかなんとか
268 :
265 :2008/04/19(土) 08:17:58
>>267 なるほど、わかった!
助かったよ、ありがとう!
【1 OSの種類.】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか.】 はい 【4 VBAでの回答の可否】 可 Excelで複数シートを一括選択して、各シート毎にページ番号を1から振る設定で印刷するVBAのコードはどのように書けばいいでしょうか?
すみません、269です。 【検索キーワード】:複数シート 一括 印刷 ページ番号 です。 よろしくお願いします。
ctrlおしながらシート見出し(シト1とかシート2とかいう奴)をクリックしていけばグループ化ができる グループ化したものは連続で印刷ができる 印刷プレビュ→設定→フッダー/ヘッターでフッダーり編集(上にページ番号つくりたければヘッダーに)紙をめくった模様の中に「#」かいてあるものをクリックすれば ページ番号が入る 後はそのまま印刷 シートごとにページ番号ふりたいなら、グループ化せずにプレビュー→フッダーの設定していく
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 ウィンドウ固定ってショートカットキーから出来ませんかね…。
>>272 ショートカットキーにマクロ登録
Sub ウィンドウ枠固定()
ActiveWindow.FreezePanes = True
End Sub
ありがとうございます
【1 OSの種類 .】 Windows2000 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 水道料金表を作っているのですが・・・。 超過分の加算額が使用水量によって段階があるので、悩んでいます。 使用水量が8未満の場合は1000円 9〜20の場合は1?につき205円プラス 21〜30の場合は1?につき250円プラス という式を作りたいのです。 どうぞよろしくお願いします。
276 :
275 :2008/04/19(土) 16:25:33
すみません、書き直します。 使用水量が8未満の場合は1000円 9〜20の場合は1立米につき205円プラス 21〜30の場合は1立米につき250円プラス です。 よろしくお願い致します。
278 :
275 :2008/04/19(土) 17:00:55
>277 8以上9未満とは8.9立米とかでしょうか? 検針数値にコンマは無い(1の位が最小の位)ので、8以上9未満は発生しないです。
279 :
275 :2008/04/19(土) 17:03:29
>8未満の場合は1000円 これの書き方が悪いのですね、すみません 0〜8立米までは基本料金の1000円 9〜20立米の場合は1立米につき205円プラス 21〜30立米の場合は1立米につき250円プラス です。何度もごめんなさい・・・。
280 :
93 :2008/04/19(土) 17:17:23
お世話になっております。 【1 OSの種類 .】 WindowsXP【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 はい(多少)【4 VBAでの回答の可否】 可 「End Ifに対応するIfブロックがありません」なるエラーが出ました。 何かが抜けているとも思えません。ご教授の程宜しくお願いいたします。 Sub 範囲指定印刷2() If Range("H62").Value > 0 Then With Worksheets("Sheet1") .PageSetup.PrintArea = "A7:E9" .PrintPreview End With If Range("I62").Value > 0 Then With Worksheets("Sheet1") .PageSetup.PrintArea = "A10:E12" .PrintPreview End With If Range("J62").Value > 0 Then With Worksheets("Sheet1") .PageSetup.PrintArea = "A13:E15" .PrintPreview End With If Range("K62").Value > 0 Then With Worksheets("Sheet1") .PageSetup.PrintArea = "A16:E18" .PrintPreview End With (続く)
これでどうだ? =IF(AND(A1>=1,A1<9),1000,IF(AND(A1>=9,A1<21),(A1-8)*205+1000,(A1-20)*250+3460))
282 :
93 :2008/04/19(土) 17:17:47
If Range("L62").Value > 0 Then With Worksheets("Sheet1") .PageSetup.PrintArea = "A19:E21" .PrintPreview End With If Range("M62").Value > 0 Then With Worksheets("Sheet1") .PageSetup.PrintArea = "A22:E24" .PrintPreview End If End Sub
284 :
93 :2008/04/19(土) 17:28:47
>>283 今回は違う表でございまして
まずセルH62〜M62に色々な金額が入っています。
その数字がはねる印刷用のページが"A22:A24"といった範囲になっております。
で、H62に0以上の数字が入っている場合、対応する印刷範囲を表示、
I62に・・・と処理したいわけです。
前回と違い、参照するセルが多く、Caseで書くなら32通りも書かなきゃいけないのかな
と思いましてIFで書いたのですが上手くいきませんでした。
>>99 の答えをはじめ色々大変お世話になりました。
285 :
275 :2008/04/19(土) 17:33:39
>>281 すごい!できました!
ありがとうございます!
すごく嬉しいです!本当にありがとう!
お世話になりました。
286 :
名無しさん@そうだ選挙にいこう :2008/04/19(土) 19:57:59
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 可・否 もらえれば頑張って理解します A.csvの行の長さは2000ほど ブックは毎日更新されていますが2000以上行が増えることなく 先頭の行が抹消され更新されていきます。 B.csvは最近作られたブックなので行の長さは500しかありません。 しかもこれから2000行まで増え2000行以降はA同様先頭が抹消され更新されていきます。 A.csvとB.csvの最近更新された末尾20の行だけ他のブックで参照したい場合。 book1のセルにはどのようにすれば良いですか?
287 :
名無しさん@そうだ選挙にいこう :2008/04/19(土) 21:25:28
Excelで作成した内容をメールで送りたいのですが、送る事ができません。 そうゆう場合はどうすれば良いのでしょうか? Excelを開いたまんま電子メールで送ったら「STMP?がなんたらで60秒待ってください」みたいな表示が出て送る事が出来ませんでした。
>>287 意味がよくわかんない。
Excelのブックをメールに添付したいってことではなくて、
メールの送信処理自体をマクロか何かを使ってやりたいってこと?
>>280 End Ifが一番最後にしかないが?
各Ifに対してEnd Ifをつけるか、2番目以降のIFをEle Ifにするかしないとダメなんじゃない?
>>288 分かりづらい言い方ですみません。
ブックを添付して相手に送りたいだけですorz
292 :
93 :2008/04/19(土) 21:49:21
>>289 ありがとうございました。
あと、もう一つ伺いたいのですが宜しいでしょうか。
下記VBAを実行しましたが、「実行時エラー1004」「アプリケーション定義またはオブジェクト定義のエラーです」
となってしまいました。
一つ目のプレビューは何とかなるのですが、二つ目以降が出来ません。
Sub 範囲指定印刷2()
Select Case Range("H62")
Case Is > 0
Worksheets("Sheet1").PrintPreview = "A7:E9"
Case Is <= 0
MsgBox ("みずほはありません。")
End Select
Select Case Range("I62")
Case Is > 0
Worksheets("Sheet1").PrintPreview = "A10:E12"
Case Is <= 0
MsgBox ("三菱はありません。")
End Select
Select Case Range("J62")
Case Is > 0
Worksheets("Sheet1").PrintPreview = "A13:E15"
Case Is <= 0
MsgBox ("citiはありません。")
End Select
(続きます)
293 :
93 :2008/04/19(土) 21:51:20
Select Case Range("K62") Case Is > 0 Worksheets("Sheet1").PrintPreview = "A16:E18" Case Is <= 0 MsgBox ("新生はありません。") End Select Select Case Range("M62") Case Is > 0 Worksheets("Sheet1").PrintPreview = "A19:E21" Case Is <= 0 MsgBox ("あおぞらはありません。") Exit Sub End Select Worksheets("Sheet1").PageSetup.PrintArea = PA Worksheets("Sheet1").PrintPreview End Sub
>>280 こうやって改行しないで書く方法もある。これならEnd Ifを書かなくていい。
If Range("H62").Value > 0 Then Worksheets("Sheet1").PageSetup.PrintArea = "A7:E9":Worksheets("Sheet1").PrintPreview
同じような構文の処理がいくつも並ぶときは横に延ばして、行数を減らした方が見やすくなる。
さらに言えばWith〜End Withの部分をSubプロシージャに分けた方がもっといい。
>>291 分かりました。誘導ありがとうございました!
296 :
93 :2008/04/19(土) 22:02:12
>>294 参考になります。ご指摘頂きありがとうございます。
早速やってみます。
VBAを勉強し始めたばかりで、参考書の丸写しが精一杯のレベルです。
>>294 の方をはじめ皆様にご面倒をおかけしますが宜しくお願いいたします。
>>292 どうして、あおぞら銀行のところだけExit Subがあるんだ?
何をやりたいのか今ひとつ見えてこないんだけど、プレビューの範囲を指定するときはこうかく。
Worksheets("Sheet1").Range("A7:E9").PrintPreview
最後にまとめてプレビューしたいならRange型の配列を使う。
298 :
93 :2008/04/19(土) 22:17:07
>>297 できました!ありがとうございました。
何がやりたかったかというと、
>Select Case Range("H62")
>Case Is > 0
>Worksheets("Sheet1").PrintPreview = "A7:E9"
>Case Is <= 0
>MsgBox ("みずほはありません。")
>End Select
みずほと取引がある場合、セルH62に金額が入ります。
で、取引があるときだけA7:A9にある伝票を起票・印刷するというものを
マクロでやりたかったわけです。
助かりました。ありがとうございました。
>>298 「こういうことをやりたいんです」みたいにやりたいことを先に書いてから
コードを書いた方が回答が得やすいかも。
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 countif indirect 参照 1日の家計を1シートにつけていました。ある価格のものをいくつ買ったかというリストを 別のシートに出力したいのですが、たとえばシート名「1」の10円のものを数えるとして、 =COUNTIF('1'!$A$2:$D$2,10)と言うところまでは出来たのですが、 1ヶ月の集計をしようとしたとき、参照するシートを1,2・・・と変えて行きたいのですが、 関数で行うことは出来るでしょうか?
>>300 1シートに1ケ月分なんでしないで、かけるだけ全部1シートに入れたらイイじゃん?
あとから加工するならデータ作るときから考えて作るヨロシ
>>300 1シートに1日分だったのね。失礼。
ってか、もっとダメじゃんw
>>300 そういうのは普通ピボットテーブルを使うんだけど、どうしても関数だけでやりたいなら
合計や検索結果を1行目の決まった場所に書いて串刺し集計をしてみるとか。
つか、すでに言われてるように1日1シートというデータの並べ方をまずやめるべき。
Excelの使いこなしは、関数やマクロを覚えるよりも、データの並べ方とかシートの設計の方が
教えにくいし覚えにくいし、これが一番重要。
>>300 はExcelの勉強方法として家計簿を選んだのかな?
だとしたら、
上で言っているように基本から始めた方がいいと思う。
○月○日 ×× △△円
○月×日 △× ○△円
みたいに入力していって並べ替え、ピボットテーブル、串刺し演算、とステップアップすることをお勧めする。
【1 OSの種類 .】 Windowsxp 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 Excel 分類 Excel 分類作成 Excel 分類 項目 現在、自宅の蔵書管理データベース作成のため 「分類1」と言う項目を作ろうとしているところ 「・小説・実用・漫画、の中からえらばなければならない」ようにしたい 「分類2」と言う項目は 小説なら「・ラノベ・時代」、漫画なら「・少年ジャンプ・モーニング」などからえらばなけらば ならないようにしたい。 お願いします。
コンボボックスでいじゃん
よくある質問ですな いろいろ方法はあるだろうけど、有名なのは分類2の範囲に名前を定義してindirectで参照するやつ
308 :
名無しさん@そうだ選挙にいこう :2008/04/20(日) 10:47:35
シートの見出しを常に表示しておく方法ってありませんか? 一番右端のシートを見たとき一番左のシートをすぐに見たいとき 左下の三角ボタンをチョンチョン押すのが面倒なもので。
三角ボタン右クリックすればいいんじゃね? それか[Ctrl]+[PageUp]押しっぱ
>305 データ→入力規則 でリストを選択 データに 小説,実用,漫画 で選択肢から選ぶようになる。 詳細は検索して。。 >308 ウインドウ→ウインドウ枠の固定 もしくは分割
>308 ごめん、シートか。 却下して。
313 :
名無しさん@そうだ選挙にいこう :2008/04/20(日) 14:03:18
表示形式について、教えて下さい 「2」と入力したときは「##0」、 「1.8」と入力したときは「##0.0」 を使うには、どうすれば良いのでしょうか?
「標準」を使えば?
>>313 標準のままで小数点は自動的に出たり消えたりするけど。
どうしても書式を設定したいんなら、Excel2007なら条件付き書式。それ以前ならVBA。
単純に整数部を3桁に揃えたいだけならIF。
317 :
名無しさん@そうだ選挙にいこう :2008/04/20(日) 19:30:16
皆様の知恵をお借りしたく思います。 Excel2003では、コマンドにAlt+Yなどで独自のショートカットをあてれましたが 2007ではできないのでしょうか? よろしくお願いいたします。
318 :
名無しさん@そうだ選挙にいこう :2008/04/20(日) 21:19:59
【1 OSの種類 .】 Windows XP 【2 Excelのバージョン 】 Excel2002 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 エクセル AND 異常計算 エクセルで計算してるのですが、 =a*b+c*d+e*f (ただし f=0) の式で第三項を排除すると、計算結果が0になるようになりました。 そんな事ってありえるのでしょうか?
319 :
318 :2008/04/20(日) 21:29:40
やっぱり自分でもう少し考えてみます。
四捨五入でもしてんでね? 桁とか確認した?
321 :
名無しさん@そうだ選挙にいこう :2008/04/20(日) 23:01:59
【1 OSの種類 .】 Windows 2000 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 Excel 文字列 検索 Find セルA セルB aaaa dddd vvvv cccc ddddaaaa eeee セルA列の部分文字列をセルB列の範囲より探し、マッチした場合、1を返したいのですが、 お知恵を貸して頂けないでしょうか。
>321 お前わざとか?
>>321 =IF(ISERR(FIND($A$1,B1)),"",1)
>>322 はカルシウムが足りないようだ
324 :
名無しさん@そうだ選挙にいこう :2008/04/21(月) 05:17:33
【1 OSの種類 .】 Windows XP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 セルA セルB セルC ・・・ セルF セルG セルH aaaaa 11111 \12345 bbbbb 33333 ______ aaaaa 22222 \67890 bbbbb 33333 \13579 bbbbb 22222 \24680 複数セルを検索キーにし、セルCの数字を抽出したいのですが どうすればいいのでしょうか? セルHに入れるべき関数を教えてください。 IndexとMatchのネストを試してみましたが、上手く行きませんでした。 あと、出来ればなのですが、セルAとセルBを結合することなく行える方法はありますでしょうか。
325 :
324 :2008/04/21(月) 05:19:49
すみません。セルFに「bbbbb」、セルGに33333、セルHに関数を入れたいです。 上図が少しずれてしまいました。 ご教授の程、宜しくお願いいたします。
326 :
名無しさん@そうだ選挙にいこう :2008/04/21(月) 05:55:35
>>324 I列に
=IF(OR(IF($F$1=A1,$A1,"")="",IF($G$1=B1,$B1,"")=""),"",C1)
入れて下にオートフィル、そしてH1に
=SUM(I:I)
もちろんi列以外でもいい
つーかオートフィルタ使ったほうが早い
後出力用に使うのがF1だけならまだいいけど、
F2以降続くなら別シート使うのを薦める
328 :
324 :2008/04/21(月) 06:53:00
>>326 回答ありがとうございます。
ですが、この方法ですと、セルA1のものしか抽出出来ませんでした。
「セルF及びセルGの値は変化し、セルF・Gの値に応じて対応する金額を抽出する」
ようにしたいのですが・・・
検索条件が、一つではなく複数条件での場合の抽出というのは
無理なのでしょうか?
329 :
名無しさん@そうだ選挙にいこう :2008/04/21(月) 07:11:35
オートフィルやった?
330 :
324 :2008/04/21(月) 07:17:11
>>329 ご指摘の通りやりました。
でも駄目だったんです・・・
331 :
名無しさん@そうだ選挙にいこう :2008/04/21(月) 07:33:16
332 :
324 :2008/04/21(月) 07:38:05
>>331 わざわざアップロードまでして頂いてありがとうございます!!!
親切さに大変感謝しております。
ありがとうございました。色々いじってみますね。
もし他のやり方がありましたら、それも宜しくお願いいたします。
333 :
324 :2008/04/21(月) 08:54:19
334 :
324 :2008/04/21(月) 08:56:23
書いている最中に「書き込む」を押してしまいました。
>>324 は
>>333 のリンク先にあるやり方でも上手く行きました。
以上報告まで。
ありがとうございました。
スレ汚してごめんなさい。
【1 OSの種類】 Windows xp 【2 Excelのバージョン】 Excel2002 【3 VBAが使えるか】はい 【4 VBAでの回答の可否】 可 【5 検索キーワード】 excel, マクロ, 任意の行, 特定, 列, 自動 ご教示またはご先導おねがいいたします。 AおよびCからHまで、それぞれデータの入った列が5000行あります。B列にはデータは入っていません。このシートが50枚ほどあります。 目視でその中から入力が誤っているデータのセルを見つけて、そのセルの背景色を黄色にします。 その後、その誤ったデータのある行のB列に「×」を入力する作業をしています。 頼まれ仕事のため、手作業で塗りつぶしの色である黄色をクリックして、単語登録していた「×」を入力していましたが、めんどくさくなり、 誤ったセルの上で「ctrl+shift+Z」を押すと背景を黄色にして、その行のB列に「×」がつくようにマクロで対応させようと思いました。 以下、シートの誤っている箇所で新しいマクロを登録してみて、少し手を加えました。 ' Keyboard Shortcut: Ctrl+Shift+Z ' With Selection.Interior .ColorIndex = 6 .Pattern = xlSolid .PatternColorIndex = xlAutomatic End With Range("B?").Select ActiveCell.FormulaR1C1 = "×" End Sub 「ctrl+shift+Z」を対象セルの上で押すと黄色にはなるのですが、その行のB列に「×」を入力する指定方法がわからず、こちらで相談するにあたり 「Range("B?").Select」と記述させていただきました。 この「B?」のところはどのように記述すれば、うまくいきますでしょうか。 よろしくおねがいいたします。
>>335 ' Keyboard Shortcut: Ctrl+Shift+Z
'
Sub C_S_Z()
Selection.Interior.ColorIndex = 6 '選択されたセルを黄色に
Cells(Selection.Row, 2) = "×" '同じ行のB列に×を入れる
End Sub
5000行を手作業でチェックするのか。 それ自体を自動化できないか考えてみた方がよくない?
338 :
名無しさん@そうだ選挙にいこう :2008/04/21(月) 16:32:28
馬鹿は黙ってろよw
339 :
名無しさん@そうだ選挙にいこう :2008/04/21(月) 16:53:06
社名 エクセル商事(株) 登録番号 1835号 登録日 昭35.08.21 住所 〒000-0000 北海道札幌市1−12 代表者 あいうえお このようにデータが縦に並んでいるリストから、「社名」と「住所」だけを 一括で抜き出す方法が解りません。よろしくお願いします。 【1 OSの種類 .】 Windows Vista Home Premium 【2 Excelのバージョン 】 Excel2007 【3 VBAが使えるか .】 いいえ (C言語は解りますので関数名さえ解れば何とかなりそうです ) 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 エクセル マクロ VBA 関数 文字列操作 等々
>>339 フィルタ→テキストフィルタ→指定の値を含む、で、
「社名」「を含む」OR「住所」「を含む」
341 :
335 :2008/04/21(月) 17:09:06
>>336 ありがとうございます。
試してみたところ無事、黄色くなって「×」がついてくれました。
ただ、わたしの質問の書き方および検証がたりず、このままでは若干の不具合があるようです。
それは、たとえば G列の250行目から253行目まで誤りがあった場合、
この三つのセルを選択し「Ctrl+Shift+Z」を押すと、三つとも黄色になるのですが、
対応するB列のセルには一つ目(251)のみ「×」がつき、残り二つ(252,253)は空白のままとなります。
このような事例に対処するには「Cells(Selection.Row, 2) = "×" 」部分の
「Selection.Row,」に何かを補記すれば対応できると考えればよろしいでしょうか。
【1 OSの種類】 Windows xp 【2 Excelのバージョン】 Excel2007 【3 VBAが使えるか】はい 【4 VBAでの回答の可否】 否 【5 検索キーワード】 Exsel グラフ 棒グラフで 最初の数値の棒あって そこから増減あった分だけ表示して 最後の数字の棒あるグラフです。 こんなの 最初100(100の棒) 50減る(100のところから下に50の棒) 70増える(50のとこから上に70の棒) 40減る(120のとこから下に40の棒) 最後80 最初と最後が同色 増えるが別の色 減るがさらに別の色 だとベリグー
343 :
339 :2008/04/21(月) 17:15:08
>>340 うおおおおお!!すごい簡単にできた!
ありがとうございます。ホントに助かりました。
>>341 Sub Macro1()
'
' Keyboard Shortcut: Ctrl+Shift+Z
'
Selection.Interior.ColorIndex = 6 '選択されたセルを黄色にする
For Each x In Selection
Cells(x.Row, 2) = "×" '各B列に×を入れる
Next
End Sub
>>344 すばやいご回答ありがとうございます。
早速、試しましたことろ無事、選択した全てに「×」がついてくれました。
366様同様、感謝したします。御二方(お一方?)どうもありがとうございました。
いまからこれを使って残業します。
>>346 ひとつひとつ手作業でグラフ修正しなくて良いような
作業列のアイデアないかなと思ってここで質問してみました
同じようなグラフを大量に作るんならテンプレート登録かVBA
349 :
名無しさん@そうだ選挙にいこう :2008/04/21(月) 18:09:39
名無しさん@そうだ選挙にいこう:2008/04/20(日) 04:46:00 【1 OSの種類 .】 Windows ビスタホームプレミアム 【2 Excelのバージョン 】 Excel2007&2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 恐らく、既出だと思うのですが、質問お願いいたします 会社のファイルにマクロを使用した(プロテクトが掛かってるので、デバッグNG)物があるのですが 非表示モジュールコンパイルエラーが出て、マクロが使用出来ません、 2007がダメなのかと思い、2003をインストールしてみましたが、同じでした。 ぐぐってみたのですが、XP以前の対策らしきものしか見つかりませんでした。 考えられる原因はどの辺なのでしょうか? マクロのセキュリティーは下げました、ウィルス対応ソフトもアンインストールしてみました。 PCは、AX120V(インターネットAQUOS)です。
>>348 テンプレート登録ですか
やりかた知らないんでできるExcel買ってきます!
ってできるExcelにのってるのかな?
【1 OSの種類 .】 WindowsXP SP2 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 【5 検索キーワード 】エクセル データ 抽出 セル番号 エクセルでグラフを作成したいのですが、データ数(行数)が64001と膨大なため途中(32000)で 途切れてしまいます。データの数を減らすため、行単位で抽出できないかと悩んでいます 64001の行の中から半分だけ抽出する、偶数行だけ抽出するといった操作は可能でしょうか? また、どのようにすればいいでしょうか?
>>354 データ列のすぐ右に作業列を作って1行目にa、2行目にbと入れる。
aとbを選択してフィルハンドルをダブルクリック。
フィルタでaだけを選択すれば半分になる。
1/3にしたければ、最初に入れるデータをa、b、cにする。
>>355 そういう発想が出来るのが凄い。
うまくいきました、有難うございます。
357 :
名無しさん@そうだ選挙にいこう :2008/04/21(月) 21:13:57
XP 2003 vbaも可 できたら、操作設定でお願いします。 ステータスバーに再計算や、100%との表示はされなくて、 再計算そのものはされているようにするにはどう設定したらいいですか。 ステータスバーそのものは、あってほしいです。 (この動きだけがうっとうしく、表示させたくないので。)
何の表示も無く動作をしばらく停止して欲しいということですか?
359 :
名無しさん@そうだ選挙にいこう :2008/04/21(月) 23:09:10
>>352 レスありがとうございます。
2007・2003含み全ての場所で<XLStart>
を検索しましたが、存在しませんでした。
どうしていいのやら・・・・・orz
>359 アプリケーションの自動修復とかはしてみた? 前に会社のPCで同じ症状が出たときは、 ツールバーが追加されるタイプのマクロで、 表示→ツールバー→ユーザー設定で、そのツールバーを 削除して開きなおしたら直った、っていうのがあった。 参考になれば。
亀レスだが、
>>335 は条件付き書式を使えば簡単なのに
何でわざわざ面倒くさい事やってるんだ・・・
600〜700名くらいの顧客管理をしたいのですがexcelでOKですか?
住所録レベルの物なら問題ナス。あんまり正しい使い方じゃないけどね。 詳細な個人情報や取引の履歴を入れて、条件によって抽出したりするならAccessのが向いてる。
それぐらいなら余裕 データが数千件かつ計算式が入ってたりすると 段々重くなってくるけど。
>>363 >>364 ありがとうございます!
出来れば、簡単な取引履歴(いつ、何度目の利用の記録とか)を入れて
それを利用してDMの宛名印刷などやってみたいとは思っています。
計算式も必要になるかも・・・と思っています。
でも、履歴の詳しい記録は書類上にして外部で保存する予定です。
366 :
名無しさん@そうだ選挙にいこう :2008/04/22(火) 07:40:21
宛名印刷は別ソフトに任せた方が吉 csvで保存したあとに百円でウッテルソフとに読ませると良い
>>361 数字、文字列ともに双方の決められた書式もあり、
間違いをチェックするところがこまかいので、条件付ではカバーしきれない感じです。
当方の能力では無理ナリ・・・。
>>367 同じ行の中に黄色いセルがあったら×を付ける処理のことを言ってるんじゃないのかな。
だとしても、あまり簡単だとは思えないけど。
369 :
361 :2008/04/22(火) 12:03:44
>>367 いや、そういう事を言ってるんじゃなくて
×印を付ける、色を塗る、という2つの作業をいちいち手作業でやったりマクロを組んでまでやる必要あるんかなって話。
B列に×印が付いてたらその行に色が付くような条件付き書式を設定しとけばいいだけ。
そうすればB列に×を入力するだけでいい。
(というか「×」じゃ入力も面倒だから「x」とか「1」とか適当な文字を入力しておいて後で置換すればいい。)
> 間違いをチェックするところがこまかいので、条件付ではカバーしきれない感じです。
間違いを自動的に見つける処理=条件付き書式、と勘違いしてないですか?
>>369 色を塗るのはC-H列の間違ってるセル一つでしょ
結局これ以上最適化しようはない
371 :
361 :2008/04/22(火) 12:24:48
>>370 あー、そういう事か。すっかり勘違いしてた・・・orzすまん
>間違いを自動的に見つける処理=条件付き書式、と勘違いしてないですか? さすがにここまではない。大丈夫です。 370氏がおっしゃるとおりなんで、 現在の作業方法では、こちらで教えていただいたのが一番 楽かと思います。 根本的なところでもっと楽できると思うんですが、たのまれ仕事なんで仕方ないっす・・・。 どうも、おさわがせしました。
C-H列に思わず反応した化学科は俺だけでいい
>344 は For Each で回さなくてもやれるな。 Selection.Interior.ColorIndex = 6 Selection.Offset(,1)= "×"
それだと選択したセルの右隣に×が入る。 選択するセルはC列からH列のどこかにあって、どれを選択したときでも×が入るのはB列ってのが 要求された仕様。
377 :
名無しさん@そうだ選挙にいこう :2008/04/22(火) 20:00:35
会社でエクセルを使った仕事をするみたいなのですが、 商品名と商品の管理番号、価格などが記入されたデータが本社から送られて来て、 それに新規で入荷したデータなどを追記したり取扱い終了した商品などを一覧から削除したり といった仕事をするようなのですが、グループ化等やこれに関する関数などで 覚えておいた方がいい関数やショートカットキーとかあったら教えてくださいよろしくお願いします。
【1 OSの種類 .】 WindowsXP SP2 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 素人に近いです 【4 VBAでの回答の可否】 可 【5 検索キーワード 】エクセル VBA セル番号 ページ設定 選択したセルを含む行列を印刷タイトルに設定するマクロを組むことは可能でしょうか? A2を選択すれば行タイトル→$2:$2、列タイトル→$A:$A B3:C5を選択すれば行タイトル→$3:$5、列タイトル→$B:$C と設定されるようなマクロがあれば、ご教示願います。 よろしくお願いします。
>375,376 そゆことね、すまぬ 訂正 Selection.Interior.ColorIndex = 6 Selection.Offset(, 2 - Selection.Column) = "×"
このスレの内容についていけん
>>377 Ctrl+Fで検索
Ctrl+Sで上書き保存
Ctrl++で行挿入
Ctrl+-で行削除
F2でセル編集
>>379 だーかーらー ……
Cを選択したらBに×を入れる。
Dを選択したらBに×を入れる。
Eを選択したらBに×を入れる。
Fを選択したらBに×を入れる。
Gを選択したらBに×を入れる。
Hを選択したらBに×を入れる。
ここまで丁寧に書いたらわかるか?
>>378 行タイトルはPrintTitleRows
列タイトルはPrintTitleColumns
選択されたセルはSelection
あとは必要な値を代入するだけ
【1 OSの種類 .】 WindowsXP SP2 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 不可 【5 検索キーワード 】エクセル 印刷 リスト 複数のセルに入力規則で設定した、それぞれ内容の異なるリストを 表示したまま印刷することは可能でしょうか?
>>383 ありがとうごございます。
ただ、おそらく下の??の部分にSelection.Cellを入れるのかと思うのですが、うまくいきません
VBAはマクロの記録をいじる程度の知識しかないので、
選択された任意のセルのアドレスをPrintTitleRowsとPrintTitleColumnsに
設定する方法もご教示願えないでしょうか。
Sub Printtitle()
With ActiveSheet.PageSetup
.PrintTitleRows = ??
.PrintTitleColumns = ??
End With
End Sub
SUM関数ではエラーになる、文字列が含まれているセルの合計?を出したいのですが 自宅で、仕事のファイルを作っています。 Excelで表を作って、C5に3本、C6に5本…と続いて、C252まで数が入っています。 C253に合計の数を「○本」と出したいのですが、SUM関数だと、文字列が入ったものはNGですよね? それに、☆月は売れていない、★月は1本、などというところもあるので、 空白のセルもあります。 この場合は0として計算を…。
続きです。 INDIRECT? CHOOSE? VSUM関数、なんて存在したかな…?状態で 手探りでなんとか作っていますがやっぱりわかりませんでした。 電卓片手に合計していこうとも思ったのですが、途中で入れ忘れorキーミスが不安ですし、 これからもこういうことはあると思うので この際なので、、ちゃんと関数を使えたらと思っています。 こういう場合、なんの関数でしょうか? できれば…式も全部書いてくださるととっても助かります。 明日提出のもの(1年分の売り上げの合計)なので緊急です。
>>387 作業列をつくる。D列でもE列でも
REPLACE関数で本を空白""に置換、その後SUMもし文字列と認識されるなら、
*1とすると自動的に値に置き換わる
>>387 SUM関数は文字列と空白は自動的に無視してくれる。
結果がエラーになるのは、エラー値の入ったセルが範囲内に存在する時。
>>387 ,388
"excel エラー 合計 sum"なんかでググれば?
と思ってググって見たらマルチポストだったのこと笑った。
時間返せ
>>386 Selection.Row 選択されたセルの行
Selection.Column 列
なんだ、マルチだったのか
395 :
387 :2008/04/23(水) 03:51:08
とりあえず作成終了! どうもありがとうございました。 マルチって…2chには書いてないですよ?
2ch以外でもマルチだよ そして結構みつかるもんなんだなーこれが
要するに見た人の気分をちょっとでも悪くしたらマルチって事だよな。
いまどきマルチ禁止とかばかみたい
今時っていうかいつまで経っても無くならないと思うけど
400 :
名無しさん@そうだ選挙にいこう :2008/04/23(水) 12:40:44
マルチが与える影響をわからんとは これだからゆとりはw 日本オワタw
俺は2chしか見てないから他で書いた事もここに書いてくれると有難いんだが アンテナ伸ばして色々見てる人にとってはうざいんだなろうなあ よくわかんねーやどうでもいいけど
あほだなー ここでの回答が全てじゃないんだよ。 仮にマルチだとしても他のサイトも見ろよ。 楽して覚えようなんか甘すぎ。
自分の言葉でうまく説明出来ない奴は
>>400 みたいに逃げる。
【1 OSの種類 .】 WindowsVista 【2 Excelのバージョン 】 Excel2007 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 Excel CSV CSVファイルをExcelで開くと、 「001002」のようなデータは「1002」と出てしまいます。 また、そのまま保存してしまうと頭の0が消えてしまいます。 頻繁にCSVファイルをExcelで加工するのですが、 CSVファイルの内容を全て文字型で開く方法はあるのでしょうか?
>404 2007ならデータ>外部データの取り込み>テキストファイル 区切り文字をカンマに、必要な列のデータ形式を文字列にする
CSVファイルをExcelで開く際、 出てきたテキストファイルウィザードの3つ目の画面で 対象になる列を選択、「G/標準」から「文字列」に変更。 2007で使えんのか知らんけど。
CSVファイルのアイコンをダブルクリックで開くんじゃなくて、 Excelを起動してからウィザードを使う。
408 :
404 :2008/04/23(水) 16:12:33
>>405 教えていただいたとおりに行ったらできました。
ありがとうございました!
409 :
名無しさん@そうだ選挙にいこう :2008/04/23(水) 19:48:04
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 エクセル 外れ値 除く(除去) 分布図で近似直線を引きたいのですが、明らかな外れ値があるために上手く引けません。 一旦データを保存して外れ値を削除→分布図だと近似直線は引けても外れ値のプロットが 抜けてしまいます。 そこでこの方法でうまく分布図を書く方法、あるいは別のいい方法があればご教授願います。
>409 直線?曲線? 作業列で、いくつかの連続データの平均値を出して、 それをグラフに追加するといいよ。
AからC列使っているとして、Dに1をいれるとその数値は除外するとする Eに=if(d1=1,"",C1)みたいな感じにするとか じゃなきゃ許容範囲を設定してそれ以上・以下なら自動的にD列に1と入力されるようにするとか 言葉じゃ説明しにくいな
近似用の別のデータを用意するってことだね
413 :
40 :2008/04/23(水) 21:21:18
>>410 直線です。薬品の滴下量とそれに比例するある数式のグラフです。
滴下量は等間隔ではないのでせっかくですがその方法は使えなさそうです。
>>411 質問内容を見ての通り私はExcel初心者なので間違っているかもしれませんが、
それは外れ値の検出方法ではないですか?
似たような質問になりますが、
外れ値を除いて得た近似直線を切り取り、外れ値ありの分布図に貼り付ける
という方法があれば行いたいのですが、これは可能なのでしょうか?
【1 OSの種類 .】 WindowsXP SP2 【2 Excelのバージョン 】 Excel2007 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 excel クエリ オートフィルタ Excel2007でクエリを用いてデータをダウンロードしてくると、勝手にオートフィルタが掛かります。 また勝手にスタイル(オートフォーマット)が設定されてしまいます。 どちらも設定させないようにすることは出来ないしょうか? オプションの設定は一通り目を通したのですが分からずじまいで。 どなたか詳しい方、教えてください。お願いします。
416 :
名無しさん@そうだ選挙にいこう :2008/04/24(木) 01:05:21
質問します。 シートAに 商品名 納品日 金額 ○○○ 20080423 2,400 ○○○ 20080423 1,500 ××× 20080424 2,000 といったデータが並んでいます それをシートBに 20080422 20080423 20080424 ○○○ 3,900 ××× 2,000 のようなデータを作りたいのです。 ただまとめるだけだとピボットテーブルを使えば簡単なんですが、 シートBの商品名の欄が書式で固定されておりまして、 700行以上ある商品名をピボットからさらに並び替えるのが非常に手間ですので できれば関数でできないかなと考えています。 よろしくお願いします。
>>416 商品名に対応した商品区分という列作ってから、ピボット使うのが一番早いと思います。
商品が700もあるなら、少なくとも7種類くらいに区分分け出切るでしょう?
商品名(文字列)に、区分分けに都合が良い文字列が含まれているなら
IF式とFIND関数をネストすれば何とかなる気がするのですが・・・
私の技術では(配列数式とかDSUM関数使って色々やってみたけど)
ご希望通りのものはできそうになかったです。
シートBに作業列を作って1、2、3と番号を付ける。 商品名を番号に置き換えてソート。 これなら少しの手間で機械的にまとめられる。
>>416 >>すでに説明されているように商品区分用の列を別に用意するのがいいですよ。
>>417 は元データであるシートAに列を追加する方法。
>>418 はピボットテーブルで集計した後のシートBに列を追加する方法です。
私の好みは
>>417 の方法ですが,さらに別のシートCに商品マスターというデータ
を用意するとスマートです。シートCに商品コードと商品区分の組み合わせを
700行用意しておき,シートBからVLOOKUPで参照しましょう。
この方法だと非常に柔軟に分析できますよ。
420 :
名無しさん@そうだ選挙にいこう :2008/04/24(木) 16:38:45
イントラなどのサイトでIE上から直接Excelファイルを開く時、 最初からExcelのツールバーを表示させる方法ってありますか? Excelを普通に起動する時はいくつかのツールバーを 表示させる設定にしているけど、IEから開く時は表示されず 毎回設定を変更するのが面倒なので…… 各ソフトのバージョンは以下の通りです。 ・WindowsXP SP2 ・Office2003 SP2 ・IE6 SP2 ご存知の方、いらっしゃったらよろしくお願いします。
421 :
名無しさん@そうだ選挙にいこう :2008/04/24(木) 17:53:54
すいません、大学卒業して、事務の派遣で働いているのですが、 エクセルをこれから中心に働くようなのですが、ピボットテーブルとかの知識ってどのくらいあったほうがいいですか?
422 :
名無しさん@そうだ選挙にいこう :2008/04/24(木) 18:26:15
集計データの分析を頼まれるなら、必要だが、 折れの知っている限り、そんなの頼みもしない。
>>421 派遣にシートやマクロを作らせることなんて滅多にないよ。
誰かが作ったシートにデータを入力するだけ。何の知識もいらない。
>>421 ピボットテーブルは知っとくといいよ。
相対参照と絶対参照
リスト形式
並べ替え
オートフィルタ
ウィンドウ枠の固定
印刷タイトル
ピボットテーブル
の順に覚えるのがおすすめ。
425 :
名無しさん@そうだ選挙にいこう :2008/04/24(木) 20:40:32
質問です いま膨大な数字のファイルを取り扱っています。 内容は下記のような感じなのですが、小数点以下のもので 数字があるものをチェックをしなければいけないのです。 下記のような感じなのですが、仕事の都合上、小数点以下のもので 数字があるものをチェックしなければいけないのです。 そこで端数が「000」だけのものを除いて、 小数点以下のデータを検索・抽出するにはどうすればいいのでしょうか ひとつひとつ探していくにもあまりにも時間がかかるもので・・・ オートフィルとかで条件付表示されれば最高なのですが。 A 1 123.000 2 842.125 3 000.315 4 985.852 5 521.000 ↑のものを↓のように抽出 ※小数点以下が「000」のものは除外 A 1 842.125 2 000.315 3 985.852 バージョンはofficeXPです わかりにくいようでしたらご指摘ください
>>425 作業列を作って=A1=INT(A1)ってやれば、少数以下が0ならTRUE、そうでなければFALSEになるから
あとはオートフィルタ
427 :
名無しさん@そうだ選挙にいこう :2008/04/24(木) 21:01:32
>>425 MOD関数で除数を1にして余りが無ければ整数と判断できる
これを応用すれば良い
条件付き書式でも同じように出来るよ。
=MOD(A1,1)=0
ってことだな。結果は
>>426 とまったく同じ。好きな方を使え。
430 :
名無しさん@そうだ選挙にいこう :2008/04/24(木) 21:15:40
【1 OSの種類 .】 Windows2000 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 excel vlookup 今excelが無いので教えてください。 =VLOOKUP(B5,sheet2!$A:$A,sheet2!C:C:,0) この式で一向に参照されませんでした。 調べてみると返す値の列の指定は数字で指定するみたいなのがありました。 =VLOOKUP(B5,sheet2!$A:$A,sheet2!3:,0) これでいけますか?
431 :
424 :2008/04/24(木) 21:23:39
>>421 ついでに言うと
知っておいたほうがいい関数
SUM()
VLOOKUP()
MID()
CONCATENATE()
IF()
まったく不要な関数
SUMIF()
COUNTIF()
DSUM()
>>430 sheet2!3:は数字じゃないだろ?
=VLOOKUP(B5,sheet2!$A:$A,1,0)ならエラーにはならんと思うが、
おまいが何をしたいのかわからん。
>>431 漏れはCONCATENATE()はいらんと思う。
COUNTIF()は重複調べる時なんかに結構使うぞ?
>>430 どっちもダメ。
C:CだとC列全部になっちゃうしSheet2!3は構文エラー。
あなたの作ったシートで、必要なデータが何列目に入っているかがわからないと、これ以上は答えようがない。
>>430 =VLOOKUP(B5,sheet2!$A:$A,3,0)
435 :
名無しさん@そうだ選挙にいこう :2008/04/24(木) 21:33:33
VLOOKUP(1.2.3.4) 1項目:検索する値 2項目:データベースの範囲 3項目:抽出する列の左からの列数 4項目:検索の方式→検索値以下の近似値[0]or完全一致[1])
436 :
430 :2008/04/24(木) 21:36:44
大変失礼致しました。 sheet1のB列とsheet2A列を参照して、 sheet2のC列*行をを返して欲しいのです。
CONCATENATEは確かに必要ないな。 古いエクセルとの互換性以外に意味はあるんだろうか。 せめて=CONCATENATE(A1:A5)みたいに範囲指定で一気に連結とかできれば まだ使いようもあるんだが。
>>436 =VLOOKUP(B5,sheet2!$A:$C,3,0) だな
440 :
430 :2008/04/24(木) 21:46:40
>>434 ありがとうございます。
>>435 脳みそが欠損しててすみませんでした。
>3項目:抽出する列の左からの列数
抽出は完了していて、そこから何列目を返すのよ?
って事だったんですね。
皆様ありがとうございました。
442 :
424 :2008/04/24(木) 22:35:55
>>432 実際にはCONCATENATEなんて使わないで&を使ってるよ。
&も不要という立場じゃないよね?
重複チェックするならCOUNTIFよりもピボットテーブル使うほうが便利だと思うけどな。
COUNTIFだと項目名を全部列挙しないといけないでしょ。
443 :
432 :2008/04/24(木) 22:47:25
>>442 もちろん&は必要で使用してます。
レコードの重複じゃなくて、列の中に重複したものが無いことを確認する為。
ピボットでもいいんだけど、重複していたらその場で消せるんでcountif使うことがある。
>>431 重複チェックにはCOUNTIFを使うのが一番いいと思う。
マイクロソフトのサポートページでもそう書かれていた気がする。
それからSUMIFは絶対に必要だと思うぞ。
むしろMIDは滅多に使わない。
既出だがCONCATENATE() は&で代用する事の方が多いだろうね。
どれも特に難しい理屈があるわけじゃないんだから 気が付いた関数はかたっぱしから全部覚えてけばいいんだよ。 覚えるっていうか、そういう関数があるんだな、程度でいいんだけど。
446 :
432 :2008/04/24(木) 23:11:09
SUMIFとCOUNTIFは項目名を指定しなければならないのが最大の弱点だと思う。 ピボットテーブルにより優れているのは計算がインタラクティブなことかな。
会社の事務作業でだとむしろSUMIFとCOUNTIFは結構使うよ。 毎月の集計とかとったりする表によく使われてる感じ。 ピボットとはまた別の作業で使う感じ。 個人的にはINDIRECTが便利だと思う。 あと、よく見かけるのは、ISERROR とか NOW とか。。。 IF文における不等号の「≠」は、「<>」と入力するとか。
俺はISERRとISERRORの使い分けがピンとこない。 もちろん仕様としての違いはわかっているが。 データの加工にLEFT、MID、RIGHTはけっこう使う。 文字列系の関数はもっと強力なのが欲しいぐらい。正規表現が標準で使えればなあ。
449 :
432 :2008/04/24(木) 23:18:52
>>447 世間でSUMIFとCOUNTIFが多用されているのは知っているのですが、
それはわかった上であえて不要論を唱えているのです。
毎月の集計はピボットテーブルを使うと楽になりますよ。
ところでINDIRECTって何に使ってます?
おまいら雑談は雑談スレでやれ
451 :
424 :2008/04/24(木) 23:21:54
453 :
名無しさん@そうだ選挙にいこう :2008/04/25(金) 00:01:06
>>451 お前、あの時のポボット厨かw
あまりに頭の悪いレスの連続で思い出したwww
454 :
名無しさん@そうだ選挙にいこう :2008/04/25(金) 00:01:54
ポボットwww ピボットの間違いねw
「盗まれたポピット」
456 :
名無しさん@そうだ選挙にいこう :2008/04/25(金) 01:14:19
Windows3.1時代に作ったエクセル5.0の表計算が30本あるんですが 今度Excel2002更新になるんですが、そのままでは動かんですよね かなり手直し必要になりますか?
>>456 物による。
運が良ければそのまま使える。
459 :
名無しさん@そうだ選挙にいこう :2008/04/25(金) 02:02:44
エクセル5.0は動くから使い続けてきたけど、XPになってから メモリ管理がうまくいかないらしく、窓を5個以上開くと動きが おかしくなりメモリ不足で落ちるようになった。
>>459 今のパソコンはメモリが多すぎて、古いプログラムから認識できなくなってんの。
Windows 3.1の頃はメモリが8MBとか16MBとかだったからなあ。
つまり、メモリ不足じゃなくて多杉ってこと。
もしかして、今まで95か98かMeを使ってなかった? XPは構造がまったく違うから、今まで使えてたソフトが使えなくなったりするよ。
構造が全く違う、ねぇ
エクセル2003で「&」で式と文字列を結合したのですが、式の数値に書式をつけることはできますか? 20000000になります ↓ \20,000,000になります (数値の部分は他のセルを参照した式) のようにしたいのですが・・・
A1とB1を&で繋いでるとして =TEXT((A1&B1)*1,"\#,##0") ちなみに*1っていうのは数字の文字列に使うと値として認識されるようになる
たぶん、やりたいのは =TEXT(A1,"\#,##0")&"になります" じゃないのかな
書式を「\#,##0になります」にして20000と入れれば「\20,000になります」となる。 金額でも数量でも重さでも、いろいろな数字の単位を文字列で入れちゃう人が多いけど、 書式で入れておけば、そのまま数字が別の計算式で使えるようになるんだけどね。
467 :
名無しさん@そうだ選挙にいこう :2008/04/25(金) 22:10:48
Excel2007にまたまたバグを見つけてしまった。 分析ツールの回帰分析でシート名に日本語を使うとフリーズします。 あほか!!!!エクセル しっかりしてくれよ、使いモンにならんじゃんか。
470 :
Hem :2008/04/26(土) 00:26:44
エクセル2000で作成したデータをエクセル2007で開いたとき 図や印刷レイアウトがずれていたのですが・・・ ずれなくする方法はありますか?
>>470 2007形式で保存すればよいのではないでしょうか?FileFormat Converterくらいは入れておくべきでしょう
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 a 1 のようなデータを a 1 のように文字が入れ替わる直前まで 2 a 2 上の文字列と同じ値を繰り返し自動で 3 a 3 いれたいのですが、どうしてもできません b 1 b 1 どうかやり方をご教示ください 1 b 1 c 1 c a
すいません、ずれました。。 a 1 2 3 b 1 2 c 1 2 を a 1 a 2 a 3 b 1 b 2 c 1 のようにしたいです
>>473 念のため確認しとくけど、まず、473はズレてない?本当にこの通りにデータが入ってる?
あと、1行目の「a」と「1」は別々の列に入ってるんだよね?
Janeのポップアップで見るとわかるけど、ズレてる。1列目にアルファベット、2列目に数字。 先頭のaがセルA1に入っていると仮定して説明すると、 まずA列を選択、F5キーを押す、「セル選択」を押す、「空白セル」をチェック、OK、 A2に「=A1」と入れて最後にCtrl+Enter 「=A1」を入れたあとEnterを押しちゃダメよ。
あの、くっだらねえ相談で悪いんだけど・・・ これからエクセルを覚えていくのに、きっかけがみつからなくて・・・。 なんか楽しく(じゃないと覚えない)それでいて達成する意味のある事が (じゃないとやり続けられそうにない)したいんだけど、何かないかな?? グラフとか作るきっかけねえし・・・書類とかも。 個人的に出来るならってことで思いつくのが・・・ ・HDの中のフォルダごとの画像の整理(名前とかの整理) ・IEのお気に入りの整理 ・2ch専ブラのスレ整理 などがあるんだが出来ると思います?
>>476 整理に興味があるみたいだからデータベースとして使ってみたら?
コミックやDVDの保管場所をデータベース化したらいい。
区分 名前 保管場所
コミック ドラゴンボール1巻 本棚A1
DVD ハッピーマンデー 本棚B2
478 :
名無しさん@そうだ選挙にいこう :2008/04/26(土) 08:09:57
excelについての質問です。 プルダウン式のボックスの設置方法を教えて下さい。 よくIEでホームページアドレスが表示される型のやつです。 それで選んでシート間を移動させたいのです。 よろしくお願いします。
データ→入力規則→設定→リスト、そして元の値ってのが選択肢になる ちなみに離れてるセルは選択できないので、予め一つの列などにまとめておかないとダメ
480 :
432 :2008/04/26(土) 08:58:48
>>474 二度目もずれていてすいません
>>475 ありがとうございます、こういう風にしたかったのです。今まで一個一個コピーしていたのですが
こんなに簡単にできるなんてしりませんでした。ありがとうございます。
本当にExcelは奥が深い
>>480 誰だよw
>>470 もうずっと前のバージョンからその現象が続いてるので、
印刷するときにファイルへ出力にチェックする(要するに画像で保存)
ただこれやると編集できないんだけどねー
印刷に関してはwordの方がいいらしいけど俺は使わないので良く知らない
>>476 >>430 以降見るといいと思うよ
楽しく覚える事は、多分日常的に使う人じゃないと無理と思う。
必要でもないリストを作ることが楽しいと感じる類の人なら、別かもしれないけど
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 excel 日付 年 変換 <やりたいこと> 日付の入力で、1/1〜3/31までの範囲が入力された場合、自動的に2009年のデータに変換してもらいたい <詳細> セルの書式で、「yyyy/mm/dd」を使っているのですが、例えば「10/10」と打って入力すると勝手に「2008/10/10」となってくれるのですが、 入力したい日付の都合上、1/1〜3/31までは2009年の日付になってほしいのです。 つまり、「1/1」と打っても勝手に「2009/1/1」と変換して入力してくれるような機能が欲しいと思っています。 よろしくお願いします。
そんな機能ないです。あとから1/1-3/31だけ=date(a1+1,a1,a1)て感じにして値貼り付けとか
【1 OSの種類 .】 WindowsXP Professional SP2 【2 Excelのバージョン 】 Excel2002 SP3 【3 VBAが使えるか .】 はい(無関係っぽいけど) 【4 VBAでの回答の可否】 可(無関係っぽいけど) 【5 検索キーワード 】 "Excel" "コピー" "オートフィル" "移動" "キー" 等を色々組み合わせて検索。 自分以外も使うマシンでのことです。これまで、上下左右の矢印キーを押したら、 ターゲットになるセルが移動していました。しかし、ある日突然、シートの表示位置 が移動するようになっていました。 複数のセルをまとめてコピーしようとする時などに不便なので、関係がありそうな ところを探したのですが、単純なことだけに関係がないところばかりがひっかかり、 お手上げです。ツール→オプションで関係がありそうなところを確認しましたが、そ れもだめでした。もう、何を見落としているかもよくわかりません。 元の通り、上下左右の矢印キーを押したらターゲットになるセルが移動するよう にしたいです。どうか解決策を教えて下さいお願いします。
キーボードの右上にscrl lockてのがあるからそれを解除する
489 :
487 :2008/04/26(土) 13:56:44
>>488 ありがとうございました! 盲点でした。
>>483 機能はない。
代替策は全部入力が終わった後に2008/ を 2009/ に置き換えるか
パソコンの日付を一年進ませる。
VBAを使えばできる
>>483 入力された日付が1月〜3月だったら自動的に来年にする。
関数を記入する場所を間違えないようにな。
これはワークシート全体に作用するから、日付を入力するセルの範囲が決まってるなら
それのチェックも追加した方がいい。
Private Sub Worksheet_Change(ByVal Target As Range)
Dim R As Range
Application.EnableEvents = False
For Each R In Target
If Month(R) <= 3 Then R = DateSerial(Year(R) + 1, Month(R), Day(R))
Next R
Application.EnableEvents = True
End Sub
あ、「VBA 否」だったか。すまん。忘れてくれ。
でも、VBA使えば楽できるってわかれば、ちょっと覚えてみようかなって気にならないかな。
ここでピボット厨の反論↓
VBA厨が主張しているレベルの高い仕事ってこれのことか?
VBA(笑)
>>483 の目的次第だが、
>>486 が言及するように連続データはどう?
A1に 2008/10/10 を入力した後に「編集→フィル→連続データの作成」
範囲:列、種類:日付、増加単位:日、増分地:1、停止値:2009/03/31
やりた手段だけでなく目的も書いてあると答えやすいかも
VBA厨だが何回も言ってるけど元々VBが使ってる人が応用できるのがすごく便利なだけで
1から覚えるのは非効率。ゲームやオナニーするよりは有意義だろうって程度
>>492 は、無い
普通にオートフィルでいいだろwVBAとかアホすぎだろww 重要で絶対に入力ミスしてはいけない+その日にならないと入力はできないようなものなら、 A1に2008/、B1に10/10とか分けたほうがいいと思う
VBA何に使ってる? 感心するほど実用的なやつを紹介してくれ。
ていうか連続じゃないデータの場合でないの? まぁ入力後に2008/1/を2009/1/に置換を2・3月分も、 とかのが単純だけど。
>>501 phoneticで出せない場合のフリガナ・変な法則で並んでるデータの正規化・ifのネストが多い場合等に相対参照のまま式のコピー
前者は100%合ってる訳でもない・2と3番目は元々ちゃんとデータを作ってれば問題ない
でも個人的にはこの3つですげー役に立った
けど一回使ったらもう必要ないし、元々知らないなら手作業でやるほうが早い
>>495 さんざんだな。どうだ?ピボット使う気になったか?
>>501 あぁ、書き忘れた
感心したかどうかは知らないけど
506 :
501 :2008/04/26(土) 16:32:13
>>505 1番目のよくわからなかった。名前の読み方なんてのは非常にVBAと相性が
悪そうに思うが。
2番目のはよくわかる。繰り返し項目ありのデータをVBAで正規化してから
ピボットテーブルで処理したよ。
3番目のもどんなことなのかよくわからない。IF文のネストが多いとどんな
風に困るん?
>>506 どれも件数が多い場合のみ特効ってのはもう一度言っておくぜ
1はphonetic関数が使えないとき、csvやhtml・テキスト等からデータをコピー&ペーストで取り込んだときに役立つ
ttp://www.moug.net/tech/exvba/0050115.htm IMEの情報を元に、漢字に振り仮名をつけることができる。
2は手作業でやるときにセルがずれたりとかのつまらないミスをしないのもいいよな
3はネストはあまり関係なかったスマン。ネストも多かったんだけどね
同じシートの中に幾つも種類の異なる表があり、例えば得意先への売掛金と、vlookupで参照される商品コードのデータ、それと社員の住所録だったかな・・
そういうのが混じっていて、注意深くやるよりvba使った方が手っ取り早かった。アップしたいが今はもう残ってないや
普通なら$を空白にしたり=を別文字にしてから移動して戻せば済む話なんだけどね
どれも事務のオバハンが普通に使ってればこんなことしなくても済んだのに、っていう内容なんで、
オバハンでもちゃんと使ってくれてればこういうのは必要ない話ですよってことです
元となるシート設計と、入力されたデータがしっかりしていればVBAなんていらないんだよ。 入力ミスとか例外とか、使う人のわがままがあるから面倒なことになるわけで。 ピボット厨はいつも理想論ばかり、社会を知らない学生みたいなもん。 世の中そんなに都合のいいデータばかりじゃない。これが現実。
509 :
501 :2008/04/26(土) 18:12:34
>>507 私の職場の場合、パートのおばちゃんが作るデータは完璧なリスト形式に
なっていて、ソート,フィルタ、ピボットテーブルが問題なく使えて便利。
たちが悪いのはベテラン社員で、セルの結合、繰り返し項目使いまくり。
あげくに〃(上と同じ)の記号まで使うもんだからもうめちゃくちゃ。
>>508 本当に社会経験あるやつなら現実に会社のデータベースには理想論どおりのデータが
格納されていることくらい知っていそうなもんだがなあ。
Excelは表計算ソフトなのに、ワープロ(書類の清書)がわりに使おうとする人が多いから ややこしいことになるんだよな。 計算結果を印刷したいならシートをそのまま印刷するんじゃなくて、計算結果をWordにDDEで渡して Wordから印刷するのが正しい使い方。 世の中の99%は本来の使い方をわかってない。まともに解説してる本も皆無。これはもう、どうしようもない。
>>510 まともな会社のデータはExcelのシートには入ってないよ。ちゃんとRDBを使う。
Excel使ってる程度のところはデータの管理もいいかげんだし、つぎはぎ。
513 :
510 :2008/04/26(土) 18:24:49
ここはExcelのスレだから、正規化されてないいいかげんなデータも相手にしなきゃいけないわけだ
>>514 正規化されていない、いいかげんなデータを相手にしなきゃいけない
からしかたなくVBA使っているんだという自覚があればいいんだけどね。
まるで高度な仕事をしてるかのような勘違いVBA厨が多すぎるから
ちょっぴりからかってみたくなる時があるんだ。
517 :
おれも :2008/04/26(土) 19:59:55
>512
518 :
516 :2008/04/26(土) 20:01:16
正直、すまんかった
>>509 それは羨ましい・・
が、もし最初からちゃんとなっていたら俺はエクセルを使いこなせないままだったろうから、
少しだけ感謝してるw
>>511 エクセル最大の欠点はセルの結合ができるところなんだと思う
あれがなければ印刷は素直に他ソフトでやるだろうし、変な表が作られることも少ないだろうに
>>512 同意。大企業は基本的に専用ソフトかaccsessを使う
エクセルはアクセスから引っ張り出した数字に自分なりの試算や、見積書を作るときぐらい
>>513 まともじゃないDQN会社もたくさんあるわけだが、そういう場合はどうするんだい?坊や。
521 :
名無しさん@そうだ選挙にいこう :2008/04/26(土) 20:10:57
やっぱここは頭の中お花畑な奴ばっかだな
>>519 VBA厨はDQN会社にまさにうってつけである
なくてはならない存在といえよう
センスの無い奴はVBAを使っても効率が殆ど変わらなかったりする。 しかも当人が使ってそれなので、引継ぎやメンテの手間を考えた 総合的な効率はガタ落ちだったりする。
ちなみにうちの会社にもいるが超迷惑。 ただ反面教師としては役に立った。
ピボットテーブルの場合、データの構造そのものが仕事内容を表現しているからね。 何をやってるか見ればわかる。
526 :
名無しさん@そうだ選挙にいこう :2008/04/26(土) 20:38:41
いやまじでうけるわww おまえらえらいえらいwwww
つーかVBAを使わずに済むのなら本当にそれに越したことはない。使ってる俺が思うわ
>>519 坊や(笑)とか面白いから平日はほどほどにしてくれよ!
【1 OSの種類 .】 WindowsVISTA 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否(VBAで可能かどうかは教えていただきたい) 【5 検索キーワード 】 Excel・排除・FIND・VLOOKUP・限界・9行目 等 現在、学校でよくある電話連絡網を作っています。 名前順の名簿はあるのでそれを枠にリンクさせていけば 話は早いのですが、連絡網の最初の方は、各役職の長が くることになっており、機械的に産めていくことができません。 別枠を作り、そこに役職の人間を当てはめ、 もともとの名簿からその人を消して昇順で並べ替えて詰める という力技でもいいのですが、全くexcelを知らぬ方も扱うので、 出来る限り作業を明確且つ簡略にしていきたいのです。 何か良いお知恵があれば、おきかせください。 あと、VLOOKUPにて数式上で指定する1〜9行目までは 問題なく出てくるのですが、10行目はうんともすんとも言いません。 これは9行目までしか扱えないよ、ということなのでしょうか。 長々と申し訳ございませんが、どうぞよろしくお願いします。
529 :
名無しさん@そうだ選挙にいこう :2008/04/26(土) 20:53:06
平日w
>>528 役職と平を区別する項目を作ればいいよ。
役職区分 名前
1.役 鈴木
2.平 山田
1.役 佐藤
役職に番号を振ってソート
>>528 何をどうしたいのかわからぬ
Sheet1にリストがあって、Sheet2に枠組みがあって、
Sheet1の人間全員をSheet2の枠全てに入れて連絡網を作りたいの?
で、それを知らない人に作業させるために説明したいの?
教師じゃないよね?PTAの役員さん?
534 :
名無しさん@そうだ選挙にいこう :2008/04/26(土) 20:58:37
おーおーw データの管理がしっかりできてると評判の会社に勤務してらっしゃる方々は 質問への食い付きが違いますなあwwwwww
A列に役職、B列に名前、C列に番号という表として Dに=IF($A1="本部長",$B1,"")、Eに=IF($A1="本部長",$C1,"")、Fに=IF($A1="支部長",$A1,"")・・と役職の数とヒラの数まで作って 下にオートフィル、後はコピーして値で貼り付け、並べ替えなんてどう? あとvlookupは9行制限なんてなかったと思う 並び替えをしていないか、範囲指定で間違えてるか、範囲になってるところがおかしいのどれかと思う
>>530 連絡網で、一人ひとり名前と電話番号を入れる「枠」です。
>>531 >>532 ああ、それは賢いですね。全く思いつきませんでした。
作業用シートを作り、役職ごとの番号を記しておいて、
並べ替えはオートフィルタでさせれば……
オートフィルタって「昇順で並べ替え」だけを表示できましたっけ。
>>533 仰るとおりです。まず名簿のシート、連絡網を作る為の作業用シート、
そして連絡網のシートの三段構えを考えていました。
でまあ、正直申し上げますと教師です。
どの学校でも必要なのに、国や自治体からは何故かソフトも
形式も降りてこないので、やむなく自分が作っています。
年度が替わる度、名簿を打ち直し、書類が来る度せっせと名前の
ゴム印では非効率すぎますから。
>>535 9行制限はありませんか。出したい列を前のほうに移動したら
普通に出てきたもので。何かやらかしているのでしょうね。
色々と御意見ありがとうございました。活用させていただきます。
537 :
528 :2008/04/26(土) 21:36:18
変な専用ソフト作るよりも、国が一元化させて名簿用の土台ぐらい配布したほうが効率いいわな
539 :
名無しさん@そうだ選挙にいこう :2008/04/26(土) 21:43:34
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2002 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 Excel初心者のため自分の簡単なお小遣い帳を作りながら学んでいるところです。 日付 品目 値段 備考 1 昼食 500 マック 2 文房具 80 消しゴム 3 映画 1500 タイタニック 3 昼食 600 ローソン : : 計 XXXX(←Σ使ってます) こんな感じでつくっているのですが、 「昼食」のみの合計をどこかに出すことはできますか? 例えば=(C2+C5)としたらその合計が出るのはわかるんですが、 その指定を一つ一つ追加するたびに手動でするんじゃなくて、 「昼食」ってついてる段の値段を自動的に合計する、みたいなことがしたいのですが・・。 そういう日本語での指定はできませんか? 伝え方がヘタだったらすみません。
>>539 ピボットテーブル使いなさい。
データ並べ方は非常にセンスいいですよ。
541 :
名無しさん@そうだ選挙にいこう :2008/04/26(土) 21:49:49
今は、昼食の項目が増えるごとに、 昼食の合計欄のところの計算式を、 =(C2+C5) 後ろの)を消して →=(C2+C5 +を手入力して →=(C2+C5+ C7をクリックして →=(C2+C5+C7))をつけなおす って感じでしてます。 毎回この細かい作業をするのが結構苦痛です・・・。
>>539 このスレでは評判悪いけどsumifでもできる
それと個人的にすきなのがオートフィルタかけた後、範囲選択するだけで右下に合計が出る
543 :
539 :2008/04/26(土) 22:03:41
>>540 ピボトテーブル
わぁぁぁ!感動しました、こんな機能があるんですね!
ありがとうございました。
さらにお褒め頂き(何がよかったのかわかりませんが;)ありがとうございました。
>>542 sumif
これです!求めていたものは。
でもなぜこれの評判悪いんですか?
オートフィルタかけた後、範囲選択
っていうのはぐぐってもわからないのですが、
どういう語でぐぐればいいですか?すみません、教えてください。
>>543 ググらなくてもイイよ
複数セルに数字が入っている場合に、
ポインターでドラッグして囲むと右下に合計が出るでしょ?
545 :
540 :2008/04/26(土) 22:08:55
センスがいいといったのは、あなたのデータが「リスト形式」になっていたからです。 この形式だと並べ替え、オートフィルタ、ピボットテーブルが利用できます。
547 :
名無しさん@そうだ選挙にいこう :2008/04/26(土) 22:16:44
さすが質問の質もいいねー 普段解答オナニーしている人だからねーwwwwww
>>547 君はVBAで解答すればいいじゃないか。
昼食の合計を求めるコードを書きたまえ。さあ。
549 :
名無しさん@そうだ選挙にいこう :2008/04/26(土) 22:27:30
ごめんごめんwww あんまりおかしくてはしゃぎすぎたわwww 平日の遅くまでお疲れ様です。 一流のデータを扱うお仕事がんばってくださいwwwwwwww はらいてえwwwwwwwwwww
>>549 一流っていうか、誰でもどこでもやってる当たり前のことなんだけどな。
君は知らなかったのかも知らないが。
おやすみ。
551 :
539 :2008/04/26(土) 22:35:28
>>544 >>546 オートフィルタを知りませんでした。これも便利そうですね〜。
わざわざ画像までありがとうございます。
>>545 なるほどなるほど。並べ替えというわざもあるのですね。
これからもリスト形式できちんと作ろうと思います!
みなさま、ホントにありがとうございました、大変勉強になりました。
excelって何でもできてすごいですw
552 :
540 :2008/04/26(土) 22:38:36
がんばってください。 ピボットテーブルで作った表からさらにピボットグラフを作ると楽しいですよ。
553 :
540 :2008/04/26(土) 22:43:25
>>551 おまけ
リスト形式でデータが増えていくと、1行目の項目名が画面から消えてしまいます。
そんな時は「ウィンドウ枠の固定」をするといいです。
印刷する時には「行のタイトル」を指定してやれば先頭の項目名が全部のページに
表示されます。
「ピボットテーブル」はこのスレの定番ギャグですか?
まともじゃないDQN会社のひとがなにかつぶやいてるぞ
>>554 さっさと昼食の合計求めるコード書けよ。
どうでもいいけど訂正以外で数コテ(上の540の事)名乗る意味ってあるの
559 :
540 :2008/04/26(土) 22:56:45
普段VBAをバカにしてピボットテーブルばかり使っている私ですが たまにVBAを使うこともあります。 シミュレーションをする時です。 こういう時はVBAがあってよかったと感じますね。
自己主張がしたいだけだろ 見苦しいけど触らないのが一番
561 :
540 :2008/04/26(土) 23:01:07
VBAをバカにしているというのは違いました。 この板でたまに見かけるVBA厨をバカにしているんでした。 VBAそのものは優れた機能だと思っています。 ピボットテーブルが強力すぎて集計では出る幕ないけどね。
562 :
540 :2008/04/26(土) 23:07:05
追記:VBAは無くなった方がいいと思うのは本心ですが
だんだん本気で言ってるように見えてきた…そのうち霊感商法とかにひっかかるな俺
540の偏執狂ぶりを見てるとまともじゃないDQN会社のひとがまともに見えてくるから困る。
本当は全ての場面でVBA使うのが正しい思える不思議
集計と分析にはピボットテーブル使うべき。 でもExcelでやってることって請求書の印刷とか住所録とか、およそ分析とは縁のないことばかり。 これじゃピボットの出番なんかない罠
そういう仕事なんだろ
【1 OSの種類 .】 Windowsxp 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 エクセル・互換性・openoffice等 openofficeとエクセルのファイルは互換性が高いようですが、実際に使ってみて 言われている以上に互換性は高くなかった、○○が非常に使いにくい・・などの経験をした方はいらっしゃいますか? それとは少し別件なのですが、エクセルのデータをpdf形式で印刷することはできますか? (無理そうでしたらファイルに出力しようと思うのですが) よろしくお願いします
>>569 openofficeは知らんが、
pdfで印刷ってあんた、印刷したらファイル形式はわからんやろ?
pdfで保存したいのならAdobe Acrobatみたいなpdf形式に変換できるソフトを入れないと無理。
571 :
名無しさん@そうだ選挙にいこう :2008/04/27(日) 08:05:13
xp 2003。 回答は関数又は操作方法として求む。 (vbaでなく、もちろん、ピボット厨は不可能・関係なし。) 【n列置きの列の指定方法】 例 A1に式をいれて、 B1 E1 I1 M1 Q1 U1 Y1 ・・・ 15件の列を指定したい。 マイクロソフトの配列でのは除く。
>>571 最初だけ3列、次は4列ずつ指定で間違いない?
ピポットテーブルがなんだかわからん
>>571 作業列つくって集計対象のフラグを立てとく。1とか入れて。
でフラグが立ってる列のみSUMIFで集計すればどの列を集計してるのか
わかりやすいし応用も利く
576 :
571 :2008/04/27(日) 10:31:57
例示にミスです。 4列置きの趣旨 orz
今までは、単純に列指定していた orz
(列順等の様式を変えることにしたので、再考したところ。)
>>575 この場合、4列ごとなので、既にフラグがあると同義では?
後から条件変えて、同義では?って イラッ
そういう奴はそういう人生送ると思っておけば気の毒にすらなるんだぜ
579 :
571 :2008/04/27(日) 11:00:06
ウェーッ。イラつかせたのならスマンorz
>>576 他人から「君の言ってることは理解できない。」と言われること多いでしょ。
結局どっちが正しいの?
それから今まではどうやってたの?単純に列指定ではなんのことかわからない。
>576 >575の案はシート上にフラグがあるので同義では無いぞ。 脳内にフラグがあってもダメよ♥
無理やりやるとすれば
=SUMPRODUCT((B1:Y1)*(MOD(COLUMN(B1:Y1)-1,4)=1))
みたいになるだろうけど
>>575 の方が式は簡単だしわかりやすいと思うけどねえ
>576 ていうか集計したいだけなん? それとも別の作業? それによって多少方法が変わってくると思うけど。
=SUM(B1,E1,I1,M1,Q1,U1,Y1, ・・・) これでやれ。
それでやってたって書いてあるやん
>>585 >列順等の様式を変えることにした
様式を変えることでいままでは例えば =SUM(A:A) で
>列指定していた
のを
>4列置き
にしたいということだとエスパーした。
だめエスパーw
ワロタ
589 :
名無しさん@そうだ選挙にいこう :2008/04/27(日) 20:41:07
板違いだったらごめんなさい。pcはwindowsXPを使っています。 これからExcelを始めるのですが、家にある本は98年の古いやつなんです。 本屋で最新の2007年版を買ってやったほうがいいのでしょうか?
とりあえず・・windowsのバージョンとエクセルのバージョンは関係ないことは覚えておいてね そしてエクセルのバージョンがその本と同じなら買う必要は無い ちなみにエクセルのバージョンはエクセル立ち上げてヘルプ→バージョン情報で見れる でもバージョンが違ってても基本的なところは殆ど変わらないので、webサイトとその本があれば十分 あとこのスレがあれば困ることは無いとおもう
591 :
名無しさん@そうだ選挙にいこう :2008/04/27(日) 21:02:02
そんな事はテメーで判断しろ なに考えてんだまったく
>589 Excelのバージョン、2007とそれ以前の2003やXP、2000とは 全く違うから、そこだけは間違えなく。 2007の本買うと見た目が違いすぎてわけわからんはず。
593 :
571 :2008/04/27(日) 21:35:48
>>582 サンクス。唯一、参考以上のものでした。重ねて、サンクスです。
他の方々にはorz エスパーが居なくなって久しいなぁwww
似非エスパーは、いつまでも、ここで遊んでいないで仕事しろwww
594 :
名無しさん@そうだ選挙にいこう :2008/04/27(日) 21:42:19
589です 携帯にして本屋に来ちゃいました 解答ありがとう!じゃあ古い本でも2007に対応できるのかな? この前2007の本買ったんだけどPCに入ってたの2003のソフト?で使えなかった から2007のDVD付いた本買おうと思ってたんだけど… 初心者過ぎてごめんわけわかめだ(つд`)
アレだ とりあえずワクワクしてるのはわかるが今日は帰って一度落ち着いたほうがいい 敢えて回答もしない
>>594 とにかくバージョンの確認を最優先する事
2007か、それ以外かで随分違う
それと酷かもしれないけど、あまり必要じゃない人は本が合ってもなかなか覚えられない焦らないでいいと思うよ
>>594 本に合わせてEXCELのバージョンを上げようとするなよw
598 :
名無しさん@そうだ選挙にいこう :2008/04/27(日) 21:58:11
みなさんありがとう(つд`) 家に帰ってバージョンの確認してみます!Wordやった時2003だったので多分2003な予感 その場合2003の本を買えばいいんですよね? 本だと難しいんですか…だめだったら教室に通ってみます
>571 こいつ最悪だなw
601 :
名無しさん@そうだ選挙にいこう :2008/04/27(日) 22:16:13
わーありがとう!いい加減しつこいと思うのでそろそろ退散します(`・ω・´) 事務職に必要な基本操作を習得したいのです
分からないことがあったらいつでも来てねーおやすみ
移動平均を分析ツールを使わずに出したいんだけど、どうすればいいのかな 横軸を日数(365日)で日々の平均気温を5刻み、15刻みでグラフに出したいんだけども・・・・
604 :
名無しさん@そうだ選挙にいこう :2008/04/27(日) 22:46:08
98じゃなくて97だった(´д`)
607 :
名無しさん@そうだ選挙にいこう :2008/04/27(日) 23:11:45
Excelは基本をしっかり覚えれば本なんか必要ないだろ HELPで十分
本が合った方が覚えるのが早い人とそうでない人がいるわけで
初心者にはHELPの活用法なんてわからないと思う。
ああ、確かに。ヘルプの文章の意味がわかるようなら初心者ではないな。
>>605 気温を5きざみ、15きざみしてどうすんだよw
そんなグラフにどんな意味がwww
5日平均、15日平均てことだろーが これだからゆとりは
613 :
571 :2008/04/27(日) 23:59:25
石ころはもったいないな。 アリのフンという事で。
>>593 よりによって一番ダメなやり方を気に入るなんてねえ。
実に君らしいよ。見事なもんだ。
回答者
>>582 自身も言ってるようにこれじゃダメなんだよ。
こんな方法は中学校で一次関数習ったことある人なら
誰でも思いつく。けど誰もやらない。
普通の人にそこまで言わなくてもいいんじゃねーのw
回答者が
>>582 を推奨してたらちょっとアレだと思うけど
619 :
名無しさん@そうだ選挙にいこう :2008/04/28(月) 09:21:25
病気なんだろその人
>618 質問者が満足してるんだからどうでもいいんじゃね?
エスパーとは、(足りない)質問の場面や背後をもその豊富な経験から想定しえて、
見抜いて、回答できる人のこと。
質問者は、回答者に対するお礼だけでなく、評価も行いうるということで、よろしく。
こうゆう質問はタブーだろうけれど、教えてください。
株式における指標等の、エクセルでの判定式を書いたHP又は本を。
for all、だけど、特に
>>617 さん、よろしく、お願いします。
こいつは大物だ・・・
いや小物だろw
>571はひどいと思ったが さすがに>621を読むと本物の>571がかわいそうになってくる。
【1 OSの種類 .】 WindowsXP SP2 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 Excel,連番,VBA 各事業所ごとに行数の異なる名簿が,1行の空白行をはさみ, 以下のように連続しています。 B4に「事業所名1」 B5に「番」 B6〜B46に「1〜41」の連番 B47は「空白行」 B48に「事業所名2」 B49に「番」 B50〜B74に「1〜25」の連番 以下同様 この名簿自体が,元の名簿から抽出して生成されているため, 元の名簿が更新されるたびに再生成され,そのたびに各事業所の 行数が変動します。このようなとき,各事業所ごとに1から始まる 連番の数字をマクロで書き込みたいのですが,どのように記述すれば よいでしょうか?
629 :
628 :2008/04/28(月) 20:59:44
一応,自分で書いたのは以下のようなもので,これを事業数の数値を使って for 〜 next で回してやればよいと思ったのですが,これだと行数が2つ以下の 事業所の場合,次の事業所へあふれ出て連番を振ってしまいダメでした。 Sub 連番書き込みB() ActiveCell.Value = "1" Range(Selection, Selection.End(xlDown)).Select Selection.DataSeries Rowcol:=xlColumns, Type:=xlLinear, Date:=xlDay, _ Step:=1, Trend:=False Selection.End(xlDown).Select ActiveCell.Offset(4, 0).Select End Sub
630 :
名無しさん@そうだ選挙にいこう :2008/04/28(月) 21:21:14
自分自身のファイル名を返す関数って無いでしょうか? =INFO("directory") でパス名は取れるのですが、ファイル名の取得方法がわかりません。
632 :
名無しさん@そうだ選挙にいこう :2008/04/28(月) 21:44:45
>>631 氏先生様、
ありがとうございます。解決しました。
=CELL("filename")なんですね。
cell関数よりinfo関数で取得できる方が自然なような気もしますが・・・(^^;)
ゲーム攻略サイトを作っている者です。EXELとWORDはPCに入ってますが使用はしたことがありません。 たとえばゲームに出てくるアイテムの名称や値段や強さなどによって 並べ替えをしたり、グループ分けしたりするというのを 今まで手作業でやってHTMLを作りアップロードしていたのですが 友人が「エクセルでデータを作成・管理して、後で一括処理して書き出すとかできたかも」 と聞きました もしそれができれば作業がすごく楽になるのですが EXELではそういう使い方も可能なのでしょうか?
失礼しました OSはXP、バージョンはEXEL2000(9.03821SR-1)です
635 :
名無しさん@そうだ選挙にいこう :2008/04/28(月) 22:28:59
633 ファイル→webページとして保存 タグがかなり汚いので要注意
636 :
名無しさん@そうだ選挙にいこう :2008/04/28(月) 23:02:33
ありがとうございました!
637 :
名無しさん@そうだ選挙にいこう :2008/04/28(月) 23:18:25
>628 番 って後に続く番号が入ってるの? 入ってるとしたらドンナ形? それとも 番 だけ?
638 :
名無しさん@そうだ選挙にいこう :2008/04/28(月) 23:37:30
EXCELで、A列に日付が記入されていて B列に3ヶ月前の1日を表示させるようにしたいけれど 書式でどう記述すれば良いですか? A列 B列 2008/04/29 2008/01/01 2008/07/15 2008/04/01 2008/12/02 2008/09/01
=DATE(YEAR(A1),MONTH(A1)-3,1) ではだめなのか?
>>639 書式なら無理
数式なら>640にもう一票
【1 OSの種類】 Windows vista 【2 Excelのバージョン】 Excel2007 【3 VBAが使えるか】いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード】 Exsel グラフ グラフについて教えてください。 ・A2、A3、A4にそれぞれA社、B社、C社。 ・B1、C1にそれぞれ工場数、生産数。 ・B2、B3、B4にそれぞれ2、3、5。 ・C2、C3、C4にそれぞれ30、50、90。 として、2-Dの集合縦棒を作成し、工場数を第2軸に設定すると 工場数と生産数が重なってしまいます。 そこで、系列のオプション→「系列の重なり」を「離す」にしても 変化がありません。 これは仕様なのでしょうか? ※ちなみに、折れ線グラフは使用せずに、棒グラフのみで 表したいのですが…
644 :
名無しさん@そうだ選挙にいこう :2008/04/29(火) 22:16:45
何をしたいか、会社ごとか工場ごとかわからない 会社ごとの生産数なら、データ範囲を=Sheet1!$A$1:$D$1,Sheet1!$A$3:$D$3 にすればオッケー
647 :
643 :2008/04/29(火) 22:53:23
>>644 ありがとうございます。
例としてあげたので、何でもよかったのですが…
A社は工場を2つ所有して、生産量が30という事で、
それぞれの会社の工場数と生産量を分るように、
という意味です。
>>646 ありがとうございます。
同じグラフはできるんですが、
この工場数と生産数のグラフの間に
少し余白を入れたいんです。
第2軸を設定しなければそうなるんですが、
それだと、工場数があまりにも小さく表示
されてしまうので。。
648 :
628 :2008/04/29(火) 23:23:50
>>637 B列の「番」の下には,任意の数値が入っていて,それに上書きする形で
連番を書き込んでいきたいのです。
>>638 早速ありがとうございます。
しかし,作っていただいたものそのままだと,各事業所の一番下の行とそのひとつ上の行
へは書き込まれないようです。ですので,
r = Selection.End(xlDown).Offset(-2, 0).Row
の部分を,
r = Selection.End(xlDown).Offset(0, 0).Row
と改変したところ,おおむねうまく動きました。
ただ,行数が1行しかない場合,やはり次の事業所へ連番が溢れてしまうようです。
>>643 主軸、第2軸にそれぞれにダミーの系列を加え順序を調整
650 :
名無しさん@そうだ選挙にいこう :2008/04/29(火) 23:45:19
今日エクセルX5.0から2002へ切り替えた 数値や式は問題なかったけど、背景色なんか全部無視された (´;ω;`)
651 :
643 :2008/04/29(火) 23:49:49
>>649 ありがとうございます。
希望していたグラフになりました。
ただ、グラフ右側の凡例に、生産数と工場数の他に
2つ空欄のダミー情報が表示されてしまいます。
これは、消せないですよね?
右クリックしてクリアとか
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2002 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 excel 関数 時間 時間計算をしたいのですが、 どのような関数を用いればよいかわかりません。 例えばセルA1に[現在時刻]を入力し、 次のB1[現在時刻+1分30秒]を表示できるような関数はないでしょうか? A1に現在時刻を入れて、セルの右下にある黒ポチで連続データを作る方法もありますが、 行の数が多くなるので、出来ればA1に現在時刻を入力するだけで下の行の数値が変わってくれると作業効率が上がるのです。 どなたかご教授お願いいたします。
=TIME(HOUR(A1),MINUTE(A1),SECOND(A1)+90)
655 :
643 :2008/04/30(水) 00:10:02
>>652 ありがとうございます。
削除すると、生産数と工場数は何色のグラフを
表しているのかわからなくなってしまいます。
>>653 A1=Now()
B1=A1+0.00104166666666667
658 :
653 :2008/04/30(水) 00:28:16
>>654 できました!
なるほど、時間を計算するにはこういう式になるんですね。
ありがとうございます。
>>656 こういったやり方もあるのですね。
小数点の計算がすごいです。
原理が良くわからないのですが、ただすごいとしか…。
ありがとうございます。
実は本も数冊読んだのですが、給与計算のことばかりで載ってなくて、どうしたものかと。
これでスケジュールを立てやすくなりました。
重ねて感謝です!
659 :
643 :2008/04/30(水) 00:53:32
>>657 ありがとうございました。
やっと解決しました。
PDFにExcelファイルを変換した際、Office2007だと正常に変換できるPDFが、 Office2003の環境だと、下が切れてしまうんですがどなたか対処法わかりませんか? 倍率など弄ってみたのですがページが変わる様な間隔でもないのにいきなり切れてしまうんです。 PrimoPDF、CutePDFなど様々なPDFソフトを試したのですが症状が同じだったので 変換ソフトに問題があるとは思えませんでしたのでこちらに質問させてもらいました。
661 :
名無しさん@そうだ選挙にいこう :2008/04/30(水) 01:43:32
【1 OSの種類 .】 Windows Vista 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 秒 単位換算 秒数を分と秒に変換できないでしょうか 150→2分30秒といった具合です
=TIME(0,0,150) 書式:mm"分"ss"秒" すこし上のレスくらい見ないとな
663 :
名無しさん@そうだ選挙にいこう :2008/04/30(水) 01:56:50
カス共くだらねー質問すんな、よく関数の使い方よんでこい。
>>661 =150/86400
書式:m"分"ss"秒"
A1に150とあって、数式で分(2)をB1に求めるには =INT(A1/60)
C1に秒(30)を求めるには=A1-B1*60 または=MOD(A1,60)
665 :
639 :2008/04/30(水) 06:11:52
>>640 だと
年またぎの時に計算が狂ってしまいます。
2009/01/15 → 2008/10/1とするには
どうすれば良いですか?
666 :
名無しさん@そうだ選挙にいこう :2008/04/30(水) 07:03:24
>>665 狂わないぞ
もしかして、セル内が####になるのを狂うって言ってるか?
セルを横に広げてみれ
やりもしないで思い込みで狂うとか言ってるんだろ。 ここにはそういうカス質問者が多い。
668 :
名無しさん@そうだ選挙にいこう :2008/04/30(水) 10:00:38
▼━質問テンプレ (ゆっくりしていってね!!!) ━━━━━━━━━━━━ 【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2007 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 Excel 複製 ずれる 印刷がおかしくなるExcelファイル(A)があり、何らかの設定が 壊れているのかと思い仕方なく新規に作り直そうと ・新規Excel(B)立ち上げ ・(A)を開きCtrl+Aで全セル指定 ・(B)へ貼り付け ・(A)の行・幅を手動で(B)へ設定 ・(A)のページレイアウト・印刷範囲を(B)に設定 の作業を行って、とりあえず印刷レイアウトだけは全く同じになることを 確認しようとしたところ同じ倍率(60%)で見ているのに、全く別物の Excelファイルになってしまいました。 例えば、「在庫一覧」の「欄」の字がm(A)ではG列とH列のちょうど中間に くるのに対し、(B)のファイルではH列とJ列の中間にくる、といった感じです。 上記以外で、Excelのシートを定義する上で何か設定を行う部分はあるのでしょうか? VBA等は使っていないただの参照式があるだけのExcelです。(数式は今回関係ありません)
669 :
名無しさん@そうだ選挙にいこう :2008/04/30(水) 10:19:53
×例えば、「在庫一覧」の「欄」の字がm(A)では ○例えば、「在庫一覧」の「欄」の字が(A)では ゴミが入ってしまっていました
「標準フォント」の影響を受けるかもね
671 :
名無しさん@そうだ選挙にいこう :2008/04/30(水) 10:54:17
>>670 ありがとうございます。標準フォントの設定・その他テーマ等は
全て同じで、変更されていないようでした。
すみません質問の仕方をちょっと変えます。(質問の核心は同じです)
先程と同じ環境で、(A)のファイルで新規Sheetを作り、倍率を75%で表示し、
編集中だった(B)のファイルでも同様に新規Sheetを作り同倍率で表示しました。
それぞれのファイルで、まだ何も記述・設定していない新規sheetを表示して
基本設定の違いを比較するためです。
すると、やはりこの段階で既に二つに差異が生じていました。
キャプチャして上に(A)を、下に(B)を並べて比較したのが以下の画面です
ttp://www2.uploda.org/uporg1395264.jpg これはどこを設定すれば(A)と(B)の画面を同じ設定にする事ができるのでしょうか。
標準フォントを(A)のA1セルのフォントに設定、再起動。
673 :
名無しさん@そうだ選挙にいこう :2008/04/30(水) 11:49:37
>>672 ありがとうございます。やってみましたがだめでした…
再起動はExcelの再起動で良いのですよね?
そもそも、(A)のエクセルは標準フォントが「明朝」などという
存在しないフォントになっていて、さらに全セルを指定して、
これまた存在しないフォント「平成明朝」を設定しているような状態に
なっているようなのです。古いファイルに修正を重ねてあるようで
本当にカオスです。作成当時のPCには入っていたのでしょうね。
そんなわけで結論としてはだめだった(変わらなかった)のですが、
これは(A)の標準フォントが現在の環境に存在しないものだった事に
起因するのでしょうか?
674 :
名無しさん@そうだ選挙にいこう :2008/04/30(水) 12:29:54
コピーペーストの仕方が良くないような気がする。 ctrl+Aでなくて、列のアルファベットの上をAから任意の所まで ドラッグして、コピーしたほうが、列幅までコピーできるから いいのでは?
675 :
674 :2008/04/30(水) 12:31:48
あ、ごめん。間違ってる。 忘れてください。逝ってきます
>>648 ごめん、俺の読解力がないせいか良く分からない
Range("B" & i + 1 & ":B" & r).Select
を
Range("B" & i + 1 & ":B" & r + 1).Select
か?
実際のエクセルファイル(処理前と処理後)
をあげてもらえるとすぐにできるんだけど、難しいかなー
677 :
名無しさん@そうだ選挙にいこう :2008/04/30(水) 13:29:26
▼━質問テンプレ ━━━━━━━━━━━━ 【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 以下の様なファイルがあります。 BookA(Sheet1,Sheet2,Sheet3) BookB(Sheet1) BookC(Sheet1) BookAのSheet2,Sheet3に、それぞれBookB(Sheet1)、BookC(Sheet1) の内容をコピーする作業をマクロを使って自動化したいのですが、 どうすればよいでしょうか? ご教授下さい。宜しくお願い致します。
678 :
666 :2008/04/30(水) 13:31:12
>>667 だな
例もない
質問者が皆こうでない事を祈る
>>677 シート4、シート5を作って
リンクさせたい部分を='[BookB.xls]sheet'!A1
として
マクロの記録をしながらシート4をシート2に、シート5をシート3に
好きな範囲をコピー&ペースト
後はボタンでも作ってそこに登録
680 :
名無しさん@そうだ選挙にいこう :2008/04/30(水) 13:55:48
>>679 ご回答ありがとうございました。
一つ伺いたいのですが
>リンクさせたい部分を='[BookB.xls]sheet'!A1 として
この部分を詳しくご教授願えませんでしょうか。
BookBのsheetAと直接リンクということでしょうか?
初心者で申し訳ありません。
682 :
名無しさん@そうだ選挙にいこう :2008/04/30(水) 15:13:06
【1 OSの種類 .】 Windows xp 【2 Excelのバージョン 】 Excel 2007 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 ソフトウェアかんばん すいません。 チームのTODO管理用に「ソフトウェアかんばん」を作っていますが、 付箋を図形を使って作成しようとしています。 そこでセル内にある図形(付箋)の個数をカウントできるような仕様にしたいのですが、 図形の個数を表示する関数はありますか? 宜しくお願い致します。
>>682 無いです
vba使えれば一発なんだけどね
図がそんなに多くなければ、一つの図をクリックしてtabを押せば
順番に選択されるので、それで数えるのもいいかも
個人的には図じゃなくセルに記入して、期日近く〜過ぎたものなどは条件付書式で
目立つようにしたほうがいいと思う
エクセルだけインスコしたのですが開閉時に 非表示モジュールAutoExecNew 内でコンパイルエラーが発生しました。 と出ます。 何か間違えているのでしょうか。 原因と対処法を教えてください。
685 :
名無しさん@そうだ選挙にいこう :2008/04/30(水) 20:42:45
セルの結合操作についての質問です。 複数の箇所にある「同じスタイルのセル結合」を、ひとつひとつではなく、 まとめて出来る操作方法があれば教えて下さい(VBAを使用せずに)。 例えば、 B1とC1の結合と、B3とC3の結合、B5とC5の結合… という場合です。 よろしくお願いします。
B1とC1を結合 B3をクリックしてF4 位しか思いつかん。
>>685 よくわからんが・・・
ツールバーのところで右クリックして
<ユーザー設定>-<コマンド>-<分類(G)>-<書式>を選択。
その中の<セルの結合>or<横方向に結合>をツールバーに放り込んで使えばいいのでは?
>>685 B1C1の結合をした後、
書式をコピーしてB3をクリック、
書式をコピーしてB5をクリックする
B1C1の結合をした後、Ctrl+C
B3でCtrl+V、B5でCtrl+Vを押す。
一番楽そうなのをつかったらいい
質問です。 ある事に対して賛成の人が60%、反対の人が40%いたということを表す円グラフがあると考えてください。 その円グラフから賛成の人の内訳を派生する形で表示したいんです。 これはエクセルで実現可能でしょうか? よろしくお願いします。
ドーナツか補助縦棒か
691 :
名無しさん@そうだ選挙にいこう :2008/05/01(木) 04:53:23
【1 OSの種類】 Windowsvista 【2 Excelのバージョン 】 Excel2007 【3 VBAが使えるか.】コードは移せます。 【4 VBAでの回答の可否】 可・ ↑な環境です。 いきなりですが エクセルの在庫管理のデータの中から一定の数値を下回る数値がある場合に エクセルを立ち上げた時にポップアップで警告表示を出すor自動的にセルに一目で分かる マーキングをつけたい場合はどうすればいいんですか? (要するに何千種類と在庫があり品物によっては危険ラインの数値も違う中で 危険ラインを下回るセルを探し出すのも一苦労です。) 大体のイメージは自分もつくんですが 実現の仕方が分かりません。 初めてカキこんだものですから文章も読みにくいかもしれませんが 誰か助けてください。 よろしくお願いします。
>>691 つ【条件付き書式】
てか、excel立ち上げたら前回閉じたときと違うデータが入っていたりするのか?
なぜ起動するときでないといけないのだろう?
>>691 ど素人以前のくそみそテクニックなんですが
5000以下をレッドマーク
Option Explicit
Private Sub Workbook_Open()
Application.ScreenUpdating = False: Dim i As Integer
For i = 1 To 1000
If Range("A" & i).Value < 5000 And Range("A" & i).Value <> "" Then
Range("A" & i).Select
With Selection.Borders(xlEdgeLeft)
.LineStyle = xlContinuous
.Weight = xlThick
.ColorIndex = 3
End With
With Selection.Borders(xlEdgeTop)
.LineStyle = xlContinuous
.Weight = xlThick
.ColorIndex = 3
End With
つづき With Selection.Borders(xlEdgeBottom) .LineStyle = xlContinuous .Weight = xlThick .ColorIndex = 3 End With With Selection.Borders(xlEdgeRight) .LineStyle = xlContinuous .Weight = xlThick .ColorIndex = 3 End With End If If Range("A" & i).Value > 5000 Or Range("A" & i).Value = "" Then Range("A" & i).Select Selection.Borders(xlDiagonalDown).LineStyle = xlNone: Selection.Borders(xlDiagonalUp).LineStyle = xlNone Selection.Borders(xlEdgeLeft).LineStyle = xlNone: Selection.Borders(xlEdgeTop).LineStyle = xlNone Selection.Borders(xlEdgeBottom).LineStyle = xlNone: Selection.Borders(xlEdgeRight).LineStyle = xlNone End If Next i End Sub
695 :
名無しさん@そうだ選挙にいこう :2008/05/01(木) 10:36:40
【1 OSの種類 .】 Windows vista 【2 Excelのバージョン 】 Excel 2002 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 Excel 確立の設定 こんにちは毎度参考にしていただいております。 早速ですが、質問をさせてください。 例えば、 ○がでる確立15% △が出る確率50% ×が出る確率35% などランダムでかつこのような確立を設定することは可能なのでしょうか? ご教授して頂けたら有難いです。 宜しくお願い致します。
確率を設定した時点でランダムじゃないから質問が成り立たないだろうね
RANDとIFなどを組み合わせる
これで、if構文のFALSE以下を足していけば・・ =IF(ROUND(RAND()*100,0)<=14,"○","*")
700 :
名無しさん@そうだ選挙にいこう :2008/05/01(木) 12:24:06
【1 OSの種類 .】 WindowsXP
【2 Excelのバージョン 】 Excel2003
【3 VBAが使えるか .】 少しだけ
【4 VBAでの回答の可否】 可
【5 検索キーワード 】 表 検索 複数 Hlookup Vlookup
↓のように表から自動的に抽出できるようにしたいのですが
http://a-draw.com/uploader/src/up0318.bmp 検索値が先頭列でない、複数あるので困っています
適当な関数、方法があればご教授下さい
よろしくお願いします
701 :
教えてください :2008/05/01(木) 12:37:04
Excel2003を使っています. Wクリックで複数のexcelファイルを開くと1つのExcelのなかにそれらのファイルが起動され,後は[ウインドウ]メニューからファイルを切り替えて操作をしています. これが非常に不便なので,ファイル毎にExcelが立ち上がるように起動できる設定がないかと思うのですがどなたか教えていただけませんか? 以前のバージョンではこんな設定ではなかったと思うのですが... これはpowerpoint2003も同じ現象です. ご教授下さい.お願いします.
702 :
教えてください :2008/05/01(木) 12:52:53
解決しました.↑.
703 :
名無しさん@そうだ選挙にいこう :2008/05/01(木) 13:19:40
>>702 これってExcelで設定すると思いきや、Windows側で設定するんだね。
・フォルダオプションでxlsへ新しいアクションを追加。
・xlsを選んで詳細設定を押して新規を押し、[新しいアクション]ダイアログボックスの
[アクション(A)]へ
→「新しいウィンドウで開く(&W)」
[アクションを実行するアプリケーション(L)]へ
→「"●●●\EXCEL.EXE" "%1"」を入力し[OK]。
(●●●はEXCEL.EXEがあるフォルダを入れる)
と入力すると、xlsのメニューに「新しいウィンドウで開く(W)」が追加される。
あとはそれを規定に設定すれば、次からはダブルクリックで新規Excelを開くようになる。
ちなみに、OSがWinNTだと何をしても複数のExcelは開けない。
あと暫定的に複数開きたいならExcelのショートカットかWin+Rで「ファイル名を指定して実行」を開き
「excel」と打って起動したExcelに別窓で開きたかったxlsを投げ込んだ方が早い。言うまでもないけど。
スレ違いだけど、Wordを開くときは「word」じゃなくて「winword」とタイプ。これ豆知識な。
>>695 RAND() を複数記述すると、その都度乱数を発生するから
IF をネストさせる時は、例えば B1 に =RAND() と入れておいて
=IF(B1<0.15,"○",IF(B1<0.5,"×","△")) のようにする。
1つのセルで済ませたければ、ちょっとトリッキーだが
=MID("○○○×××××××△△△△△△△△△△",RAND()*20+1,1)
とか
実際に別々にしたいのではなく 同様のタスク バー ボタンをグループ化する を解除で済むなんてオチじゃないだろうな?
706 :
名無しさん@そうだ選挙にいこう :2008/05/01(木) 14:48:05
707 :
名無しさん@そうだ選挙にいこう :2008/05/01(木) 15:10:37
708 :
707 :2008/05/01(木) 15:22:16
>>707 のシート、D24を間違えた。
×F1:F9
○G1:G9
709 :
名無しさん@そうだ選挙にいこう :2008/05/01(木) 15:24:08
710 :
707 :2008/05/01(木) 15:26:44
Mougはあれじゃつぶれるな。 ここにどっと流れ込んできたりして。
712 :
名無しさん@そうだ選挙にいこう :2008/05/01(木) 15:29:52
>>700 分かるとは思うけど、
>>707 を使うときはC18に自分でプルダウンメニューを作るか、競技名をコピペするんだぞ。
っていうか”バトミントン”じゃなくて、バドミントン(badminton)な。
713 :
707 :2008/05/01(木) 15:34:13
714 :
名無しさん@そうだ選挙にいこう :2008/05/01(木) 15:46:12
これはひどい自演
715 :
712 :2008/05/01(木) 15:47:11
さらに補足。バドミントンの由来はこう。 ミントの葉を発見した奴がその良い香りにさわやかな味を期待して 口に含んだところ、予想を裏切られる味に激怒し、ミントの切り口にタールを つけてスチームで吹き飛ばしたところ、放物線を描き面白いほど飛んだ。 それをスケールアップさせ、ミントとタールではなく鳥の羽と 樹脂を固めたものを先端に付けたものを鉄板で打ったところ これまた面白いほど飛び、もう一人がまた打ち返すことでラリーで 続けられるようになり、船乗りの間で甲板上の暇つぶしとして大いに流行った。 それはミントの味が悪かったことによるある男の行動から発展した為、 「Bad mint on」と呼ばれ、繋がってbadmintonとなった。 次第にそれは停泊する船と船で行われるようになった。 船の間に羽が落ちると取り出せなくなることから、みな口々に 「シット(糞)!」と舌打ちし、船と船の間の事を「シット」と呼ぶようになった。 陸上にあがってからも船乗りたちはこの遊びを辞めず、彼らの 「シットがあれば盛り上がるんだがな!」の不満を聞いた他国の船乗りが シットとネットを聞き間違え、余っていたネットを善意で提供したところ 彼らはネットを挟んでバドミントンを行うようになった。 今のバドミントンの原型の誕生である。 嘘みたいだけど、今俺が考えた本当の作り話。
716 :
707 :2008/05/01(木) 15:48:57
717 :
名無しさん@そうだ選挙にいこう :2008/05/01(木) 15:54:15
718 :
名無しさん@そうだ選挙にいこう :2008/05/01(木) 18:14:26
データのフォーム機能を使ってリストを作っていたのですが、 「リスト又はデータベースを拡張できません」というメッセージが出てしまい 追加できなくなりました。 考えられる原因と対処法を教えていただけないでしょうか。
719 :
名無しさん@そうだ選挙にいこう :2008/05/01(木) 19:09:30
自己解決しました。ご迷惑をおかけしました。
720 :
名無しさん@そうだ選挙にいこう :2008/05/01(木) 21:56:14
【1 OSの種類 .】 Windows XP 【2 Excelのバージョン 】 Excel2007 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 散布図 散布図のデータ系列1は○で、系列2は×で表示させたいのですが、 どこで直せばいいのでしょう? よろしくお願いします。
721 :
名無しさん@そうだ選挙にいこう :2008/05/01(木) 21:57:28
【1 OSの種類 .】 WindowsVISTA 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 記述コードのコピペ程度なら・・・ 【4 VBAでの回答の可否】 そのまま貼り付けて数値をいじる程度でよければ。 【5 検索キーワード 】 ハイパーリンク 同一セル内 エクセルを使って表を作成しており、 同一セル内で改行して項目を2つ入れる必要がある箇所があります。 その2つの項目それぞれに別のハイパーリンクを設定したいのですが、 何か方法あるでしょうか? どうしても片方だけのリンクしか貼れなくて困っています。 お力をお貸しください。よろしくお願いします。
722 :
名無しさん@そうだ選挙にいこう :2008/05/01(木) 22:07:34
お願いします。教えてください。 問。見積番号は、番号((例)123)を入力すると「見積第123号」と表示されるように書式設定してください。 やり方教えてください。お願いします。
724 :
名無しさん@そうだ選挙にいこう :2008/05/01(木) 22:15:51
【1 OSの種類 .】 Windows2000 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 初書き込みです。よろしくお願いします。 エクセルにて下のような表を作った時、 4月 5月 6月 7月 8月 9月 累計達成率 ノルマ 100 120 100 80 120 110 630 結果 75 105 「81.8%」 月の終了時にその月の結果をインプットすると「」内の累計達成率が自動的に計算されるように したいのです。5月の時点では、(75+105)/(100+120)が計算されるという事です。 何卒ご教示の程宜しくお願いします。
725 :
名無しさん@そうだ選挙にいこう :2008/05/01(木) 22:23:08
726 :
720 :2008/05/01(木) 22:37:49
>>725 ありがとうございます。無理ですか。
合格不合格のデータなんで、○×で作れと言われてるんですよ。
727 :
名無しさん@そうだ選挙にいこう :2008/05/01(木) 22:40:46
合否のデータを散布図って時点で間違ってるだろ どうしてもならオートシェイプ重ねるか素直に円グラフ
728 :
724 :2008/05/01(木) 22:43:47
>>725 早々のレスありがとう御座います。
累計の達成率の出し方分かりました。
下に出た累計率を「」内のセルに、結果をインプットするごとに表す事は出来るのでしょうか?
よろしくお願いします。
>>722 宿題は自分でやれよ。
参考書見れば初心者でもできる簡単な問題なんだから。
730 :
名無しさん@そうだ選挙にいこう :2008/05/01(木) 22:51:01
ありがとうございます。723の方すみません、、、、できない、わからない
前景色、背景色を変えると出てくる
732 :
700 :2008/05/01(木) 22:58:31
>>707 お礼遅くなりました
配列数式勉強さしてもらいます
URLまで紹介して下さって本当ににありがとうございました
まことに申し訳ないのですが
上げてくださったファイルをとり逃してしまいました
ご面倒おかけしますがもう一度ファイルを上げて頂けないでしょうか?
よろしくお願いします
>>730 しばらく苦労しな。そのうち解るようになるから。
734 :
名無しさん@そうだ選挙にいこう :2008/05/01(木) 23:05:52
やるのは勉強、努力だ 苦労したいなら式に頼らずに全て値を入力してればいい
735 :
名無しさん@そうだ選挙にいこう :2008/05/01(木) 23:20:22
>>734 おまえ馬鹿だろ。
ってか頭おかしいだろ。
736 :
名無しさん@そうだ選挙にいこう :2008/05/01(木) 23:27:18
そんな事も分からないとは 哀れだな
737 :
707 :2008/05/01(木) 23:40:49
738 :
名無しさん@そうだ選挙にいこう :2008/05/01(木) 23:46:29
何度もすいません、 どうか教えてください! お客様名(例)株式会社 ○○産業と入力すると株式会社 ○○産業 様と表示されるにはどうやって書式設定するのですか? 教えてください。。。
739 :
700 :2008/05/01(木) 23:59:56
>>737 ありがとうございます!!
よろしくお願いします
741 :
名無しさん@そうだ選挙にいこう :2008/05/02(金) 00:21:16
740さん打ち込んでも自動で様が出ません
742 :
707 :2008/05/02(金) 00:41:41
>>739 今日、私が帰るのは一時過ぎになりそう
いつアップするのが都合がいいですか?
今日?明日?明日なら何時頃?
743 :
700 :2008/05/02(金) 00:51:06
>>742 恐れ入ります
今日は1時30ごろまで起きております
明日は9:30〜18:00です
よろしくお願いいたします
744 :
名無しさん@そうだ選挙にいこう :2008/05/02(金) 01:02:01
>>743 明日の9時30に、このスレを見て下さい。
質問は受け付けますのでご心配なく。
私、帰りが2時になりそうです。
おやすみなさい
745 :
707 :2008/05/02(金) 01:05:46
>>743 >>744 に名前入れ忘れました
先に言っておきますと、関数はあまりに複雑なので
「何でか知らんけど、上手くいく」
的な感覚で使ってもらえばよいかと。
746 :
700 :2008/05/02(金) 01:12:21
>>745 お手数おかけいたしまして申し訳ないです
なんとお礼申し上げていいのか
楽しみに待たせて頂きます
ありがとうございます
mnmn
748 :
707 :2008/05/02(金) 08:27:42
>>746 http://www2.uploda.org/uporg1398448.xls ・セルD19〜F25に関数が入っています。
・表には4月7日迄しかありません。
・一つの競技が同じ日に3件あってもいいようになってます。
・日付を追加する場合は、関数も変更する必要があります
(A1:H9のH9を変更、例H1:H9のアルファベットを変更)。
・一つの競技が同じ日に4件以上あってもいいようにしたいなら、
E列とF列の関数をよく比較して下さい(すぐ分かる)。
・配列数式{}にするには、Ctrl+Shift+Enterで確定してください。
E列とF列の関数は、配列関数でないと、きちんと動作しません。
・抽出結果には自動的に色が付くようになっています(条件付き書式)。
・「ROW(A1:A9)」は弄らない。
こんなんで宜しいでしょうか?
749 :
685 :2008/05/02(金) 08:32:01
>>686 、687、688
レスありがとうございます
750 :
700 :2008/05/02(金) 09:23:03
>>748 おはようございます
まさに「何でか知らんけど、上手くいく」状態です^^;
勉強させて頂きます
何から何まで丁寧に教えてくださり感謝します
本当にありがとうございました!!
>724 B2:G2 がノルマ、B3:G3 が結果として =SUM(B3:G3)/SUMIF(B3:G3,">0",B2:G2)
752 :
707 :2008/05/02(金) 09:41:12
753 :
707 :2008/05/02(金) 09:51:49
>>750 何かあったらこのスレに書いておいて下さい。
お役に立てて何よりです。
【1 OSの種類 .】 Windows2000 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 osとかあまり関係ない初歩的な質問なんですが… 3つのセルを1つに結合して、でき上がった1つのセルを 2つに再分割することって可能ですか?もし可能でしたらご教授お願いします。
755 :
707 :2008/05/02(金) 10:08:31
>>754 一つ聞きたい。
何故そんなことをしたい?
この書き込みを見る限りで言うと、できない。
ただ、あなたが何をしたいかで、代案はありそうな気がする。
>>754 できるのは「結合」と「結合の解除」だけ。分割という機能はない。
目的によっては代案が出せるかもしれないので、何がやりたいのか詳しく書いてみ。
>>754 セルの分割を取り消して、二つのセルを結合する。
あるいは、そのセル以外を全部二つのセル結合状態にして、そのセルだけ
三つの結合にする。
何も難しいことをするわけではないんです。 ただ、例えばA1からA3までのセルには上から前期、中期、後期の3つの欄を、 その隣のB列に前期、後期の2つの欄だけを作りたかったんです。この3セルと,2セルを 奇麗に揃えられないかなと思いまして…
759 :
707 :2008/05/02(金) 10:20:32
>>758 1:A1とA2、A3とA4、A5とA6を結合する。
2:B1とB2とB3、B4とB5とB6を結合する。
760 :
名無しさん@そうだ選挙にいこう :2008/05/02(金) 10:21:27
>>758 奇麗かどうかは君の主観だろ
具体的にどんな格好にしたいんだい
セルの結合は試してみたのかな?
761 :
754 :2008/05/02(金) 10:22:50
>>707 、他皆様
こんな素人にお答え頂きありがとうございます。
できるexcelからやり直してきます。ありがとうございました。
762 :
707 :2008/05/02(金) 10:26:40
763 :
707 :2008/05/02(金) 10:30:42
優しさを失わないでくれ。分からない事を質問として書き込み、回答を謙虚に受け止め、 何処からかの煽りにも負けず、知ろうになろうとする気持ちを失わないでくれ。 例えその気持ちが何百回裏切られようとも・・・それが私の最後の願いだ
764 :
707 :2008/05/02(金) 10:31:18
765 :
754 :2008/05/02(金) 10:31:57
>>762 希望通りです。ありがとうございます。基礎からやり直してきます。
お手数おかけしました。
766 :
707 :2008/05/02(金) 10:35:01
767 :
707 :2008/05/02(金) 10:35:52
768 :
695 :2008/05/02(金) 11:19:27
>>697 >>698 >>704 御返事有難う御座いました。
参考にさせて頂きます。
更に質問させて下さい。
○がでる確率15%
△が出る確率50%
×が出る確率35%
とした時
それを20個並べたときに
○が3個、△が10個、×が7個のように
20個中のそれぞれの数は一緒で位置はランダムのようになりますでしょうか?
【例】
検討1:△△○××△○△○△×△△××△△×△× ○3:△10:×7
検討2:○×△△△××△△××○△△△△××○△ ○3:△10:×7
検討3:××△△×△△△△×○○×△○××△△△ ○3:△10:×7
面倒な質問かと思いますが
御回答宜しくお願い致します。
769 :
名無しさん@そうだ選挙にいこう :2008/05/02(金) 11:25:25
数がランダムにならないなんてことは 無いと思うんですけど… 確率が何か分かってないよね?
770 :
695 :2008/05/02(金) 11:31:07
すみません 割合で考えたほうが宜しいのでしょうか。 例のようになればいいのですが…
>>738 どうでもいいけど、会社名の敬称は様じゃなくて御中だぞ
>>768 それはきっとランダムに並べ替えしたいってことだな
偽物多すぎるからトリップつけた。 今後俺を騙ったり、別のトリップつけてきた奴は偽物だと思って下さい。
774 :
名無しさん@そうだ選挙にいこう :2008/05/02(金) 11:53:53
775 :
名無しさん@そうだ選挙にいこう :2008/05/02(金) 11:59:02
>768 出現確率と並び替えは全く別だよ。 並び替えの簡単な方法は A B 1 ○ =RAND() 2 ○ =RAND() 3 ○ =RAND() 4 × =RAND() … … …
776 :
つづき :2008/05/02(金) 12:00:29
と入れておいて B列をキーに並び替え
>>768 >>775 に賛成だが、並び替えない方法ならやはり同じくダミーの列を使えば簡単。
たとえばSheet2のA1:B20に
○ =RANDD()
○ =RAND()
○ =RAND()
△ =RAND()
.
.
.
× =RAND()
× =RAND()
と20行入力しておいて、
たとえばSheet1で1行20列(A1:T1など)を選択して、
=INDEX(Sheet2!A1:A20,RANK(INDEX(Sheet2!B1:B20,COLUMN(A:T)),Sheet2!B1:B20))
と打ってCtrl + Shift + Enterだ。
778 :
707 :2008/05/02(金) 13:12:40
780 :
707 ◇yrdMRJ3yZw :2008/05/02(金) 13:52:47
俺は誰なんだ?
781 :
名無しさん@そうだ選挙にいこう :2008/05/02(金) 14:26:41
偽707大量発生中!!!
>>770 ○ 確率
× 確立
確率ってのは、何度も試行するうちに、だんだんと計算に近づく物であって、
2回や3回調べただけだと計算とは全然違う割合になってもおかしくないんだけど。
くじ引きみたいな、出る回数は決まってるけど順番がわからないような物は
「順列」って言うんだよ。
で、やりたいのは乱数(確率)か順列(並べ替え)か、どっち?
784 :
770 :2008/05/02(金) 16:33:03
>>784 君が
>>768 で書いた例のように、
必ず毎回○3:△10:×7にならなければいけないなら
並べ替えだと思うよ
>>783 さんが何度も言ってるように、乱数を使うと
○4:△8:×8になったり
場合によっては
○10:△7:×3になってもおかしくない
786 :
770 :2008/05/02(金) 17:40:42
ワロタ
○:×:△が、乱数で3:7:10の割合で出るようにするには =MID("○○○×××××××△△△△△△△△△△",RAND()*20+1,1) これを好きなだけセルに入れてから、COUNTIFで記号の数を数えればいい。 比率が割りきれないときは作業列を作ってIFで分けるしかない。 乱数は、シートを開いたり修正するたびに結果が変わるから注意な。
789 :
名無しさん@そうだ選挙にいこう :2008/05/02(金) 19:32:25
Excel表計算処理技能認定を受けてエクセルの資格を得たいのですが どうすれば資格を取得できるか分からず困ってます・・。 まずグーグルで『エクセル』や『エクセル 資格』などで試験情報を 検索するんだけど出てくるのはPCスクールのサイトやエクセルの 勉強サイトばかりで自分が知りたがっている 1、どこに行けばエクセルの認定試験を受けられるのか?(PCスクールで受けられるようですが 授業料が高いから勉強は独学でして試験だけ受けたいんです) 2、どこからどこまでエクセルを使いこなせれば3級なり2級の試験に合格できるのか? がなかなか解らず困ってます・・・ また書店に行ってもエクエルの操作方法を教える本はたくさんあるけど 勉強からエクセルの資格の受け方(場所など)、試験範囲まで載った本がなかなか見つかりません・・。 どなたか独学でエクセルの資格を受験した方どうすればいいか教えて下さい。
エクセルを使いこなすという事は当然VBAも使えると言う事。
VBAが使えるということはプログラミングができるということ。
一つの機能を実装するのに、Cで作るのとVBAで作るのは
圧倒的に後者の方が難しい。なぜなら、自由度が低いからだ。
Cより機能が劣るVB、そしてそれより更に劣るVBA。
限られた機能、限られた関数で機能を実装してこそエクセルマスターだ。
>>789 …おまえはエクセルマスターにふさわしくない。
っていうか就職に有利とかあんの?
アビバのパソコン検定と同等じゃないの?
>>790 あんまり恥ずかしい発言やめとけ。
お前はVBA覚えたてか。
>>789 何で自分ではっきり「Excel表計算処理技能認定」と書いてるのにその言葉で検索しないんだ・・・
それで検索すると一番最初に公式サイトらしきものが出てくるんだが・・・
単に作業道具の一つに過ぎないエクセルを、何故メインに考えてるんだ? 作業内容を理解して且つ、エクセルも理解する。 2つやって、ようやく仕事になる
795 :
696 :2008/05/02(金) 21:07:29
ほら 俺が書いたレスが一番適切な回答だったじゃねーかwww
正直、ちょっとすごい
>>794 学生かもしれないし、ニートかもしれない
まぁなんにしろ・・覚えようとする意気込みは買ってあげてもいいんでない
雑談はそろそろ雑談スレで
>>696 確率を設定した時点でランダムじゃないってどんだけDQNだよ。
RAND()は0〜1の値が100%の確率で出てくるんですが。RAND()は乱数じゃないのか?
なんでそんな必死なの
>>799 マジレスするとRANDは疑似乱数。100%じゃないよ。
同じく・・ 皆分かってて言わないのに
804 :
707 :2008/05/02(金) 22:04:49
相変わらず設題に関するメタな議論ばかりだね
805 :
707 :2008/05/02(金) 22:08:00
いい加減にして頂けませんかね
ほとんどのExcel厨にとっては確率や統計って分野は荷が重すぎると思う。
>>799 も
>>801 も意味不明だわ。
よく分かってなければ何も書かなけりゃいいのに・・・
808 :
707 :2008/05/02(金) 22:13:11
俺達もついにお払い箱か(;´Д`)(・ω・`)ビジンハクメイ 707 707
>>806 お前にとって荷が重いんだろ。勝手に一般化するな。
【1 OSの種類 .】 Windows2000 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 Excel2000 罫線が一部印刷できない 一部途切れる 1ページで収まるA4サイズの大きさの売り上げ表を罫線にて作成して印刷するのですが、印刷プレビューではきちんと 罫線は表示されるのですが、いざ印刷をしてみると、最初と中ほどまでは文字と罫線は印刷されますが 下のほうだけ”横の罫線だけ”が何行か印刷されず、なぜこのような現象が発生するのか全く分からず困っております。 どなたか解決法知ってらっしゃる方がいれば教えてください。 ちなみに、ブックの修復と文字の大きさの調整、簡易印刷のチェックを外してもダメでした。 2ページ目に任意の文字を書き、2ページ連続で印刷すると、きちんと罫線が印刷できました。 これは、ページ設定項目関連のバグなのでしょうか?
812 :
810 :2008/05/02(金) 23:53:30
>>811 回答ありがとうございます。やはり無理なんですかね…
会社のパソコンは古いものですのでpdfビューアはおろか、印刷ソフトなんてないんですよ^^;
余白がおかしいのかな?・・・
瞬簡PDF ZEROとかタダだよ 広告出るけど
ボールペンで書き足してコピーすりゃいーやん
>810 印刷上、一番下のセルの書式設定で、線を一度消して再度設定しなおす。 セル間の線はぱっと見、間の線に見えているけど、 下側のセルに属しているか上側のセルに属しているかみたいなのがあるみたい。 後は、印刷の境目になる所に空白行を追加して、 さらにそれのセル幅を0にすればいいかも。
【1 OSの種類 .】 Windows XP 【2 Excelのバージョン 】 Excel2002 【3 VBAが使えるか .】いいえ 【4 VBAでの回答の可否】 否 基本的なことで恐縮です。 セルの数値をコピーして、何も書かれていねいセルに貼り付けることはできるんですが、 セルの編集中に、コピーした数値を貼り付けるのはどうすればいいんでしょうか?
>>816 セルをコピーした時はセル単位でしか貼り付けできない。
編集中に貼り付けしたい場合は、編集中にコピーしておく必要がある。
819 :
817 :2008/05/03(土) 11:40:44
>>817 >>818 どうもありがとうございます。
なるほど、編集中にコピーすればよかったんですか。
820 :
810 :2008/05/03(土) 17:33:41
>>815 どうもあがりとうざごいます。その方法を試してみます。
【1 OSの種類 .】 Windows XP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】いいえ 【4 VBAでの回答の可否】 否 セルA1,A2,A3に数値が1〜999まで入力された時に "1"なら"001"と表示され、"11"なら"011"と表示され、 "100"なら"100"と表示されるようにするにはどうすれば良いのでしょうか? ようは絶対的に1桁であろうが2桁であろうが3桁表示させたいのです。
822 :
名無しさん@そうだ選挙にいこう :2008/05/03(土) 23:19:23
>>789 です
>>792 さん
自分が馬鹿でした・・・エクセルとかで検索して
Excel表計算処理技能認定という正式名称が出てきて
それをコピペしたんだけど再度それで検索しようという
まで頭が回りませんでした汗
確かに公式サイトが出てきて出題範囲などが載っていましたね
どうもありがとうございます。
>>793 さん
2chのメニューは全部見たんだけど資格というコーナーがあるとは
知りませんでした、情報ありがとうございます。
エクセルは多くの受験者数がいてあれば役立つと思ったんだけど・・・
>>821 セルの書式設定で
表示形式のユーザー定義
右側の入力欄に 000 と入れればおk
>>823 さん
解決しました。ありがとうございました
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 空白でないセルを返す 1 空白 2 空白 3 あああ 4 空白 5 いいい ランダムでいろんな文字列が出たり入ったりするのですが、 一番上の行にある空白でないセルの文字列を返すにはどうしたらいいのでしょうか? vlookupとかいろいろ試したのですが分かりませんでした
左に作業列を作成。文字列のはいるセルが空白でなければ1を入れる。 で、1でVLOOKUP使用
まずでちゅねー もじれつのはいるれつのひだりにさぎょうれつをつくるんでちゅよー もじれつのはいるれつをB、さぎょうれつをAとしまちゅね? さぎょうれつには、みぎのせるにもじれつがあれば1になるしきをいれまちゅ で、=VLOOKUP(1,A:B,2,0)でもとめるもじれつがしゅとくできるというわけでちゅよー わかりまちゅかー?
牛乳吹いたw
性格の悪い奴だなー
831 :
名無しさん@そうだ選挙にいこう :2008/05/04(日) 19:44:21
>>828 >さぎょうれつには、みぎのせるにもじれつがあれば1になるしきをいれまちゅ
日本語で(ry
u've to make some formulas in work column. The formula should return 1 if strings exist in right cell., ok?
833 :
825 :2008/05/04(日) 20:03:49
>>826 うまくいきました。ありがとうございます。
作業列を使いたくない場合、こういうやり方もある 文字列の入る列をB1からB30と仮定 =INDEX(B1:B30,MATCH(1,INDEX(SIGN(LEN(B1:B30)),0),0),)
=INDEX(B1:B30,MATCH(TRUE,B1:B30<>"",)) と打ってCtrl + Shift + Enteで配列数式
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 エクセル タブ 分割 シート1の数値を見ながらシート2に代入しているんですが、 いちいちタブを切り替えて見ているのが面倒なので、 タブ表示でなくて普通にエクセルのウインドウ内でシートを2つ表示したいんですが、 別ファイルだと出来るんですが、同じファイルじゃ無理なんでしょうか?
できるよ 2003ならウィンドウ−新しいウィンドウを開く
838 :
sage :2008/05/05(月) 02:40:12
ひとつのセルに20文字打ったら、下のセルに移動して文字入力なる方法はありますか。
=LEN(A1) って関数が文字数カウントしてくれる その代わりに確定しなきゃ計算はされない 後はデータ→入力規則で入力値の種類を文字列の長さ→最大地20に設定すれば エラーメッセージとか出る
841 :
名無しさん@そうだ選挙にいこう :2008/05/05(月) 10:35:14
>>838 もう、セル20個用意して、セル一個=一文字
にしちゃいなYO!
>838 データベース屋の折れには浮かばない発想(というか、禁止したいものだが、感心もしたもの) だが、こうゆうやり方があるということでwww 1.様式の入力可能なセル(この場合は各行)を先に結合しておく 2.「書式」→「セル」とクリックし、セルの書式設定ダイアログボックスがでたら、 3.配置タブをクリックしたら、「文字の制御」欄があり、折り返して全体を表示するをチェック。 (折り返しと結合の2つのチェック入り状態となる) 4.以上の前提で、連続した入力だが、1行20字入力状態にになるよう調整する。 なお、20字を正確にやりたいなら、文字種をMSP明朝からMS明朝などプロポーザルでないものにして おくことが必要だが、約20字程度で各行に適当にわたっていいのであればその必要はない。
>838 数字の羅列とかならともかく、文章打つなら どのやり方でも単語の変換とかみ合わないからうまくはいかないよ。
またDQNが湧いてきたなw
人によってはわざわざ〜って方が使いやすい場合もあるんじゃない? 間違ったやり方を書くのは問題外だけど、 こういうやり方もあるよ〜って意味なら個人的にどんどん載せていってほしい
配列数式が普通だろ?
>>834 のINDEXも実質的には配列数式だしね。
軽くもないものを何で冗長に書くのか気が知れん。
848 :
名無しさん@そうだ選挙にいこう :2008/05/05(月) 13:33:52
>>847 単純に配列数式を知らないから、だろ。
知らない人はかなり多い。
>843 つ□B >838 素直にワード使うかどっかの1セルに全部入力して切り出せ。
配列数式は何の役に立つの?
配列数式は作業列を作る必要が無くなる ・・が、認知度が低いから教えるのも一苦労だし 使える関数も微妙に制限があったりして、作業列作ったほうが早いし、他の人も手を加えやすい
>>851 読んでみた。
条件に合うデータの最大、最小、件数を求める
データを複数の条件で絞り込み、合計する
なるほど便利だね。
でもこの達人には配列数式覚える前にやるべきことがあるなと感じた。
854 :
名無しさん@そうだ選挙にいこう :2008/05/05(月) 15:13:48
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel 2002 【3 VBAが使えるか .】 はい・いいえ →意味がわかりません。 【4 VBAでの回答の可否】 可・否 →意味が分かりません。 【5 検索キーワード 】 エクセル 式 一部変更 コピー 一旦作成した式に一律ROUND(****、3)やROUNDDOWN(****、3)を挿入したいのですが、 ひとつずつやらないとダメでしょうか?まとめてできるやりかたを教えてください。
856 :
854 :2008/05/05(月) 17:39:24
>>855 ありがとうございました。
もう一つ質問があります。
一つのファイルに約30シートが入っています。
このシートを別のファイルに完全コピーをしたいのです。
シート名が他のファイルとリンクしているため、シート名を上手く一括してコピーできないものかと思っています。
上手い方法をご教示お願いします。
なお、シートの中身は、コピー&ペーストしてページ設定コピーを一つずつやるしかないと思っています。
つ←じゃま
859 :
854 :2008/05/05(月) 17:54:19
事情で別ファイル名で保存はできず。。。 困っています。OTL・・・。
>>856 こういう奴はいつまでたっても足手まといです
>>854 どういう事情かよくわからんが
>>857 で無理なら
元ファイルと新規エクセルファイルを立ち上げる
シート見出しの一番左にあるシートをクリック
shiftを押したまま、一番右のシート見出しをクリック
後はコピーなり、なんなり
862 :
名無しさん@そうだ選挙にいこう :2008/05/05(月) 18:22:09
【1 OSの種類 .】 Windows**XP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】特定の文字列 合計 置換 SEARCH SEARCHB IF SAUMIF A B C 紙1 1000 FB金属 4800 紙長野 700 33紙 1200 金属1 2500 木材1 2000 紙ゆうちょ 600 このような表から、紙・金属・その他で合計を出したいのです。 C列に seach("紙",A1,1)で値を出して =SUMIF(C1:C7,"<10",B1:B7)というやりかたでなんとか出来るようになりましたが、 正しい方法や、簡単な方法があれば教えてください。
>>859 同じ名前じゃないといけないなら同じ名前にして保存場所を変えれ
そういうことは臨機応変にしなきゃ
>>862 このデータは商品一覧表ですか?それとも売上明細?
もう少し厳密に言うとA列のデータは重複することがあるかどうか教えてください。
>>864 売り上げ一覧表を使って材料別に合計を出すんです。
A列のデータは重複がたくさんあります。
略しましたがその他はk「木」以外にもたくさんあります。
よろしくお願いします。
>>865 標準的な方法としてはまず、商品一覧表をつくります。
商品コード 商品名 分類
0001 紙1 紙
0002 FB金属 金属
0003 紙長野 紙
そして売上一覧表を次のようにします。
商品コード 売上
0001 700
0002 4800
0001 300
>>866 の続き
そして売上一覧表の3列目に分類の項目をつくります。
商品一覧表からVLOOKUPで参照しましょう。
商品コード 売上 分類
0001 700 紙
0002 4800 金属
0001 300 紙
こうやってできた売上一覧表をピボットテーブルで集計してできあがりです。
>>865 普通は、商品コードと商品名が1対1の関係で存在していて、
別に商品の分類コードを付けて置くのがイイと思うぞな?
今からでも遅くないから変更しる事をお勧めするぞよ?
って、
>>866-867 が書いてるじゃんorz
>>866-867 ありがとうございます。
材料の左側が材料の内容で材料の右側が現場名なので
商品名が数百くらい存在しますorz
支店で区分コードを付けてくれたらいいのですがそんな権限はなく…
上司はいままで手作業で拾い出していたようです。
途中で送信してしまいました。 こつこつと商品一覧表を作っていきます。 ありがとうございました。
872 :
847 :2008/05/05(月) 19:58:21
>>848 いやおかしなINDEXを使ってるやつらが配列数式を知らないはずはねーな。
おヴァカな
>>844 は当然知ってる。
知ってるけどINDEX使えば軽いと勘違いしてるんだろうな。
でも商品の材料が必ず入ってるっていうんなら
>>862 でいいと思うけどな
あと
>>866 の上の表作るなら
E2に=IF(ISERROR(IF(FIND("紙",$A2)>0,$A2,"")),"",IF(FIND("紙",$A2)>0,$A2,""))
F2に=IF(ISERROR(IF(FIND("紙",$A2)>0,"紙","")),"",(IF(FIND("紙",$A2)>0,"紙","")))
って入れて下までオートフィル、後はオートフィルタ使って重複データを抜けば簡単に表は作れる
材料の種類分繰り返す必要はあるからあまり多くなると別の方法考えたほうがいいかも
突っ込まれるのは面白くないらしいなw
配列数式なんて正直言って覚える価値なし。
877 :
名無しさん@そうだ選挙にいこう :2008/05/05(月) 21:08:47
【1 OSの種類 .】 WindowsXP SP2 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 エクセル データ入力 色 データが入力されているセルに色を付けたいのですが、 どうすれば良いかわかりません。 ググって調べたのですが、「特定文字の場合〜」などという 高度なものはあるのですが、単純にデータのあり・なしで 色を付ける回答は見つけられませんでした。 ご存じの方はやり方を教えて下さい。お願いします。
>877 0のとき(=0)、あるいは空欄のとき(="")で条件付書式。 どっちがいいかは状況にあわせて。
>>873 さっきまで商品一覧表の簡単な作り方を模索していました。
873さんのやり方で紙と金属は簡単に表がつくれますね。ありがとうございます。
ただA欄の種類が非常に多く、派遣期間中に商品一覧表が完成しないような気がしますので
問題がないようなら862のやりかたでやることにします。
レスいただいた皆様、非常に参考になりました。今後に生かします。
セルの値が 次の値に等しくない で=""だな
>>879 分類別の集計にはピボットテーブルを使ってみてくださいね。
882 :
877 :2008/05/05(月) 21:22:21
>>878 ,880
上手くできました!本当にありがとうございました。
883 :
名無しさん@そうだ選挙にいこう :2008/05/05(月) 22:08:38
885 :
876 :2008/05/05(月) 22:22:34
>>884 だって必要ないじゃない。
配列数式は何の役に立つの?
作業列を少なく出来る それにどれだけ重点を置くかじゃね 後は配列数式知ってるとちょっと優越感に浸れるw これの知名度はピボットどころじゃないからな
887 :
883 :2008/05/05(月) 22:40:49
>>884 理由は3つ。
1
例として
・検索条件を複数設定し、データを抽出
・検索結果が複数ある場合、それら全てを漏らさず抽出
することが可能になる。
EXCEL関数を使って出来る事、可能性を広げるものになるから。
2
作業用セルを作成すれば補完出来ることもあるが
現実の実務において、共用のExcelシートに制約があることが多く
限られた作業スペースで正確なデータ抽出を行うには
配列数式を使う方が合理的、だから。
3
出来上がりの関数がシンプルで感覚的に弄りやすいから
>>876 一度作ってみれば分かるよ。
英語を勉強しない人の言い訳みたいだ。
でもSUMPRODUCTでも配列数式と同じことできるじゃないか やっぱ配列数式いらなくね?
配列数式は計算結果も配列として使うのが効果的
>>889 そりゃそうだろうけど、そういう場面って事務の実務じゃほとんどないのよ
VBAっつーかプログラム使うなら必須だろうけど
891 :
883 :2008/05/05(月) 22:51:14
Excelが提供しているからといって全ての機能を使う必要はない。 なかにはつまらない機能もある。配列数式もその類。
893 :
名無しさん@そうだ選挙にいこう :2008/05/05(月) 22:56:46
>>892 つまらない云々は主観であって一般化しなくてもよくね?
なんでそんな必死なんだよw 配列数式は使えない機能、VBA以下の局所的にしか使えない機能なんだから認めろよwww まー認めなくても現実がそうだから、どうでもいいけど〜
>>895 何でそんなに必死なん?別に配列数式とかどうでもいいけどさ。
ピボット厨・・エクセルの機能として最強のピボット。だがその頭はダイヤより固い。「We are piboter!」 VBA厨・・狂信者の集まり。確かにVBAは極めると万能だが・・?「VBAハ全能也」 配列数式厨・・配列数式こそエクセルの中心と考える者の集まり。手負いの獣。「配列数式を公用語に!」
つまらなさすぎてちょっと笑った
900 :
名無しさん@そうだ選挙にいこう :2008/05/05(月) 23:20:40
>>899 なら、リンク先のシートを参考に
SUMPRODUCTで書いてみてよw
このご時世多少早くなる程度のために新しい事を1から覚えるなら もっと別の勉強するわ
>>897 VBAは何でもできる可能性を秘めている。ただしいつまでも秘めたままである。
配列数式は役立たず。
まともに使えるのはピボットだけだね。
ネタにマジレスされる日が来るとは、思わなかった
>>900 =SUMPRODUCT((B2:B5=12)*(A2:A5="y")*(C2:C5))
これくらいだれでもできるじゃん。しらんかったの?
本当に知らなかったとしたら、知識が偏ってるとしか
つーか
>>897 が冗談なのに、当ってしまいそうで怖い
906 :
883 :2008/05/06(火) 00:45:02
>>905 素晴らしい
配列数式を使わずに出来るなら、それにこしたことはない。
ありがとう
もう寝な
おやすみ
>all except me どうして、こうも毎度、質問スレが、雑談で賑わうん? ちったぁ、雑談スレに行って議論しろwww
おれの書いた式
{=INDEX(B1:B30,MATCH(TRUE,B1:B30<>"",))}
これをDQNの
>>844 だと
=INDEX(B1:B30,MATCH(TRUE,INDEX(B1:B30<>"",),))
こうするのか?
もうグァバかとアボガド
それから
>>904 のSUMPRODUCTの式も、その使い方では
{=SUM((B2:B5=12)*(A2:A5="y")*(C2:C5))}
これと同じ。
SUMPRODUCTを使ったからといって軽いわけではない。
ただし使い方によってはほんの少し軽くなるケースがある。
*を使わないで,で区切るケースな。
なんでもかんでもSUMPRODUCT使う奴はアフォ。
しかしまぁ
>>899 のリンクをSUMPRODUCTでやるやつは、もう終わってるね。
配列厨と同じだよw
やってることは配列数式と同じだということが分かってないんだろうな。
ピボット派から見ると配列数式もSUMPRODUCTも対して違わないなあ。 結局グループ別に集計したいんでしょ?
VBA厨から見ると配列数式は使い勝手が悪い SUMPRODUCT、ifの作業列を作りながら「ここは配列数式使った方が早いんだよナァ」 と思いつつ配列使わない 慣れてないせいもあるけど、使わなくても問題ないんだよなぁ
>>909 同じことをSUMPRODUCTでできますか?と聞かれたから回答したんだろ
違うことをやってどうすんだよw
>>909 いっしょだと言うならなおさら配列数式の存在理由を問われるよ。
914 :
909 :2008/05/06(火) 10:36:43
>>862 みたいなのはAccessで作るのが一番楽で簡単だと思うんだが
916 :
909 :2008/05/06(火) 10:39:16
>>913 逆に冗長な名前のSUMPRODUCTの存在理由を考えろよ。
君使い分け知らないだろ?
>>919 どのへんが簡単で楽になると思う?
データを分けて管理するところ?
分類して集計するところ?
>>916 どう使い分けするの? 配列数式じゃないと不可能なことがあるなら教えて。
いままで配列数式使ったことないから覚えてみるよ。
>>916 一緒だと思ってたんだけど、何か違うのか??
>all except me どうして、こうも毎度、質問スレが、雑談で賑わうん? ちったぁ、雑談スレに行って議論しろwww 追加 このスレのドキュンども(=成りすまし、自演・多数演技、似非エスパー)は 一掃されて、雑談スレの住人になれ。 横レスだけど、折れの配列数式観www 関数式の256文字制限をクリヤーする一方法だな まずぃ!
口調はアレだが、確かに的を射てる結論だな
結論出たみたいだね。 配列数式覚える必要なさそうだ。 あと、「雑談は雑談スレ」の書き込みも今後無視するね。
おまいらいい加減にしろ! だいたいSUMPRODUCTや配列数式が好きなやつはほとんどドキュソだぞ。
別に好きじゃねーよw ちょっと集計するときには便利だからSUMPROつかうだけ いちいちピボットやDSUMつかうほうがめんどい 大規模になるとSUMPROはえらい重くなるから使わないし
>>924 見せかけだけ一般式の変なINDEX使いもね。
あれも実態は配列数式。
ifで作業列派は俺だけの予感・・!
>>928 同じく作業列派。
作業列作れない理由がわからない。印刷にでなけりゃいいだけでしょ。
indexまで持ち出したかwww さすがに、これには・・・ ついでに、おまいらについての折れなりの観。 自分の能力のなさを棚に上げて、偏見で、他を見ないと気が済まない厨だ。
さぁー、何だろうw
>>932 目的はグループ別に集計することだと気付いたんだな。だから答えられなかったんだろ。
おめでとう。正解にたどり着いたね。
>>933 ほんとに、めでたい香具師だwww
再度、930に了見が狭いを加えて、献上しようw
>>934 INDEXで何が実現できるか書けばいいじゃないか。
Excelで覚えなくていいもの
配列数式
INDEX
MATCH
SUMIF
DSUM
936 :
名無しさん@そうだ選挙にいこう :2008/05/06(火) 13:38:51
エクセル2003で質問! 1 15分間隔の自動保存に設定 2 パソコンがフリーズ 3 エクセルを起動するとデータが数日前の状態 (毎日使用しているのに)orz 私はフリーズの15分くらい前のデータが残っていると期待していたのですが。 フリーズ直前までのデータを残すにはどうしたらよいのでしょうか? 手動でマメに保存というのは面倒だし。
>>936 Ctrl+Sで保存できるのは知ってる?
保存間隔を短くする
ふつうは次回起動したとき「自動保存されてるファイルがあります。保存しますか?」みたいな メッセージがでるんじゃなかったっけ
940 :
936 :2008/05/06(火) 14:06:43
>939 起動した時にエクセル・データをいきなり開くのではなく エクセル本体のみを起動させればよかったのでしょうか?
941 :
936 :2008/05/06(火) 14:21:03
電源を落とし、(データからではなく)エクセル(本体)を起動しました。 すると、フリーズ直前のデータが残っていました!助かった! 問題解決の重要なヒントを与えてくださった>939さん、ありがとうございます! 周辺知識を与えていただいた937さん・938さん、ありがとうございます! 時々、起きていた悩みから開放されました。エクセル総合相談所、万歳!
>>941 そんなにフリーズするパソコンをまずなんとかするべき
943 :
936 :2008/05/06(火) 22:08:06
>>942 使用開始から3年くらい経ったので動画などデータが増えメモリ不足に
なってきているようです。近いうちにポータブルHDDを買い、
そこに動画などを移してメモリ不足を解消する予定です。
こうすればフリーズも少なくなるでしょうか?
データバックアップしたらOS再インスコしれ 何回か(一週間ぐらい)繰り返せば、不具合はなくなるお、楽しくなるお、たぶん、きっと、たしか、・・・
>>935 Excelで覚えなくていいもの VLOOKUP
>>943 HDDとメモリを混同してるな。
大型機の経験者なのか、初心者なのか、どっちにしても
もうちょっとパソコン自体のことを知っておいた方がいいと思うぞ。
>>945 VLOOKUPはデータに分類項目を付け加えるために使ってる。もちろん後で分類別に集計するためです。
もっと便利な手法があれば紹介してくれ。
>>943 ハードディスクの空き容量が極端に少ないのでもなければ
いくら動画をたくさん保存していても、そのせいでパソコンの動作が遅くなるなんて事は無いよ。
詳しい状況が分からないので一般的な対策として、
・全然使って無いような常駐ソフトがあったら常駐させないように設定を変えるかアンインストールする。
・フリーズしやすいのはもしかしてウィルスやスパイウェアの可能性もあるので対策ソフトで調べてみる。
・WindowsXPでメモリが256Mだとかなり苦しい。最低512Mに増やす。
など。「Windows 高速化」「Windows 軽量化」などでググると色々出てくるよ。
>>945 VLOOKUPは必要という結論でよろしく。
950 :
名無しさん@そうだ選挙にいこう :2008/05/07(水) 00:27:45
質問 OSはXP、Excel2003使ってます A1A2だけを結合して「NO.」というセルを作り A1A2行のその他のセルは2行でそれぞれデータを入れたリストを作りました オートフィルタを使って「NO.」の列の番号を呼び出すと 例えば1を選ぶとA1A2のA1の行だけが呼び出されます 例えば2を選ぶとA3A4のA3の行だけが呼び出されます 私的には結合したA1A2という2行を呼び出したいのですがどうすればよいのでしょう? 宜しくです
>>950 オートフィルタ使う時はセルの結合しないことをおすすめします。
vlookupが不要なのは同意。 vlookupウィザードで出来た数式がindex/matchになってるのを見て 止めた方がいいんだと思った。
>>952 VLOOKUPウィザード?
INDEXとMATCHを使ってVLOOKUPを作るの?何のため?
>>952 VLOOKUPという機能は必要ということでよろしく。
中身がINDEXとMATCHで実装されていても一向にかまわないよ。
必要・不要論は雑談スレでやってくれ
>953 逆だろ? MSのウィザード使っても出来上がった数式はINDEXとMATCHで構成 されているのを見てVLOOKUPって何の為?と思ったんだろ。 俺もそうだ。 LOOKUP系は何の為にあるのかよく分からん。
>>956 機能を分解していけばいくらでも細かくできるだろ?
覚える必要の無い機能について話してるのを思い出してほしい。
それと「ウィザードがやってるから」というのは説得力ないよ。
ナイフ1本あれば何でも出来るから爪切りイラネってのと同じだな
959 :
名無しさん@そうだ選挙にいこう :2008/05/07(水) 08:51:09
俺以外は全員馬鹿
俺は抜かしてくれ。 俺もみんなバカだと思うから。
おまえら、こういう時に限ってなんで、MSを妄信するのだ? それと、ウィザードがvlookupではなく、indexとmatchを使うのは、 「記述」の問題で利便性からではない。
糞重いブックのを作るやつはVLOOKUPの式が山ほどあるケースが多々ある。 間違った使い方するやつが多いから要らないっていえば要らないね。
だってACCESS高いから職場で入れてくれないんだもの
>>964 理屈上どうしてもVLOOKUPが必要なケースはあまりない。
しいていえば2列の表からの表引きのときだけVLOOKUPが使える。
3列以上の表引きならもちろんINDEXとMATCH。
967 :
名無しさん@そうだ選挙にいこう :2008/05/07(水) 14:07:04
【1 OSの種類 .】 WindowsXPsp2 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 エクセル 平均 0 M4〜M34までの支出平均をその時点までの日付でM35に表示させたいのですが、各セル数式が入っている為、 AVERAGEだと0も計算に入ってしまい例えば本日7日までの平均を出したくても31日分で表示されます。 下記の金額15000だと483 で、 SUM(M4:M34)/(COUNT(M4:M34)-COUNTIF(M4:M34,0)) 色々調べてこんな感じでやってみたのですが、 『本日5月7日』 1日 1000 2日 0 3日 3000 4日 4000 5日 0 6日 3000 7日 4000 ←(本日) 8日 0 9日 0 計 15000 平均をこの場合2143と表示させたいトコロ3000になってしまいます(間の0も省かれる為) 適した方法を教えていただけるとありがたいです。宜しくおねがいします
【1 OSの種類 .】 WindowsXPsp2 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 エクセル 印刷範囲 仕事で使ってるんですが印刷範囲を設定してても 何もしてないのに勝手にクリアされることが頻繁に起こります。 なんか原因あるんでしょうか?
>967 =AVERAGE(INDIRECT("M4:M" & DAY(TODAY())+3))
>>966 列方向も検索できるといいたいのかな?できたとしてそれで何をするの?
私はVLOOKUPをデータのグループ分けに使っています。
売上データに商品分類とか顧客の居住地域の項目を追加するんです。
972 :
966 :2008/05/07(水) 20:26:25
973 :
966 :2008/05/07(水) 20:31:10
すまん上はミスった。
>>970 お説のとおりです。
常識だね。
>>971 何列追加するの?
まさか2列以上じゃねーだろうな。
質問です。 A列に品番、B列に品名、C列に個数が入っています。 個数が空欄の行を削除したくて、下記のようなマクロを作りましたが、 行を削除する前と後で、合計の個数が違ってしまいます。 後のほうが少ないので、個数が入っている行まで削除しているみたいです。 何がわるいのでしょうか?ご教示ください。 Sub macro1() Dim i As Integer i = 1 Do If Cells(i, 3) = "" Then Rows(i).Delete Else i = i + 1 End If Loop Until Cells(i, 2) = "" End Sub
>>973 必要な列を追加します。
2列以上になることは多いね。
>>974 その手の処理は下から上に行わないとだめですよ
一行ずつ処理を見てみるとよくわかると思います
977 :
名無しさん@そうだ選挙にいこう :2008/05/07(水) 21:11:02
>976 ワカンネーから聞いてんだろ、ボケッ!
このスレって、何があっても絶対に数式を書かない嫌味な奴が住み着いてるよな。 本人は親切のつもりだろうから始末が悪い。 きっと、空気も読めなくて職場では疎まれてるんだろうな〜
>>973 それでINDEXとMATCHで何が実現できるの?
>>978 数式を書いたらボロが出る程度の知識しか持ってないからだろ。
>>976 >>974 のコードもいまいちだが、間違ってはいないだろ?
別に下から上じゃなければダメということはない。
983 :
974 :2008/05/07(水) 22:02:22
レスいただいた皆さん、ありがとうございます。
977は自分じゃないです。
>>976 さん、それはステップ インで各行確認するってことでしょうか?
面倒くさいけど、確認してみます。
>>982 さん、間違っていないのなら、何が原因か推測は出来ませんでしょうか?
>>985 ダメだった方の元データをうpするほうがいいと思うぞ
987 :
978 :2008/05/07(水) 22:30:34
>>981 一般論だよ。別に974の質問に対する事だけじゃない。よく嫁。
>>984 974のコードじゃ空欄行が2行続いたらうまくいかないね。
>>987 >>空欄行が2行続いたら・・・
大丈夫に見えるがな。
俺がバカなだけかな?
>>951 thx!!!
では
>>950 のような場合はaccessを使ったほうが良いということですね?
990 :
978 :2008/05/07(水) 22:57:50
>>988 ほんとだー
知識なくてコード書かなくてよかった
991 :
951 :2008/05/07(水) 23:00:44
>>989 >では
>>950 のような場合はaccessを使ったほうが良いということですね?
なんでそうなるねん。
別にAccessでもいいけどな。好きにしろ。
>990 本人は親切のつもりだろうから始末が悪い。 まぁ馬鹿は黙ってろってこったw
993 :
名無しさん@そうだ選挙にいこう :2008/05/07(水) 23:03:10
10000!
Excelのスレを読んでいると頭が痛くなってくる。
たかが行の削除にVBA組んでるやつ。
それをまわりあーでもないこーでもないとバグ取りしているやつら。
>>989 みたいなやつ。
見なきゃいいんじゃね?
>994 行の削除をVBAを使わずにどうやってやるの? ま、まさかピボ(ry
997 :
名無しさん@そうだ選挙にいこう :2008/05/07(水) 23:12:21
998 :
名無しさん@そうだ選挙にいこう :2008/05/07(水) 23:17:21
1000!
999999999999999999999999
=1000
1001 :
1001 :
Over 1000 Thread このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。