1 :
名無しさん@そうだ選挙にいこう :
2008/03/02(日) 16:40:08 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/1202635427/l2
2 :
名無しさん@そうだ選挙にいこう :2008/03/02(日) 16:41:21
▼━質問時の注意・決まり事━━━━━━━━━━━━━━━━━━━━ ・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 書籍や解説サイトの紹介以来はスレ以外。ここは技術的な質問のみで。
3 :
名無しさん@そうだ選挙にいこう :2008/03/02(日) 16:41:57
★ルールを無視すると…
>>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分野の話ではないので、ここでは聞かないでください。
4 :
名無しさん@そうだ選挙にいこう :2008/03/02(日) 16:42:25
★ 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セルを分割 (分割したいセル以外を結合)
5 :
名無しさん@そうだ選挙にいこう :2008/03/02(日) 16:43:03
★ Excelで出来ないこと、仕様上の制限 (括弧内は代用法) ▼数式・関数 ・ 表示形式以外の書式の取得設定、書式情報を条件とする数式 (ユーザー定義関数) ・ 関数式でセルの選択状態を取得する (VBA) ・ セルの値でパスを補完して、開いてないブックのセルを参照する (VBA) ・ 入力したセルに結果を返す (VBA) ・ 範囲を引数にしての文字列連結 (ユーザー定義関数) ・ 値の書き換え、値の保持 (VBA) ・ 複数の結果を抽出、不定な数の結果を返す (VBA、結果の最大数が解っていれば最大数以上の式を論理式で組む) ・ 空白のセルの部分を上詰め、左詰めなどで表示する (作業セルを使って別セルに詰めて表示なら可能、それ以外はVBA) ・ VLOOKUP,HLOOKUP,MATCH等の関数で、検索語を全半角両方にマッチさせる (ユーザー定義関数) ▼VBA ・ ExecuteExcel4Macroの参照で空セルと0値を区別する ・ セルの値や変数値で直接変数名を指定する (配列、コレクション) ・ VBのコントロール配列と同じような操作をしたい (イベント以外ならコントロール名を「同名+連番」にしてControls(名前 & インデックス)で処理、イベントはクラスでWithEvents) ▼ユーザーフォーム ・ フォーム上から変更したプロパティ値の保持 (シートや外部ファイルに書き出して、次回読み込む) ▼グラフ ・ 棒グラフでひとつだけ突出したデータがあった場合に波線を入れて位置を合わせる (オートシェイプなどで見た目だけそうなるように弄る、別アプリでグラフを作り、オブジェクトとして挿入) ┌┐ 〜〜 ||
6 :
名無しさん@そうだ選挙にいこう :2008/03/02(日) 16:43:29
上記 「Excelで出来ないこと、仕様上の制限」 は、一般的に出来ないとされていること、出来ないと思われるものです。 間違いがある可能性もあるので、上記に挙がってるもので「コレはこうすれば出来るよ」というものがあったらご指摘ください。 Excel2007についても未確認な項目が多いので変更点が有ればご指摘下さい。 また、ここに書かれてないことでも、Excelで出来ないことはたくさんあります。 ここに書かれてないからといって必ず出来るはずだなんて思わないように。 >▼環境・書式 > ・ セルのサイズ(幅、高さ)を、長さの単位(ミリメートルなど)で指定する 補足 2007ではページレイアウトビューの表示時に限り、幅・高さともcm単位で表示され、 指定も同じくcm単位でできる。 ただし大元がインチ系なのでなかなかピタリの値は出ない。1cm→0.98cmのように 近い値に勝手に丸められる。
7 :
名無しさん@そうだ選挙にいこう :2008/03/02(日) 16:44:10
テンプレ終わり
8 :
名無しさん@そうだ選挙にいこう :2008/03/02(日) 16:45:11
________________________________
||
|| ━ 質問のしかた ━
||
|| ★1 質問するときは、環境や条件をキチンと書くこと。情報後出しはダメ。
|| ★2 要望は具体例や図を使って明確かつ具体的にしる。
|| ★3 質問前に
>>2-20 あたりの注意書きやQ&Aを必ず読むこと。
|| ★4 質問テンプレ(雛形)は必須ではないが、
|| OSやExcelのバージョン、VBAの可否などは必須情報。
||
|| ∧ ∧ 。
|| ( ,,゚Д゚)/ ジュウヨウ!! E[]ヨ
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ノ つ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
/  ̄ ̄ ̄ ./| ________________
| ̄ ̄ ̄ ̄| | |
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄|____|/|
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
\ は〜〜〜〜い /
∧ ∧ ∧,,∧ ∧ ∧
( ,, ∧▲ ミ ∧ ∧ ( ∧ ∧
〜(_( ∧ ∧_( ∧ ∧_ミ・д・∧ ∧
@(_(,,・∀・)@ ( *)〜ミ_ ( ,,)
@(___ノ 〜(___ノ 〜(___ノ
質問です。 株価チャートをエクセルで二つ作りました。 期間は同じですが、大きく異なる二つの株価を 一つのチャートに表示(重ねる)にはどうすればいいのですか?
11 :
9 :2008/03/02(日) 17:16:25
うーん、もうちょっと努力してみます。
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2007 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 セル、複数(複数の)、テキストボックス Excel2007では、テキストボックスや図形(正方形/長方形など)を使って 複数のセルの情報、罫線、書式を引用することはできないのでしょうか? というのも、2003の時に作られ、私が引き継いだデータを、 バージョンアップ後に使おうとしたら、エラーになってしまいました。(互換モードで実行) また、2003の時に作ったワークシートを印刷しようとしても、 なぜかその部分だけ印刷出来ませんでした。(特に変更は加えてません) 引用したいデータの場所 ↓ 具体的には、2003の状態ではテキストボックスの中に『=$P$43:$R$55』と入力してあったので、 同じように入力してみたのですが、先頭にあるのデータ(P43)しか引用できず、 以前の様に表全体を引用することが不可能でした。 ┌──────┐ こういう表にしたものを |23 赤 白 9 | ┌──────┐ → | 8 77 / E | |23 赤 白 9 | └─────‐┘ | 8 77 / E | 別の場所に貼り付けて表示させていました。 └──────┘ 旧の書式に拘る気はないので、いざとなったらもう一度作り直す心算ですが、 Excel2007で、複数のセルからなる表・書式を テキストボックスなどで表示させるをご存知でしたら、教えて頂きたいと思います。
2007にはカメラツールはないのかな
15 :
名無しさん@そうだ選挙にいこう :2008/03/02(日) 18:16:32
教えてください。 横棒グラフ作っています。 項目の文字数が多く、文字がたて(下から上)になってしまい、 全ての項目が表示できません。 フォントをかなり小さくすると、正常に横に表示可能ですが、 文字が見えないです・・。 グラフエリアをドラッグして移動すると、 項目軸の表示範囲が点線で出るのですが、 それを広げることができません。(ポインタで掴めない) どなたか、解決方法をご存じでないでしょうか?
何か作業しようとすると左下に選択範囲がロックされているためこの変更はできません とでて何も打ち込めず何も反応しないのですがどうしたらいいですか? 2007使ってます
17 :
15 :2008/03/02(日) 18:23:34
バージョンを書き忘れました。 2003を使っています。 よろしくおねがいします。
>16 ロックを外せばいいと思うよ♪
>>15 項目を折り返したいんですか?
それなら元のデータのセルで折り返せばうまくいくのでは?
>>16 よそからコピペ
ロックしてしまった文書になにか文字を入力しようとしますと、右側に「書式設定と編集の制限」というスペースができませんでしたか?
そのスペースの一番下に「保護の中止」というボタンがありますので、クリックすると解除しますよ。
リボンタブの操作でも解除できます。
操作可能でしたら
右から2番目にあります「開発」タブをクリックします
↓
「保護」をクリックします
↓
「書式設定と編集の制限」をクリックします
↓
画面右側に書式設定と編集の制限を設定するスペースがでます
↓
そのスペースの一番下にある「保護の中止」をクリックします
23 :
15 :2008/03/02(日) 18:34:22
>>20 レスありがとうございます。
グラフ上で、項目を横(左から右)に表示させたいです。
元データのセルで折り返してみましたが、
グラフへは反映されませんでした。
25 :
15 :2008/03/02(日) 18:40:20
>>24 >折り返しはAlt+Enterで?
はい、そうです。
ちなみに、「セル内で折り返す」のオン/オフでも試しましたが
ダメでした。
>>25 ここ確認して違ってたら俺はわからん。他の人頼む。
項目で右クリック→軸の書式設定→表示形式でシートとリンクされている?
横書きは、
項目で右クリック→軸の書式設定→配置→文字列の方向を横書きで。
27 :
15 :2008/03/02(日) 18:53:22
>>26 ありがとうございます。
>項目で右クリック→軸の書式設定→表示形式でシートとリンクされている?
確認しましたが、リンクされていました・・。
項目軸の表示領域を広げることができれば、
解決すると思うのですが、その方法が分かりません・・。
28 :
名無しさん@そうだ選挙にいこう :2008/03/02(日) 20:34:42
nettobuisinesu ってか。 ローマ字も英語もできてねーw
前スレ
>>992 OSが書いてなかったからXPと仮定して、2007の選択セルの色を変える方法。
デスクトップのデザインを購入時の状態に戻してから
REGEDIT4
[HKEY_CURRENT_USER\Control Panel\Colors]
"ButtonFace"="255 255 255"
レジストリを書き換えたら再ログオン。
ただし副作用あり。ほかにもあちこち色やデザインが変わりまくる。
本当に選択セルの色だけを変える方法は俺も知りたい。
元に戻すときは、
REGEDIT4
[HKEY_CURRENT_USER\Control Panel\Colors]
"ButtonFace"="192 192 192"
>>15 プロットエリア(グラフ)を選択、横のサイズを縮める
グラフを右のほうに寄せる
項目軸をダブルクリック、軸の書式設定ってあるから
配置を「0度」に。「自動」ってやつのチェックが外れればok
32 :
15 :2008/03/02(日) 23:08:47
>>31 ありがとうございます!
無事に、思い通りのグラフにできました。
>「自動」ってやつのチェックが外れればok
これがミソですね。
ありがとうございました。
おめでとう エクセル以外でもマイクロソフト製品の自動で〜という機能はロクなのがないorz
34 :
名無しさん@そうだ選挙にいこう :2008/03/03(月) 10:22:43
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 エクセル、Excel、株式 エクセルで日経とNYダウの株データを並べて比較したいんですが、 市場の休業日等のずれから上手く日付が並びません。 手作業で行を挿入する以外に、何か良い方法はありませんか? 要するにこんな感じにしたいんです。 ┏━━┳━━┳━━┳━━┓ ┏━━┳━━┳━━┳━━┓ ┃日付┃日経┃日付┃紐育┃ ┃日付┃日経┃日付┃紐育┃ ┣━━╋━━╋━━╋━━┫ ┣━━╋━━╋━━╋━━┫ ┃1 日┃5345┃1 日┃7854┃ ┃1 日┃5345┃1 日┃7854┃ ┣━━╋━━╋━━╋━━┫ ┣━━╋━━╋━━╋━━┫ ┃3 日┃5356┃2 日┃7456┃→┃2 日┃ ┃2 日┃7456┃ ┣━━╋━━╋━━╋━━┫→┣━━╋━━╋━━╋━━┫ ┃4 日┃5421┃3 日┃7756┃→┃3 日┃5356┃3 日┃7756┃ ┣━━╋━━╋━━╋━━┫ ┣━━╋━━╋━━╋━━┫ ┃5 日┃5875┃6 日┃7123┃ ┃4 日┃5421┃4 日┃ ┃ ┣━━╋━━╋━━╋━━┫ ┣━━╋━━╋━━╋━━┫ ┃6 日┃5321┃7 日┃7256┃ ┃5 日┃5875┃5 日┃ ┃ ┣━━╋━━╋━━╋━━┫ ┣━━╋━━╋━━╋━━┫ ┃7 日┃5753┃8 日┃4562┃ ┃6 日┃5321┃6 日┃7123┃ ┗━━┻━━┻━━┻━━┛ ┣━━╋━━╋━━╋━━┫ ┃7 日┃5753┃7 日┃7256┃ ┣━━╋━━╋━━╋━━┫ ┃8 日┃ ┃8 日┃4562┃ ┗━━┻━━┻━━┻━━┛
┏━━┳━━┳━━┳━━┓ ┏━━┳━━┳━━┳━━┓ ┃日付┃日経┃日付┃紐育┃ ┃日付┃日経┃日付┃紐育┃ ┣━━╋━━╋━━╋━━┫ ┣━━╋━━╋━━╋━━┫ ┃1 日┃5345┃1 日┃7854┃ ┃1 日┃5345┃1 日┃7854┃ ┣━━╋━━╋━━╋━━┫ ┣━━╋━━╋━━╋━━┫ ┃3 日┃5356┃2 日┃7456┃→┃2 日┃ ┃2 日┃7456┃ ┣━━╋━━╋━━╋━━┫→┣━━╋━━╋━━╋━━┫ ┃4 日┃5421┃3 日┃7756┃→┃3 日┃5356┃3 日┃7756┃ ┣━━╋━━╋━━╋━━┫ ┣━━╋━━╋━━╋━━┫ ┃5 日┃5875┃6 日┃7123┃ ┃4 日┃5421┃4 日┃ ┃ ┣━━╋━━╋━━╋━━┫ ┣━━╋━━╋━━╋━━┫ ┃6 日┃5321┃7 日┃7256┃ ┃5 日┃5875┃5 日┃ ┃ ┣━━╋━━╋━━╋━━┫ ┣━━╋━━╋━━╋━━┫ ┃7 日┃5753┃8 日┃4562┃ ┃6 日┃5321┃6 日┃7123┃ ┗━━┻━━┻━━┻━━┛ ┣━━╋━━╋━━╋━━┫ ┃7 日┃5753┃7 日┃7256┃ ┣━━╋━━╋━━╋━━┫ ┃8 日┃ ┃8 日┃4562┃ ┗━━┻━━┻━━┻━━┛
空の日を追加して並べ替え
MATCHのがいいんでね?
>>34 A列に日付、B列に価格が入っているとして、
この式で1日の日経の価格が取り出せるから、これを31日分×2組作って並べればいい。
=IF(ISERROR(VLOOKUP("1 日",A:B,2,0)),"",VLOOKUP("1 日",A:B,2,0))
40 :
35 :2008/03/03(月) 11:24:58
ありがとうございます。 与えられた関数を元に少し調べてみます。
>>39 わざわざ親切にありがとうございます。
早速試してみます。
sum関数などで範囲を指定するときに、 データのある一番下の行までという風な指定の仕方を教えてください。
>>42 間に空白セルがなければCOUNTAとOFFSETで範囲の一番下が求められる。
以前なら=SUM(A1:A65535)でよかったんだけどねえ。 EXCELのバージョンを限定しないなら、VBAを使う方法しか思い付かないなあ。
45 :
名無しさん@そうだ選挙にいこう :2008/03/03(月) 21:03:49
すいません、初心者ですが・・ 【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 置換についてです。。。 管理表をつけているのですが、顧客の電話番号を 06-****-####と今まで入力してたのですが、 上司に「ハイフンを消せ」と言われたので、 置換で修正しようとおもったのですが、 置換・・・- 置換後・・・空白 に設定すると、 6****####と、 「ゼロ」が消えてしまいます。 どのようにしたら「0」が残りますでしょうか??
>>45 まず文字列に設定したあとに置換したらどうだろう
>>46 なんで試しもしないで回答するんだろう?
ヴァカなの?
>>45 A1に番号が入ってるとして
=SUBSTITUTE(A1,"-","")
ちなみにこれは文字列だから、そのままコピーして値のみ貼り付け、
で頭の0も残る
とりあえず、元のデータは消さない方がいいよ。
ファイルごとコピーしておいておけばよくね
最近は、質問者の方が、回答者よりもできがいい例が多いwww
【1 OSの種類 .】 Windows2000 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 A列に日付(重複あり)、B列に値C列に名前がありまして、これを別シートに日付(A)と名前(C)を入力すれば、B列の値を拾ってこさせる式を作りたいのです。 VLOOKUPというものを使うのかともおもったのですが、自分では下記の問題をクリアできませんでした。 1.合致する日付の値を抽出はできるが、たとえば1/1の値は2つあるのに1つしか抽出されないこと 2.複数の条件での抽出ができないこと(1/8は、C列に葵と楓があり、それぞれ別に抽出したい) うまいやり方があればご教授お願いします。 A列___B列___C列_____1/1__1/1__1/2__1/8__1/8 1/1____56____菫____完__薫___桜___桜___葵___楓 1/1____48____桜__________ 1/2____35____桜____成__56___48___35___25___60 1/8____25____葵_______________________18___56 1/8____18____葵____形__ 1/8____60____楓_______ 1/8____56____楓_______
54 :
名無しさん@そうだ選挙にいこう :2008/03/04(火) 00:59:36
元データ A列の前に1列挿入して =B1&D1 別シート =Vlookup(A1&A2,元データ範囲,3,0) でいけるかな? シリアル値が気持ち悪ければ =text(日付データセル,"m/d")&名前セル で
56 :
54 :2008/03/04(火) 01:10:36
ごめん質問ちゃんと読んでなかった 無視して
>>43 ありがとう。そのヒントで調べてみるといろいろ見つかりました。
やってみます。
58 :
53 :2008/03/04(火) 07:04:44
>>55 確かにオートフィルタでA列、C列によるソートを行い、値をコピーすれば可能なのですが、いかんせん数が多いので、ひとつずつコピペするのが時間がかかりそうなため、数式がでなんとかできないか検討中です。
もしオートフィルタの上手な使い方があれば教えて頂けませんでしょうか。
59 :
55 :2008/03/04(火) 08:24:16
60 :
55 :2008/03/04(火) 08:32:38
まずこういうデータを用意する。 番号 日付 値 名前 1 1/1 56 菫 2 1/1 48 桜 3 1/2 35 桜 4 1/8 25 葵 5 1/8 18 葵 6 1/8 60 楓 7 1/8 56 楓 ピボットテーブルで 行のフィールドを「日付」,「名前」,「番号」の順に並べて, 「値」をデータアイテムにすると, 日付 名前 番号 計 1/1 桜 2 48 菫 1 56 1/2 桜 3 35 1/8 葵 4 25 5 18 楓 6 60 7 56 となるよ。
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 セルに「10.5」と入力するとそのセルの表示が「10:30」になるようにはできますか? でもってその隣のセルの「12」と入れると「12:00」と表示 後者から前者を引いて「1:30」の表示。 要は30分刻みのデータなんで「**」か「**.5」でどんどん打ちたい。 でも表示は時間で表したい、という横着したいがための質問です。 申し訳ないっす。
【1 OSの種類 .】 Windowsvista 【2 Excelのバージョン 】 Excel2007 【3 VBAが使えるか .】 いいえ officeボタンからの「最近使ったファイル」にあるファイルを消去しました。 しかしショートカットは残ったままで大変邪魔です。 これをどうやって消したらいいのでしょうか?右クリックで消せそうな気がするのに、全然ダメで困っています。
>>61 たとえばC1に表示させたかったら、
C1の書式設定を時刻にして、以下を入力
=INT(A1)/24+(A1-INT(A1))/24
この後A1に10.3や12などを入力すればいい
引き算もしたいなら後はこれと同じようにもう一つの時刻も出して、そのまま引き算すればok
A1、B1に入力、C1とD1を上記の式の入ったセルとすると、E1に
=D1-C1
と入力
もちろんC、D、E列は書式設定を時刻にするように(E以外はしなくてもできるといえばできるんだけれども)
逆にABは数値か標準で
質問です 2行目4行目6行目8行目10・・・みたいに行を1段ずつ空けて選択したいですが いつもctrlキーを押しながらカチカチ一段ずつ選択しています もっと効率のよい方法はないのでしょうか
=MOD(ROW(),2) そこから下へオートフィル 後は列全体をオートフィルタ、0か1を選べば奇数行か偶数行だけ残る 後はお好きに
>>65 うおおおおおおおおおお!!!!
ありがとうございます!!!!!!!
よかったね。
わざわざ関数書かなくても0,1をコピペすればいんだけどね
0、1だと続きが2、3…になっちゃうから、俺はいつもa、cと入れてからAlt押しながらダブルクリック。 これで一気に下までa、c、a、c…と入ってくれる。あとはオートフィルタ。
┌───────────────────┐ │ ピボットテーブルとVLOOKUPさえあれば | │ | | 大抵の事務処理は終わるw | │ | └―――──――───――――─――――┘ ヽ(´ー`)ノ ( へ) く
またピボットテーブル房とVLOOKUP房かwww
>>70 はアンチピボットなのかな?
ピボットテーブルとVLOOKUPの組み合わせでほぼなんでも処理できるっていう主張はそんなにばかげてるとは思えない。
74 :
72 :2008/03/04(火) 22:20:18
そういえばVBAにふさわしい利用例が全然出てこないな。
76 :
名無しさん@そうだ選挙にいこう :2008/03/04(火) 23:09:54
エクセル2003って何処かで安く売ってないかな。 中古で良いんだけど。
>>76 安く買えるかどうかは運次第だがオークションにいっぱい出てる
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 テキストファイルを読み込みセルのサイズ変更やセル枠に罫線を引きたいのですが、 できますでしょうか。 その場合、どのようなフォーマットでしょうか。 csvは要素だけしか持ってこれないですよね??
80 :
名無しさん@そうだ選挙にいこう :2008/03/05(水) 00:21:15
>>79 よくわからないけど、
読み込めるかと言われればyes
セルのサイズ変更とかは普通のエクセルブックと同じ
当然txt形式では保存できない
で、何が聞きたいんでしょうか?
テキストファイルの罫線で作られた表をそのままExcelのシートに変換したいってことでは?
82 :
79 :2008/03/05(水) 00:41:40
>>80-81 ども。
やりたいことは
エクセルのセルサイズ、罫線などをテキストファイル(アスキーデータ)で書く。
(スクリプトなどを使い一括生成する)
↓
エクセルに読み込む。
↓
任意のセルサイズ、罫線がかかれた状態になるので、あとはエクセル上で色々加工する。
わかりますでしょうか?
79はCADなんかを使ってきた人なんだろうね。
85 :
名無しさん@そうだ選挙にいこう :2008/03/05(水) 01:22:33
ああ、なるほどね。 もしくは3DCGでレンダリングするみたいな感じか
なんか、わかったようなわからないような。 ようするに、その一括生成するためのスクリプト相当の物をVBAで書けば解決するレベルの話なんだろうか?
A列が空白で、B列にデータがあるところまでA列に連番を入れるVBAを教えてくdさい。
88 :
名無しさん@そうだ選挙にいこう :2008/03/05(水) 01:40:37
>>86 そのスクリプトを読み込んで一括生成するためのVBAじゃないのか?
>>88 読み込むのはスクリプトじゃなくて、スクリプトで作ったテキストファイルでは?
想像でいいかげけんに書くと、たとえばこんなん
A.width=120;B.width=100;
こういう定義ファイルみたいなのを使って、セルの幅や高さを指定したり色を付けたりしたいと。
CADっぽく図面書きたいとかだったら、セルの結合が絡んできたら相当めんどくさいんじゃねそれ?
罫線の代わりにタブを入れる、っていうような簡単な事じゃないのね?
違うっぽい
VBAでできなくもないけど相当しんどい
というか1からエクセルで作ったほうが早い
でもそれが何百・何千もあるような状態なら最終的にVBAで作ったほうが早い
といった感じ
>>75 >>87 VBAはいらん
A1に1、A2に2、A1A2を範囲選択してctrl押しながらオートフィルハンドル(右下の黒い点)をダブルクリック
2007ならXML形式なんだろ それでやればいいじゃん
95 :
名無しさん@そうだ選挙にいこう :2008/03/05(水) 11:06:14
シート1にシート2で入力した文字(数式ではなく)を連動させたいのですが、 どうすればいいのでしょうか。「=シート2セル番号」では駄目でした。
=Sheet2!A1 「=」だけ入力して、別のセル(別シートでも)をクリックすればどう入力すればいいか分かるよ
教えてください。 エクセルで下に長いデータを貼り付けたら、 縦スクロールバーが下に800行とかまで行ってしまいました。 途中でそんなに長いデータが要らなくなったので消したのですが、 このシートでは縦スクロールバーの一番下が800行目のまま残ってしまいました。 この伸びてしまった縦スクロールバーの下限を50行目あたりまでに戻せないものでしょうか。 シートを消してやり直せば簡単なのですが、それをしたくないのです。 簡単なやり方があれば教えてください。お願いします。
>>89 まさにその通りです。
hoge00
|
|- hoge11
|- hoge12
| |
| |- hoge21
|- hoge13
のようなフォルダツリーがあって、それをcsvにしてエクセルで取り込むと
とりあえずはセルを一つずつずらして取り込めるけど一つのセルが大きすぎます。
フォルダが深くなると横に長くなってしまうのでセルサイズを小さくして階層ごとに罫線を引きたいです。
ついでにhoge00のセルに赤色で塗りつぶす例もあればお願いします。
つづく
100 :
79 :2008/03/05(水) 15:17:54
>>99 のつづき
以下csvファイル(セルサイズが指定出来ないのでこの方法ではだめでした)
----------------------
hoge00
,hoge11
,hoge12
,,hoge21
,hoge13
----------------------
エクセルイメージ
+------------------------
| hoge00
| +--------------------
| | hoge11
| +--------------------
| | hoge12
| | +----------------
| | | hoge21
| +-+------------------
| | hoge13
| |
※セルを操作するテキスト定義文?がわかれば、それに合わせて
フォルダツリーからテキスト定義文を生成するスクリプトを書こうと思っています。
101 :
名無しさん@そうだ選挙にいこう :2008/03/05(水) 15:50:01
=IF(B68="","")
ちょっと言ってみるだけなんだけど、
>>100 にXMLは使えないんだろうか。
定義でセル幅を指定するとか。これから始めようとしているところで、まだちんぷんかんぷん。
分かる人、教えて。
>>101 C68、D68にそれぞれ
=IF(B68="","",それぞれの計算式)
と入力。だからC列とD列はやり直しだね。
あ、あとE列もね。
106 :
名無しさん@そうだ選挙にいこう :2008/03/05(水) 17:18:59
107 :
名無しさん@そうだ選挙にいこう :2008/03/05(水) 17:24:21
>>107 式入れたセルと隣の参照セルが一致してるかよく確認しろ
>>107 =IF(B68="","",c68)
じゃねーの
>>100 まず置換で「,」を「」(何も入力し無い)
後はctrl+aで列番号(AとかBとか)を右クリック、列幅を入力
同じように行の高さも変更
・・ってのはダメ?
>>100 まず置換で「,」を「」(何も入力し無い)
後はctrl+aで列番号(AとかBとか)を右クリック、列幅を入力
同じように行の高さも変更
・・ってのはダメ?
112 :
101 :2008/03/05(水) 17:35:52
113 :
101 :2008/03/05(水) 17:42:55
114 :
101 :2008/03/05(水) 17:46:13
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 エクセル、Excel 20080303をセルの書式設定で2008年3月3日に変える事は出来ませんかね?
>>115 無理。素直に文字列操作関数でバラして日付になおしてから書式設定したほうがいいとおもう
やはり無理ですか…。 ありがとうございます。
>>115 0000年00月00日
で、似たような表記にはできるが
一桁の月と日の頭に0がついちゃうな
でも俺もシリアル値に直したほうが今後の管理は楽だと思う
#"年"##"月"00"日" 何でできないのかが理解できない。
実際にやってみたか? それだと2008年03月03日になるよ
121 :
115 :2008/03/05(水) 19:07:00
そのようですね。 シリアル値を変えないと並び替えなどをした際に不都合が生じます。
>>119 #"年" は 0000年 に比べて文字数が少なくなるという利点があるが、
##"月"00"日"は何がしたいのかまったく理解できない。
123 :
115 :2008/03/05(水) 19:17:00
皆さん、ありがとうございました。 TEXT関数を使う事によって解決しました。
何も回答できない奴が、回答してる奴に対して まったく理解できない。 とかほざく奴w
=LEFT(A1,4)&"/"&TEXT(MID(A1,5,2),0)&"/"&TEXT(RIGHT(A1,2),0) これでいいのかな?と思ったら解決してたし なんか強引な気がしてならない・・
126 :
115 :2008/03/05(水) 19:52:04
ありがとうです。 私は=DATEVALUE(TEXT(A1,"0!/00!/00")) で出来ました。
127 :
名無しさん@そうだ選挙にいこう :2008/03/05(水) 19:53:22
解決済みらしいが =DATEVALUE(TEXT(B2,"0000年00月00日")) てのがあとあと使いやすいかと
128 :
115 :2008/03/05(水) 20:00:36
あ、ありがとうございますw
129 :
127 :2008/03/05(水) 20:07:40
完全に余計な御世話だったorz
痴漢のやりかたを教えてください!
手もとの環境だとCtrl+Hだな
Replace()
133 :
名無しさん@そうだ選挙にいこう :2008/03/05(水) 22:39:36
2000使用です 足し算の枠を、そのまま式のみコピーするにはどうやるんですか =A1+B1 という式をそこから下に =A2+B2 =A3+B3 ・・・という具合にまとめて自動でコピーしたいです 確かこんな機能はあったと思ったんですが 用語・単語が分からなくてすいません
134 :
名無しさん@そうだ選挙にいこう :2008/03/05(水) 23:00:18
135 :
名無しさん@そうだ選挙にいこう :2008/03/05(水) 23:05:38
excel2007で使えるパスワード解析ソフトってありません?大抵が2003対応で使えません。
>>100 そういうのはVBAを使えばできる。VBAを勉強しなさい。
簡単な命令と数値を並べるだけでセルの大きさを変えたり罫線を引いたり
色を付けたり色んなことができるから。
138 :
名無しさん@そうだ選挙にいこう :2008/03/05(水) 23:23:25
>>137 思い出しました、ありがとう!
かなり前にExcel関連の低い級の資格をとったなんて自分で信じられない・・・
これじゃ履歴書に書けん。・゚・(ノ∀`)・゚・。
139 :
名無しさん@そうだ選挙にいこう :2008/03/05(水) 23:24:14
>>133 数式だけなら、
コピー→貼り付けたい範囲選択→
編集(E)→形式を選択して貼り付け(S)→数式(F)でOK
または、
元セル含めて貼り付けたい範囲選択→F2で元セルの中に
→Ctrlを押しながらEnter
>>138 >これじゃ履歴書に書けん。・゚・(ノ∀`)・゚・。
書かないほうがいいよ。
こんなの忘れるようなことじゃない。君はエクセル使えない人なの。わかった?
2つお願いします。 1,セルの書式設定で分数 ?/? を指定しましたが 整数(分母が1)の場合も分数(例5/1)で表示されますが これを整数で表示するように設定出来ないでしょうか。 2,randbetweenで負の数〜正の数の乱数を発生させる時 0(ゼロ)を発生させないようにする方法はないでしょうか。
142 :
97 :2008/03/06(木) 00:36:50
>>98 上書き保存?どういうことなんでしょうか。
上書きしても変わりません。
>>142 51行〜800行を行選択して削除してみたら?
145 :
97 :2008/03/06(木) 00:42:57
>>144 行削除しても、伸びた縦スクロールバーは戻らないみたいです
146 :
144 :2008/03/06(木) 00:48:16
147 :
97 :2008/03/06(木) 00:52:39
>>146 おお〜〜!!すばらしい。戻りましたよ〜。
146さん、ありがとう。ありがとう。
これで作業がはかどります。
148 :
名無しさん@そうだ選挙にいこう :2008/03/06(木) 03:38:21
【1 OSの種類 .】 Windows Vista 【2 Excelのバージョン 】 Excel2007 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】エクセル2007 シート見出しが表示されない 特定の二つのファイルだけ、下部にシート見出しが表示されません。 見出しを出すにはどうすればよいのでしょうか?? 調べて色々試してみたのですが、どれもうまくいきませんでした。 どこかがズレているだけなのでしょうか? よろしくお願いします。
149 :
148 :2008/03/06(木) 04:14:22
すみません。 頑張っていじくったら解決しました! ご迷惑をお掛けしました。。
【1 OSの種類 .】 Windowsxp 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 excel 置換 関数 指定回数 検索文字列の内、指定文字が指定回数目の時その文字だけ置換させるにはどうしたらいいですか? 例:AAABAAABABAAB を、Aが5文字目のところでCに置換する :AAABACABABAAC
例間違ってた上無駄にわかりにくかったのでので訂正します :AAAAAAAAAを、Aが3文字目のところでCに置換する :AACAACAAC 失礼しました
>>151 a1にAAAAAAがあるとすると
=SUBSTITUTE(A1,"AAA","AAC")
【1 OSの種類 .】 Windows*XP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 month date 経過月 A列に「入庫日」が入っている状態で、「経過月」という列をB列に作りたいと考えています。 当月からみて「入庫日」は何ヶ月前か、という列です。 たとえば本日を2008/03/06とすると A B 1 入庫日 経過月 2 2008/03/05 0 3 2008/02/28 1 4 2008/02/01 1 5 2007/12/31 3 のようにしたい、「当月中」であれば常に「0」。 「先月」なら1ヶ月以上経過していても10日前であっても「1」が表示されるというものです。 単純にB2に 「month(today()-A2)」と入力すると、当月中なのに「1」になってしまいます。 「MONTH(TODAY())-MONTH(A2)」だとうまく「0」になりますが、 これだと昨年入庫のB5は-9になってしまいます。 B列にうまく「0」「1」「1」「3」とさせるためには、どういった式が適切でしょうか? どなたか、お願いいたします。
154 :
100 :2008/03/06(木) 12:55:43
>>136 ども。
VBAやったこと無かったんで食わず嫌いしてたけど複数言語をなめた今ググってみたら
ある程度理解できそうなので、真剣に勉強してみようと思います。
>>153 =DATEDIF(DATE(YEAR(a2),MONTH(a2),1),DATE(YEAR(TODAY()),MONTH(TODAY()),1),"m")&"月"
ちなみに最後の&"月"は書式設定でもいい
しかしこれはひどい関数・・
残りが何日であっても一月、と数えるような関数ってあったっけ?
なければこれしかないような気がするけどもう少し何とかなりそうな気もする
【1 OSの種類 .】 Windows XP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 可 【5 検索キーワード 】セル バーコード 認識 オブジェクト認識 オートシェイプ エクセルの情報をA4サイズのレイアウトに流し込み(The CARDというソフト)して、 封筒に印刷したいのですが、その際にバーコードもいれなければなりません。 数字をバーコード化することには成功したのですが、エクセル上ではオートシェイプのオブジェクト として認識されてしまっており、上記のソフトで読み込もうとしてもバーコードを表示してくれません。 なにかバーコード情報をエクセルのセルとして認識する方法はありますでしょうか?
158 :
名無しさん@そうだ選挙にいこう :2008/03/06(木) 15:41:53
【1 OSの種類 .】 WindowsXP SP2 【2 Excelのバージョン 】 Excel2007 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 "最初の0" 消える 保持 表示形式 元のデータが 0123456というtab区切りのtextデータをexcelに展開させて、 見やすいようにセルの書式設定の表示形式を「郵便番号」にし、 012-3456という表示はできたのですが、 再びtab区切りのtextデータに戻す時に、元のデータが123456と 最初の「0」が消えた形式になってしまい困っています。 元のデータをいじらず、最初の「0」も保持したまま、表示上は「000-0000」という形式 にするにはどのようにしたらよろしいでしょうか?よろしくお願いいたします。
>>157 そのCARDというソフトの会社に聞いたほうがいいと思う
何か回答もらえるかも
>>158 書式設定を文字列
160 :
158 :2008/03/06(木) 17:30:29
>>159 書式設定を文字列にしてしまうと「0123456」という元の表示になってしまうので、
中のデータは「0123456」で表示上は「012-3456」という風にしたいのですが…。
>>160 意味がないと思うのだが、どうしてそうしたいの?
あ、テキストデータに戻したいのか… 単純に、作業列を作るか、テキストデータに戻すときだけ書式を文字列にすればいいと思うのだが…。
163 :
158 :2008/03/06(木) 17:52:47
>>162 問題の列はかなり中ほどにあるので、作業列を作るとかなりややこしくなっちゃいます…。
テキストデータに戻すときは、書式が文字列以外、最初の0をexcelが消してしまうので、
その後に、文字列にし直しても0が無いままの状態になってしまいます…。
164 :
158 :2008/03/06(木) 20:22:24
すいません自己解決しました。 入力用と出力用でシートを分けて、 入力用には「123-4567」、出力用には「1234567」とし、 出力用のデータを全て入力用のシートから参照でうまくいきました。 お騒がせしました。
【1 OSの種類 .】 Windows2000 【2 Excelのバージョン 】 Excel97 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 excel97 グラフ ズーム グレー表示 エクセルのグラフのズームのところが普通は100%等表示されている部分が、 グレー表示になっていてグラフの拡大縮小表示が出来ません。 もう一台のマシンの同じ環境だと普通に選択できるのに。 なぜなのかわからないです。サービスパック等もあててあります。 ご教示を是非よろしくお願いいたします。
63 名前:名無しさん@お腹いっぱい。[sage] 投稿日:2008/03/06(木) 21:36:46 ID:qcg7kqmY0 47 名前:名無しさん@お腹いっぱい。[] 投稿日:2008/03/06(木) 10:45:36 ID:ohw+Uj/H0 倒産(破産)の危機とか噂を聞きましたが、製品保障は大丈夫なんでしょうか!? こいつ↑ビジネスsoftの一太郎総合スレにも書いてた。 シーシェパードと似たような、アンチジャストの木痴害活動家なんだろう。 木痴害もここまでくると哀れだね。
168 :
153 :2008/03/06(木) 21:50:44
>>156 うおー!ありがとうございます。ひとまずこれで問題なくできそうです。
しかし「DATEDIF」って関数一覧にもエクセルのヘルプにも入ってないんですね・・・。
なんで一覧に無いんでしょう・・・。
【1 OSの種類 .】 WindowsXP
【2 Excelのバージョン 】 Excel2007
【3 VBAが使えるか .】 いいえ
【4 VBAでの回答の可否】 可
【5 検索キーワード 】 インデックス 直線補間
掲示板でやりたいことをうまく伝えられるか不安なので、うPしました。(key:excel)
http://www11.axfc.net/uploader/20/so/He_78550.zip.html XYチャートの値を直線補間させて取り出したいのです。
ユーザ定義関数を作って頂けるとありがたいです。
どうかよろしくお願いします。
170 :
名無しさん@そうだ選挙にいこう :2008/03/06(木) 23:03:43
>>168 こんな方法もあるかも
=YEAR(TODAY())*12+MONTH(TODAY())-(YEAR(A2)*12+MONTH(A2))
【1 OSの種類 .】 Windows2000 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 不可 やりたいことが2つあるのですが、お願いします。 1. C1に=SUM(A1:B1)をいれ、C1のセルを下ではなく右にドラッグしたとして、D1に=SUM(A2:B2)となるようにしたい。 2. 他のシートからセルをコピーペーストした時に、値や数式ではなく、そのセルを参照(外部リンク)させるようにしたい。 たとえば、ファイル名「test」、シート名「テスト」の「B1]セルをコピーペーストしたら、=\test\テスト\B1のようにリンクをコピーしたい 説明がつたなくて申し訳ないですが、よろしくお願いします。
>>168 それはDatedif関数がLotus1-2-3から派生したものだから。
173 :
名無しさん@そうだ選挙にいこう :2008/03/06(木) 23:35:12
>>171 1は基本的に不可と思われます。
2は貼り付けの際に
編集(E)→形式を選択して貼り付け(S)
リンク貼り付け(L)
>>171 2は
='[コピー 〜 新規Microsoft Excel ワークシート.xls]Sheet1'!$A$1
デスクトップにエクセルファイルを二つ作って(仮にA・Bとする)AのA1セルに=と打ち込んで
BのA1をクリックしてエンターを押すと、どう入力すればいいかわかる
1はドラッグでは無理と思うけど
素直にCTRL+Hで置換するか、コピー→形式貼り付けで「行列を入れ替え」というものがあるので試してみてもいいかもしれない
175 :
173 :2008/03/06(木) 23:44:30
>>171 1は一応 C1に
=SUM(INDIRECT("A"&COLUMN()-COLUMN($C$1)+1&":B"&COLUMN()-COLUMN($C$1)+1))
と入れればドラッグで計算できるけど
そんな表は作らないほうがいいと思われますw
176 :
名無しさん@そうだ選挙にいこう :2008/03/06(木) 23:48:38
どこかに =SUM($A1:$B1) で下に必要な数だけドラッグ それをコピーしてC1を選択して 編集(E)→形式を選択して貼り付け(S)→行列を入れ替え $が気になるなら置換で消す
>>171 1回限りでいいのなら、下にドラッグして普通にコピーしてから行と列を入れ換えて貼り付け
179 :
名無しさん@そうだ選挙にいこう :2008/03/07(金) 07:33:53
▼━質問テンプレ (出来れば使ってね) ━━━━━━━━━━━━ 【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2007 【3 VBAが使えるか .】 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 文字列 検索 結合 関数 AというテーブルのB列に5桁のランダムな数字があり、初めの4桁(1234)をセルA1に指定して、 下1桁が0~9のうち1番大きい数字を取り出したいのですが、 VBAでどのような方法でできますか? 1234の後ろの枝番8の5桁の数字を探したいのですが、お願いします B列 ----- 54684 12345 12341 25483 12348
C列に =B1-ROUNDDOWN(B1,-1) D列に =IF(MAX($C$1:$C$100)=C1,B1,"") ↑の$c$100ってのは100行目までって意味なんで好きに伸ばして使って
VBAの回答は他に任せるw
excelでVBA使うには合理的な理由がないと滑稽だ。 最初のハードル:そもそも意味のある処理なのか? 二番目のハードル:本当にVBAが必要か? この二つを両方越えている質問は非常に少ない。 最近ではファイルのツリー表示くらいかなあ。
>>179 Sub 条件に合う値を探す()
Dim 最大 As Long
Dim 列 As Integer
Dim A1, B As Long
最大 = 0
列 = 1
A1 = Cells(1, 1) 'A1の値を変数に代入
B = Cells(列, 2) 'B列の値を取り出す
While B > 0
If Int(B / 10) = A1 Then
If B > 最大 Then 最大 = B
End If
列 = 列 + 1
B = Cells(列, 2)
Wend
Cells(2, 1) = 最大 '結果をA2に書き込む
End Sub
もうワークシート関数でいいんじゃね? msgbox "大きいのは、" & [MAX((LEFT(B1:B5,4)=TEXT(A1,0))*B1:B5)]
186 :
名無しさん@そうだ選挙にいこう :2008/03/07(金) 10:41:33
文字列で12:35(12時間35分を意味します)と書いてあるデータが あるので、これを12.58時間を意味する数値データにしたいのですが、 やり方を教えて下さい。 よろしくお願いします。
187 :
名無しさん@そうだ選挙にいこう :2008/03/07(金) 10:41:41
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2007 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 リボン 表示 メール EXCEL2003を使っている人から、EXCELの「メール送信」でデータを受け取ったところ、 リボンと数式バーの間にOutlookExpressで言うところの「送信ボタン」や「宛先(CC)」、 「件名」などの入力欄が表示されるようになりました。 非常に鬱陶しいので消したいのですが、どこで消していいのかまるでわかりません。 御教授下さい。
188 :
名無しさん@そうだ選挙にいこう :2008/03/07(金) 10:52:09
>>186 =HOUR(A1)+MINUTE(A1)/60 ってやったあとで表示形式を数式、小数点2位まで表示 なんかじゃダメかしら。
189 :
名無しさん@そうだ選挙にいこう :2008/03/07(金) 11:10:59
>>188 Thanks a lot!! 有難うございます。一発で解決しました。
190 :
名無しさん@そうだ選挙にいこう :2008/03/07(金) 13:29:19
>>186 です。度々質問して申し訳有りません。
07:55'01"700と書かれている文字列セルのデータ(今回は、時間でなく時刻です)
を、エクセル標準の時刻データセルに変換するやり方は無いでしょうか。
上司に出来るだろ、やれと言われて困っています。。。。
よろしくお願いいたします。
>>190 一応確認だけど、7時55分1.700秒?
>>191 =TIME(LEFT(A1,2)*1,MID(A1,4,2),MID(A1,7,2))+RIGHT(A1,3)*0.000000011574074
=TIME(LEFT(A1,2)*1,MID(A1,4,2),MID(A1,7,2))+RIGHT(A1,3)*1/24/60/60/1000
どっちでも好きなほうで
>>190 だった、スマン
あとLEFT(A1,2)*1の*1は消し忘れ
*1しないと文字列を計算に使えない場合があったと思うけど、忘れた。
>>191-193 有難うございます!上司は2ちゃん見てるとそれはそれで怒るので、
手短ですが本当に有難うございます。
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 CSV カンマ区切り 1つのセル カンマ区切りのcsvファイルをDLしてEXCEL2000で開くという動作を行うのですが、 通常カンマ区切りでセル毎に表示されるのですが、他のPCで同じ動作を行ったら A1のセルに全ての内容が書き込まれてしまいました。 この場合、開いた後からデータ区切りで指定すれば通常と同じ表示になるのですが、 ファイルを開く際に自動でカンマ区切りにすることは可能でしょうか? 可能ならば、設定方法を御教授下さい。
キモすぎですね・・・ 378 名前:名無しさん@そうだ選挙にいこう[sage] 投稿日:2008/03/07(金) 09:26:19 割れ厨並の余裕のないレスご苦労さん 378 名前:名無しさん@そうだ選挙にいこう[sage] 投稿日:2008/03/07(金) 09:26:19 割れ厨並の余裕のないレスご苦労さん 378 名前:名無しさん@そうだ選挙にいこう[sage] 投稿日:2008/03/07(金) 09:26:19 割れ厨並の余裕のないレスご苦労さん 378 名前:名無しさん@そうだ選挙にいこう[sage] 投稿日:2008/03/07(金) 09:26:19 割れ厨並の余裕のないレスご苦労さん 378 名前:名無しさん@そうだ選挙にいこう[sage] 投稿日:2008/03/07(金) 09:26:19 割れ厨並の余裕のないレスご苦労さん 378 名前:名無しさん@そうだ選挙にいこう[sage] 投稿日:2008/03/07(金) 09:26:19 割れ厨並の余裕のないレスご苦労さん 378 名前:名無しさん@そうだ選挙にいこう[sage] 投稿日:2008/03/07(金) 09:26:19 割れ厨並の余裕のないレスご苦労さん
197 :
名無しさん@そうだ選挙にいこう :2008/03/07(金) 21:18:01
【1 OSの種類 .】 Mac9 【2 Excelのバージョン 】 Excel2001 Excel2003みたいにブック内の検索する方法ないですか? ワークシート内だったらできるけど
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 数式の入ったセルを数式を全く変えないで違うセルに貼り付けることってできますか? 1つずつ数式をコピーすれば可能なのですが、たとえば1列丸ごとをどこかに数式を変えないでコピーしたいのです。
>>198 ドラッグでもCTRL押しながら離れたセルを複数クリックでもいいけど、とりあえず複数クリックしておいて
式を入力した後ctrl+enter
これで選択したセル全てに同じ内容が入る
式じゃなくても価でも同じ
>>197 97だと無理だったなー
200 :
名無しさん@そうだ選挙にいこう :2008/03/08(土) 00:30:30
199 197ですが、やっぱり無理ですよね〜 ありがとうm(__)m
超簡単な質問で申し訳ないんですが、 入力したデータをある特定の行にも反映させる関数って何ですか?
自己解決しました
203 :
198 :2008/03/08(土) 14:16:35
>>199 さん
レスどうもです。
やりたいことは、例えば
3行目A列のセルに=A2として、以下横に=B2、=C2、=D2・・=N2とあったとします。
この3行目のA〜N列までをコピーして、5行目のC列に数式をそのまま貼り付けたいのです。
教えていただいた方法は別の機会に活用させていただきます。
ありがとうございました。
204 :
名無しさん@そうだ選挙にいこう :2008/03/08(土) 15:00:26
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 無し(適当なキーワードが思い浮かばなかったです) A(年齢) B(平均身長) 0 0 10 120 20 170 30 170 みたいに、Aに対してBの値が一意に決まるデータ系列A-Bがあるとします。 ここで、データ系列A A'(年齢) B'(平均身長) 5 ? 8 ? 6.5 ? 29 ? がある時に、データ系列A-BをもとにB'を求めたいのですが、 Excelの機能で簡単に求められるでしょうか? (ただし簡単化のために、データ系列A-BのA=0~10, 10~20, 20~30の間は線形に変わると仮定します。 例えば A'=5なら、 B'=60です)
>>198 数式のままじゃ無理だから
= を # とかに置換して
コピーしてから逆に置換するとか
206 :
名無しさん@そうだ選挙にいこう :2008/03/08(土) 15:11:41
こんにちは。 エクセルの日付でたとえば今日、2008年03月08日と表示する設定はないんでしょうか? ようするに一桁の場合に前にゼロを入れないと気持ち悪いのですが……。
207 :
名無しさん@そうだ選挙にいこう :2008/03/08(土) 15:37:58
>>206 セルの書式設定→表示形式→分類→ユーザー定義で
種類を
yyyy"年"mm"月"dd"日"
にする。
208 :
名無しさん@そうだ選挙にいこう :2008/03/08(土) 17:02:46
>>204 とりあえずそれをコピーして
A1にA(年齢) B1にB(平均身長)、A2以降縦に0,10,20,30
B2以下0,120,170,170
C2に=B3、C3に=B4-B3、オートフィルでC5まで入力
D1は空けて(入力用、とかタイトル用に)D2〜D5はA'の数値。別に他でもいい
E2に=D2-ROUNDDOWN(D2,-1)、e5までオートフィルでコピー
F2に=E2*VLOOKUP(D2,$A$2:$C$10,3)/10+VLOOKUP(D2,$A$2:$C$10,2)
F5までオートフィルでコピー
これでD列に入力したものがFにでるように
考え方としては、求める年齢の一桁*その年代の一年あたりの伸び幅+その年代の平均身長
作業セルはもっと減らせるはずだけど、その辺は任せるぜ
209 :
198 :2008/03/08(土) 17:05:19
>>205 おぉぉ、なんという発想!
ありがとうございます。柔軟な発想とはこういうことをいうのでしょうね。
Thx
210 :
名無しさん@そうだ選挙にいこう :2008/03/08(土) 18:58:49
質問です。 【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 置換について 数式(若しくは関数)が入っているセルの表示結果を全てをテキストに変換したい(数式や関数を削除したい)のですが、 うまく置換する方法は無いでしょうか? 一つ一つやると時間がかかるので、何かいい一括変換方法があればご教授願います。
212 :
名無しさん@そうだ選挙にいこう :2008/03/08(土) 19:30:25
>>211 おおーーー!!
その手があったか。
うまくできました。
ありがとう。
213 :
名無しさん@そうだ選挙にいこう :2008/03/08(土) 19:33:56
2003使用です。 同じセル内で値(数値)を選択させたいんです。 リストみたいな感じで・・・ 更にそこで選んだ値を計算にも反映させたいんですが、出来ますか? 例:¥1000-、¥3000-、¥5000-の選択肢を用意して、全体の計算式 の中でそこの数値が反映される。 宜しくお願いします。
214 :
名無しさん@そうだ選挙にいこう :2008/03/08(土) 19:42:37
215 :
名無しさん@そうだ選挙にいこう :2008/03/08(土) 20:32:12
216 :
名無しさん@そうだ選挙にいこう :2008/03/08(土) 20:54:50
質問させてください。 【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 一つのセルに大量の文字を入力すると上画面にセル内容が作業領域を 邪魔して入力作業がスムーズに行きません。 上に表示される文字をセル全体でなく1行ごとの表示にする事は可能でしょうか。
【1 OSの種類 .】 Windows** 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 スケジュール表を作成していて稼働日のカウントで困っています。 任意の一定期間の稼働日(土日と祝日)を除いた稼働日をアドイン関数を使わずに数える事は可能でしょうか?
>>218 日付の隣に稼働日が否かを区別するデータを持つべきでしょう。
そして稼働日の数をカウントすればいいです。
>>219 例えば3/1から4/5までの稼働日をカウントさせるにはどうしたら良いでしょうか?
COUNTIFやSUMIFを使ってもうまくいきません。どのような条件にすればよろしいでしょうか?
>>220 稼働日を1
非稼働日を0
としたらSUM()だけで大丈夫。
222 :
名無しさん@そうだ選挙にいこう :2008/03/08(土) 23:29:42
223 :
名無しさん@そうだ選挙にいこう :2008/03/09(日) 00:04:04
>>222 入れたほうが圧倒的に早いけど
アドイン入れれない環境なんでない?
神様 セルに入力する時、入力モードと編集モードがありますが、 F2キーを押さなくても、いきなり編集モードで入力できる方法はないでしょうか おねがいしまつ
>>224 バージョン書き忘れました
Excel2003
です
ない
228 :
名無しさん@そうだ選挙にいこう :2008/03/09(日) 10:08:34
質問です。 関数を使うときにfxと表示されているメニューを使っているのですが、 範囲や要素を入力するときに、いちいちキーボードに帰ってエンターキーを 押すのが面倒です。 もし、マウスでエンターキーを入力できる方法があったら、教えてください。
マウスのさきっちょでエンターキーを押すってのはどうよ
230 :
名無しさん@そうだ選挙にいこう :2008/03/09(日) 10:19:11
スクリーンキーボード使うか、5ボタンマウス買うか 俺もマウスのボタンにエンターキーは登録してある スクリーンキーボードはwin2000ならC:\WINNT\system32\osk.exeにある
232 :
228 :2008/03/09(日) 10:39:31
>>231 どうもありがとうございます。
同じ悩みの方がいてよかったです。
早速まねさせていただきますね。
224です ないですか、がっかり 詳しくないんですが、 たとえば、スタートアップ用か標準用だかのxlsとかで セルが入力モードになったら、そのイベント拾って アクティブなセルにSendKeys("{F2}")とかしたりするような、 そんなvba書いて下しあ 神様おながいしまつ
F2を押したら入力モードになるんだから 無理です
F2を押したら 入力モードと編集モードが 交互に切り替わる
>>232 いや、俺はキーボード主体でマウスはほとんど使わないんだけど・・
ただマウスでボタンがあまってたから割り当ててるだけ
237 :
名無しさん@そうだ選挙にいこう :2008/03/09(日) 11:25:54
>>235 入力モードに戻っても、セル内での点滅表示のままなんだよね。
>>233 ThisWorkbookに
Private WithEvents xl As Excel.Application
Private Sub Workbook_Open()
Set xl = Application
End Sub
Private Sub xl_SheetSelectionChange(ByVal obj As Object, ByVal Target As Excel.Range)
If Target.Count = 1 Then SendKeys "{F2}"
End Sub
と書いてアドインとして保存
あまり確認していないけど
239 :
名無しさん@そうだ選挙にいこう :2008/03/09(日) 13:45:03
2003使用です。 リストの一覧の数字の値を%にしたいのです。 例えば数値を10にした場合、セルの書式設定で普通に%にすると 1000%になってしまいます。 実際に入力してある数値(10)%になるようにするにはどうすれば 良いでしょうか?
入力する前にパーセント書式を設定すれば出来ると思うけど。
読み間違えた。 右クリック→セルの書式設定→表示形式→ユーザー定義 で、 #"%" と入力。
242 :
名無しさん@そうだ選挙にいこう :2008/03/09(日) 17:42:52
>>236 1.開いているセル例えばA1に「100」と入力
2.A1をコピー
3.%に変更したいセルを選択
4.形式を選択して貼り付けの除算を選んでOK
5.セルの書式を%に変更する
以上
243 :
242 :2008/03/09(日) 17:44:11
アンカーミス ×236 ○239の間違い
【OSの種類 】 WindowsXP SP2 【Excelのバージョン 】 Excel 2007 【VBAが使えるか 】 いいえ 【VBAでの回答の可否】 可 エクセルのグラフ機能について質問なんですが、 あるデータに対して、散布図のグラフを作成して、そのグラフにおいて、ある値に対応する値を求めたいときにはどうすればいいんですか? たとえば x 2 6 8 13 15 y 4 11 16 27 31 みたいなのをグラフ化すると曲線が表示されるじゃないですか。 そのときに、x=10に対応するyの値を(目視以外の方法で)求めて、それをグラフ中に表示させたいんですけど、どうすればできますか?
FORECAST()って関数使えばいんじゃないかな
FORECAST()試してみたんですけど、 確かに値は出るんですが、グラフの値と明らかに異なってしまいました。 どうすればいいでしょうか。
関数 内容 FORECAST 値を予測する TREND 直線に近似される値を予測する GROWTH 指数曲線に近似される値を予測する LINEST 既存のデータから直線を計算する LOGEST 既存のデータから指数曲線を計算する とか 分析ツール アドインを使って回帰分析を実行する とか
248 :
216 :2008/03/09(日) 21:52:40
>>217 回答ありがとうございました。
明日さっそく試してみたいと思います。
がんばって仕事効率アップに繋げるぞ p(^o^)q <エイエイオー
>>247 GROWTHでうまくいきました。ほんとありがとうございました。
【OSの種類 】 WindowsXP SP2 【Excelのバージョン 】 Excel 2003 【VBAが使えるか 】 はい 【VBAでの回答の可否】 可 excelのコマンドボタンを押すとwindowsであるフォルダが開く、という形にしたいのですが、 手持ちの本にはそのような命令は載っていませんでした。 ひょっとして、ないのでしょうか? もしあればご教授くださると助かります。
251 :
名無しさん@そうだ選挙にいこう :2008/03/10(月) 15:38:35
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2007 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 数式 excel ばらばら 見やすく 幅 高さ 長さ 幅、高さ、長さの寸法をexcelで書いているのですが、 50x200x400 5x3x40 4000x500x5000 と、普通に打ち込むとバラバラになってしまいかなりみにくいので、 50 x 200 x 400 5 x 3 x 40 4000 x 500 x 5000 等のように整理してくれる表示形式等があればいいのですが、 そのような書式って可能でしょうか?よろしくお願いいたします。
データ→区切り位置 カンマやタブなど〜にチェックをいれた状態で次へ 区切り文字→その他、で横のボックスに「x」を入れて完了 ×はどうしても入力する必要があるから、列を挿入して入力 B1〜B10だとB1-B10を範囲選択して「×」を入力した後、ctrl+enterで全てのセルに おなじあたいがはいるよ。別にオートフィルでもいいけどね
254 :
名無しさん@そうだ選挙にいこう :2008/03/10(月) 21:15:17
EXCELで自動的に画像を並べるようなフリーソフト あれば教えていただけないでしょうか よろしくお願いします。
255 :
名無しさん@そうだ選挙にいこう :2008/03/10(月) 22:18:52
【1 OSの種類 .】 Windows Vista 【2 Excelのバージョン 】 Excel2007 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 可です グラフ作画してもらうだけのマクロ作ってるんですが、 データ(列です)がモノによって10個だったり100個あったりして、 範囲だけ違うマクロが沢山並んでしまってます。 データの始点は同じですので、データ終点の指定はせずに、 データがある列までという範囲指定はできるんでしょうか? よろしくお願いします。
256 :
名無しさん@そうだ選挙にいこう :2008/03/10(月) 22:28:26
>>255 マクロの記録で範囲指定のときに始点を選んだあと
Ctrl+* (Ctrl+Shift+:)
を押してみましょう
これで思う通りの範囲にならない場合、
テーブルとして不適切なので、
空白行・列の削除
不要なデータとの間に行・列を挿入
などの処理を行っておいたほうがいいです
257 :
名無しさん@そうだ選挙にいこう :2008/03/10(月) 22:45:20
>>256 うほっできた。
ありがとうございました!
258 :
名無しさん@そうだ選挙にいこう :2008/03/10(月) 22:59:44
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2007 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 複数シートにわたってグラフがあるのですが、 一枚のグラフに統合する事は可能でしょうか。 元になる数値はバラバラなので、波形だけ 参照にしたいのですが…。 どうぞよろしくお願いします。
259 :
名無しさん@そうだ選挙にいこう :2008/03/10(月) 23:07:46
>>258 一枚のシートにまとめてしまうことを強く進めるぜ
営業ー実績みたいなシートならテーブルを第一正規形まで作っていればあとはピボットテーブルだけで作れる
261 :
名無しさん@そうだ選挙にいこう :2008/03/11(火) 00:36:44
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 1つのセル内の計算式で=C1-D1+(2000-3000) という値を求めたいのですが、2000-3000 の場合整数の1000とし、 逆に3000-2000の場合の値を0にしたいと思います。 ※携帯電話の通話料-無料通話分だと思って下さい。 =C1(基本料)-D1(割引)+通話料から無料通話分を引いた請求額 を出したいのです。 宜しくお願いします。
262 :
名無しさん@そうだ選挙にいこう :2008/03/11(火) 00:46:36
=C1-D1+if(通話料-無料通話>=0,通話料-無料通話,0) あるいは =C1-D1+(通話料-無料通話>=0)*(通話料-無料通話)
【1 OSの種類 .】 Windowsxp 【2 Excelのバージョン 】 Excel2002 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 エクセル シートの内容を 反映 シフト バイトのシフト表ですが、 シート1:行にバイト名、列に曜日、該当欄に仕事内容(内容によってセル色変化) シート2:行にバイト名、列に一ヶ月の出勤記入欄 こういう感じで作っています 例えば、シート1で作成した月〜日の間で入れる日の内容を、 シート2の月〜日の曜日欄に反映する事は可能でしょうか? うまく説明出来なくてすいません 分かる方御願いします
vlookup
224です 遅ればせながら238さんありがとうございました シートとかセルのキーボードイベントってないんですね エクセルでキーボードフックとか恐ろしいことになりそうだし諦めました ありがとうございまつた
集計したときに、集計行に集計の文字が入らないようにしたいのですが、 そのような設定は可能でしょうか? 2007です。
置換するか、=substitute(a1,"集計","") などで対処するしかない
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 ユーザーフォームのコンボボックスの内容を、選択されたのちの処理後、全て消して1からアイテムを加えなおしたいのです。 そのような命令はあるのでしょうか?
270 :
名無しさん@そうだ選挙にいこう :2008/03/11(火) 16:55:34
すいません、会社でエクセルを使うことになりそうなのですが、今日、職場実習にいったのですが、 ピボットとかなんとかいってましたピボットってなんですか? これはどう言うときに使うものなのでしょうかよろしくおねがいします。
272 :
名無しさん@そうだ選挙にいこう :2008/03/11(火) 17:30:41
>>271 関数を使って計算するのは知っていたんですが、集計とか
ピボットテーブルとか便利な機能があんですね。
ありがとうございました。
273 :
名無しさん@そうだ選挙にいこう :2008/03/11(火) 19:32:11
まだ200台だぜ?
ピボ厨が勝手に立てたんだろ VBA厨は別でやれってことで
ム板だし前からある
277 :
名無しさん@そうだ選挙にいこう :2008/03/11(火) 21:02:33
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2007 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 エクセル Exce 複数 条件 COUNT A1=● として C列、D列の中から●の数をカウントするのに =COUNTIF(C:D,A1) とすれば●の数がカウント出来ますが、 ×かつ●の時のみ●の数をカウントしたい場合って、 どのような方法を使えば良いのでしょうか? 例) C D ● × ● ● × ● この場合は2個です。 「A:A」のように列全体を指定した場合エラーが出てしまうため、 SUMPRODUCT以外の方法を探してます。 宜しくお願いします。
=IF(AND(A1="×",B1="●"),1,0)を下までドラッグして合計する
=IF(AND(C1="×",D1="●"),1,0)ね
280 :
277 :2008/03/11(火) 21:17:42
レスありがとうございます。 やはり作業列を作らずに合計する方法はないんでしょうかね。。。
2007ならCOUNTIFSが使えるのではないか?
282 :
名無しさん@そうだ選挙にいこう :2008/03/11(火) 21:34:47
VBAで正規表現機能を使用する場合、ツール→参照設定→Microsoft VBScript Regular Expressions 5.5にチェック という下準備が必要だと思うのですが、エクセルを閉じると設定が戻ってしまいます。 したがって正規表現機能を使用したい場合、エクセルを起動させる度に 同じ動作をしなければならず、効率的とは言い難い状況です。 この設定を有効にし続けるにはどうすればよいのでしょうか? お願いします。
283 :
277 :2008/03/11(火) 21:35:48
ありがとうございました。。。 無事解決しました。
284 :
名無しさん@そうだ選挙にいこう :2008/03/11(火) 22:32:07
>>277 他のバージョンでも使えるようにするなら配列数式を使う
=sum((C1:C10="×")*(D1:D10="●"))
と入力して、Ctrl+Enterで確定
285 :
284 :2008/03/11(火) 22:32:54
Shiftが抜けてた Ctrl+Shift+Enterだ
向こうが過疎だからVBAの質問は向こうでして下さいお願いしますっていう回答中毒のVBA厨か
288 :
名無しさん@そうだ選挙にいこう :2008/03/11(火) 23:33:23
>>287 回答中毒はこっちでも答えてるんじゃね?
>>288 そうだな。じゃなきゃわざわざここに書きこまないわな。
ボクの書いた素晴らしいナップザック問題のコードを見て下さいうひひひひひひ
っていう露出壁もある奴なんだろうな
露出壁ってのはちょっと面白かった。
ナップサック問題だってexcel標準の機能で解けちゃうからね。 ほんと何に使うんだVBA。
>>291 俺は簡単なソフト開発に使ってるよ。
ユーザーフォームと組み合わせると、ほんと便利。
293 :
291 :2008/03/12(水) 00:15:25
>>292 UIの制御に使うっていうのはわかる。
それがVBAの正しい使い道のような気がするなあ。
集計なんかに使うのはばかげてる。
294 :
名無しさん@そうだ選挙にいこう :2008/03/12(水) 00:21:50
>>291 ナップサック問題解けるエクセル標準の機能って何?
本気で教えてほしいんだけど?
295 :
291 :2008/03/12(水) 00:35:56
>>294 ソルバーで解けるよ。
線形の0-1整数計画問題なんでそういうモデル,設定で使うといい。
でもなんでそんなにVBAを意識してるのか意味が分からない。 確かに最初はクセがあるけど、使えればこんな便利なものはないよ。 関数をいくつも使って作業列を多数組むより、内部で計算させたほうがいいじゃない。 条件分岐もはるかに簡単に複雑なものが組めるんだから。
>>296 そんなことしていくらがんばっても出来上がったものがピボットテーブルの
サブセットだからなんじゃない?
>>296 >でもなんでそんなにVBAを意識してるのか意味が分からない。
>確かに最初はクセがあるけど、使えればこんな便利なものはないよ。
そんなにクセがあるとは思わないな。
どこにでもあるような言語仕様じゃないか。
>>297 ひょっとしてVBAで挫折した経験でもあるの?
ピボットもVBAも用途によって使い分ければいいだけ。
>>299 >ピボットもVBAも用途によって使い分ければいいだけ。
そうだよ。その通り。
VBAでピボットテーブルもどきばかり作るなってこと。
>>300 ・・・わからん。君は何に憤ってるんだ。
怒ってると気持ちいいんだよ、そういう人は
303 :
名無しさん@そうだ選挙にいこう :2008/03/12(水) 01:02:32
>>300 ピボットもどきをVBAでやってるコードをこのスレで見た記憶がないんだけど?
他の処理に使う値出すための集計のコードはたまに見るけど。
まあ、気づいてないだけかもしれないので例示してもらえると助かる。
彼には見えてるんだよ
>>303 このスレでは出てないんじゃないかな。
過去のスレッドではそんなの多かったと思う。
でも例示はできないんだよ
307 :
303 :2008/03/12(水) 01:14:11
>>305 このスレってのは、過去スレ含む意味で言ったんだけど
ずっと見てるわけじゃないので、たまたま見てないところで出てたのかもしれないね
また出てきたら、直後に「それピボットでできるよ」と言ってあげれば質問者回答者共にその後無駄なことせずにすんでいいんじゃないかな
まあ、そのピボットもどきもVBAの学習過程としては意味があるからね。
特定の重いと思っているファイルだけ計算方法を手動にする方法はありませんか? オプションで手動・自動を切り替えたりすることなく、ファイルを開くときに このファイルなら自動で計算、そのファイルなら手動で計算となればいいなと思うのですが。 また、例えばですが2分以上何も操作がなければ再計算する、というようなことは可能でしょうか?
ピボットテーブルで計算した結果を、参照する方法がわかりません。 ピボットテーブルで求めたい値は計算できるのですが、 それを元ある表に入力されるようにしたいのです。 計算は、ピボットテーブルでするんだけれども 見た目は、ピボットテーブルそのままではなくしたい。 こういうことって可能なのでしょうか?
【1 OSの種類 .】 Windows XP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 プリントアウトすると「1」が「N」になってしまい困っています。 変倍しても同様です。excelが原因だと思うのですがどこをいじれば良いのでしょうか? コピー機はリコーのneo353です。
>>313 Excelが原因なわけないだろ。
まず新規にブックを作って、A1に「111」と入れて印刷してみ。「NNN」になったか?
315 :
名無しさん@そうだ選挙にいこう :2008/03/12(水) 09:42:30
ピボット厨ってなんでそんなに必死なの?
【1 OSの種類 .】 Windows XP SP2 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 セルをダブルクリックすると普通は編集状態になるはずなんですが、 ダブルクリックすると0.5秒後くらいに編集状態が解除されてしまいます。 どうしたら解決できますでしょうか?宜しくお願い致します。
319 :
名無しさん@そうだ選挙にいこう :2008/03/12(水) 13:40:12
【1 OSの種類 .】 Windows XP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 エクセルの関数の範囲指定で a1〜10個下までを指定したいんですが、 10を変数にしたいのです。 良い方法はありませんか?
ESP能力でOFFSETかINDIRECT
321 :
319 :2008/03/12(水) 14:21:45
ありがとうございます。
【1 OSの種類 .】 Windows XP SP2 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 A1の値が「Sheet2」の時にはSheet2のA2の値を A1の値が「Sheet3」の時にはSheet3のA2の値を : : : A1の値が「Sheet100」の時にはSheet100のA2の値を という感じでB1に代入したいんですが いい方法はありませんでしょうか?
=indirect("sheet"&a1&"!a2")
Excel2000です いくつかの数値のなかでこの数値は全体の何位かを表すにはどうしたらいいですか? A B 数値 順位 数値 順位 数値 順位 としたいです
>>322 なんでそんなにいろいろなシートを参照したいの?
>>326 株価の四本値を銘柄毎に解析してバックテストをしてます。
B1セルに =RANK(A1,A:A) B2以下へコピー
セルに数字+e+数字を入力しEnter押すと 違う数字になるが、なぜだか俺に説明してくれまいか?
331 :
名無しさん@そうだ選挙にいこう :2008/03/12(水) 23:20:14
>323 =indirect(a1&"!a2") だろ?
332 :
名無しさん@そうだ選挙にいこう :2008/03/12(水) 23:43:23
【1 OSの種類 .】 XP 【2 Excelのバージョン 】 Excel2007 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 Excel2007 マイテンプレート/グラフ 切れる 相談が2点あります。 1.たくさんの表やピボットテーブルから円グラフをつくりたいので 「テンプレートとして保存」したのですが 次にその「マイテンプレート」からグラフを作ろうとすると データラベルの中身が反映されていたり、されていなかったりします。 反映されていないデータラベルは「テキストの追加」となっていて、 いちいち手で入力しなければならない羽目に。 2.Excelで作った円グラフをワードに貼り付け、互換モードで保存すると (グラフが編集できなくなります云々にOKすると)グラフが四角く切れてしまいます。 再変換すると戻るのですが… どちらも、原因と回避方法が分かりません。 今夜中に仕上げなければならない書類があるので、何とかしたいです。 よろしくお願い致します。
333 :
198 :2008/03/13(木) 00:36:56
>>205 さん
今更ですが、数式の=を@などに変換しようとするとエラーがでて変換できません。
数式を数式じゃなくする方法ってありますでしょうか?
(値のコピーではない)
>>333 じゃあしかたないね。最後の手段。
その式を含むワークシートをコピーする。
コピーしたワークシートから切り取り、コピー。
あ、または先にそれらのセルを文字列にするという手は試してみた?
既に式の入ってるセルを文字列にしても 式の結果が文字列になるだけ だからまずは自分で試せと
337 :
名無しさん@そうだ選挙にいこう :2008/03/13(木) 08:20:15
>>333 @以外は試しました?
”=”を”式=”に置換するだけでも行けるはずだと
思うんですが(手元に2000が無いので検証できない)
量が少なければ数式の入ったセルを文字列にした後、F2、enterを交互に連打 コピー コピーしたものを数値や標準にして、F2とenter連打
なんとなく、だけどVBAの出番な予感
>>340 Sub Macro1()
Dim a As String
a = Range("a1").Formula
Range("b1").Value = a
End Sub
で簡単にA1の式を変更せずにB1にコピーできるけど、
質問者がVBA使えないって言ってたからなぁ
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2007 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 ユーザー定義 固定 初歩的かもしれませんが、お願いします。 「3/1」と入力すると「3月1日」となり、書式をみると ユーザー設定の[m"月"d"日"]の位置になっています。 これを別の表示形式、例えば[yyyy"年"mm"月"dd"日"]などに 固定したいと思います。 次回から、新規でエクセルファイルを開く場合は 設定なしで、どのセルでも「3/1」と入力すると[yyyy"年"mm"月"dd"日"]で 表示される方法はありますか?
345 :
名無しさん@そうだ選挙にいこう :2008/03/14(金) 02:02:51
セルに、(C6H10O5)nの化学式の数字の部分を下付きで表示し、その化学式のセルを別のセルに表示したいのですが、下付きでは示されず、そのままの(C6H10O5)nで表示されます。 コピーではなく、参照して式を作りたいのですが、下付のまま表示することはできるのでしょうか?
346 :
名無しさん@そうだ選挙にいこう :2008/03/14(金) 03:20:00
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2002 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 excel 差額 収支 計算 いまパチンコの収支表を自作しようと試みているのですが、 Dの「差額」列の値を利用した増減のグラフを作ろうと思って手詰まりになってしまいましたので ご教授ください。 F行を作ると仮定して、日にち毎の増減をこれまでの差額を元に日付対応で計算させたいんです。 例えば、F列にこのような結果を(オートフィルか関数で)出させたい場合、どのようにすればよいでしょうか?? 頭悪くて申し訳ありません。どうぞご教授お願いいたします。 A B C D E F 8 日付 投資 回収 差額 判定 9 2008/1/2 7000 29000 22000 勝ち 22000 10 2008/1/3 37000 14500 -22500 負け -500 11 2008/1/4 0 12 2008/1/5 63000 0 -63000 負け -63500 13 2008/1/6 0
F行→F列です。すいません
OSの種類 .】XP 【2 Excelのバージョン 】 新しい 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 可・否 【5 検索キーワード 】 Googleやヘルプでの検索キーワード 商品売上 売上日 商品番号 商品名 販売価格 数量 金額 10/1 0001 A 3,000 20 60,000 10/2 0002 B 2,800 40 112,000 10/3 0003 C 4,200 80 336,000 10/4 0002 B 2,800 36 100,800 10/5 0001 A 3,000 60 180,000 商品名 販売価格 金額が空欄で問題になってました。 商品名と販売価格はブイルックアップででましたが、関数を入れた後、 金額の欄を乗算でだそうとするとばryーがでてしまいました。 お願いしますm__m P,s 明日から事務をやるんですが、重荷事務で使うエクセルの関数等あったら教えてくださいm__m
349 :
346 :2008/03/14(金) 03:59:49
F列=F9+D10 自己解決・・・お恥ずかしいです・・・
350 :
名無しさん@そうだ選挙にいこう :2008/03/14(金) 07:40:24
351 :
名無しさん@そうだ選挙にいこう :2008/03/14(金) 09:24:29
どなたか
>>345 お願いします。とても困っています。Excel2004です。
352 :
名無しさん@そうだ選挙にいこう :2008/03/14(金) 09:37:09
>>351 その、参照式が入っているセルの書式を「下付き」にするか、
VBAで Selection.Font .Subscript = True
353 :
名無しさん@そうだ選挙にいこう :2008/03/14(金) 09:40:14
ああ、ごめん。意味が分かってなかった。 特定の文字のみを下付にするんですね。 参照ではやはり、あらかじめ書式のコピーするしかないんじゃ・・・
一文字ずつmidなんかで切り取って条件付書式で・・ と思ったけど条件付書式って下付できねーんだな これはVBA厨の腕の見せ所だろう
>>345 式というのは
例えばA1に(C6H10O5)n(数字は下付)と入力して、B1に=A1と入力して、
数字が下月のものを表示させるということ?
356 :
352-353 :2008/03/14(金) 09:57:49
数字の1を下付にする場合は、以下を実行する・・・だめか? Sub ppp() Dim i As Byte Dim ii As Byte Dim find_1 As Byte i = InStr(1, ActiveCell.Value, "1") ActiveCell.Characters(Start:=i, Length:=1).Font.Subscript = True End Sub
357 :
352-353 :2008/03/14(金) 10:02:00
ごめんこっちで・・・ Sub ppp() Dim i As Byte i = InStr(1, ActiveCell.Value, "1") If i = 0 Then Exit Sub ActiveCell.Characters(Start:=i, Length:=1).Font.Subscript = True End Sub
そういう事じゃなくてカメラ機能でしか解決しねー事じゃねーの見る限り
361 :
352-353 :2008/03/14(金) 10:14:24
>>358 ですよね。
大体、そういうことかと思って・・・
しかも、ActiveCell.Charactersが参照セルには
効いてないし。
日付を複数入力して、 その間の日数を自動計算する方法ってありますでしょうか?
天才!
OSの種類 .】XP 【2 Excelのバージョン 】 2003 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可・否 VBAである名前のワークシートがあるかないかを調べたいのですが、そのような方法はあるのでしょうか? 他のワークブックのシートで、他のワークブックは 変数 other として定義されています。 nnはシート名です。 if other.worksheets(nn) is nothing = true then と書くとエラーが出てしまいます。
if other.worksheets(nn) is nothing then
>>364 これはすばらしい。
ところで、上付き文字はなぜに4からなんだろうね。
1からあればとても便利なのに。
>>366 SW = False
With other
For i = 1 to .Worksheets.Count
If .Worksheets(i).Name = nn Then
SW = True
End If
Next i
End With
If SW = False Then
処理
End If
371 :
名無しさん@そうだ選挙にいこう :2008/03/14(金) 16:20:39
>>351 です。返事が遅くなってしまってごめんなさい。みなさんご協力本当にありがとうございました。
>>364 さんの、最初から特殊文字で下付き文字を入れる事で、無事完成する事ができました。
>>364 さん以外の方も、本当にありがとうございました。お勉強になりました。
また、お世話になる事もあると思いますが宜しくお願いします。
おめでとう 僕も勉強になりました
373 :
名無しさん@そうだ選挙にいこう :2008/03/14(金) 22:47:51
【1 OSの種類 .】 Windows Vista
【2 Excelのバージョン 】 Excel2007
【3 VBAが使えるか .】 いいえ
【4 VBAでの回答の可否】 否
ある2つの年度でそれぞれの商品の売り上げが月毎で
前年度と比べどう推移したのかをグラフにしたいのです。
↓にあるように積み上げグラフを使って
2つの年度のそれぞれの月を比較したいのですが、
どうにも想像しているグラフ(左にあるような感じにしたいですが…)が作成できません。
どなたかご教授してくださると助かります。
ttp://www.dotup.org/uploda/www.dotup.org2833.jpg
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2000 A B C D E 所属 氏名 性別 登録コード 出身地 VBAで、↑を↓に並べ替えるには、VBAをどう書けばいいでしょうか? A B C D E 登録コード 氏名 性別 所属 出身地
>>374 D列を切り取り、A列を選択して切り取ったセルを挿入
これをあえてVBAでやるなら
Columns("D:D").Select
Selection.Cut
Columns("A:A").Select
Selection.Insert Shift:=xlToRight
Sub TST() Range("A1").Cut Range("D1").Insert Range("D1").Cut Range("A1").Insert End Sub
>>373 グラフ同士をつなぐ斜め線を出す方法はわからないけど,それ以外は
ピボットグラフで実現できるよ。
>377 何で分からんのに答えるん?
380 :
名無しさん@そうだ選挙にいこう :2008/03/15(土) 13:59:07
excelのデータをUSBメモリーに落として他のパソコンに入れたいのですが どうしたらいいですか?
>>380 普通にやって入らないの?
何もやってみないで質問してるんじゃないのか?
>>380 エスパーしてみると、実は移したいのはデータじゃなくてアプリの方。
エスパーすると、エクスプローラーでさえ開いたことの無い厨房
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ・・・VBAが何なのかも先ほどこちらに来るまでわかりませんでした。 【4 VBAでの回答の可否】 否。場合により可(どうしてもVBAでしかできないのでしたらVBAでもいいのでお願いします。) 【5 検索キーワード 】 エクセル 順列組合せ 方程式 生徒のそれぞれの科目別の得点の順位と、合計点の順位がわかっているとします。 順位 国語 算数 英語 合計 1 10 10 10 29 2 10 8 9 25 3 7 7 8 20 4 6 5 7 18 5 5 3 4 17 合計点と科目別の得点を手がかりに並べ替えて、上の表から 順位 国語 算数 英語 合計 1 10 10 9 29 2 10 8 7 25 3 7 3 10 20 4 5 5 8 18 5 6 7 4 17 のように、総合順位○位の生徒の得点の教科別内訳、という表は 作れますか? エクセル初心者です。 どうぞ宜しくお願いいたします。
↑すみません、ずれてしまいました。 数字左から 順位、 国語 、算数、 英語 、合計 です。
>384 グダグダなサンプルだなぁ・・・ 軽くエスパするとデータ(D)→並べ替え(S)で終わりな気がする。
合計から各教科の点数を求めるってことか?
違う名前で出ています
>>388 のヒントでやっと
>>384 の質問が理解できた。
ナップサック問題みたいなやつでしょ?ソルバーで解けるよ。
>>390 いや、順位はわかってるんだから、一覧表から該当する得点を引いてくるだけでしょ。
作業列を作ってRANKでできる。
392 :
390 :2008/03/15(土) 19:10:01
>>390 >>384 の質問はいろんな意味で疑問だらけなんだ。
解釈は2つに分かれてるんじゃないだろうか。
解釈A:データベースのように一覧表からある条件でデータを抽出する問題。
解釈B:制約条件を満たすような解の組み合わせを求める問題。
>>387 >>391 は解釈A,
>>388 >>390 は解釈Bということではないかな。
393 :
390 :2008/03/15(土) 19:15:06
アンカー間違えた。さっきのは
>>391 への返事ね。
そして自分は解釈Bなんだけども疑問はある。
他人の点数を好き勝手に入れ替えてなにか意味のある結果が得られるのかということ。
エスパー見習の俺が予想してみる
>>384 の上の表は
順位 国語 算数 英語 合計
1 10(山田) 10(木村) 10(佐藤) 29
2 10(佐藤) 8(山田) 9(木村) 25
3 7(木村) 7 8(佐藤) 20(山田)
以下略
という事じゃないか??
例えば
>>384 が高校の教師とすると、国語の担当と算数の担当と英語の担当から
それぞれのテストの結果はもらっているんだが、それを統合できずにいるという・・多分・・
その場合は
順位 国語
1 10(山田)
2 10(佐藤)
3 7(木村)
順位 算数
1 10(木村)
2 8(山田)
3 8(佐藤)
と教科ごとの表を作ってからのほうがいいと思う。色々な意味で。
違ってたらわからん
以前から感じているけど、このスレの回答者の質sageはいかんともしがたいw
間違えた 順位 名前 国語 1 山田 10 2 佐藤 10 3 木村 7 順位 名前 算数 1 木村 10 2 山田 8 3 佐藤 8 という感じでつくると良い
397 :
384 :2008/03/15(土) 20:32:40
384です。 なんか要領を得ない質問で申し訳ありません。 学校のテストの結果のクラス資料をうんと簡単にしたつもりだったんですけど・・・ 学校でもらった資料は(本当は1クラス分で全教科) ・名前は特定されていない ・各教科の順位と得点は出ている ・5教科合計点の順位と得点もでている ・だけど、5教科で例えば450点取った人が、 数学で何点、英語で何点・・・取ったか、という 内訳は出ていない という感じなんです。
「5教科合計」というような列作ってピボットテーブルかな
>>397 もともとのデータに内訳が出ていないならば内訳は出せないよ。
400 :
395 :2008/03/15(土) 21:02:48
お、当ってたな 無いなら名前を全て入力するしかない というか元データに入ってると思うんだけど、無かったらこれを機に入力するようにした方がいいんじゃない? 残業代ほしければ別だろうけど
自分のレス番間違えたよコンチクショウ↑は394だ
402 :
名無しさん@そうだ選挙にいこう :2008/03/15(土) 21:08:59
>>401 >学校でもらった資料
この表現からして生徒じゃね?
どこにも名前出てこないし教師用資料じゃないぞ。
403 :
384 :2008/03/15(土) 21:09:37
皆様、ありがとうございます。
>>398 さま
ピボットテーブル・・・?
自分が持っている本には載っていないので
検索して勉強しようと思ったら
>>399 さま
出来ないんですか・・・はぁ・・・
>>400 (=394)さま
いえ、ハズレ。
保護者会で、個人を特定されないように配られた資料なんですよ。
404 :
384 :2008/03/15(土) 21:10:54
もたもた書いてる間にレスが。
>>402 さま、そうなんです。
ちょっとある事情で
春休みの間に内訳がわかればと思ったのですが
そこまでは出来ませんか、やっぱり。。。
ありがとうございました。
>>404 そうですね。あきらめて下さい。
EXCELにできないのではない。あなたに能力がないのでもない。
論理的にできないことなんです。
ある事情って単なる覗き趣味だろ 気持ち悪い
1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 可・否 エクセル2000でワークシート1の計算、a1とa2を計算した答えをa3にだし (a3に=a1+a2)そのa3の結果の数字をワークシート2のa1に出して、 ワークシート2でも同じく計算してワークーシート3に出す・・ といった具合にしようと思います。 この場合ワークシート2のa1にどのようなことを書けばよいのでしょうか? また、ワークシート1のa4に文字を書き込むと、同じ文字でワークシート2、3,4,のa4にも 自動的にもじが書き込みがされるようにするには、どうしたらよいでしょうか? すみません、お願いします。
>>407 シート名に!マークを付ければ、別のシートの値を持ってこれる
=Sheet1!A3
>>408 ありがとうございます。so
うまくいきました。
410 :
名無しさん@そうだ選挙にいこう :2008/03/16(日) 12:40:39
>>410 AlgIDというのはAlgorithmIDのこと。ハッシュの計算方法を指定する。
具体的にはソースの最初の方で宣言されている定数、
CALG_MD2、CALG_MD4、CALG_MD5、CALG_SHA、CALG_SHA_256、CALG_SHA_384、CALG_SHA_512
のうちのどれかを指定する。
412 :
410 :2008/03/16(日) 13:11:31
>>411 早速の回答ありがとうございました!
おかげさまで 出来ました!
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 可・否 VBA初心者です。 Excel4マクロを今までズルズルと使ってきたのですが =SELECT("RC1:RC5")のような たとえばアクティブセルが (C8) のときに (C1:C5) を選択するといった具合に アクティブセルのある行の1列〜5列までを選択するような表記はどうすれば良いのでしょうか? すみません、よろしくお願いします。
414 :
名無しさん@そうだ選挙にいこう :2008/03/16(日) 17:19:52
数字の0に斜め線が入った0を表示させる方法があれば教えてください。 エクセル2003です。 よろしくお願いします。
挿入→記号と特殊文字 の中にあればダブルクリックか挿入 なければ、ない
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 excel2002 すいません、大雑把な質問なのですが、2002と2003でDir命令に変更があったのでしょうか。 他のPCの2003で問題なく動いたマクロが2002だとエラーを起こします。 ディレクトリ構造はきちんと存在するのですが、 If Dir(tec) = "" Then のような単純なコードでエラーを吐きます。 変数tecはきちんと代入されているのですが。
どんなエラー? あとコードはできるだけ最初から最後まで書いた方がいい 特に変数の宣言とか
420 :
418 :2008/03/16(日) 18:17:18
エラーは「ファイル名が不正です」です。 変数は特に宣言せず、variant形式で用いています。
421 :
418 :2008/03/16(日) 18:23:03
すいません、ファイル名または番号が不正です でした。 エラー番号は52です。
422 :
418 :2008/03/16(日) 19:10:37
なんとなく理由がわかってきました。 先にバックアップ先(tec)を調べに行っているのですが、環境の違いで2002の方は光学ドライブになっていました。 メディアが入っていない光学ドライブは指定すらできない、存在しない扱いになるのかな、と思ったのですが。 ちなみに、少し変更してUSBメモリーのドライブを指定すると、なくてもエラーは起きませんでした。 結構細かい違いがあるんですね。
エクセル 2007 OS :XP エクセル初心者で今のトコ練習でダイエット表を作ってます。 A1日付 B1朝の体重 C1夜の体重 D1当日の変化率と作成できました。 F1にダイエット開始からの日々の増減を%で組み込みたいのですがどうやればいいのでしょうか? (B2の体重がデータを打ち込んだ最初の数値なので、これを基準として毎日の夜の体重との変化率を求めたいのですが・・・)
エクセルじゃなく算数の質問だな E2=(C2-B$2)/B$2*100
425 :
名無しさん@そうだ選挙にいこう :2008/03/16(日) 23:20:22
いくつかのセルを大きい順に並び替えたいのですが、 それ用の関数ってありますか? 今、max関数を使って一つずつがんばってますが、限界です。。。
詳細がわからないけど RANK でどうよ
428 :
425 :2008/03/16(日) 23:38:48
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 エクセル初心者です。 家計簿を作ってるのですが、非常に困ってます。 買った物の欄に「肉」・「文房具」・「シャンプー」と入力し 肉 → 項目:食費 文房具 → 項目:経費 シャンプー → 項目:消耗品 という風に項目を隣の欄に作ってます。 買った物と項目を入力するだけで、 項目の種類ごとの集計表が勝手にできる便利な方法はありませんか? エクセル超初心者なので、わかりやすくお願いします。
>>429 フィルタを使うだけでは役にたちませんか?
>>429 =SUMIF(A2:B100,"消耗品",B2:B100)
100行まであると仮定して、こんな感じかな
普通はAに項目、Bに金額、Cに内容と並べる
それぞれ勘定科目、金額、適用または補足などと並べるんだがね
それもA列は日付と相場が決まっているので、日付、勘定科目、金額、適用とA-D列を並べれば後々問題がおきる可能性は少なくなる
とりあえず、家計簿作るならエクセル初心者以前に簿記三級は覚えておいた方がいい
別に破綻してもいいなら覚えなくてもいいけど・・むりょうのサイトはいくらでもあるよー
432 :
431 :2008/03/17(月) 00:37:31
>>430 フィルタ初めて使ってみましたが、こんな便利な機能があったんですね
本当に有難う御座いました。
>>431 わざわざ簿記のことまで有難う御座います。
あと丁寧な解説、痛み入ります。
=SUMIF(A2:B100,"消耗品",B2:B100)
これ、早速やってみます。
そういうときこそピボットテーブル
435 :
429 :2008/03/17(月) 00:51:34
>>432 何から何まで、有難う御座います。
とりあえず、家計簿無料ソフトを見ます。
基本的には、自分で勉強してエクセルで頑張ってみようと思います。
実は家計簿ではなく、うちの自営業を継ぐんで帳簿を作らないといけないのです。
だから、最低でも簿記3級って言葉にドキッとしました
エクセルも簿記も苦手な医療の世界でずっと働いていたから、
全部ゼロからの勉強です
本当に感謝、感謝です。
【1 OSの種類 .】 Windows2000
【2 Excelのバージョン 】 Excel97
【3 VBAが使えるか .】 はい
【4 VBAでの回答の可否】 可
【5 検索キーワード 】 Excel 開始 メモリ エラー
VBAでユーザーフォームを使ったエクセルファイルを作成しています。
ある時点で、メモリに関するエラー?が出てしまいブックを開けなくなりました。
(このようなエラー)
http://pc.nikkeibp.co.jp/article/NPC/20070731/278765/ ブックを開いた際にユーザーフォームが自動起動する設定のため、
恐らく最後に上書き保存した際のコードがエラーを起こしているのだと思いますが、
そもそもブックが開けないために修正もできません。
何か良い案がありましたらご教授下さい。
437 :
名無しさん@そうだ選挙にいこう :2008/03/17(月) 02:58:55
具体的な話ではないのですが、会社独自の受発注システム(何を使って作ったのか まだ確認ができていない)のデータをexcelのデータにぶつけてあとはexcelの関数を使って 条件ごとに抽出するのは難しいんですか?
>>436 ですが、自己解決しました。
他のファイルもしくはアプリケーションのみで起動して
オプション――「マクロウイルスから保護する」にチェックを付けたところ
ユーザーフォームを起動しない状態でブックを開くことができました。
お騒がせしてしまって申し訳ございませんorz
439 :
名無しさん@そうだ選挙にいこう :2008/03/17(月) 03:06:53
プリントアウトする時にある指定したセルにその日の日付を自動的に印字する 方法はありますか?
>>437 まず「データをぶつける」の意味を説明せよ
>>436 です、度々すいません。
最後に追加したコード――恐らくエラーの原因になっているであろう――を削除しても、
変わらずエラーが出続けるようになってしまいした。
こういう場合、エラーの発生箇所を突き止めるにはどういう方法がございますでしょうか。
また、一般的にこのようなエラーを取り除くことは可能でしょうか?
よろしくお願いいたします。
>>442 VBEでチェックしたいサブルーチン内で[F8]押してステップ実行
>>437 そのシステムからExcelで読み込めるフォーマット(たとえばcsv形式)で書きだせれば、
抽出や分析はExcelでできんじゃね?
>>442 initializeの開始位置にブレークポイントを置いてステップ実行を試みたのですが、
ブレークポイントにたどり着く前にエラーが出ます。
構文チェック?の段階で落ちるのでしょうか。
>>442 まずはエラーメッセージと発生箇所をよーく見る。
プログラムを修正してもエラーが消えないってことは、
どっかのシートから読み込んだデータが原因かもよ。
ブレークポイントなんていらん [F8]押すごとに1ステートメントずつ実行する コンパイルの段階で落ちてるなら参照設定が死んでるか ブックが壊れてるから、フォームを一旦エクスポートして 新規ブックにインポートしなおしてテスト
つか中途半端に知識あってミス見つけられないタイプの人か 一番メンドくせー俺パスがんばって
>>443 >>445 有り難うございました。
結局力技ですが、コードを半分消して、エラーが出れば残った方の半分消して、さらにエラーが出れば……
のような感じで原因を探ったところ、
宣言部の Dim bytCurrentSheetMonth As Byte
と言う記述を削除したところ、正常に起動するようになりました。
試しにこのデータ型をlongにすると、これも正常に起動できました。
何故エラーになるのかが不明なので、若干腑に落ちないのですが、
このあたりは様子見と言うことで、このまま進めてみようと思います。
VBAはまだ初めて1ヶ月も経っていないので、もしかしたらどこかしらに
常識では考えられないような記述でもしているのかもしれませんが……
>>448 だからエラーメッセージをよく見ろってば。
意味がわからなかったら、エラーメッセージをそのまま入れてぐぐれ。
あるいはここに書け。省略や超訳は厳禁。1文字たりとも間違えずにそのまま書くこと。
では、お言葉に甘えて……本当に
>>436 のような表記のみしか現れないのですが。
Microsoft Excel - 6.xls: excel.exe - アプリケーション エラー
"0x60049092" の命令が "0xe196d802" のメモリを参照しました。メモリが"read"になることはできませんでした。
プログラムを終了するには[OK]をクリックしてください
プログラムをデバッグするには [キャンセル]をクリックしてください
以上です。OKとキャンセルのボタンはどちらを押してもプログラムが終了します。
コード全体を見てみたいものだ
>>450 あ、それ出たことある。
多分、エクセル自体の問題だよ。
誰かのPCが使えるなら、そこに持っていって実行してみ。
多分エラーがでないはず。
453 :
名無しさん@そうだ選挙にいこう :2008/03/17(月) 12:11:09
質問させてください 【1 OSの種類 .】 WindowsVista 【2 Excelのバージョン 】 Excel2007 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】リスト 一覧 参照 セルに何かしらの一覧が入っていてその中から一つを選択する方法を教えてください。 ┌──────┐─┐ | |▼|こんな感じのセルがあって矢印押すと └──────┘─┘ ┌──────┐─┐ | |▼|一覧が出てきて、そこから一つを選択する └──────┘─┘ |赤 | |青 | |黄 | |緑 | |白 | |黒 | └────────┘ 矢印は特に必要ではありません。 セルを選択したときに一覧が出てくれればいいです。 宜しくお願いします。
454 :
453 :2008/03/17(月) 12:41:07
>>453 自己解決しました。
excel リスト 表示でぐぐったら出て来ました。
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 Excel ワードアート/ワードアートのセル参照/Excel 2000 ワードアート 普段仕事で、プライスPOPの作成にExcelを使用しているのですが、同業仲間が2002を使って ワードアートの数式に$a$11などと打つことでセル参照をして、そこのセルの値をワードアートに表示させる機能を使ってました。 調べたところ、2000ではその機能が搭載されてないということなのですが、アドインか何かで2000環境でこれを実現させることは できるのでしょうか? この機能のためだけにバージョンアップするほどでは・・・と思いつつも、百近いプライスを作るときに 作業効率が全然違うようになりそうで・・・
456 :
名無しさん@そうだ選挙にいこう :2008/03/17(月) 14:10:50
>>443 そのシステムのデータをそのシステム内でcsvなどのフォーマットに変換できれば
そこからexcelの抽出分析機能を使えるということですか?
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 はい フォルダのコピーについての質問です。 ファイルコピーで以下のように記述しても、パスが見つからないとエラーが出ます。 FileCopy Source:="C:\a\", Destination:="c:\a2\" しかしcドライブ内に間違いなくaフォルダは存在するので、何がまちがっているのかわかりません。 おそらく書式ミスなのでしょうが、何がまちがっているのかわかりません。 どなたかご教授下さい。 ちなみにファイルなら問題なく動作しました。
フォルダはフルダコピーとかじゃなかったか
>>457 FileCopyじゃなくてCopyFolderを使う
461 :
312 :2008/03/18(火) 04:47:32
>>315 レスがかなり遅くなってしまいましたが、
ありがとうございました。
サムプロダクトで重くなりすぎたファイルがあるのですが、
これを使えば、軽くなるかも知れないので試してみます。
462 :
名無しさん@そうだ選挙にいこう :2008/03/18(火) 07:10:55
>>443 何かそういう変換の例をあげているHPはありますか?
>>455 Sub Macro1()
Dim a As String
a = Range("a1").Value
ActiveSheet.Shapes("WordArt 1").Select
Selection.ShapeRange.TextEffect.Text = a
End Sub
とすればセルA1の内容を一つ目に作ったワードアートにほうり込むことが出来る
後はループなりなんなりでワードアートの文章を書き換えることが出来るんだけど、
セルとリンクさせることは無理っぽいね
>>462 変換も何も、拡張子がcsvのテキストファイルをダブルクリックすれば自動的にExcelが起動してデータが読み込まれる。
あとは内容次第だから聞かれても困る。臨機応変に自分で考えて処理するしかない。
XP Excel2000で、セルを選択して Selection.Columns.LeftからSelection.Columns.Width分だけ Shapes.AddLineで線を引いているんだけど Vista Excel2007だと線がずれまくる。 なんでやろ?
知るか。
つめてぇw
>>465 簡単なプログラムで試してみたけど、ちゃんと罫線の位置に線が引けたぞ
Sub line_test()
With Selection
x = .Left
y = .Top
w = .Width
h = .Height
End With
ActiveSheet.Shapes.AddLine(x, y, x, y + h).Select
ActiveSheet.Shapes.AddLine(x, y, x + w, y).Select
ActiveSheet.Shapes.AddLine(x + w, y, x + w, y + h).Select
ActiveSheet.Shapes.AddLine(x, y + h, x + w, y + h).Select
ActiveSheet.Shapes.AddLine(x, y, x + w, y + h).Select
ActiveSheet.Shapes.AddLine(x + w, y, x, y + h).Select
End Sub
【1 OSの種類 .】 Windows XP 【2 Excelのバージョン 】 Excel 2003 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 是非とも可 すみません、一応VBAは出来るのですが久しくやってなかったので お願いがあります。 セルA1にコード番号(ここではAAAAとしておきます)が入っていて それ以外のセルには所々このAAAAを使用した数式、例えば=if(AAAA>0〜 みたいな式が入っています。 これはあくまで例でいろいろなパターンのAAAAを使った数式が入っています。 セルA1にBBBBを入れてマクロを実行すると数式のAAAAをBBBBへ 変更してくれるコードを教えてくださると助かります。 AAAAの所をA1にすれば話は早いとは思うのですが今回は数式を 直接書き換えたいのです。 AAAAは数字4桁です。 よろしくお願いします。
>>469 たとえばこんなかんじ
Range("A2") = "=IF(" & Range("A1") & ">0,1,0)"
>>469 何も難しいことはない。普通に置換でできる。
痴漢をマクロでしたいってことじゃないか? 一つの数式に複数式があるとやりたくなることもある
>>468 お、あんがとね
自分もライン引く所だけ抜き出したら大丈夫だった。
何か Date も定義されてないとか出るし、変、
2007用に組み直すしかないかなぁ、、、めんど
どうしてもVBAでやりたいんなら。 4桁の適当な数字をA1の内容に置き換える Sub Macro1() Range("1:65536").Select Selection.Replace What:=1234, Replacement:=Cells(1, 1) End Sub
伏字にするとエロい 痴漢をマ●●でしたいってことじゃないか? 一つの●●に複●●があるとやりたくなることもある
477 :
名無しさん@そうだ選挙にいこう :2008/03/19(水) 02:51:23
A1に文字や数字を入れてそれをA5に表示させる場合はA5に=A1とするのはわかるのですが、 それでA1に何も入れないとA5には0が表示されてしまいます。 A1に文字や数字を入れない場合にA5を空白にするにはどうしたらよいのですか?
479 :
名無しさん@そうだ選挙にいこう :2008/03/19(水) 04:11:54
まさか引けまでに100円回復する気かw
どこの誤爆だ。 深夜にトレード乙
481 :
469 :2008/03/19(水) 12:02:38
>>474 ありがとうございます。
求めていたのにドンピシャです。助かりました。
こんな簡単なコードで出来ちゃうんですね。
自分で作ってたら10倍くらい長いコードになってたと思う・・・
482 :
名無しさん@そうだ選挙にいこう :2008/03/19(水) 12:48:49
ヒストグラム作成が簡単にサクサク出来るいいソフトウェアありますか?
エクセル
484 :
名無しさん@そうだ選挙にいこう :2008/03/19(水) 15:09:15
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2002 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 再帰関数 下記のソース(再帰関数)を実行するとエクセルを終了できなくなります。 フラグ変数を置いて、if文でよけることもできませんでした。 何か手段はあるのでしょうか? Public Sub time_f_u1() Application.OnTime (Now + 1 / 24 / 3600), "time_f_u1" Range("a1") = Format(Now, "yyyy/m/d h:m:ss AM/PM") End Sub
485 :
名無しさん@そうだ選挙にいこう :2008/03/19(水) 15:54:31
【1 OSの種類 】 Windows2000 【2 Excelのバージョン】 Excel2002 【3 VBAが使えるか】いいえ 【4 VBAでの回答の可否】否 【5 検索キーワード】 オブジェクト 形式を選択して貼り付け JPEG Excelシート上で複数の図形をグループ化→コピー→形式を選択して貼り付け →JPEGを選択→貼り付け とすると、グループ化したオブジェクトは長方形のオブジェクトとなりますが、 元図形の余白部分が黒く塗りつぶされた状態で張り付きます。 この黒の部分をシートを同色の白に変更することは可能でしょうか? どうぞ宜しくお願いします。
>>484 別に終了できたけど・・
無限ループにハマったときはしばらくesc押し続けるといい
じゃなきゃ構文自体を変えるか。そのコードはイマイチどう使いたいのかが分からない
488 :
845 :2008/03/19(水) 16:09:58
すみません。自己解決しました。
2002なら[図]ツールバーに[透明な色に設定]ボタンあるんじゃね? 綺麗に抜けるかは知らんけど。
490 :
485 :2008/03/19(水) 16:17:35
すみません。自分のレス番間違えました。
>>486 さん 参考にさせて頂きました。ありがとうございました。
Excel2000ですが、「ファイル-プロパティ-ファイルの概要タブ」の中の ”プレビューの図を保存する”をVBAでON,OFF所要としています。 設定はBuiltinDocumentPropertiesでやるとだと思うのですが、 ”プレビューの図を保存する”を設定するプロパティが見当たりません。 どうやるのでしょうか?
下記のような作業をしてます。 日本----東京-----大田区---○○町---○○レストラン ---○○レストラン ---○○レストラン ---○○町 -----品川区---同上 -----○○区---同上 ----神奈川---横浜市 ---○○市 ---○○市 ----埼玉-----○○市 -----○○市 -----○○市 ファイルを開くと都道府県を選択でき、該当都道府県をリンクしクリックすると 該当市町村のリンクが開き、更に市町村内にあるレストランの一覧を選択し 更にレストランの場所やら画像やらを表示させるようにしてます。 又、レストランの情報については別ファイルにしてます。 ここで質問なんですが 例えば東京の大田区○○町のレストランを調べてトップページに戻ろうとすると 先程まで調べていたレストランのファイルが開きっぱなしになります。 このファイルを自動的に閉じることは可能でしょうか御教示願います。
>>491 回答できる知識は持ってないけど、
少なくともBuiltinDocumentPropertiesではないことは確か
>>484 VBAの中断はBreakキー
Escより確実
【1 OSの種類 】 WindowsVISTA 【2 Excelのバージョン】 Excel2007 【3 VBAが使えるか】はい 【4 VBAでの回答の可否】可 【5 検索キーワード】 Close 過去ログにも出ててなんか結論がなかったんだが 再度聞いてみたい。 ThisWorkbook.Closeのマクロを実行すると Excel2007が異常終了してしまうんだが、 異常終了させずにCloseさせる方法はないですかね?
そのコード見せてくれ普通は異常終了しない
>>496 ↓のコードをシェープに登録してシェープを
クリックすることにより実行してるよ。
Public Sub subClose()
・・・・
ThisWorkbook.Close
If Workbooks.Count <= 1 Then Application.Quit
End Sub
ありがとな
>>497 Private Sub Excel_End()
ThisWorkbook.Saved = True
If Workbooks.Count <= 1 Then Application.Quit
ThisWorkbook.Close False
End Sub
>>498 その通りにやってみたが駄目でした・・・・orz
500 :
498 :2008/03/20(木) 00:39:20
うちで試したら、これ
>>498 でちゃんとExcelが終了した。
もしエラーが出たり強制終了するなら、原因はほかのところにある。
ほんと2007は評判悪いねえ。
>>499 とりあえず、新規にブックを作って、終了するだけのマクロを書いて試してみ
まさかと思うけど、セキュリティの設定は問題ないか? Vistaだと、何も設定せずにデスクトップに置いたブックのマクロは実行できないよ?
>>502 やってみた。
@xlsmファイルにマクロを登録し「マクロの実行」から実行→正常終了
Axlsファイルにマクロを登録し「マクロの実行」から実行→正常終了
BAにシェープを追加し、シェープからマクロを実行できるようにした→NG
シェープが悪いのか????
>>503 マクロの実行に関しては大丈夫
セキュリティの警告からマクロを有効にしてるから
506 :
504 :2008/03/20(木) 00:53:35
C@ににシェープを追加し、シェープからマクロを実行できるようにした→NG
うぃんびすたexcel2007でやったけどシェイプからapplication.quitで正常終了したぜ シェイプからセルの値表示するだけとかのマクロもこけるようだったら、シェイプがらみで ウンコ設定なんじゃねーのそのpc
508 :
506 :2008/03/20(木) 01:00:38
>>507 Sub Excel_End()
' ThisWorkbook.Saved = True
If Workbooks.Count <= 1 Then Application.Quit
' ThisWorkbook.Close False
End Sub
これなら、俺も正常終了だったよ
結構みんな親身だね。 感心。
オートシェイプからマクロを実行してみたけど問題なく終了できたぞ。 登録したマクロはこれだけ。 Sub a() Application.Quit End Sub Excel再インスコしろ。
511 :
名無しさん@そうだ選挙にいこう :2008/03/20(木) 02:41:23
POSシステムからどうやってデータを取り出せばいいですか? 部署単位でもexcelで売上に関するデータを作りたいのですが。
512 :
508 :2008/03/20(木) 02:42:43
>>510 >>508 にあるとおり、Quitだけなら
俺もうまくいきます。
私がしたいのはThisworkbook.Close
なんだよね
>>511 取り出したデータをExcelで処理する方法なら考えてみるが、
取り出す方法はスレ違いだし、システムの仕様がわからないと答えようがない。
>>512 オートシェイプから呼び出したcloseでエラーが出るのは当たり前。
モジュールを実行し終えたら、呼び出し元に処理を戻さないといけないのに、
その呼び出し元がなくなってるんだから。
オートシェイプじゃなくても、たとえばボタンのクリックで実行しても同様。
試しにブックを2つ開いた状態から、そのエラーが出るマクロを実行してみ。
これはVistaとか2007とか、OSやアプリのバージョンに関係ない。
515 :
名無しさん@そうだ選挙にいこう :2008/03/20(木) 03:17:19
>>514 自分自身を解放するようなコードが書けてしまう処理系ってどうよ。
VBAは危険がいっぱいだな。
それにくらべてピボットは安全安心だな。
>>516 自分は言いだしっぺのピボット派なんだが,そこまでピボットを愛するのはいかがなものか。
518 :
517 :2008/03/20(木) 15:26:05
私が以前から主張しているのはVBAの否定ではない。 このスレッドに登場するVBAの無意味さをバカにしているだけだ。 セルに連番を振ったり,データを並べ替えたり,グループ別に集計したり…
質問者にとって有意義なマクロであるなら、別に518にとって無意味であってもいいんじゃない? あんまりカリカリしないほうがいいよ。 つカリウム食べなよ
追記 518を満足させるスレじゃなくてエクセルの総合相談所という点をお忘れなく
>518 >このスレッドに登場するVBAの無意味さをバカにしているだけだ。 お前か!荒らしの犯人はっ!!
セルに連番を振ったり,データを並べ替えたり,グループ別に集計したり, VBAを正常終了させる方法で悩んだり…
まぁ全ての質問に対して
>>518 が既出回答を上回る回答を
続けてこの発言なら頷けるけど・・
まぁ非難するだけなら誰でもできるよなw
内容はともかく、質問スレでVBAの無意味さを説くこと自体スレ違い
>まぁ全ての質問に対して
>>518 が既出回答を上回る回答を
>続けてこの発言なら頷けるけど・・
無意味な前提条件だねえ。
VBA書くときはバグ出さないように気をつけろよ。
▼━質問テンプレ (出来れば使ってね) ━━━━━━━━━━━━ 【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 エクセル、計算、不具合 2、3日前から起こったことなのですが、 単純な計算を記憶させておいたシートを呼び起こして 各セルの数値を変えてみたのですが、 結果が反映されません。 例えば 1*2=2 と各々のセルに数値と計算式を記憶させておいて 次にこのシートを開いて「2」のセルを訂正し「3」と入れても、 結果は「3」とならず「2」のまま、 1*3=2 となってしまいます。 足し算のしても同じ不具合の結果となってしまいます。 そのまま解のセルをダブルクリックして計算式の内容を確かめてみても 特に間違いはないように見受けられました。 どうしてこのような不具合が起こるのでしょうか。 このパソコンにしてから3年エクセル2003を使っていますが このようなことは初めてです。 よろしくお願いします。
再計算しる
529 :
名無しさん@そうだ選挙にいこう :2008/03/20(木) 19:41:12
ひとつのセルに斜め罫線を引いて その罫線の右上と左下などに文字を書くこと方法ありませんか? よくグラフなどで使ってる表示方法なんですが。
つオートシェイプ
531 :
名無しさん@そうだ選挙にいこう :2008/03/20(木) 20:58:58
>>529 オレは、セル内で改行してスペースで位置調整してる
>>529 一つのせるに斜め線をいれたあと、挿入ー特殊文字で上付き・下付き文字を選ぶか
4つのセル、例えばA1・A2、B1・B2を使ってA1とB2に斜線を入れてA2とB1に文字を入れるか
やったことないんだけどねぇ
>>527 F9押すか保存すると答えが訂正されるなら、
>>528 オプションの計算方法で自動にチェック入れると再計算が自動(デフォルト)になる
それでもならないなら式自体が文字列で保存されたりしてない?
マルチやルール違反だったらすみません。 エクセル初心者なんですが、基本的な機能を 覚えるのにはどういう方法をとりましたか?? 素人考えでは一つ一つ機能を試してみるより 文書検定2級などの課題に取り組むのがいいのかなと 思ったりするのですが、どうでしょうか??
>>534 まずはなんでもいいから参考書を1冊用意して通読する。本屋で写真の多いやつを適当に選べばいい。
そして、自分のパソコンにもExcelを入れて実際に試してみる。
これだけで十分。
>>534 エクセル使わずに本屋で一冊読み切っちゃえばいいよ。
んで、帰ってきてからいろいろやってみればいい。
家計簿的なものをつくるとか、請求書的なものをつくるとか
実生活で使えるやつね。
使ってると不便に思ったりこう出来たら便利なのになってアイデアが
浮かんでくるから、そのときにネットで調べて見るなりして
それからさらに深く知りたいならネットで調べたときに見つけたヒントを
元にそれについて詳しく書かれているような本を探すとか。
>>533 > オプションの計算方法で自動にチェック入れると再計算が自動(デフォルト)になる
まさにそれでした!
なんか知らないうちに手動計算の方にチェックが入ってて・・・
なんでだろう・・・
とにかく感謝です。ありがとうございました!
>>537 確か複数シートを選択した状態で
ブックを閉じると計算方法が手動になる
バグがあったはず
回避するには閉じる前に上書保存をするか
複数選択を解除する
539 :
512 :2008/03/21(金) 08:56:17
みんなレスありがとう。いろいろ参考になったよ
>>514 そっか。そもそもダメなのか。じゃぁCloseしないように
しなきゃダメって事だな。
うーんどうしようかな
>>535-536 なるほど、貴重なアドバイスありがとうございます。
早速取り掛かります。
エクセルでファイルを作ると、毎回余白を0に設定するのが手間なんです・・・ デフォルトで余白を0にする方法ってあるのでしょうか?
542 :
名無しさん@そうだ選挙にいこう :2008/03/21(金) 19:53:45
excel for mac 2004の印刷時の問題なんですが... mac os10.3/プリンターHPpsc2550からOSを新しくos10.4にして プリンターのドライバーもバージョンアップしたところ、 罫線全般が以前より細く(以前の半分くらいの細さ)印刷され、 太い罫線(1.25pt以上)の枠(セルを囲む)の角がぴったり結合されていなくて 角に少し隙間が開いた感じで印刷されます。 なぜなんでしょう?どうしたら解決できますか?教えてください。お願いします。
543 :
名無しさん@そうだ選挙にいこう :2008/03/21(金) 20:21:46
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 初心者 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 Excel、記号、$ 初心者です。 上司からもらったコード↓ .Cells(1, 1) = Replace$(Replace$(LineData, "'", ""), """", "") の、Replace関数の後ろにある、$マークの意味がわかりません。 Google等で検索したのですが、$マークは検索対象外のようで 困っています。 よろしくお願いします。
>>538 > 確か複数シートを選択した状態で
> ブックを閉じると計算方法が手動になる
> バグがあったはず
そうなんですか!
じゃあ知らないうちに自分で招いていたことで
不具合ではなかったんですね。(逝くしかないです・・・)
今度からは気をつけます。
ご親切忘れません。ありがとうございました!
>>543 関数の戻り値が「文字列」だという印。「型宣言文字」っつー昔の名残というか。
昔は変数のデータ型や戻り値を明示するために、名前の後ろに記号付けてた。
String:$
Integer:%
Single:!
Long:&
Double:#
Currency:@
つんく♂
藤岡弘 、
Excel豆知識 IEの履歴を消しても、セルを右クリック→ハイパーリンク→ブラウズしたページ、を選ぶだけで 消したはずの履歴が見れてしまう不思議。
549 :
名無しさん@そうだ選挙にいこう :2008/03/21(金) 23:55:00
レジストリいじってもダメなのか
>>542 置換
=if="",0,11
って感じで何も入力されてない時は0、それ以外は11になるきずだ
作業列や行書式でがんばれ
551 :
543 :2008/03/22(土) 04:04:42
>>545 さん
とてもすっきりしました。
ありがとうございました。
画像データを読み込むマクロです(出典不明) 読み込む段階で、右90度回転をかけたいのですが Sub Test() Dim fName, pict As Picture fName = Application.GetOpenFilename("JPG, *.jpg", MultiSelect:=True) If IsArray(fName) Then For i = 1 To UBound(fName) Set pict = ActiveSheet.Pictures.Insert(fName(i)) pict.TopLeftCell = ActiveCell pict.Width = ActiveCell.Width pict.Height = ActiveCell.Height ActiveCell.Offset(2, 0).Activate Next i End If End Sub
554 :
名無しさん@そうだ選挙にいこう :2008/03/22(土) 17:36:23
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 CSV、アポストロフィ ExcelからCSVファイルとして保存してWordPadなどで開くと セルの先頭にある'(アポストロフィ)が消えてしまいますが アポストロフィを残したままCSVに出力できないでしょうか?
アポストロフィを先に何か特徴的な文字に置き換えるとかは?
>>554 アポストロフィを残したままCSVに出力する方法を聞くのではなく、
なぜ、アポストロフィを残したままCSVに出力したいのかを書くのが
問題解決の近道ですよ
557 :
名無しさん@そうだ選挙にいこう :2008/03/22(土) 19:04:04
わからないならすっこんでろ
558 :
名無しさん@そうだ選挙にいこう :2008/03/22(土) 19:25:15
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2007試用(自宅)・Excel2000(会社) 自宅と会社でバージョンが異なるため可能であれば両バージョンに対応希望します。 【3 VBAが使えるか .】 いいえ(参考書は所持していますが、、、) 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 Googleにて(Exel 検索した内容を自動コピー) Aのブック内リスト検索し、その検索結果をBのブック内の決められた枠に入力という作業を自動化したいのですが 可能でしょうか?可能であれば教えて頂きたいと思います。 宜しくお願い致します。
ふつうはvlookupつかうけどね
560 :
名無しさん@そうだ選挙にいこう :2008/03/22(土) 20:02:53
561 :
558 :2008/03/22(土) 20:18:58
vlookup検索して見てみました。 後出しになって申し訳ありませんが、 一つのセルに数字を打ち込むと 1、入力された内容でデータシートのオートフィルを実行する。 2、オートフィルされた複数行、複数列の内容をコピーする。 3、別ブックのそれぞれ対応したセルに貼り付ける。 上記を自動化出来ればと考えています。 可能であればご指導お願い致します。
>>561 excelにそういう作業は向いてない。あえてやるとすれば、
「くだもの」列に「りんご」が入力されている行を抽出する場合、
くだもの 一致 番号 ID
りんご 1 1 りんご1
りんご 1 2 りんご2
りんご 1 3 りんご3
「一致」フィールドはその行の「くだもの」フィールドがりんごであれば1、番号はいちばん上からその行までの一致の合計、
IDは「くだもの」フィールド&番号
検索結果を入力したいところに抽出キーとしてりんご1、りんご2……と入るような式をつくり、それを元にVLOOKUPで
抽出結果を表示させる。これでうまくいくはず。
ついでに、あまり表示形式を気にしないのであればピボットテーブルで抽出する方法もある。
564 :
名無しさん@そうだ選挙にいこう :2008/03/22(土) 20:52:57
バカは答えんなよ
565 :
558 :2008/03/22(土) 21:10:19
ご指導ありがとうございます。理想のプログラムを目指して試行錯誤を続けてみます。 ありがとうございました
566 :
名無しさん@そうだ選挙にいこう :2008/03/22(土) 21:22:46
today関数つけたファイルを毎日作成してるんですが 当然日にちが変われば保存してあるファイル内の 日付も変わってしまいます。 自動でその日の日付を表示させたい しかし 保存したファイルはその日付でとまっててほしい。 こんなときはどうすればよいですか?
西 村 博 之 名簿作りで1セルに上のように入力することがあるのですが 全部入力後でもかまいませんし入力の度に1文字打つと1文字スペースをいれて くれるような機能はありませんか? WindowsXp・Excel2003です。
>>567 最後に一括で、VBAでスペースを入れる方法しか思い付かん
>>566 「ファイルを毎日作成してる」というのが毎日、異なるExcelファイルを
作成しているという意味であれば、[Ctrl]+[;]を押す
毎日、日報や売上報告のように既定のフォームのExcelファイルを
作成している(=ひな形を元に作成している)という意味であれば、
上記と同じ内容のマクロを作成して、そのマクロをあてはめたボタン
をフォーム上に配置する
コマンドボタンがデザインモードを切っても押せなくて オブジェクトの書式設定になってしまいます 何が問題でしょうか?
572 :
名無しさん@そうだ選挙にいこう :2008/03/22(土) 23:14:30
>>567 =TRIM(MID(A1,1,1)&" "&MID(A1,2,1)&" "&MID(A1,3,1)&" "&MID(A1,4,1)&" "&MID(A1,5,1)&" "&MID(A1,6,1)&" "&MID(A1,7,1)&" "&MID(A1,8,1))
スマートにいかねーw
8文字の名前がA1に入ってると仮定して
多いならもっと増やして
>>566 VBA使えないならコピーして貼り付けするしかない
じゃなきゃ毎回入力のほうが早いと思う
>>570 ツールボックスを閉じるといけると思う
>>572 回答ありがとうございます
コントロールツールボックスですよね?だめでした・・・
新規で開くとできるのですが以前作ったものだけが押せません
残業表をつくっていますが、 数字がない場合かつ早退した場合のマイナスは空欄表示にしたいのですが、 どうしたらいいでしょうか? IF関数教えてください!
その言葉通りだと =IF(OR(A1="",A1<0),"",A1) 普通は =IF(A1<0,"",A1) 結果は同じ
>>567 何のためにスペースを入れたいのかわからんが、後で検索したいときに不便になるぞ。
見た目の文字幅を名前欄の全てで揃えたいだけなら書式設定でいけるが。
578 :
554 :2008/03/23(日) 16:06:35
>>556 554ですが、別のプログラムで読み込むCSVデータをExcelで作りたいのですが
そのプログラムは先頭文字がアポストロフィのときはその行をコメント行とする、
という作りになっていまして
Excelからコメント行を出力できないかと思って質問しました。
>>578 先頭に「''」と2つ連続して入力してCSV出力する
580 :
554 :2008/03/23(日) 16:37:17
581 :
名無しさん@そうだ選挙にいこう :2008/03/23(日) 19:12:26
列の中の数値をSUMで加算してますが 位置を下へずらすと数値の位置まで変化してしまいます 変えないようにするにはどうしたらいいですか? Office2000です SUM(A1:A2) 1つ下げると SUM(A2:A3) となるので、ならないような移動をしたいです
582 :
名無しさん@そうだ選挙にいこう :2008/03/23(日) 19:36:23
誘導されてきました。 Excel2002FOM出版から出ている模擬試験のCD-ROMを 実行したいのですが 「複数ステップの OLE DB の操作でエラーが発生しました。 各OLE DBの状態の値を確認してください」と エラーメッセージが出て実行できません。 前までは出来ていたのに急にできなくなり、明日試験なので泣きそうです。 どなたか改善方法を宜しくお願いします。
583 :
名無しさん@そうだ選挙にいこう :2008/03/23(日) 20:02:46
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 Googleやヘルプでの検索キーワード 初歩的な質問で申し訳ないのですが A1セルに19 B1セルに03 C1セルに23 と入力されているとして D1セルに2007年3月23日と、日付形式で表示させるには どのようにすれば良いですか?
584 :
508 :2008/03/23(日) 20:06:12
>>583 D1セルに=(2000+A1) & "/" & B1 & "/" & C1
あとは書式で日付形式にする
>>584 ありがとうございます。
早速やってみます。
>>581 =SUM($A$1:$A$2)
のように絶対参照にするか、
量が多ければ置換機能で「=」を「ppp」などに置き換えて、
それを移動orコピーさせた後に「ppp」を「=」に置換
>>582 ぐぐるか、どこかのBBSか、出版者に聞いたほうがいいかも
多分このスレで答えられる人はいないとと思う
>>583 =DATE(A1+88,B1,C1)
とした後書式設定で好きなように変える
ちなみに年は0が1900年。平成元年は1988だから88を足している
587 :
584 :2008/03/23(日) 20:17:00
>>585 584のは2019年になるわw
=(1989+A1) & "/" & B1 & "/" & C1
だわ
588 :
581 :2008/03/23(日) 20:25:56
おまえら平成の計算もできないのかよ。中国人か。
>>586 平成元年は1989年じゃ
>>587 1989を足してどうする
590 :
584 :2008/03/23(日) 20:33:44
シリアル値と思ったんじゃね?
19+1989は2008 足し算もできないのか。。。。。
平成元年は1989年だけど、西暦に変換するときは1988を足すんだよ。 ^ ^ 88と89。ややこしいから注意な。
おいおい、おまえら、今年は平成何年だ?西暦何年だ?しっかりしてくれよ。 いつから2ちゃんねるは平成も知らない中国人のすくつになったんだよ。 今年は平成20年です。 今年は西暦2008年です。 OK?
595 :
名無しさん@そうだ選挙にいこう :2008/03/23(日) 20:46:52
>>583 をよく読め
ヒント 2007-19=1988
598 :
名無しさん@そうだ選挙にいこう :2008/03/23(日) 20:53:58
春になると頭のおかしい奴出てくるってのは本当なんだな
>>592 その足し算はどっから出てきた。元の質問とまったく関係ないだろう。
600 :
587 :2008/03/23(日) 20:57:49
orz
601 :
名無しさん@そうだ選挙にいこう :2008/03/23(日) 20:57:58
それよかたまにはミ糞のEXCEL活用コミュも見てみ 一人おもろい椰子がいるぞw
>>582 には、誰も対応してあげないの?
それにしても、無責任な誘導だな スレ違いだろ。
どうせなら、どこのスレからと誘導元を書けばいいのに。
も り あ が っ て ま い り ま し た
607 :
586 :2008/03/23(日) 21:19:11
酔っぱらいながら書いたらレス多すぎでワロタ
>>589 スーパーハッカーっすか!?
2ちゃんねるってこわ〜い><
計算後に4以上の数字が出た場合に4で表示したいのですが どうしたらいいでしょうか? 教えてください!
>>608 そのセルの表示形式を以下のようにユーザー定義する
[>=4]4;#
先頭の[>=4]という条件を満たしたときは 4 を表示して、
それ以外は数値をそのまま表示する
611 :
名無しさん@そうだ選挙にいこう :2008/03/23(日) 23:53:07
クソみたいな知識自慢はモーグでやってろよチンカス
>>611 まぁ、お子ちゃまね
早くお休みしなさい
613 :
名無しさん@そうだ選挙にいこう :2008/03/24(月) 06:42:46
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 期限管理を行い、期限が間近に迫ったときに警告メッセージを出すようにしたいです。 具体的には。 A列に管理番号、B列に担当者名、C列に期日がyyyy/mm/ddと入力されていて 期日が7日前(1週間前)になったら ファイル起動時に、 「期日が迫っている件名があります。管理表シートを見てください」 とメッセージBOXで表示させるようにしたいです。
>>613 C列に日付がたくさんあるならループで回して、管理番号も表示した方が探しやすいだろうねえ。
Private Sub Workbook_Open()
d = DateDiff("d", Now, Range("C1").Value)
If d = 7 Then MsgBox ("期日が迫っている件名があります。管理表シートを見てください")
End Sub
If d < 7 辺りの方がよくね 調度7日前が日曜とかだと見過ごす可能性も出てくるし
616 :
襲われてgoo! :2008/03/24(月) 22:11:24
【環境】WinXPSP2、Excel2002、VBA可 【内容】メディアカタログファイルを開きたい 【検索ワード】クリップオーガナイザ mstore10.mgc メディアカタログファイル 【詳細】Excelに図・写真などのクリップアートを挿入できるクリップ オーガナイザを使って、Excel文書に1度挿入したことのあるJPEG画像を PC上から消去してしまい、参照先にファイルがない、ということで、 クリップオーガナイザで開けなくなった。 クリップオーガナイザの画面ではファイル名とサムネイル表示のみで、 サムネイルは画像が縮小表示される普通のものではなく、JPEG画像であることを 示すだけのもの。また、消去した画像は、市販の復元ソフトでクラスタスキャンまで かけても復元しないことを確認済み。 消去してしまっても、クリップオーガナイザにファイル名やサムネイルが 表示されるということは、どこかにキャッシュ・データが保存されているかと 探したら C:\Documents and Settings\アカウント名\Application Data \Microsoft\Clip Organizer 内にあるメディアカタログ・ファイル 「mstore10.mgc」を見つけました。クリップオーガナイザが扱うデータを 格納・統括しているファイルのようです。
617 :
襲われてgoo! :2008/03/24(月) 22:11:46
【詳細続き】 Microsoftのサポートページによれば >Mstore10.mgc ファイルには、クリップ オーガナイザへインポート >するクリップについては、プロパティが格納されます。 クリップの >プロパティには、キーワードとカテゴリと縮小プレビューなど、 >情報が含まれます とのこと。 この格納された「縮小プレビュー」に賭けたいのですが、mstore10.mgcという ファイルを開くにはどうすればいいでしょうか?拡張子を変えて適当なアプリから 開こうとしても成功しませんでした。 このメディアカタログファイルから画像を表示できる方法、または他の方法を ご教示願います。
618 :
襲われてgoo! :2008/03/24(月) 22:14:24
【追伸】必ずしも元のJPEG画像を開かなくても構いません。サムネイルでも プレビューのキャッシュでも何でもいいです。VBA使用でもレジストリ編集でも どんな方法でも構いません。よろしくお願いします。
直すとしたらd<=7だろう。メッセージも"あと"&d&"日です"みたいにした方が親切だな
>>617 そのmgcファイルをアップすればどうにか開いてみようと思う
見たことないのでなんともいえないんだよなぁ
エクセル立ち上げる度にあと30回で更新がどうのって出るけど この回数が減ってきて0になったらどうなるの?
立ち上がらなくなる
最後に赤い玉が出ておしまい。
エクセルで下画像の様に置き換えたいのですが、どうやるのでしょうか。
上側青枠が置き換え前で、下側赤枠が置き換え後です。
ttp://pict.or.tp/img/49205.jpg 1,1,東京都
2,2,埼玉県
3,3,神奈川県
1,,
3,,
2,,
2,,
東京都,1,東京都
埼玉県,2,埼玉県
神奈川県,3,神奈川県
東京都,,
神奈川県,,
埼玉県,,
埼玉県,,
のように置き換えたいのですが。
626 :
名無しさん@そうだ選挙にいこう :2008/03/25(火) 21:21:00
【1 OSの種類 .】 Windows XP 【2 Excelのバージョン 】 Excel 2000 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 ある簡単なマクロを作ったのですが、適用させたいブックが多いので できたらマクロが入っているファイルと適用させたい全てのファイルを ひとつのフォルダに入れたりして、一気に適用させたいのですが そう言うことは可能でしょうか?
「マクロを適用させる」ってどういう意味?
マクロを使ってワークシートを書き変えたいってことでは。 まずファイルの一覧を取得、1つずつ開く→処理→保存、を繰り返すように マクロを書き換えればいいと思うよ。
マクロを複数のブックで共有したいってことだろ
【1 OSの種類 .】 Windows XP 【2 Excelのバージョン 】 Excel 2000 【3 VBAが使えるか .】 − 【4 VBAでの回答の可否】 − vlookupで元表から値を持ってきたが、元表をソートしたら、一部のlookupセルが#N/Aになった。 1 aaa 2 bbb 3 ccc を 2 bbb 3 ccc 1 aaa みたいにソート。1でaaaをvlookupしていたセルが#N/A。2,3は問題無し。なんでやねん?
ヘルプに書いてある
634 :
名無しさん@そうだ選挙にいこう :2008/03/25(火) 23:47:04
入力規制でプルダウンリストを作ることはできるのですが、 プルダウンリストの中の仮にAを選ぶと別のセルに自動的にAAと入力されるというように、2つのセルを連動させるにはどうすればよいのでしょうか?
ソートしたときに 参照範囲が変わってしまっていると思われる
質問です。 【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 使えません 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 webページ 普段エクセルを使って数値を入力し、合計等を把握しています このファイルをネット上にてアップロードし、同じように操作をすることは可能でしょうか? 作成したファイルをwebページで保存するじゃダメなんですの・・・・
638 :
632 :2008/03/26(水) 00:37:29
>>633 ,635
-2007のHELP-
既定では、表内の情報を検索する関数は昇順で並べ替えておく必要があります。
ただし、VLOOKUP および HLOOKUP 関数には、表を並べ替えなくても完全に一致
する値を検索するための引数 (引数 : 関数のデータ操作や計算に使用する値。
使用する引数のデータ型は、関数ごとに規定されています。共通して使われる引数は、
数値、文字列、セル参照、セル範囲、名前です。) "範囲" を指定できます。
完全に一致する値を検索するには、引数 "範囲" に FALSE を指定します。
−−−−−−−−−−−−−−−−−
falseを指定したら家の2007ではうまくいった。明日会社の2000で再チャレンジ。
参照範囲は"名前"を使っているので問題無いかと。
>>636 質問の意図がよく分からんのですが
Google Spreadsheetsを使うか、
ftpとかでファイルをup/downするしかないような。
試しに、httpでサーバに置いたxlsを指定したらdownloadされて
オシマイだったよ。
>>638 >既定では、表内の情報を検索する関数は昇順で並べ替えておく必要があります。
その状態でfalseにするのはオススメしない
>>640 自分はいつもFALSEで使ってるよ。なにか問題があるの?
642 :
名無しさん@そうだ選挙にいこう :2008/03/26(水) 08:05:50
634 ?
>>636 「Webページとして保存」→「対話機能を追加する」して発行すると、
ブラウザ(IE)上にExcelのシートが表示されて、計算式もそのまま有効
詳しくは Office 2003 Webコンポーネント で検索してくれ
これ、2007でもあるのかは知らん
>>634 連動したい別のセルにIF関数使えば幸せかも
645 :
名無しさん@そうだ選挙にいこう :2008/03/26(水) 08:53:55
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 Excel ファイルの保存 以前より使用していたExcelファイルの上書き保存が出来なくなりました。 保存しようとするとExcelが落ちます。 <昨日までは保存できていました。今日先ほどから突然不可 発症が突然なので、何が悪いのか見当がつきません。 今からも利用するので、保存できないとマズイ・・・ Officeの修復を試みましたが、修復後も落ちます。 このような状況なのですが、何か参考に出来るような情報がありますでしょうか? ありましたらご教示願います。
646 :
645 :2008/03/26(水) 09:04:12
対象となるファイルは、数式やシートを追加しながら4年ほど利用しています。 <年末にはデータを削除してリセットするが、数式はそのまま利用
とりあえず別名で保存してみて。
648 :
名無しさん@そうだ選挙にいこう :2008/03/26(水) 10:07:06
>>641 並べ替えしてない表からFALSEで数字を拾うと、変な結果が返ってくる事がある
並べ替えしてるならFALSEでも何も問題はない
>>645 HDDに問題があるかもしれない
俺が以前その症状になった後、HDDが死んだ事がある・・
650 :
645 :2008/03/26(水) 12:02:29
>>647 別名もNGです
ファイルをコピーして、そのコピー先のファイルの保存もNG
昨日のバックアップしておいたファイルの保存もNG
しかし昨年利用していた同様のファイルは保存可<Excel自体はOK
ファイル固有の問題のようですが、Microsoftのサイトを見ても保存不可な条件には合致しない。
もう・・・・・・(TT)
>>649 マジですか???
しかしバックアップは外付けHDDだし・・・
とりあえず対策をしておきます。
651 :
名無しさん@そうだ選挙にいこう :2008/03/26(水) 12:09:50
【1 OSの種類 .】 WindowsXP SP2 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 Excel 数式結果の反映 質問です。 以前までは、計算式などを入れてENTERを押すと、 結果がリアルタイムに反映されたのですが、 先日からリアルタイムに反映されなくなってしまいました。 上書き保存などすると反映されるのですが、 以前のように戻すにはどうしたらいいのでしょうか?
652 :
名無しさん@そうだ選挙にいこう :2008/03/26(水) 12:12:46
ツール - 計算方法 - 自動
653 :
6551 :2008/03/26(水) 12:21:53
>>652 解決しました。
ありがとうございます。
お手数お掛けしました。
>>645 OpenofficeやGnumericなど他のソフトで読んでみるとどうですか?
655 :
645 :2008/03/26(水) 14:19:07
Openofficeはインストールしていないので検証のしようがありません
新しいブック作って1枚1枚シートの内容をコピーして移せばいいんじゃね?
657 :
626 :2008/03/26(水) 15:03:49
>>627-630 ありがとうございます。
マクロを使ってワークシートを書き換えたいんですが
複数あるのでフォルダにでも入れて実行−一度に書き換え
がやりたいんです。
もうちょっといじってみます。
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2000SP3 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 複数シート IF 3つのシート(シート1、シート2、シート3)とありまして、それとは別にプリントアウトというシートが あります。 3つのシートは同じフォーマットで、未入力の場合は0になっています。 それぞれのシートでばらばらに入力した場合にまとめてプリントアウトのシートへ 表示させたいのですが、書式を考えてるんですがなかなかできません。 感覚では =IF(OR(シート1!A3)>0,(シート1!A3)),(OR(シート2!A3)>0,(シート2!A3)),(OR(シート3!A3)>0,(シート3!A3)) と0以上の時は表示させて、それ以外は表示しないにしたいのです。 同じセル(A3)で0以外は1つのシートのみに入力されていると考えていただければと思います。 条件を複数あって、1つのセルにそれぞれ判別させる方法がいまいちわかりません・・・・ よろしくお願い致します。
その条件なら =シート1!A3+シート2!A3+シート3!A3 でいいじゃん
>>659 うっ、そうですね・・・難しく考えすぎました。
実はまだ色々と考えていて先ほどの条件で、
間違ってカブって入力された場合のエラーとして表示させようかとも思ったりしたのと、
それぞれのシートごとに入力された時に色別にプリントアウトのシートのセルに色をださせようと思ったり考えてました。
シート1は青、シート2は黄、シート3は赤という感じに・・・
こういうのってできるんでしょうか・・・
とりあえず条件付き書式で、3つの条件をつくってみましたが、、、 青しか表示されませんでした。 ="(シート1!A3)">0 青 ="(シート2!A3)">0 黄 ="(シート3!A3)">0 赤 なんででしょう・・・
A3〜A6、B3〜B6、C3〜C6と シート1〜3まで同じ表を作ってます。 必ず、数値が入っていて、シート別で同じセルでも1つだけ0以外になってます。 カブることは無いのですが。 条件付き書式で上手くいかないんです・・・色々と試していますが。 どなたか、ご存知の方いらっしゃいますでしょうか?
>>658 作業用シートとか作って
a列にシート1、B列にシート2・・とつくって反映させると途中経過も分かって作りやすい&修正しやすいと思う
>>661 先の条件が優先されたと思う
>>662 新しいシート作って
シート1はA3〜A6、B3〜B6、C3〜C6
シート2はA7〜A9、B7〜B9、C7〜C9
シート3はその下・・として、
D列はA列の結果(どのシートが1以上かを数字で判定)
=if(a3>1,1,(a7,1,2,(a11>1,3)))
みたいな作業列を作って、その結果を最終的なシートに反映させるといいかもしれない
これ以上その数式が大きくならないとか色々な制限付きだけど
とりあえず一つのシートにまとめるとものすごくやりやすくなるから、騙されたと思って試してみるといい
【1 OSの種類 .】 Windows2000 【2 Excelのバージョン 】 Excel97 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 [複数 同じ名前 excel 日付] 名前 日付 B 2007/01/01 B 2007/01/02 A 2007/01/03 A 2007/01/04 B 2007/01/05 このように同じ名前が複数回出てくる表があります。(表は不定期に更新されます) このとき、ある名前に対応した日付のうち最新のものを 別のセルに表示させるためには、どのように関数を書けばよろしいでしょうか。 名前 最新 A 2007/01/04 B 2007/01/05
>>665 c2に=IF(A2="a",B2,"")
d2に=IF(A2="b",B2,"")
で「最新」と入力された下に=max(c:c)、その下に=max(d:d)
配列というものを使えば作業列を使わなくても済むハズなんだけど、
勉強不足でワカンネーわ
ネットの通販で買い物をする時に色や個数を選ぶ時のように、 マスをクリックするとたくさんの候補が出てくる機能を何と呼ぶのでしょうか? 名前がわからないので検索できなくて困っています。 よろしくお願いします。
>>668 自己解決しました。ありがとうございました。
>>667 ありがとうございます。
配列 最大値
で調べなおしたところ、参考になる例がありました。
おかげでうまく書くことが出来ました。
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 複数行 オートフィル 複数の行と列をオートフィルで処理?したいのですが やってみると例のように範囲内の元のセルから移動先へのセル数分指定がずれてしまいます 範囲内をそれぞれひとつずつずらいしたいのですがどうすれば良いのでしょうか? 例 ______________ 1| SUM(C19:E19) | 2| SUM(C20:E20)|この範囲を下にオートフィル  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ 3 SUM(C21:E21) 4 SUM(C22:E22)
>>671 まず全部埋めてから、書式で1行おきに非表示にするとか、
行が奇数か偶数か、列がAかBかを判定する式を追加するとか。
>>671 A列の奇数行とB列の偶数行だけに合計を表示する式
=IF(MOD(ROW(),2)=MOD(COLUMN(),2),SUM(C19:E19),"")
これをA1に入れてから、A1からB列の好きな行までガーっとコピーするだけ
675 :
名無しさん@そうだ選挙にいこう :2008/03/28(金) 00:14:05
【1 OSの種類 .】 Windows XP 【2 Excelのバージョン 】 Excel 2007 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 可 B4に"あああ"が入っていればC4を表示、 なければ空欄にしたいんですが、 =IF( SEARCH("*あああ*",B4)>0, C4, "") こうすると、"あああ"が無い場合SEARCHが#VALUE!を返すので、 >0の比較ができなくて、エラーになってしまいます。 何かうまい方法はないでしょうか。
>>671 ん?こうしたいってことじゃないの?
3 SUM(C20:E20)
4 SUM(C21:E21)
INT(ROW()/2)+19で行番号を求めればいいんでね?
>>675 0より大きいかどうかじゃなくて、ISERROR関数でSEARCHの結果がエラーかどうか調べる
678 :
675 :2008/03/28(金) 00:24:58
>677 できました! どうもありがとうございます。
ン数いいよねン数
682 :
671 :2008/03/28(金) 03:14:27
683 :
名無しさん@そうだ選挙にいこう :2008/03/28(金) 17:35:37
ワークシート上に作成したコマンドボタンを削除するには どうすればいいですか?
デザインモードにしてコマンドボタンを選択→delete 切り取りでもいけた気がする
685 :
683 :2008/03/28(金) 18:25:17
686 :
名無しさん@そうだ選挙にいこう :2008/03/28(金) 21:12:38
xpでエクセル2007買いました メニューがめちゃくちゃ見にくく使いにくいです 昔のエクセルのメニューは選択できないんでしょうか?
687 :
名無しさん@そうだ選挙にいこう :2008/03/28(金) 21:21:00
変な質問ですが 素人がVBAを組んだとき 起きうる失敗はどんな事があるでしょうか?
セルに135と打ち込むと2時間15分と表示されるように表示形式を替えたいのですが どのように指定すれば良いでしょうか
【1 OSの種類 .】 Windows2000 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 65歳以上を赤く表示させたい 町内会の名簿なのですが敬老の日用に65歳以上の人の年齢のセルを赤く表示させたいです A B C 1 誕生日 現在 年齢 2 1980/1/1 =TODAY() =B2-A2 (書式設定でユーザー定義:yy) という風に作ってみたのですが条件付書式で年齢のセルが65以上のとき字を赤くするようにしたところ すべての人が赤くなってしまいました どうしたら65歳以上の人がわかりやすく表示できるでしょうか
691 :
名無しさん@そうだ選挙にいこう :2008/03/28(金) 22:23:44
IF
条件付き書式をシリアル値のことを考えながら書く、あるいは =B2-A2でなくDATEDIFなどを使ってちゃんと年齢を計算する。
693 :
名無しさん@そうだ選挙にいこう :2008/03/28(金) 23:11:16
>>600 C2の値が日数になっています。
C2に =DATEDIF(B2,A2,"y")
と入れてみてください。
>>687 自分で自分の作ったウィルスに感染、
HDDに負担かけすぎてPC破損、等
まぁアレだ、外出たら隕石が落ちてくる心配するようなもん
>>689 A1に入ってるとして
=TIME(0,A1,0)
後は書式設定を適当に
ユーザフォーム上に配置したチェックボックスは Me.Controls("CheckBox" & i).Value = .... といった感じでControlsコレクションで取得できますが、シート上に配置したものは Me.OLEObjects("CheckBox" & i).Object.Value = .... では取得できないのですが、どのように指定すればいいんでしょうか?
【1 OSの種類 .】 Windows XP 【2 Excelのバージョン 】 Excel 2007 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 可 例えばA1に =1+1 のような数式が入っていて、その答えをC1に表示させたいのですが C1には関数を入れたくないんです。 つまり、「あるセルの値をまったく任意のセルに転記する」ということが やりたいんですが、なにかうまいやり方はないでしょうか? よろしくお願いします。
>>697 Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Range("c1") = Range("A1")
End Sub
VBA使って良いならこれで良かんべ Sub TST() Range("C1") = Range("A1") End Sub
>>698 >>699 >>700 ありがとうございます。確かにA1の内容がC1に転記されました。
これをもう少し進化させて、ユーザー定義関数にして、例えば
TEST(A1,B1)
という関数をC1に入れると、A1の値がB1に入る、みたいなことは・・・
難しいでしょうか?
非常に回りくどいことをやっている予感・・ 最終的にやりたいことを書いた方がいいと思うよー
>>701 C1には関数いれたくないんじゃないのか。いってることがばらばらだぞ。
>>702 レスありがとうございます。最終的にやりたいことは以下の通りです。
D1に
=COUNTIF(A1:A100,"TEST")
が入っており、TESTという文字列の入ったセルがA列にいくつあるかを数えています。
文字列TESTは日によって増えたり減ったりします。
この数が、ある特定の日(例えば毎月末)にいくつなのかを保存しておきたいんです。
現状のままだと、3/31にTESTの文字列がA列に10個あった場合、D1には
「10」と表示されますが、4/1に11個に増えるとD1もやっぱり「11」になります。
そうではなく、3/31時点の「10」という値を、D1に限らず他のセルに残して
おきたいんです。
もしうまいやり方があれば、ご教示いただけると嬉しいです。
702に一票 よくある間違った質問方法の予感
>>703 すみません、例えが悪かったです。
C1というのはあくまで例で、要は
関数が入っていないセルに別のセルの値を
転記したかったんです。
どうにもうまいやり方が出てこなくて、煮詰まってます・・・。
>>704 だったら4月から3月まで毎月末のTESTの数を数える式を12個つくればいいじゃないか
終了
>>707 レスありがとうございます。
>だったら4月から3月まで毎月末のTESTの数を数える式を12個つくればいいじゃないか
おっしゃる通りなんですが、それがうまくいかずに悩んでいます。
例えば4月末時点のTESTの数を数える式を作っても、5/1にTESTが1個増えたら
式の答えも1個増えてしまうという。
709 :
名無しさん@そうだ選挙にいこう :2008/03/29(土) 11:59:28
わかったけど終了宣言でちゃったから もうだめだね。
元の表に「入力日」も入力しておいて、その「入力日以前」と「TEST」が 一致するデータ件数を数えるのが常道
>>706 Sub Macro1()
Range("D65536").End(xlUp).Offset(1, 0).Select
ActiveCell.FormulaR1C1 = "=TODAY()"
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Selection.Offset(0, 1).Select
Application.CutCopyMode = False
Range("D1").Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
End Sub
これでD1の下に今日の日付と隣に個数をコピーできる。、ボタンにでも登録して使えばいいと思う
最初から登録した日付も入力するようにすれば、関数の方が早いけど
>>710 レスありがとうございます。
うーん、やっぱり入力日を押さえておくのが確実で簡単ですよね。
ただ、例えばA10に入っているTESTが4/30には「TEST2」になったり、
5/1にはまた「TEST」に戻ったりするので、入力日という捕らえ方自体が
けっこう難しいです。
自分でも色々と考えてみます。もしいいやり方があれば、ぜひとも
お願いします・・・。
SEARCH(サーチ)関数
間違えた 文字列が変動してもある一定は必ず残る・・って場合ならSEARCH関数 全く別のものになるなら、D1の式を=COUNTIF(A1:A100,E1) にしてE1に探したい言葉を入れるぐらいしかなさそう
>>711 ありがとうございます!あとは月末ごとの値をおさえるようにすれば
やりたいことが実現します。
教えていただいたマクロを元に、自分で試行錯誤してみます。
ありがとうございました!
>>713 >>714 レスありがとうございます。文字列が別のものになるか、というよりは
日々変動する特定文字列の数を、ポイントごとに保存しておきたいのです。
色々とお手数おかけしました。ありがとうございます。
>>716 Sub hoge()
CntTxt = 0
For Each r In Range("a1:a100")
If r.Value = "TEST" Then CntTxt = CntTxt + 1
Next
CurRow = Range("c65536").End(xlUp).Row + 1
Cells(CurRow, 3) = Date
Cells(CurRow, 4) = CntTxt
End Sub
すみません 【1 OSの種類 .】 Windows XP 【2 Excelのバージョン 】 Excel 2003 【3 VBAが使えるか .】 ちょっと 【4 VBAでの回答の可否】 可 sheet1のA2コピーsheet2のA1にペースト sheet1のU2コピーsheet2のB1にペースト sheet1のA8コピーsheet2のA2にペースト sheet1のU8コピーsheet2のB2にペースト … sheet1のA列6i-2行をコピーsheet2のA列i行にペースト sheet1のU列6i-2行をコピーsheet2のB列i行にペースト 300回繰り返し マクロの組み方をお願いします。
Sub hoge() For i = 1 To 300 Sheets(2).Cells(i, 1) = Sheets(1).Cells(i * 6 - 4, 1) Sheets(2).Cells(i, 2) = Sheets(1).Cells(i * 6 - 4, 21) Next End Sub
ありがとうございます。
721 :
名無しさん@そうだ選挙にいこう :2008/03/29(土) 17:05:00
ウィルスとかやめてー
>>688 これが3000円で売れたらおいしいな。買ってしまいそうだけど。
まさにピンチはチャンス。
EXCELも本当になんでもできるようになってるんだなあ。
>>712 データの変更履歴を全部残すようにすべきじゃないの?
例
入力日 データ 件数
4/29 TEST 1
4/30 TEST2 1
5/01 TEST2 −1
5/01 TEST2 1
まあ、Workbook_BeforeCloseあたりに履歴を残すマクロを書くのが無難だろうな。 いちいち閉じない可能性がある場合はタイマーセット。 セル関数だけでは、不可能ではないけどちょっと無茶だと思う。
726 :
724 :2008/03/29(土) 22:36:04
直感だけど
>>712 のやりたいことって結局在庫管理なんじゃないかな。
違う?
【1 OSの種類 .】 WindowsXP SP3 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 セル、データベース セルAの列にIDをいれて、セルBの列に名前を入れてます。 で、セルBの列を別シートでデータの入力規制を使ってコンボボックスで表示させています。 コンボボックスで名前を選んだ時、その横のセルに対応するIDを表示させたいのですが、、、 回答宜しくお願いします。
LOOKUP, VLOOKUPでいんじゃないの
VLOOKUPだと右側の検索ができない けどA列をC列にコピーなり式いれて反映させるなりで使えなくもない 普通はLOOKUPだな
LOOKUPは検索キーがなくてもエラーが帰らないからつかいずらい ダミーの再掲列つくってVLOOKUPがおすすめ
あんまり使ったことないんで知らなかった スマン
732 :
質問 :2008/03/30(日) 13:51:46
【1 OSの種類 .】 WindowsXPSP2 【2 Excelのバージョン 】 Excel2007 【3 VBAが使えるか .】 コードを与えてもらったら少し改造できる程度 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 csv マクロ sheet ファイル名 1つのフォルダにある複数のcsvのファイルを1つのexcelのファイルにまとめたいと思っています。 少ない量でしたら外部データの読み込みなどをつかったりファイルを開いてコピペでもいいのですが 大量の場合マクロを使った方が良いかなとおもい質問です 箇条書きにしますと 1、csvファイルの読み込み 2、それぞれのファイルごとにシートを分ける 3、そのシート名に元のcsvのファイル名をいれる(これは無くても可) というところなんですが、上記の検索キーワードで探したところその逆はあるのですが (シートごとにcsvで保存)上記のは見つかりませんでした どなたか回答よろしくお願いします。
質問です状況説明が長文になってしまいました2chの規則で1回ではカキコミできないようなので 2連続でカキコミしますのでよろしくお願い致しますm(__)m 【質問カキコの@】 【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2002 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 可(自分はマクロ全くわかりません。丸投げ希望です) データを渡すことは可能ですがメールにてお願いしたいです 【5 検索キーワード 】 複数シート 1枚目のシートは1行が100文字〜200文字(約2500行) 「整理番号」「タイトル」「サブタイトル」 整理番号とタイトルはそれぞれA列B列として綺麗に並んでいますが サブタイトルはC列にする方法がわからないのでC〜E列またはC〜G列とかになっています 2枚目のシートは1行が300〜500文字(約3000行)くらいはあるように思います 「整理番号」「整理番号に対応したリンク先のアドレス」 整理番号の部分はA列に綺麗に収まっていますが アドレス部分はB〜ALくらいに跨っています 最終目標は2枚のシートを1枚にして一覧表を作りです 現在区切りとして「整理番号」と「タイトル」の間に「<title>」とか「<br>」とか HTMLファイルのタグが入っています 元々1000枚以上のテキストファイルを必要な部分だけgrepして作った2枚のテキストファイルです
734 :
733です :2008/03/30(日) 14:24:22
【質問カキコのA】 エクセル単体ではファイルオープンできなかったです アドイン「ボタン天国」の「テキストを分割して読み込ませる」機能でエクセルにセミコロン区切りとして読み込ませました それからは読み込み、文字の削除や置換、保存などもエクセル単体で出来ています 現在の状況:シートをコピーしようとしても「コピー領域と貼り付け領域の形が違うため情報を貼り付ける事が出来ません」 「・ひとつのセルをクリックして貼り付けてみて下さい」 「・貼り付けもとの形を確かめ適切な範囲を選択した後、貼り付けてみて下さい」 というエクセルのエラーが出ます 当方1週間前まで「セル」「シート」「BOOK」という単語の意味も知らなかった全くの初心者で困っています 取り合えずエクセルの解説本を2冊買ってきましたが 「貼り付けで簡単にまとめる」と記載されています その前に形を整えたいのですが「簡単、簡単」の連呼でよくわかりません (本屋さんで解説本を選ぶときはこの「簡単、簡単」の言葉でこの2冊を購入してしまいましたorz) 1枚目2枚目ともにA列(整理番号)B列(タイトルその他)の2列にすればいいのでしょうか? 書式とかの辺りも読んで見ているのですが全くわかりません>< 現状では貼り付けは不可能なようなので形を整えて貼り付けてみたいです 状況説明で長文申し訳ございませんm(__)m Q.@ 今、B〜ALまである横長〜い文字列をB列に収めるにはどうすればいいのでしょうか? Q.A 整理番号以外をB列として2枚ともにA、B列にすれば文字数に大きな違いがあっても1枚にする事はかのうなのでしょうか? 何をどうすれば前進できるのかわからない状況です どなたかよろしくお願い致します
顔文字は使わないほうがいい、ふざけてるorバカにしてるととられる
736 :
733 :2008/03/30(日) 14:39:06
>>735 申し訳ないです
当方真面目に質問しています
>>734 最後の五行しか読んでないけど
1は
=CONCATENATE(B1,C1,D1)
もしくは
=B1&C1&D1
をALまで繰り返す。
引数が多いとか言われたらB1-F1、G1-AL1、をそれぞれAM1、AN1、などにまとめて更にその二つを=am1&an1等で結合させる
738 :
733 :2008/03/30(日) 14:50:36
>>737 さん
書式に CONCATENATE ですね
詳しくありがとうございます
割れ厨乙
740 :
733 :2008/03/30(日) 16:03:05
>>737 さん
733ですできました!
関数の挿入する操作もわからなかったので少々手間取りましたが
見事に1列にまとめれました
ありがとうございました
【1 OSの種類 .】 WindowsXPSP2 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 VBAでしかできないのであれば答えてくれるとありがたいです 【5 検索キーワード 】 行の挿入 複数 番号をソートした後の作業で例えば 1 5 8 9 10 となっているのを 1 空白 空白 空白 5 空白 空白 8 9 10 のように番号が抜けている部分だけ空白行を挿入する方法はありますか 抜けている部分は規則的な抜け方をしているわけでなくランダムです それともの地道にAlt+I+Rとか行の右クリック+Iとか行複数選択→右クリック+Iとやっていく しかないのでしょうか。 よろしくおねがいします。
742 :
名無しさん@そうだ選挙にいこう :2008/03/31(月) 11:36:51
すいません。教えてください。 エクセルの行の設定がA,B,C,D…でなく1,2,3,4,…になってしまってます。 これを直すのはどうしたらよいのでしょうか? よろしくお願いします。
743 :
741 :2008/03/31(月) 11:41:15
すいません VLOOKUPで自己解決しました
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2002 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 桁合わせ、桁あわせ、ボックス選択? A列、行頭にある1桁から4桁の整理番号を5桁に統一させる方法教えて下さい 現在の状況 1 10 100 1000 希望する結果 00001 00010 00100 01000 よろしくお願い致します
>>742 列の事なら、ツール→オプション→全般→R1C1参照のチェキを外す
>>744 セルの書式設定を 00000
746 :
名無しさん@そうだ選挙にいこう :2008/03/31(月) 14:47:18
▼━質問テンプレ (出来れば使ってね) ━━━━━━━━━━━━ 【1 OSの種類 .】 Windows Vista ホームプレミアム 【2 Excelのバージョン 】 Excel2008 Ver12.0 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 IEで見たサイトは履歴として残りますよね!? その履歴やキャッシュなどを削除してもExcelのある機能を使えば閲覧したWebの履歴が見れると聞きました。 どのような方法をすれば見ることができますか?教えてください。
>>745 さん
レスありがとうございます
セルの書式わからないので
「セルの書式設定 00000」でぐぐってみましたが
わかりませんでした
お時間のあるときにでも設定教えて下さい
なんか怖いので 嫌です
>>748 は
>>746 宛ね
>>747 >>745 じゃないけど、ユーザー定義選んでから、種類(T)とかいてるトコのすぐ下のボックスに入力
元々入ってる標準だとか>-;等の記号は消してしまってもかまわない
>>746 Excel2008......VistaでMac版Excel2008を使う裏技を教えてほしい
>>749 さん
747です
アドバイスありがとうございます
A列を左クリックで選んぶ
右クリック→セルの書式設定(F)→ユーザー定義
種類(T)の下にある「G/標準」を消す
そこに「00000」と記入
「OK」クリック
何度やっても反映されなくてツールバーの方でやってみたり
ロックのチェックをはずしたり、チェックしたりしてるのですが
5桁になってくれません
それでもう一度確認しようとセルの書式設定を見ると
必ず「その他」「C.A.P」に変わっています
エクセルの設定でしょうか?
「OK」をクリックした後に何かやるべき事はありますか?
何度も申し訳ないです
>>752 C.A.P.は5桁の数値からなるイタリアの郵便番号のこと
いずれにしろ、操作方法は間違っていないので、
Excelを再起動→白紙シートのセル範囲を選択して前記の表示形式を設定→
数値を入力してみる
それでうまくいったら、前のシートの作り方自体に問題があったということ
それでもうまくいかなかったら、それ以外の問題だと、切り分けができる
最初の書式が文字列だと、書式を変えただけじゃ反映されないyo
>>753 さん
>>754 さん
752です
アドバイスありがとうございます
ファイルはテキストファイルSJISです
そのあたりなのかもしれないですね
XLSで保存して後ほどタブ形式のテキストに直せるのかわからないので
テキストのままやってました
ご指導ありがとうございます
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 ちょっと 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 if A列に数値もしくはブランクとしての「-」を入力していて, A列>0なら「↑」,負なら「↓」,A列が「-」なら「-」を返したいのですが, =IF(A1>0,"↑",IF(A1<0,"↓","-")) としても,A列が「-」でも「↑」となってしまいます。 =IF(A1="-","-",IF(A1<0,"↓","↑")) とすると,「引数が多い」とエラーがでます。 よい方法を教えてください。
>>757 > =IF(A1="-","-",IF(A1<0,"↓","↑"))
> とすると,「引数が多い」とエラーがでます。
でません。
あと、0が入力された時が想定されていないが?
0は"↓"、数値以外全部"-"とすれば =IF(ISNUMBER(A1),IF(A1>0,"↑","↓"),"-")
>>756 テキストファイルは枠線や書式設定その他全く保存することが出来ない
保存されるのは文字列だけ(式は数式ではなく計算結果)
普通にエクセルで保存したほうがいいと思う
757です。ありがとうございます。
0の処理は失礼しました。
>>758 「引数が多い」は,出るときと出ないときがあるのでしょうかね?
>>761 違う数式を入れている以外の可能性は、無い
もし出たら=IF(A1="-","-",IF(A1<0,"↓","↑")) とよく見比べてみるといい
カンマ「,」が多かったりするはず
>>760 さん
>>756 です
わかりやすく説明していただき私にも理解できましたありがとうございます
引き続き違う質問してもよいでしょうか?
テキストに拘って続行していたのは後ほど抜粋した部分を
HTMLファイルにしてHPの参考データとして使いたかったんです
HTMLじゃなくてもエクセル形式のままでHPにアップすることは可能でしょうか?
どちらにしても行頭の数字は修正したいのでエクセル形式で保存しなおして作業は進めてみたいです
ありがとうございました
756です A列は数字の後ろに.txtと文字が入っているのですが この.txtの部分はB列にしたほうがいいですか? xlsで保存してそして開いて試してるんですけど 5桁にならなくてセルの設定もC.A.Pのままです はてなで見つけた先人のマクロを使わせていただいたら A1,B1,C1,D1,E1と00000となった その書式をA列にコピーしたら全部が消えちゃう 文字が入っていると不味いのかな? ちょっと頭冷やしてから再テストしてみます
>>763 ファイル→webページとして保存
ただこれはあんまり評判よくないらしい
・・折角なのでやってみたが、確かにタグだらけで使い心地は悪そう
フリーソフトに色々あるから、ベクター辺りで探してみては?
>>765 さん
753です
レスありがとうございます
本当はエクセルかアクセスで全部やってみたいんだけど
私にはスキルが無いので他の方法も模索してみます
ありがとうございました
縦軸が体重、横軸が日付で、体重測定のグラフを折れ線グラフでつけています。 毎日測定していれば問題ないのですが、日にちがあいてしまうと、連続する折れ線グラフでは なくなってしまいます。 測定していない日は前日と後日の値を直線で結びたいのですが、方法を教えてください。
Public Const dx = 101 Public Const dy = 79 Public Const max = dx * dy Public Sub shinryaku() Application.ScreenUpdating = True Randomize Dim turn As Long Dim kariv As Double Dim pow(0 To max) As Double Do For i = 0 To max If cells(i / dy + 1, i Mod dx + 1).Interior.ColorIndex <> RGB(0, 0, 0) Then pow(i) = Rnd() End If Next i For j = 0 To dy - 1 For i = 0 To dx - 1 kariv = pow(j * dx + i)
>>767 グラフを選択してツール>オプション>「グラフ」タブ>「補完してプロットする」をチェック。
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2002 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 (出来れば)否 【5 検索キーワード 】 配列数式 連続する2行の積を合計する数式のアイディアがあれば教えてください。 配列数式を使ってやろうとしましたが出来ませんでした。 既に下記のような数字が入っている状態で、 100 2 300 4 500 6 700 8 : 次のような計算結果を出す数式。 (行数が限りなく大きくなるため、個別に計算するのは現実的ではありません。) 100*2 +300*4 +500*6 +700*8 +・・・ 宜しくお願い致します。
1つのセルに使える文字数や関数の数は決まってる筈 個別に出せないなら、積分でも使うしかないかな 残念ながら俺はもう忘れた
If cells(i + 2, j + 2).Interior.ColorIndex <> RGB(0, 0, 0) Then
If i - 1 >= 0 And cells(i + 1, j + 2).Interior.ColorIndex <> RGB(0, 0, 0) And kariv < pow((j + 1) * dy + i) Then
kariv = pow(j * dx + i - 1)
cells(max / (j + 1) + 2, (max Mod (i + 1)) + 2).Interior.ColorIndex = cells(max / (j + 1) + 2, (max Mod (i + 1)) + 2).Interior.ColorIndex
End If
If i + 1 < dx And cells(i + 3, j + 2).Interior.ColorIndex <> RGB(0, 0, 0) And kariv < pow((j + 1) * dy + i + 2) Then
kariv = pow(j * dx + i + 1)
cells(max / (j + 1) + 2, (max Mod (i + 1)) + 2).Interior.ColorIndex = cells(max / (j + 1) + 3, (max Mod (i + 1)) + 2).Interior.ColorIndex
End If
If j - 1 >= 0 And cells(i + 2, j + 1).Interior.ColorIndex <> RGB(0, 0, 0) And kariv < pow(j * dy + i + 1) Then
kariv = pow((j - 1) * dx + i)
cells(max / (j + 1) + 2, (max Mod (i + 1)) + 2).Interior.ColorIndex = cells(max / (j + 1) + 2, (max Mod (i + 1)) + 1).Interior.ColorIndex
End If
If j + 1 < dy And cells(i + 2, j + 3).Interior.ColorIndex <> RGB(0, 0, 0) And kariv < pow((j + 2) * dy + i + 1) Then
kariv = pow((j + 1) * dx + i)
cells(max / (j + 1) + 2, (max Mod (i + 1)) + 2).Interior.ColorIndex = cells(max / (j + 1) + 2, (max Mod (i + 1)) + 3).Interior.ColorIndex
End If
End If
Next i
Next j
turn = turn + 1
cells(105, 62) = turn
Loop
End Sub
>>769 の続きです。
>>770 即答ありがとうございます。
ただ、対象のグラフを選択してやってみたところ、補完してプロットするが灰色になっており、選択できません。
対応方法わかるでしょうか?
>>771 A列の1行目から10行目までの場合です。行番号は適切なものにしてください。
=SUM((A1:A9)*(MOD(ROW(A1:A9),2)=1)*(A2:A10)*(MOD(ROW(A2:A10),2)=0))
を、Shift+Ctrl+Enterで配列数式として入力してください。
・左と右で行数を1つずらしていること
・行数の奇数・偶数判定をしていること が、ポイントでしょうか。
776 :
名無しさん@そうだ選挙にいこう :2008/04/01(火) 06:48:21
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 はい 【5 検索キーワード 】 MsgBox 日付 工事進捗管理のファイルを作っているのですが 「件名一覧」というシートがあって、A列には工事件名が、B以降には担当者他色々な情報が記入されてます。 「件名一覧」シートのL列(L2以降)に工事納期の日付がyyyy/mm/ddで記入されています。 「件名一覧」シートのM列には"工事進行中"、'工事完了"、"工事中止"の3つのいずれかが記入されています。 工事の残り日数が30日以下で、なおかつM列が"工事進行中"の場合において ファイルを開いたときに「納期間近の工事があります」とメッセージボックスで警告を鳴らすようにしたいのですが どんな感じにすれば良いでしょうか? シートは500列ぐらいを想定してます。
>>778 ライフゲームか。懐かしいな。
◆致命的なミス
配列が0からなのか1からなのか混乱してる。
◆警告
ColorIndexとRGBは比較しない方がいい。
maxは変数名に使わない方がいい。
◆進言
Excel VBAに移植するんなら、2次元配列を使うよう修正した方が効率がいいぞ。
最初はもっと小さい地図で動作を確認すべし。
最初は色じゃなくて直接セルに数字を入れて確認すべし。その方がソースが見やすくなり、ミスも見つけやすい。
ScreenUpdatingはTrueのままにしない方がいい。ループの終わりで一瞬だけTrueにした方が動作が速くなる。
Do
Application.ScreenUpdating = False
(処理)
Application.ScreenUpdating = True
Loop
780 :
779 :2008/04/01(火) 09:48:27
>>778 すまん。よく見たら根本的にアルゴリズムが間違ってる。
配列befとaftはどこ行った。
元のプログラムをもうちょっとよく研究しろ。
781 :
名無しさん@そうだ選挙にいこう :2008/04/01(火) 10:01:31
うわあ・・・
782 :
774 :2008/04/01(火) 10:11:37
事故解決しました。
>>770 さん、ありがとうございました。
Public Const dx As Integer = 101 '★マップの横幅を指定 Public Const dy As Integer = 79 '★マップの縦幅を指定 Sub shinryaku() Dim pow(dx, dy) As Single 'その位置のセルの強さ。何色かは無関係。 Dim bef(dx, dy) As Long '1ターン前の状態を保持。現ターンの計算時に(ry Dim aft(dx, dy) As Long 'その位置のセルが何色か。 Dim x As Integer, y As Integer Dim kari As Long, kariv As Single Randomize For x = 0 To dx - 1 For y = 0 To dy - 1 aft(x, y) = Cells(y + 1, x + 1).Interior.ColorIndex bef(x, y) = aft(x, y) Next y Next x '銭湯開始 Do Application.ScreenUpdating = False For x = 1 To dx - 2 For y = 1 To dy - 2 If bef(x, y) <> aft(x, y) Then Cells(y + 1, x + 1).Interior.ColorIndex = aft(x, y) bef(x, y) = aft(x, y) End If Next y Next x '外壁以外の各セルに、ランダムで強さを設定 For x = 1 To dx - 2 For y = 1 To dy - 2 If bef(x, y) <> 1 Then pow(x, y) = Rnd() Next y Next x
'戦闘結果算出 For x = 1 To dx - 2 For y = 1 To dy - 2 kari = bef(x, y): kariv = pow(x, y) If bef(x, y) <> 1 Then If (bef(x - 1, y) <> 1) And (kariv < pow(x - 1, y)) Then '左と比較 kari = bef(x - 1, y): kariv = pow(x - 1, y) End If If (bef(x + 1, y) <> 1) And (kariv < pow(x + 1, y)) Then '右と比較 kari = bef(x + 1, y): kariv = pow(x + 1, y) End If If (bef(x, y - 1) <> 1) And (kariv < pow(x, y - 1)) Then '上と比較 kari = bef(x, y - 1): kariv = pow(x, y - 1) End If If (bef(x, y + 1) <> 1) And (kariv < pow(x, y + 1)) Then '下と比較 kari = bef(x, y + 1): kariv = pow(x, y + 1) End If End If aft(x, y) = kari '中央と上下左右の5セルのうち、一番強かった勢力になる Next y Next x turn = turn + 1 Cells(dy + 1, dx + 1) = turn Application.ScreenUpdating = True Loop End Sub
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2002 【3 VBAが使えるか .】いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 ソート、並び替え、並換え、行の入れ替え、行の入れ換え こんにちは先週からお伺いさせて頂いてます766です お手数お掛けして恐縮ですがまたお願いします 2つのテキストを結合させ作ったシートです A列は整理番号ですが各数字で2つずつ(もしくは2つ以上)あります ところどころ抜けていたり数字が1つだけの箇所があります 同じ整理番号を持つ違う行と連続させ同じ整理番号が2つづつ続くようにするのが目標です (2つセット以外は削除したいんです) ソートして色づけ(削除は手作業)の方法か またはソートして整理番号が2つ連続しない箇所は削除する方法をアドバイスお願いします (ありえないと思いますがA列の整理番号が連続していても3つ以上並ぶ箇所があれば削除対象です) 現状:1,1,2,3,3,4,4,5,8,8,9・・・・・ 目標:1,1,3,3,4,4,8,8・・・・・ 手作業でざっと取り払いましたがまだまだ残っていそうな感じです 色づけ、または連続していない箇所を削除のアドバイスお願いします
A列にソートされたデータが入っているとして、B列に =COUNTIF(A:A,A1)=2 で、2個の物だけがTRUEになるから、オートフィルタ
>>786 さん
お世話になります785です
教えて頂いた関数をただ今確認しましたところA列に青色の枠が出来ました
手元のテキストファイルは文字列から数値へ変更できないようなので
フィルターはかかっていなかったです
A列を数値として認識させる方法は今のところわからないです
先日ここでテキストファイルは機能を保存させれないらしいとお聞きしたので
読み込んだテキストをXLSで保存してみましたが
機能を追加保存させることはできませんでした
タイトルとして認識してる場合、手作業しかないでしょうか?
何度もすいません申し訳ないです
後出し条件には興味ありません
>>787 csvだろうがtxtだろうが、ワークシート関数は保存できないだけで結果はちゃんと出る。
作業列の1行目に
=COUNTIF(A:A,A1)=2
と入れてコピーしたあと、2行目以降にペーストするだけなんだが、やってみたか?
最終的に結果をテキストファイルで書き出したいんじゃないの?
数字を数値として認識させるには、全体をコピーして同じ場所に貼り付け。 けど、同じ物がいくつあるか数えるだけなら数値である必要はないと思うんだが。
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 下図のようにセルを半分だけ下方にずらしたいのですがやり方がわかりません。 やり方・検索ワードを教えてください。 ━━━┫ ┃ ┣━━━╋ ━━━┫ ┃ ┣━━━╋ ━━━┫ ┃ ┣━━━╋ ━━━┫ ┃
ずれてしまいましたので訂正します。 ━━━┫ ┃ ┣━━━╋ ━━━┫ ┃ ┣━━━╋ ━━━┫ ┃ ┣━━━╋ ━━━┫ ┃
むり セルの結合で地道に2つずつ繋げるとかでできないことはないけど
>>789 さん
ヒントありがとうございます
B列に挿入→B列に空の列が出来る→A列コピー→B列に貼り付け
B1セルに=COUNTIF(A:A,A1)=2
新しいページを開く→元のシートに戻って編集コピー→Book2に移動→編集貼り付け
結果:B1セルに #PER!
シート全体が文字化け状態
この症状はエクセルでソートはあきらめたほうがいいですか?
手作業に限界を感じてエクセルにチャレンジしているのですが
早くも挫折しそうです
>>791 さん
数値でなくてもいいってことは貼り付け先のBook2シートをSjisに変更できたら解決するってことなのでしょうか?
ちょっと所用で出かけなくてはいけないので電車の中でエクセルの本をもっかい読んできます
みなさん本当にありがとうございました
文字列の後に数字があるんだけど 例)12R15 この場合最後の15だけ削る関数ってどうやるの?
>>797 元のデータ次第
残す文字列は必ず3桁と決まっているのか
削除する数字は必ず2桁と決まっているのか etc
末尾の数字の桁は1桁から3桁です(1〜999) 頭の桁も決まってないです あと数字だけのセルは数字ごと削りたい 例) R25 12S125 1R3L4 54 こんな感じ
後で条件を変えられたら溜まらんので、799を言い換えると セルの値を後ろから見て、1〜3字の数字だけを取り除く でOK? ※セルの最後は必ず数字で終わる前提?
セルの最後は数字です ただ何も入ってないセルもあります R25 →R 12S125 →12S 1R3L4 →1R3L4 54(数字だけ)→ (空のセル)→ こうしたい
>>801 1R3L4 →1R3L
じゃないの??
これでどうだ =IF(ISNUMBER(RIGHT(A1,3)+0), IF(LEN(A1)<3,"",LEFT(A1,LEN(A1)-3)),IF(ISNUMBER(RIGHT(A1,2)+0), LEFT(A1,LEN(A1)-2),IF(ISNUMBER(RIGHT(A1,1)+0), LEFT(A1,LEN(A1)-1),IF(A1="","",A1))))
▼━質問テンプレ (出来れば使ってね) ━━━━━━━━━━━━ 【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 OpenOFいcえ 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 質問です。 山田太郎 53 田中賢治 32 鹿島太郎 21 一宮史郎 19 というものの中から太郎の数字だけを足すにはどうしたらいいでしょうか? 初めてなもので色々と初心者用のページを見て回ったのですが、 大抵は「山田太郎」でフィルタをかけたりと、冒頭の文字を無視出来ないやり方でした。 よろしくお願いします。
ありがとうございます。 誘導先で質問してきます。 スレ汚し失礼しました。
807 :
名無しさん@そうだ選挙にいこう :2008/04/01(火) 22:01:22
▼━質問テンプレ (出来れば使ってね) ━━━━━━━━━━━━ 【1 OSの種類 .】 Vista 【2 Excelのバージョン 】 Excel2007 【3 VBAが使えるか .】 かじりたて 【4 VBAでの回答の可否】 可 アクティブでないシートのB3からD3までにセルを挿入(下方向にシフト)するやり方を教えて下さい。 マクロが使いたくてマクロの記録でやってみたのですが、 そうすると当たり前ですが一度そのシートを選択しなければできません。 できればそのシートを選択せずにやりたいので、お願いします。
>>807 アクティブでないシートをSheet2と仮定。
Sheets("Sheet2").Range("B3:D3").Insert Shift:=xlDown
>>808 できました!セル挿入すると上のセルに影響されちゃうんですね...(ボールドとか)
本当に助かりました。ありがとうございます!
>>799 left、right、、isnumberかン数とifを混ぜると幸せに
778です。
>>779 >>780 >>783 >>784 ありがとうございます。
befとaftは後半の2重for文で、隣のセルが強いときにセルの色を変えると思ったので、
なくてもできると思ってました。
ホント漏れって馬鹿orz
812 :
771 :2008/04/02(水) 01:08:46
>>775 素晴らしいです。
どうもありがとうございます!
Excel(2003)でブラウザ上のデータを貼り付けるときに、 テキスト形式で貼り付ける簡単な方法はありますか? 今は、右クリックして「形式を選択して貼り付け」で やっていますが、数が多いときはかなりめんどう。 ショートカットキーや設定変更方法などがあったらいいのに・・
814 :
776 :2008/04/02(水) 04:15:48
>>777 シートを指定するにはどうすれば良いですか?
815 :
776 :2008/04/02(水) 05:31:36
質問の内容を変えます。
「件名一覧」というシートのN列(N2〜N501)に
関数で計算させた数値が記入されています。
N列に30以下の数値がある場合、ファイルを開いたときに
警告メッセージ「納期間近件名あり」を出すようにするには、どうすれば良いですか?
>>613 とその周辺の回答を見たけれど
うまくいきません。シートを指定するには。
初心者ですみません。よろしくお願いします。
>>810 数字も文字列っぽいので、だとすればISNUMBERは意味がない。
>>815 マクロの記録でシートを選択すれば分かる
selection〜を使う
>816 ISNUMBERは使うだろ→>803 >817 SELECTIONは使わんだろ >815 Private Sub Workbook_Open() For Each r In Sheets("件名一覧").Range("n2:n501") If r.Value <= 30 Then MsgBox ("納期間近件名あり") Sheets("件名一覧").Activate r.Select Exit For End If Next End Sub
819 :
名無しさん@そうだ選挙にいこう :2008/04/02(水) 17:48:13
なんでもいいからエクセルでできるすごいことおしえて
821 :
名無しさん@そうだ選挙にいこう :2008/04/02(水) 20:47:52
2ちゃんカキコもExcelも全くの初心者ですがお教え下さい。 例えば、あるひとつのセルに[10][30][ 50]の内のどれかを入力すると隣のセルに[上] [20][40][60]のどれかを入力すると隣セルに「下」と表示させたいのですが、関数だとどういう式で良いのでしょうか?
A1入力するとする =IF(OR(A1=10,A1=30,A1=50),"上",IF(OR(A1=20,A1=40,A1=60),"下","中")) 例外は中と表示させてみたが嫌なら別の文字なり、"中"→""に変えるなり
823 :
名無しさん@そうだ選挙にいこう :2008/04/02(水) 21:00:07
Private Sub CommandButton1_Click() Dim r As Object For Each r In Range("a1:iv65536") If r.Value = "" Then r.Value = "aaaaaaaaaaaaaaaaaaaaaaaaaaaa" End If Next End Sub
826 :
名無しさん@そうだ選挙にいこう :2008/04/02(水) 22:38:46
エクセルやワード(2003)の使い方が、なるべく図入りで解説されている 参考書的なもので良いのを教えてほしいのですが・・・
827 :
名無しさん@そうだ選挙にいこう :2008/04/02(水) 23:48:42
【3 VBAが使えるか .】 はい・いいえ 上の"使えるか"はどのレベルのことができたら"はい"ですか?
>>827 エディターの起動方法がわかってて、他人の作ったマクロをコピペして実行できればオケ
>>827 オブジェクト指向が理解できてれば"はい"
830 :
830 ◆3UtGvuoRbk :2008/04/03(木) 02:21:39
【1 OSの種類 .】 Windows XP SP2 【2 Excelのバージョン 】 Excel 2007 【3 VBAが使えるか .】 はい(初心者です) 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 取消線 IF 宜しくお願い致します。条件に応じて取消線をつけたいのですが、 B1セルに「可決」、B2セルに「否決」と書かれています。 A1に「可決」と入力された場合、B1セルの「可決」はそのままで、 B2セルの「否決」に(書式設定にある)取消線を引きたいのですが、どのようにすれば良いでしょうか? (また、その逆で、A1セルに「否決」と入力された場合はA1セルの「可決」に取消線を引いて、B1セルの「否決」はそのままです) 良い方法がありましたらご教授をお願いします<(_ _)>
DDE経由でActiveWorkbook.Pathを取れますか?
>>830 条件付き書式で取消線を設定。
=$A$1="可決"
こんな感じで。
Private Sub と Subって何が違う・・・どう使い分けるの?
834 :
815 :2008/04/03(木) 06:42:49
>>818 うまくいきました。
本当にありがとうございます。
A列に アルファベット A〜Zのどれかが入ってて B列に 数値 1〜999が入ってて C列に AとBをハイフンで繋げたのを表示させたいけど どうすればいいですか?ただし数値は常に3桁で A列にA、B列に1の場合、C列は"A-001" A列にZ、B列に99の場合、C列は"Z-099" といった形で。
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 Excel2000を使用しております初心者です。 OSをWin98からXPhomeに変えたところ、 インターネットのエクセルの学習サイトからダウンロードしたZipファイルを開くと、 「ファイルエラー データが失われた可能性があります」と出てしまいます。 「OK」をクリックするとファイル自体は開くのですが、 サイトの学習を進めていくと指示通りに動かない場合があります。 OSを変えるまでは、普通に動きました。 解決策がありますでしょうか? よろしくお願いいたします。
>>835 =A1&"-"&TEXT(B1,"000")
>>836 そのサイトできくほうが確実
98用や2000/xp用などに分かれてる場合もあるし
>>838 はい。
そのサイトに質問コーナーがあったので、先程質問してみました。
その質問コーナーは、エクセルの使い方がメインなのでまだ返事が来ません。
しばらく待ってみようと思います。
>>832 無事できました有難うございました<(_ _)>
841 :
名無しさん@そうだ選挙にいこう :2008/04/03(木) 12:59:24
教えて下さい。 ハガキの宛名の部分を作る事になりました。sheet1には、郵便番号、氏名、住所が入っていて、sheet2にはハガキと同じ様式のものが罫線で引かれています。
842 :
名無しさん@そうだ選挙にいこう :2008/04/03(木) 13:00:13
↑続き。 年賀状ソフトのように、印刷の段階で、sheet1に入っているデータを選択して出力する事はできるのでしょうか? お願いします。
VBA使わないと無理。 そんな面倒なことするより、ブックオフでCD-ROM付きの年賀状素材集を100円で買ってきた方が早いぞ。 住所録とハガキ印刷ソフトが付いてて、印刷位置も郵便番号もぴったりになるし、よくできてる。 ちゃんとCSVも読み込めるから、Excelのデータもワンタッチで移せる。
vlookupとテキストボックスを使えば可能と言えなくも無いが・・ せめてワードでも使わないとほぼ確実に崩れると思う
845 :
名無しさん@そうだ選挙にいこう :2008/04/03(木) 15:00:01
>>841 です。
>>843 さん。実は、ハガキ以外にも、そのような作業をしなければならず質問しました。
>>844 さん。ワードも使えます。ワードにデータを取り込むとできるのでしょうか? 教えて下さい。お願いします。
Excelは印刷遅いからやめとけ Wordスレで聞いて来い
>>841 差し込み印刷だな
Wordスレで聞くかぐぐれ
ExcelではSheet1だけあればいい
849 :
名無しさん@そうだ選挙にいこう :2008/04/03(木) 21:14:44
>>841 です。
差し込み印刷がいいのですね。
ワードスレで聞いてみます。
ありがとうございました。
850 :
名無しさん@そうだ選挙にいこう :2008/04/04(金) 02:50:26
【1 OSの種類 .】 Windowsxphome 【2 Excelのバージョン 】 Excel2003/2007 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 エクセルを基礎からわかりやすく説明してるサイトってありますか? 本を買ってやってみても長続きしなくて覚えられません。 ゆとりとか言わないで教えて欲しいです。
>>850 一般論としては、サイトより本の方がわかりやすい。
パソコンが2台あれば別だけど、普通はサイトとExcelの画面は同時に見れないからね。
本がだめならパソコン教室に通え。
実務で使わないと、たんなる表で留まるからなぁ 実務での実力をつけたければ、このスレで回答者になるか、回答すれば自ずと実力がつく 趣味でやるならそれこそVBAでも覚えるといい。プログラミングを知ってると色々な場面で役に立つ・・かもしれない
>852 >実務での実力をつけたければ、このスレで回答者になるか 勘弁してくれ!
854 :
850 :2008/04/04(金) 10:38:56
>>851 .852
回答サンクスです。
本で学ぼうとしても、表以外使うことがなさそうな感じで
身がはいらないんですよね…
パソコン教室は、近くだとアビバしかないんですが
アビバって以前評判良くなかったから…
お前みたいな奴は何やっても無理。全部人のせいにして一生楽しくやってればいいよ。
>>854 このスレで回答者になるのはもうちょっと待ってくれ
このスレの質問を全部自分で解いてみたらどうだい
わからないときは他の人の回答を見て勉強
自力での正答率が80%超えたら回答者になっていいと思う
857 :
名無しさん@そうだ選挙にいこう :2008/04/04(金) 12:16:56
【1 OSの種類 .】 Windows XP 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】いいえ 【4 VBAでの回答の可否】否 【5 検索キーワード 】 セルに46631.723と入力すると 46631.7229999999・・・ となってしまうのですがなぜでしょうか?
858 :
名無しさん@そうだ選挙にいこう :2008/04/04(金) 12:18:28
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2007 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 sheet上でマウスのホイールを使用してスクロールを行うとsheet上にある コマンドボックスやコンボボックスが表示されなくってしまい困っています。 脇にあるスクロールバーで画面を上下すれば直るのですが、マウスのホイールを 使用してもボックス等が消えない方法を知っている方いましたら 教えてください。 サービスパック1はすでにインストールしてあります。
>857 浮動小数点数の問題だな。 ところでExcel2000はそうなるの? 2003はならないんだが。
>>855 ,856
では本だと何がおすすめですか?
わかりやすい本があれば頑張ってみますのでどうかよろしくお願いします。
>>858 それはパソコン側の問題。とりあえずビデオカードのドライバを最新にする。
863 :
857 :2008/04/04(金) 13:03:24
>>860 2003でもなる
=0.3-0.2-0.1+0
を小数30桁まで表示させて確認してみ
866 :
856 :2008/04/04(金) 14:23:22
>>861 ごめん、俺Excelの本読んだことないからおすすめなのがないんだ
このスレの質問-回答の流れをよく読んで
わからないことはGoogleに聞けば十分だと思うよ
Excel豆知識 =1.1-1-0.1 は0になるけど、 =(1.1-1-0.1) は0にならない。
【1 OSの種類 .】 Windows XP 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 西暦 年数 社員のデータベースを作成しているのですが、退職した人のデータで 入社年月日と退職年月日から勤続年数を自動計算する方法があれば御願いします。 出来れば2通りの結果を出したいのですが @勤続年数○年○月○日 A勤続年数○年○月(日数が16日以上なら1ヵ月、15日以下なら切捨て) 宜しく御願い致します。
869 :
名無しさん@そうだ選挙にいこう :2008/04/04(金) 15:07:03
【1 OSの種類 .】 Windows XP(Vistaも所有) 【2 Excelのバージョン 】 Excel2002or2007 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 なるべく否 【5 検索キーワード 】 Excel レーダーチャート 書式設定 色 Excelでレーダーチャート式グラフを作成しているのですが、 このチャート(項目が5つなら五角形の) の内部だけ色を塗ることはできますか? プロットエリアの書式設定をしようとすると、レーダーチャートをすっぽり囲む四角形に色がついてしまうので そうではなくレーダーチャート内のみに色を塗りたい、というのが要件です。 よろしくお願いします。
>>869 色つきレーダーチャートってグラフの種類でいいんじゃね
872 :
名無しさん@そうだ選挙にいこう :2008/04/04(金) 15:33:16
>>871 レスありがとうございます。
色付きレーダーチャートは、それぞれの値を結んだ結果できる範囲に色が付いてしまうので、
そうではなく背景の五角形だけに色をつけたいのです。
グレーの五角形内に、赤・青・黄など各項目の値のレーダーが走るようにしたいのですが…
>>872 オートシェイプで色つき五角形を描いて後ろに重ねるぐらいしか思いつかないな
874 :
868 :2008/04/04(金) 16:14:49
>>870 有難う御座いました。これ日数までは無理なんですね。
>>874 ぐぐってどのページに辿り着いたのかしらんが、日数は第三引数"MD"で出るぜ
A1が入社日、A2が退社日として ="勤続年数"&DATEDIF(A1,A2,"Y")&"年"&DATEDIF(A1,A2,"YM")&"月"&DATEDIF(A1,A2,"MD")&"日" ="勤続年数"&DATEDIF(A1,A2,"Y")&"年"&DATEDIF(A1,A2,"YM")+IF(DATEDIF(A1,A2,"MD")>15,1,0)&"月"
877 :
868 :2008/04/04(金) 17:27:05
875-876 何度も申し訳ありません。再度やってみます。
>>865 計算結果だとそうなるだろうが、セルに46631.723と入力入力しただけじゃならねーな。
>>878 2003でもなるってば
セルの見かけ上では46631.723のままだけど
上の数式バー見てみなよ
880 :
名無しさん@そうだ選挙にいこう :2008/04/04(金) 20:38:07
泣ける話だ
881 :
876 :2008/04/04(金) 20:59:39
入社の反対で退社と書いたけど、退職が正解なのかな、よくわからん それから入退日両方共勤続年数に参入するなら、A1-1とかA2+1とか工夫が必要
俺は酔っている!だが
>>878 も酔っている!
そんな時間から飲めメルトは羨ましい!
>>872 全て100%のチャートを一番下にして色をつける
884 :
名無しさん@そうだ選挙にいこう :2008/04/05(土) 11:37:27
教えて下さい。excel2000使ってます。VLOOKUPでTRUEを指定すると、値未満の近似値で返されると思うのですが、切り上げで返す方法ってありますか?説明下手ですみません…。よろしくお願いします。
切り上げたものを検索キーにすればいんじゃね
それかテーブルを一つ上下にずらせばいいんでない
887 :
名無しさん@そうだ選挙にいこう :2008/04/05(土) 12:45:25
A列にメールアドレスが100行ぐらい記入されてるんだけど 手っ取り早くこのアドレス全部にメールを送る方法ってないですか? 毎回クリックしたりコピペしたりを100回繰り返すのが面倒くさくて
Excelで毎日決まった時間にメールを送信することって可能ですか?
スパム業者乙
マジレス。 マクロじゃ無理。専用のソフト使え。
お前には無理だろうな
>>887 アウトルックとかCOM対応のメーラーを使っているのなら
そういうことが出来るソフトあるよ
UWSCでググってみ
UWSCはCOM対応のソフトならなんでも自動化できる
もちろんEXCELも自動化できるので連結した作業の橋渡しは余裕でおk
894 :
名無しさん@そうだ選挙にいこう :2008/04/05(土) 18:11:17
Excelの上部の列名は普通はABC〜と表示されているはずなんですが この表示がなぜか数字で表示されてしまうようになってしまいました・・・ 解決策があれば教えてください
excel2002です ファイル開くからhtmlファイルを読み込ませる時にエンコード指定はできないですか? テキストを読みこませる時に出てくるS-jisとかの指定はhtmlではでてこないです 読み込んでからエンコード変換する方法があるのかな? あと別のhtmlファイルを読み込ませようとしたら 「このページを表示するには、フレームをサポートしているブラウザが必要です。」と出てきた フレームをサポートって・・・IE7なんですが なんでだろ
>>896 レスありがとうございます!
助かりました
>>895 IEは、数あるブラウザの中でもダントツで出来が悪い
899 :
名無しさん@そうだ選挙にいこう :2008/04/05(土) 20:21:51
900 :
名無しさん@そうだ選挙にいこう :2008/04/05(土) 20:22:22
Excel 2003 セルを選択するとそのセルに入力されている行数に応じてウインドウが大きくなるじゃないですか、 そのセルの画面の大きさを変更できませんか?
数式バーの事か?それなら無理
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 「職員予定表」という日付・職員名・出張先の表を作ります。 「日付別に入力する」⇒「自動的に職員別の表が出来る」 という物にしたいと考えています。 【書式1 日付別】- まず手入力にて作成します。 ●4/1 札幌:水田 大原 嘉数 帯広:木村 関 藤本 ●4/2 小樽:水田 大原 夕張:木村 関 藤本 ●4/3 石狩:大原 三石 千歳:木村 関 水田
【書式2 職員別】- 書式1の入力により、以下のように自動的に作成されます。 ●木村 4/1 帯広 4/2 夕張 4/3 千歳 ●水田 4/1 札幌 4/2 小樽 4/3 千歳 現在、事務の者が「書式1」をまず紙に手書きで書いて、書式1から転記して 「書式2」を書いています。「書式2」を各職員へ配っています。 実際は例よりももっと職員数も行程数も多いので、毎日毎日これをやるのは 結構な手間と時間がかかっています。 さて、このような物なんですが、書式2を自動的に作成するには、どうするのが ベストでしょうか? ExcelかAccessを使用すれば、これが出来そうな気がしますが、 どこかのサイトにテンプレートとして落ちていればすごく有難いものの 「それがどこかにあるのか?」てゆうか「存在しているか?」という点が不明です。 もしくは、フリーソフトでも有料でも構わないので、このような 「職員予定表作成の専用ツール」等がもしあれば、それでも良いと思います。 良い方法をアドバイス・ヒント等よろしくお願いします。
ピボットテーブル
>>902 まず表の書き方が違う
元シートA列に日付、B列に担当の番号(後述)、C列に担当の名前が出る式、D列に出張先
元シートC列は=VLOOKUP(B1,元シート!A1:B100,2)
で、別シートA列に担当者の番号(必ず1から順に人数分)、B列に名前(好きな順番)を入れた物を作る
そして必ず1:1:1になるように入力。例えば例だと
4/1 1 水田 札幌
4/1 2 大原 札幌
4/1 3 嘉数 札幌
4/1 4 木村 帯広
4/1 5 関 帯広
4/1 6 藤本 帯広
4/2 1 水田 小樽
4/2 2 大原 小樽
こうなる
これが出来ていれば、後はA列(日付)やC列(担当名)でオートフィルタをかけるだけで一発で加工できる
906 :
名無しさん@そうだ選挙にいこう :2008/04/05(土) 23:21:00
【1 OSの種類 .】 Window Vista 【2 Excelのバージョン 】 Excel 2007 オートフィルを使ったあとに上書き保存しようとすると、 必ず「応答なし」になってしまって固まります。 何度やっても同じです。 対処法を教えてください。
再インストール
うちの会社にやたらVBA使ってファイル作る人いる 確かに便利だがそれぐらいなら関数と手動で対応しろってのが目立つ。 質問でも相談でもない愚痴でしたスマソ
他のスレ見てきたけどなんかこの話題って荒れるんだな、スルーでよろしく
【1 OSの種類 .】 Windows98 【2 Excelのバージョン 】 Excel2000と2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 エクセル + プラス エクセルで入力する時に =+a1+a2 などを見かけたのですが、+とは何を意味するのでしょうか? 会社で以前勤めてた人が作ったのですが、本人はもういないし他の人に聞いても分からないので・・ 特に+があってもなくても変化は無いようなのですが、もし違う結果が返ってくる可能性があれば教えてください
>>910 古い表計算ソフトで、式の先頭に=のかわりに+を入力するというのがあった。
そのユーザーがExcelに乗り換えやすいように、両方使えるようになっている。
デスクトップ機のテンキーには=がないから ちょっとの手間を省くために+を好んで使う人もいる。
「+A1」って入力すると、自動的に「=+A1」になるのよ
>>911-
>>913 なるほど、ありがとうございました!
表を作るときに一番上の行と一番左の列を統合する操作って どうやるのか教えてください ------------U U ----------U UU UU -- こんな感じです
L型のセル結合は_
>>916 ,917
どうもありがとうございました
>>917 統合ではなく単純に罫線を消せばいいだけのお話だったみたいです
ありがとうございました
919 :
919 ◆3UtGvuoRbk :2008/04/06(日) 23:38:58
【1 OSの種類 .】 WindowsXP SP2 【2 Excelのバージョン 】 Excel2007 【3 VBAが使えるか .】 はい(初心です) 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 MID RIGHT 取り出す 位 値 MID関数で、取り出すセルの右側を基準にして値を取り出すには何か方法はありませんでしょうか? VBAでは可能でしょうか?また可能である場合の記述方法をお願いします。 (RIGHTは任意の箇所から抽出ができず、MIDは左から原則のようなので) 例として、セルA1に1桁〜6桁の数字(1の位から10万の位まで)をB1(10万の位),B2(1万の位),B3(1000の位), B4(100),B5(10),B6(1)にそれぞれの位づつの値を取り出したいです。 A1に5000だと左づめのようになってしまいますです。IF関数で値の大きさで振り分けてみたり したのですが、上手くいきませんでした(005000(文字列)だと上手くいくのですが、 00を付けない方法がありますでしょうか) 宜しくお願い致します。
それなら桁数をそろえてからMIDつかえばいいじゃない。123なら =RIGHT("000000"&A1,6) で000123になる
頭に0を付けない方法だとLENやLOG等と組み合わせるとか
>>919 1〜6桁の数字に限定されているのであれば、100000、10000、1000、100、10で
割り算した結果を切り捨てれば、ご希望通りの数値を得られるが、それでは駄
目なの?
>>920-
>>922 有難う御座います。A1に入る数字は1〜999999の整数になりますです。
A1に1234と入力すると、
B1(10万の位),B2(1万の位),B3(1000の位),B4(100),B5(10),B6(1)
から、B1からB2は空欄でB3は1、B4は2、B5は3、B6は4という形で取り出したいのです。
ご教授をお願いします。
だから920でいいじゃん。0じゃなく空白にしたいなら =RIGHT(" "&A1,6) 応用力ないなあ
>>924 有難う御座いました。無事できました( ´∀`)
【1 OSの種類 .】 WindowsXP SP2 【2 Excelのバージョン 】 Excel2002 【3 VBAが使えるか .】 なんすかそれ? 【4 VBAでの回答の可否】 負荷 【5 検索キーワード 】 区切る 質問させていただきます。 ゲームの魔法の表を作っているのですが、初めてエクセル触ったんで ようやく「=アルファベット数字」で指し示した欄の文字が表示できることを覚えました。 しかし一つのマスに、複数の欄を表示させようとするとエラーがでます… 数式ならいいでしょうが、文字なもので。区切る方法はあるのでしょうか。 それとも一つのマスに表示できるのは一つの文字だけ?
>>926 なんとなく言ってることは解る気がするが、
最低限日本語と基本的なExcelの用語(セルとか参照とか)で聞いてくれないと
まともな回答は出来ないな
恐るべしゆとり
929 :
名無しさん@そうだ選挙にいこう :2008/04/07(月) 18:07:42
質問は関数の表示方法です。xp 2003を使用しています。 =index(範囲,match(B1,範囲,0)=0,列番号)の「列番号」を具体的な数字でなく、 列の挿入に対応できるようにしたいのですが、「column(F10)」としてもうまくいきません。 何かいい式で対応できないでしょうか? 教えてください。
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 Excel 表示形式が追加できません いろいろとシートを追加して、作成していると、「表示形式が追加できません」と出るんですが、 これはexel2003とか2007にしたら、もっと追加できるようになりますか?
932 :
929 :2008/04/07(月) 19:18:23
申し訳ない。自己解決しました。 もう少し、よく考えてから、質問しろってえの! おれwww
2003のヘルプを見たら
ユーザー定義の表示形式 200 〜 250 (インストールされている Excel の言語バージョンによって異なる)
だった
>>930 がいくつ使ってるのがしらないからなんともいえないけど、多分ふえてると思う
>>926 エスパーしてみる。
A1とC3の内容を1つのセルにまとめて表示したいときは
=A1&C3
多分そういうことだと思う。 それにしても人にモノを伝えるのがヘタすぎるんだよな。
>>931 メモリですかありがとうございます。
PC買い替えるんで、ついでにoffice2003辺り買っておこうと思います。
まあ、仕事上多くの表示形式使わざるを得ないので仕方がないんです。
面倒くさがりやで一つのブックでまとめたいのでシートが15くらいあるので。
>>933 ありがとうございます。
とりあえず上記のとおりにします。
937 :
名無しさん@そうだ選挙にいこう :2008/04/08(火) 19:09:27
【1 OSの種類 .】 WindowsXP
【2 Excelのバージョン 】 Excel2000
【3 VBAが使えるか .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード 】 自動取り込み
webからのデータの自動取り込みをしたいのですが
http://www.siueo/20080408.html 上記のようなアドレスで、
日が変わるごとにアドレスが変更してしまうところからデータを収集したいのです。
このようなwebページはどうすれば自動で取り込みすることができるのでしょうか?
教えて下さい。。
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 使えます 【4 VBAでの回答の可否】 可 【5 検索キーワード 】vba Range(). CurrentRegion.Rows.Count B列 1 果物 -------- 2 リンゴ 3 リンゴ 4 リンゴ 5 リンゴ 6 バナナ ※ 7 バナナ 8 バナナ 9 みかん こんなデータがあって、 『最初にバナナが来る行』が何行目かを求めるマクロを作成したいです。 ここでは「C6」に※を自動入力させたいです。 Sub Macro2() x = ?????? ←ここが分かりません。 Range("C" & x).Select ActiveCell.FormulaR1C1 = "※" End Sub
>>940 For to Nextでセルを上から参照
IF Cells(i,2)=゙バナナ゙ Then 処理
>>940 Sub TEST001()
Dim x As Long
x = ActiveSheet.Columns(2).Find(What:="バナナ", LookIn:=xlValues, LookAt:=xlWhole).Row
Range("C" & x).Select
ActiveCell.FormulaR1C1 = "=r1c1+r3c1"
End Sub
Sub TEST002()
Dim x As Long
x = ActiveSheet.Columns(2).Find(What:="バナナ", LookIn:=xlValues, LookAt:=xlWhole).Row
Cells(x, 3).FormulaR1C1 = "=r1c1+r4c1"
End Sub
Sub TEST003()
Dim Rng As Range
Set Rng = ActiveSheet.Columns(2).Find(What:="バナナ", LookIn:=xlValues, LookAt:=xlWhole)
Rng.Offset(, 1).FormulaR1C1 = "=r1c1+r2c1"
End Sub
たしかどこかでこんなのの速度検証やってたよね? WorksheetFunctionでVLOOKUPが一番速くて、配列に取ってForループが次点 Findはその数倍遅くて、Forループでセルにアクセスするのは更にその数倍遅いんだっけ?
944 :
940 :2008/04/08(火) 21:50:02
>>940 Sub banana()
Dim i As Integer
i = 2
Do While Cells(i, 2) <> ""
If Cells(i, 2).Value = "バナナ" Then
Cells(i, 3) = "※"
Exit Do
End If
i = i + 1
Loop
End Sub
946 :
名無しさん@そうだ選挙にいこう :2008/04/08(火) 22:28:57
WindowsXP-SP2、Excel2003-SP3です。
VBAのユーザーフォームなんですが、TextboxでTabキーを押下すると、
TabIndex で次の番号になっているコントロールへフォーカスが行かず、T
Textbox内にTab文字(?)が入力されてしまう・・・
という不可解な現象が時々発生します。
TabKeyBehavior は False になっています。
検索しても↓の未解決サイトくらいしか情報が見当たりません。
(↓が全く同じ現象です。)
ttp://www.vbalab.net/vbaqa/data/excel/log/tree_106.htm 一体何が原因なのでしょうか? よろしくお願いいたします。
947 :
>919 :2008/04/08(火) 22:42:31
A1に「5000」が入ってるとして、 "5"を取り出すには =MID(A1,LEN(A1)-3,1) 取り出す位置が桁数を超えた場合に空欄を返す処理を含めると =IF(ISERROR(MID($A$1,LEN($A$1)-3,1)),"",MID($A$1,LEN($A$1)-3,1)) 920は定番的な発想の転換(変な言葉!)だけど、 このケースでは使える桁数が000...の数に支配されちゃうから良くないな。
>>947 ありがとうございます <(_ _)>
なるほど、これだと桁数に制約されなくなるわけですね。勉強になりますた。
意味が分からない。000の数はいくらでもいんじゃないの? 100個でも200個でも好きなだけ。 エラー処理もいらないし。
A A A A B C C C とあるデータを重複した箇所を取り除き というリストを作りたいのですが、どうすればできるでしょうか。 A B C
>>949 元データが変わっても、いちいち最大桁数を調べて式を書き直さなくてもいいというメリットがある。
これを「汎用性」という。読み方は自分で調べようね。
>>952 でも
>>947 の場合だとLEN(A1)-3の"3"はどうするの?
元データの桁数が変わったらここも変えないとまずいじゃないか。これが汎用性なわけ?
もっともLEN(A1)-(LEN(A1)-1)という手もあるけど、抜いた数字が右から何桁目なのかわからないし、エラー処理が必要という欠点がある。
それよりは十分な桁数を用意した
>>920 の方が扱いやすいとおもうけどねー。
桁は定数にせずCOLUMN()から引っぱってくれば式のコピペだけで何桁でもいける。 0の数はREPTで増やせばいい。
最大値はMAX()で調べればいいだけじゃん
>>947 =IF($A$1>99999,LEFT(RIGHT($A$1,6)),"")
=IF($A$1>9999,LEFT(RIGHT($A$1,5)),"")
・・とか作ってたよハハハ
つーかそもそも、何の用途で使うんだろ 金種表とかだったら怒っちゃうよ!
すみません教えてください。 【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2007 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 いいえ 【5 検索キーワード 】 シート クリック 反映 1、2、3とシートがあります。 1のシートには送付状。 2と3には数や名前などのデータが入っています。 2か、3のシートを開いている状態で1のシートの見出しタブをクリックすると、 2と3の指定のセルの情報が1のシート内の指定のセルに反映させる方法は ありませんか?
>>959 VBA使わないと無理
Wordの差込印刷じゃだめなの?
961 :
名無しさん@そうだ選挙にいこう :2008/04/09(水) 12:10:20
>>946 TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
こーゆーのははいってませんか?
>>959 VBAが無理ならindirect関数を使うと幸せに慣れるかも
963 :
962 :2008/04/09(水) 12:21:51
補足、タブ見出しのクリックで動作させる場合は絶対にVBAしか無理
>962-963 >959 >シートの見出しタブをクリックすると 分かんないなら出てくるなっちゅー話ですわ。
966 :
926 :2008/04/09(水) 13:46:12
967 :
名無しさん@そうだ選挙にいこう :2008/04/09(水) 14:09:17
>>959 VLOOKUPやらINDEXやら何やらを使ってシート2,3から必要な情報を参照する式をシート1に書いときゃいいだけじゃね?
最初の時点ではシート1は空白で、シート1の見出しタブをクリックした時点で情報が書き込まれるってのが
>>959 の希望なのかい?
968 :
956 :2008/04/09(水) 14:24:16
>960,962-963,967 ありがとう。 ワードじゃ嫌だって言うんだ…何が嫌かはわからんが。 クリックしただけで反映が希望だった。 VBAの本買ってきて勉強する!! どうもありがとう!
969 :
959 :2008/04/09(水) 14:25:41
エクセルで作った表を上下均等にして配置するには どうしたらいいのでしょうか?
>>970 均等にして印刷したいのなら
ページ設定→余白→水平にチェック
よくわからないが、印刷するときなら 印刷プレビュー→余白 で、好きなように設定できる。
973 :
名無しさん@そうだ選挙にいこう :2008/04/09(水) 21:05:13
【1 OSの種類 .】 Windows vista 【2 Excelのバージョン 】 Excel 2003 【3 VBAが使えるか .】 つかえません 勉強したいです 【4 VBAでの回答の可否】 できれば否 【5 検索キーワード 】 エクセル リンク URL 他のセル
>>973 ハイパーリンクで他のセルを設定したいという事か?
「エクセル カメラ」等でぐぐるといいかもしれない
975 :
970 :2008/04/09(水) 21:14:21
ありがとうございます。大感謝です
976 :
973 :2008/04/09(水) 21:18:46
973の続きです。あせって書き込んでしまいました。
H列の各行のセルにURLを書いたのですが、
A列の各行のセルから、H列の各行のセルに書いてあるURLへリンクをつけたいのです。
A ............................ H
1 お弁当...........................
http://bento.jp 2 おでん............................
http://oden.jp 3 味噌汁..........................
http://miso.jp 4 大学芋...........................
http://imo.jp 5 おかゆ...........................
http://kayu.jp 6 .............................
・ ..............................
・ ...............................
・ ...............................
1000 千枚漬け..............
http://senmai.jp ハイパーリンクで
A1=HYPERLINK("
http://bento.jp ","お弁当")
とすればいいんですが、1000行以上あって、大変なので、
A1=HYPERLINK("H1","お弁当")
として、100行すべてにコピーすればリンクが簡単に作成できるかと思いましたが、
ファイルが開けませんとなってうまくいきませんでした。
手作業でH列に書いてあるリンクをひとつずつコピーしてA列のセルに貼り付けるしか
方法はないんでしょうか?どなたかご教授おねがいします。m( . . )m
享受な
>>978 なんと!!ごめんなさい
ネットでこういう指摘受けたんだよーと言い訳するが調べなかった俺も悪いな
しかも「教示」ね。結局間違いね。まぁいいけど
>>976 もしリンク元(H列)が間違ってるなら、どうしようもない
仮にH1にoden、I1に.jpが着たりしてたら別だけど
H列を元にハイパーリンク関数を使ってエラーが出たのなら、
どういうエラーが出たのか教えてほしい。完全にないページとか言われたら、そんなもんしらんとかしか答えようが無いけど
>>979 ありがとうございます。
A1=HYPERLINK(H1,"お弁当")
にして下にコピーしたらリンクに関してはうまくいきました。
ところが、
C
A3=HYPERLINK(H3,"お弁当")
となりセルの名前が全てお弁当になってしまいます。
どうすればいいのでしょうか。
リンクは全て正しくコピーされて、実際にうまくいっています。
A列のセルをコピーして、G列などにコピーして
A1=HYPERLINK(H1,G1)
とするしかないのでしょうか。
>>980 そういう場合は
B1やI1等に
=HYPERLINK(C1,A1)
として下方向にコピー、オートフィルすると良い
セルに4桁の数字を入力します。 例えば・・1000 と。 その入力した数字を自動的に10.00に したいのですが何かよい方法はないでしょうか?
983 例えが悪かったですね・・・。 5678 と入力した数字を 56.78になるようにしたいのです。
うちの会社のルールで 作業の規模によって 「通常作業」「重要作業」「超重要作業」と3段階の区分があります。 通常作業は作業日の前月の20日までに申請しなければいけない(5月の作業なら4月20日まで) 重要作業は作業日の2ヶ月前の20日までに申請しなければいけない(5月の作業なら3月20日まで) 超重要作業は作業日の3ヶ月前の20日までに申請しなければいけない(5月の作業なら2月20日まで) 今、A列に作業予定日時が、B列に区分「通常作業」「重要作業」「超重要作業」のいずれかが記載されてるとして。 C列に申請までの猶予日数を表示させたいのですが どうすればいいですか?
C1=datedif(date(year(A1),month(A1)-3,20),today(),"D")
>>983 みかけだけじゃなく実際の数字も10.00にしたいなら
別のセルに=A1/100として、書式設定を0.00
A1に入力してるという前提ね
991 :
名無しさん@そうだ選挙にいこう :2008/04/10(木) 07:59:56
すいませんexcelでグラフを作成するときですが 例えば棒グラフで作成するときに左の軸がどうしても %表示(割合)になってしまうのですが積み上げた数値をそのまま グラフに反映させるにはどうすればよいですか?
992 :
973 :2008/04/10(木) 09:18:17
昨日は迅速なレスありがとうございました
エクセルでつくった
>>976 のような表をwebで公開したいんですが、
また似たような質問なんですけど、
エクセルでコピーしたものをホームページビルダーに貼り付けると
リンクが引き継がれないので、webページとして保存するようにしました。
ためしに保存したhtmファイルをブラウザで開いてみたんですが、
1000以上あるリンクが全て「同一ウインドウで開く」に指定されています。
これを、新しいウインドウで開くに指定するのは、
エクセルで表を作成する段階ではどうすることもできないでしょうか。
いったんhtmにして、そこで新しいウインドウで開くように設定しなおすしかないのでしょうか。
エクセルのリンクはデフォルトで、同一ウインドウで開くようになっているのでしょうか。
>>991 グラフを選択するときに100%積み上げを選んでるのか?
普通の積み上げ棒グラフもあるからそれを選ぶ
2003ではあるけど、古いバージョンでは無いかも知れない。
エクセル使いは年収どんなもんよ パソコン教室に通おうか検討中 3年後に1000万貰えますか
>>995 釣りだとは思うが、事務系の職に就くにあたってExcelが使えるのは「最低条件」なわけで
Excelが使えることによって賃金が上がったり、ましてや1000万もらえるなんてことはない
Excel使える"だけ"なら、まぁ250万ももらえれば御の字じゃねえの
Excelから入ってVBA、VB、VBS、ASP、ASP.NETまで極めれば、あとは自己の営業能力次第だな
>>992 テキストエディタで「<a 」を「<a target="_blank" 」に置換。最後のスペースを忘れないように。
パソコン教室に通って1000万もらえるなら俺も行くわwww
パソコン教室の経営ぐらいやらんとな
1000
1001 :
1001 :
Over 1000 Thread このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。