Excelに関する質問は、ここで!
▼━ 質問のしかた ━━━━━━━━━━━━━━━━━━━━
★1 質問するときは環境や条件はきちんと書いてね。情報後出しはダメ。
★2 要望は具体例や図を使って明確かつ具体的に。
★3 質問前に
>>2-20 あたりの注意書きや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/ 前スレ(56):
http://pc11.2ch.net/test/read.cgi/bsoft/1181155085/
▼━質問時の注意・決まり事━━━━━━━━━━━━━━━━━━━━ ・1 現行スレ内で既出の質問が無いか、ページ内検索をしよう。(Ctrl+F) ・2 図やコードを書く場合、TABや連続する半角スペースは無視されるので注意 ・3 VBAコードを貼る場合は、部分的に伏せたり省略したりせずに全て貼りましょう。何レス使っても構いません。 ・4 2回目以降の質問では名前欄に初回質問の番号を入れよう。 ・5 回答内容でわからない部分があっても、すぐに聞き返さずにヘルプやGoogleなどで検索しましょう。 ・6 バグ・動作上の不都合・仕様に関する質問などはマイクロソフトのサポートを受けましょう。 ここは技術的な質問のみで。 ・7 VBAはプログラム言語のVisualBasic(6以前)に近い処理が可能で Excelに関係ないことも出来ます。 Excelの操作に関係ない部分は、スレ違いなのでここで聞かずにVB言語やAPI、COMについて自分で勉強し、 どうしてもわからない部分はVBスレやAPIスレなどの該当スレで質問しましょう。 但し向こうはプログラマのスレなので、構文規則などの最低限の事は覚えてから質問しましょう。 ここみたいに丸投げはダメですよ。 ・8 うまくいかなかったにしても自分でやってみたこと(組んだ数式やコード)は書きましょう。 例えエラーになる式やコードでも、何をやりたいのかを的確に把握する手がかりになります。 その上で、どううまくいかないのかを具体的に書きましょう。 エラーが出るなら、何処でどういうエラーが出るのか、 想定外の結果が出るなら、条件と想定上の結果、実際の結果などを詳しく書いてください。 ・9 マルチはダメ。一度マルチしたら、謝っても他のスレの質問を取り下げても回答は得られないと思ってください。 ・A テキストボックス(エディトボックス)、コンボボックス(ドロップダウンリスト)、リストボックス、コマンドボタン、 チェックボックス、オプションボタン(ラジオボタン)、スピンボタン、スクロールバー、等の質問をするときは、 ユーザーフォーム、コントロールオブジェクト、フォームオブジェクトのどれなのかを必ず書くこと。 ・B 書籍や解説サイトの紹介以来はスレ以外。ここは技術的な質問のみで。
★ルールを無視すると…
>>1-2 あたりのルールに従うか否かは自由だけど、従わないと以下のような不利益があるよ
1.マルチをしてしまったら…
A.謝っても他での質問を取り下げても、以後その質問に対する回答は付かない物と思ってください。
それが嫌なら初めからマルチなんてしないように。
>>2 にマルチ禁止と書いてあり、
マルチの意味が分からなければ検索すれば出てくるので、「知らなかった」は通用しません。
2.
>>1 ★4に従わず、必要な情報を出さないと…
A.自分の使用しているバージョンで使えない機能を答えられたり、VBA使えないとか使いたくないと書かないと
VBAでの解決OKで自分でコード書けるものと勝手に解釈されて、「VBAで出来るから自分でコード書いて」程度の
適当な回答を返されたりします。また、ここではVBAコード書けない人の丸投げ依頼を許可してますが
これはきちんとルールに従って質問、依頼した人のみの特権です。
3.情報・条件を後出しすると…
A.後から出された情報は意図的に無視されたり、質問自体を放置されたりします。
>>1 ★4の必須情報はもちろんのこと、要望や条件、既に試したことなどは、
長文になってもいいので詳細かつ明確かつ具体的に書きましょう。
★VBAについて
VBAとは、『Visual Basic for Application』の略で
Application
├Workbooks
|└Workbook
| ├Worksheets
| |└Worksheet
というApplication以下のオブジェクトを、VB言語で操作するものを指します。
例えExcel付属のVBE(Visual Basic Editor)を利用しようとも、このApplication以下のブックやシート、
セルやオブジェクト等を操作するもの以外はVBA分野の話ではないので、ここでは聞かないでください。
★ Excelで出来ないこと、仕様上の制限 (括弧内は代用法) ▼環境・書式 ・ 列数を256列以上、行数を65'536行以上に増やす (Excel2007では16'384列、1'048'579行扱える) ・ Excel2003以前で条件付き書式を3つ以上設定する (文字色だけなら、入力規則でも3つ設定可能。それ以外はVBA) ・ 行の高さを0.25きざみ以下の単位で指定する ・ セル内の文字を○で囲む、一部のみ2段にする (オートシェイプ、オブジェクト) ・ オートフィルタで英字の大小文字を区別する (小文字 → 半角、大文字 → 全角、と使い分ける) ・ 祝日を判断する (作業セルに祝日を列挙、VBA) ・ 同一列内でセル(行)ごとに列幅を変える、同一行内でセル(列)ごとに列高を変える (セルの結合) ・ ヘッダー・フッターのページ番号の開始番号任意指定、ページ番号演算、同シート内で違ったものを指定など ・ セルのサイズ(幅、高さ)を、長さの単位(ミリメートルなど)で指定する ・ 罫線幅の自由指定 ・ 表示形式で「10/ 1」といった書式を指定し、日付が一桁の場合のみ日付の前にスペースを入れる (TEXT関数、VBA) ・ 書式設定の「折り返して全体を表示する」と「縮小して全体を表示する」を同時に使う (折り返しを有効にして、手動で文字サイズを調整) ▼操作 ・ ファイラーの右クリックメニューからの新規作成で、Excelで設定したシート数のブックを作る (任意のシート数のテンプレートを作成) ・ 複数シートを選択して入力規則やシートの保護を設定する (VBA) ・ オートコンプリート機能を、別列や離れたセルで動作させる (VBA) ・ 選択範囲から一部を除く、Ctrlを押しながらの複数選択で一部を取り消す (VBA) ・ 優先キーを3つ以上指定しての並べ替え (優先度の低い方から順に並べ替える) ・ 1セルを分割 (分割したいセル以外を結合)
★ Excelで出来ないこと、仕様上の制限 (括弧内は代用法) ▼数式・関数 ・ 表示形式以外の書式の取得設定、書式情報を条件とする数式 (ユーザー定義関数) ・ 関数式でセルの選択状態を取得する (VBA) ・ セルの値でパスを補完して、開いてないブックのセルを参照する (VBA) ・ 入力したセルに結果を返す (VBA) ・ 範囲を引数にしての文字列連結 (ユーザー定義関数) ・ 値の書き換え、値の保持 (VBA) ・ 複数の結果を抽出、不定な数の結果を返す (VBA、結果の最大数が解っていれば最大数以上の式を論理式で組む) ・ 空白のセルの部分を上詰め、左詰めなどで表示する (作業セルを使って別セルに詰めて表示なら可能、それ以外はVBA) ・ VLOOKUP,HLOOKUP,MATCH等の関数で、検索語を全半角両方にマッチさせる (ユーザー定義関数) ▼VBA ・ ExecuteExcel4Macroの参照で空セルと0値を区別する ・ セルの値や変数値で直接変数名を指定する (配列、コレクション) ・ VBのコントロール配列と同じような操作をしたい (イベント以外ならコントロール名を「同名+連番」にしてControls(名前 & インデックス)で処理、イベントはクラスでWithEvents) ▼ユーザーフォーム ・ フォーム上から変更したプロパティ値の保持 (シートや外部ファイルに書き出して、次回読み込む) ▼グラフ ・ 棒グラフでひとつだけ突出したデータがあった場合に波線を入れて位置を合わせる (オートシェイプなどで見た目だけそうなるように弄る、別アプリでグラフを作り、オブジェクトとして挿入) ┌┐ 〜〜 ||
上記 「Excelで出来ないこと、仕様上の制限」 は、一般的に出来ないとされていること、出来ないと思われるものです。 間違いがある可能性もあるので、上記に挙がってるもので「コレはこうすれば出来るよ」というものがあったらご指摘ください。 Excel2007についても未確認な項目が多いので変更点が有ればご指摘下さい。 また、ここに書かれてないことでも、Excelで出来ないことはたくさんあります。 ここに書かれてないからといって必ず出来るはずだなんて思わないように。 >▼環境・書式 > ・ セルのサイズ(幅、高さ)を、長さの単位(ミリメートルなど)で指定する 補足 2007ではページレイアウトビューの表示時に限り、幅・高さともcm単位で表示され、 指定も同じくcm単位でできる。 ただし大元がインチ系なのでなかなかピタリの値は出ない。1cm→0.98cmのように 近い値に勝手に丸められる。
>>1乙 テンプレやっておいたから
>1-8 乙です
10 :
名無しさん@そうだ選挙にいこう :2007/07/07(土) 17:17:36
【1 OSの種類 .】 WindowsXP SP2
【2 Excelのバージョン 】 Excel2000
【3 VBAが使えるか .】 いいえ
セルA2に URL 等の文字列が入力されているとして
IF(FIND("http",A2),"URL","不明な文字列")
という感じの条件判断を行いたいのですが、
A2 に URL 以外の文字列が含まれている (http が含まれていない) 時に
「不明な文字列」とは表示されず #VALUE! と表示されてしまいます。
意図しているのは
A2=
http://www.なんたら → URL と表示。
A2= うにゃうにゃうにゃ → 不明な文字列 と表示
される事です。よろしくお願いします。
11 :
10 :2007/07/07(土) 17:59:50
iserror関数というのを使って、解決しました。 お騒がせしました。
Office2003のExcel (1) VBE で編集した後のファイルを再読込(編集内容の反映)する方法 (2) 検索キーは普通Ctrl-F になってますが、このキーアサインをVBA(OnKey等)で変える方法 よろしくお願いします。
>>12 (1) VBE(コードエディタ)での編集は自動反映されるので再読込の必要なし
そのことじゃないならちゃんと日本語で書いて
(2) CommandBarからExecute
>>13 様 知りたい事わかりました。ありがとうございました。
15 :
名無しさん@そうだ選挙にいこう :2007/07/07(土) 21:57:17
【1 OSの種類 .】 Windows2000 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 Google 複数シート ウィンドウ枠の固定 エクセル 複数シートを選択してウィンドウ枠の固定をしたいんだけど、 やり方がわかりません。 同一フォーマットのシートが1ブック内に約100シートあるので、 1シート毎の設定ではなく、1回で設定させたいです。 よろしくお願いします。
「マクロの記録」で1シート分のウインドウ枠を固定を記録する。 それをもとにシート毎にループをまわす。これでOK
17 :
15 :2007/07/07(土) 23:02:20
>>16 さん
教えて頂いてどうもありがとうございます。
1シート分の記録はやりました。
でも申し訳ありませんが、スキルがないので
ループを回す処理をどう書いたら良いか
わからないので、それも教えて頂けると助かります!
教えて君ですみませんが、よろしくお願いします。
Dim j As Long Dim cnt As Long cnt = Worksheets.Count For j = 1 To cnt Debug.Print Worksheets(j).Name Worksheets(j).Select 'ここに処理 Next j これでどう?
19 :
15 :2007/07/07(土) 23:42:26
>>16 >>18 さん
やったー! ちゃんと動きました!
作業効率めちゃめちゃアップです。
本当にどうもありがとうございました。
20 :
名無しさん@そうだ選挙にいこう :2007/07/08(日) 00:49:27
関数わかる人に質問です。 結構あると思うのですが 関数の中に関数 例えば =ROUND(AVERAGE(K5,O5,S5,W5,AA5),0) のような感じでセルに入れると 平均→四捨五入してくれるのでしょうか? ざっと見ちゃんと出力されている感じですがまじめに質問です。 教えてエロい人
21 :
名無しさん@そうだ選挙にいこう :2007/07/08(日) 04:07:57
>>20 自分の手で試してみればいいだろう。
「メンドクサイからここで聞こう」という根性が露骨に出てるな。
>20は、ただの馬鹿だ! 電卓やエクセルで答えは出せるけど、 それが正解かどうか分らない 基礎学力がない奴の典型だよ
>>20 分けて考えればいいじゃん
=AVERAGE(K5,O5,S5,W5,AA5),0
の答えを出したセルに対して=ROUND("対象セル") としているのと同じこと
>>20 こんな質問をしちゃう程度の脳みそなら
マヂレスされても理解デキンだろw
>>20 の人気に嫉妬
いまごろ涙目になっているかもなw
>>24 >>20 の肩を持つワケじゃないが、質問の内容を
正しく理解できてないだろ
28 :
名無しさん@そうだ選挙にいこう :2007/07/08(日) 18:12:21
エクセルの並べ替え機能についてですが、 B列に1〜100の数字100行分を1+(1個上セル)で表現 A列に=COMBIN(100,B1) としているときにB列降順ソートをかけると全部#REF!になってしまいます。 見たところ相対パスが対応してくれてないみたいです。 B列の相対パス 「1+(1個上セル)で表現」 の部分が 「1+(1個下セル)で表現」 に自動的に変われば綺麗に表示できると思うのですが。 セルに数値ではなくて式が入ってるとき、式の答えでソートをしたいときはどうすればいいですか? 宜しくお願いします。
値だけ別シートにコピーしてからソートするとか?
エクセルでブックの共有を使用しようと考えているのですが、 なぜか5人くらいが同時に開くと一部のユーザが読み取り専用となって しまいます…これはEXCELの仕様なのでしょうか? 他にも共有はブックの破損率が高いと言われますが、どの程度の規模なら ある程度安全と言えるのでしょうか? 詳しい方はご教授願います。
31 :
28 :2007/07/08(日) 20:31:42
>>29 なるほど。そういうことができるのですね。
ありがとうございました。
>>30 共有の上限は256。つーか、このくらいのことは人に聞く前に自分で調べる癖を付けてくれよ。
googleで調べればあっという間に分かることだ。
あと、
>
33 :
名無しさん@そうだ選挙にいこう :2007/07/08(日) 22:05:55
バージョン2000 罫線を変更させずに数値のみを移動させる方法はありますか?
34 :
32 :2007/07/08(日) 22:06:38
書き途中で送信してしまった。以下続き >どの程度の規模なら >ある程度安全と言えるのでしょうか? こんな曖昧で間の抜けた質問を投げられても、回答者が返答に困るだけだ。
>>32 ご回答ありがとうございます。返答に困る質問をしてすみませんでした。
256人まで可能なのになぜこの様な現象が起こるんでしょうかねえ…
36 :
名無しさん@そうだ選挙にいこう :2007/07/08(日) 23:37:24
エクセル2000です。 A1に 「知りたい」 と入力しました。 A2に 「し」と打った時点で「知りたい」が自動的に候補に挙がってきてenterを押すと確定していまいます。 「し」だけを打ちこみたい時にいちいち変換ボタンを押してから確定させないと「知りたい」」回避ができません。 オートコレクトなのかなって思って全部オフにしましたが変化はありません。 「知りたい」回避の方法がわかるかたどうぞ宜しくお願いしますm(__)m
37 :
36 :2007/07/08(日) 23:40:22
多分オートコンプリートで解決できました!^^
38 :
名無しさん@そうだ選挙にいこう :2007/07/09(月) 13:20:51
誰かいましたらお願いします。 ひとつのセル内に 1 123 2 234 ・ ・ ・ のように書かれたデータをコピーして別の列に貼り付ける時に スペースのところで区切って別のセルに入るようにしたいのです。 誰か教えていただけないでしょうか?
40 :
名無しさん@そうだ選挙にいこう :2007/07/09(月) 15:31:25
セルに (R) と入力してENTERすると自動的に R に変換されてしまうのですがこの機能をOFFにするにはどうしたらいいですか?
オートコレクトでねーの?
43 :
お願いします。 :2007/07/09(月) 20:13:32
エンターキー押すだけで今現在の時刻入れる方法があったら、 教えてください。(切実)
44 :
40 :2007/07/09(月) 20:48:20
どうやら2chではRが普通のRと表示されるようですが ○の中にRが入った記号に勝手に変換されてます 文字列に変えても駄目でした
47 :
名無しさん@そうだ選挙にいこう :2007/07/09(月) 21:31:18
WindouwsVISTAでExcel2007です。 中和滴定のグラフを作りたいのですが、 横軸のデータの間隔が一定でなくて、 最初は0.00,1.01,2.11…といったかんじで、 途中から9.31,9.40,9.50…と間隔が短くなります。 ですが、グラフにすると一定間隔のグラフができてしまいます。 どうしたらいいでしょうか?教えてくださいm(_ _)m
>>47 折れ線じゃなくて散布図でグラフかいたら大丈夫
49 :
名無しさん@そうだ選挙にいこう :2007/07/09(月) 22:21:05
50 :
名無しさん@そうだ選挙にいこう :2007/07/10(火) 01:07:23
よろしくお願いいたします 【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 入力規則 日本語オフ 特定のセルに数字しか入力出来ないという形で 日本語入力オフで入力規則をかけたのですが 1とか100とかの整数だけでなく 01とか02などの特殊?な数値も入力出来るようにしたいのですが 何かしら方法はありますでしょうか (当たり前ですが)"01"と入力しても"1"としか出力出来ないので ダメなら別の方法を考えたいと思います。
>>50 @セルの書式設定で表示形式を「文字列」にする
A対象のセルがA1の場合、該当セルに以下の入力規則を設定する。
入力地の種類:ユーザー設定
数式 :=VALUE(A1)
52 :
50 :2007/07/10(火) 08:57:33
>>51 ありがとうございました。出来ました
:=VALUE(A1)ではなくて=VALUE(A1) (コンマ不要)でOKのようです
>>52 ”:”は「コンマ」ではなく「コロン」。
今のうちに間違いを正しておかないと、いつか恥ずかしい目に合うよ
>52 じゃあ、ユーザー設定のコロンは要った訳だね。 >44 回答は目の前にぶら下がっているでしょ。
55 :
名無しさん@そうだ選挙にいこう :2007/07/10(火) 15:19:27
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 VBA 罫線 入力 指定セルへ数値を入力し、指定された範囲の外枠へ罫線を引きたい。 また指定セルが空白の場合は罫線を消す?元に戻したいのですが。。 以下 セルE9に数値1がある場合 → セル範囲N7:X18の外枠へ罫線を引く。 セルE9が空白の場合 → セル範囲N7:X18の罫線を消す。 どうか宜しくお願い致します。
56 :
名無しさん@そうだ選挙にいこう :2007/07/10(火) 18:35:51
excel 2000 次のページに何の値も罫線もないのに印刷プレビューでは次ページも 表示するんですがどうすれば表示させないようにできますか?
>>55 1以外はどーするの?該当シートのイベントとして…
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Rng As Range
Set Rng = Range("N7:X18")
If Not Intersect(Target, Range("E9")) Is Nothing Then
If Range("E9") = 1 Then
With Rng.Borders(xlEdgeLeft)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Rng.Borders(xlEdgeTop)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Rng.Borders(xlEdgeBottom)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Rng.Borders(xlEdgeRight)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
続き Else Rng.Borders(xlEdgeLeft).LineStyle = xlNone Rng.Borders(xlEdgeTop).LineStyle = xlNone Rng.Borders(xlEdgeBottom).LineStyle = xlNone Rng.Borders(xlEdgeRight).LineStyle = xlNone End If End If Set Rng = Nothing End Sub
59 :
名無しさん@そうだ選挙にいこう :2007/07/10(火) 19:47:04
>>57-58 さん
完璧です。
数値は1以外入らない予定です。
細かい所までありがとうございます。
また宜しくお願い致します。
60 :
51 :2007/07/10(火) 20:42:46
>>52 誰がコロンまで入力してくれといったのさ。
もうちょっと人の書いた説明をよく読んでくれよ。
>>61 横から失礼。
ファイル見たけどどのように設定しているの?
セルの書式設定とか見たけど見当つかない。
65 :
名無しさん@そうだ選挙にいこう :2007/07/11(水) 09:40:14
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 B5ノートで使っているんですがコードビルダを立ち上げると 毎回作業ウィンドウが横に長い状態で立ち上がります 「前回のウィンドウの位置とサイズを継承してVBAを立ち上げる」みたいなことはできませんか?
後出しで申し訳ないが、少し整理してみた。 Private Sub Worksheet_Change(ByVal Target As Range) Dim Rng As Range If Target.Address = "$E$9" Then Set Rng = Range("N7:X18") If Target.Value = 1 Then Rng.Borders(xlEdgeLeft).LineStyle = xlContinuous Rng.Borders(xlEdgeRight).LineStyle = xlContinuous Rng.Borders(xlEdgeTop).LineStyle = xlContinuous Rng.Borders(xlEdgeBottom).LineStyle = xlContinuous Else Rng.Borders(xlEdgeLeft).LineStyle = xlNone Rng.Borders(xlEdgeRight).LineStyle = xlNone Rng.Borders(xlEdgeTop).LineStyle = xlNone Rng.Borders(xlEdgeBottom).LineStyle = xlNone End If Set Rng = Nothing End If End Sub
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2002 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 エクセル 0値 表示しない MID関数で指定した文字が0のときのみセルになにも表示しないでいたいのですが 検索して見つかった0を表示しない方法はなぜか適応されません。 どうしたらよいのでしょうか、よろしくお願いします。
>>67 「検索して見つかった0を表示しない方法」とやらが間違ってるんだろう。
修正すればいいんじゃないかな。
【1 OSの種類 .】 Windows2000 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 練習中 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 workbook open 「A.xls」、「B.xls」という2つのファイルがあり、 両方「777」というパスワードが設定されています。 「A.xls」のセルは「B.xls」を参照しているため、 「A.xls」を開くたびに「B.xls」のパスワードを聞かれます。 ここで、マクロを実行するとパスワードを聞かれずに「A.xls」が開き、 しかもB参照のためのパスワードも入力されるというマクロを作りたいんです。 ひとまず、この1行で「パスワード777を入力してA.xlsを開く」というのはできました。 Workbooks.Open Filename:="C:\1.xls",UpdateLinks:=3,password="777" このあと、参照先の「B.xls」のパスワード入力までマクロで行おうと思ったら どのようにすればよいのでしょうか?
70 :
69 :2007/07/11(水) 22:26:17
すいません・・・ファイル名間違ってました。 ×Workbooks.Open Filename:="C:\1.xls",UpdateLinks:=3,password="777" ↓ ○Workbooks.Open Filename:="C:\A.xls",UpdateLinks:=3,password="777"
71 :
67 :2007/07/11(水) 22:32:34
>>69 パスワード入力ってのが良くわからないけどworkbooks("B.xls")を開きたいだけなら
Workbooks.Open Filename:="C:\B.xls",UpdateLinks:=3,password=Bのパスワード
って書けばいいんでないの?
74 :
67 :2007/07/11(水) 23:27:11
あー、式に*1したらできました 失礼しました。
>>74 ずいぶん汚い解法を見つけたね。
まぁできたんなら良いが。
76 :
640 :2007/07/11(水) 23:37:24
【1 OSの種類】 Windowxp 【2 Excelのバージョン】 Excel2000 すみません!質問です。 今日会社でエクセルを二重に開いてしまいました。 そのワークシートはパスワードでロックをかけているもので 二重に開いたってすぐ気がついて、パスワードを入力するポップと ワークシートを×で消したのですが、もともとタスクバーに隠していた ものも同時に消えてしまいました。 再度そのシートを開いたら、今まで入力したデータがほとんど消えていたのです。 そのワークシートはスタッフ4人で共有して入力していたもので、 私のせいでみんなが大量に入力したデータが消えてしまったかもしれない・・・。 どうしよう・・・汗 です こういうことってあるのでしょうか? それと、もしデータが消えていた場合、犯人探しじゃないですが どのPCがデータを消してしまったか分かってしまう方法ってあるんでしょうか? まとまりのない文でスミマセン。 どなたかお答え願います。
77 :
67 :2007/07/11(水) 23:45:38
>>75 汚いのですか・・
もっといい方法があるなら教えていただきたいのですが。
>>76 スレの趣旨をよく読んで、納得したら消えろ
阿呆が
80 :
69 :2007/07/12(木) 00:14:12
>>73 Bは開かなくて良いのです。
Aを開いた時に
「このシートには他のファイルへのリンクがあります。
最新の情報に更新しますか?」と聞かれ、はいにすると
Bのパスワードを聞かれるのですが
そのBのパスワード入力までマクロでできないか、ということです。
【1 OSの種類 .】 WindowsXP SP2 【2 Excelのバージョン 】 Excel2007 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 秒の入力 セルに例えば「1分30秒」という時間データを入力したい時、「1:30」と入力すると「1時30分00秒」に 自動的に変換されてしまうため、いちいち「0:1:30」と入力しなくてなにりません。 入力する時間のデータは3分以下の物ばかりで、しかも大量にあるため、わざわざ「0時」の部分を 入力するのがけっこう面倒なんです。 「0時」を入力せずに済む方法があったら教えてください。
>>81 範囲指定→右クリック→セルの書式設定
→表示形式→ユーザー定義
「種類」のところを手入力で「mm"分"ss"秒"」
>>82 のは
>>81 への回答に全然なっていないが、
ごまかしごまかしで差し支えないなら
「hh"分"mm"秒"」
という手もある。
ユーザー定義で「0"分"00"秒"」で問題ないかと。
85 :
81 :2007/07/12(木) 08:09:30
さっそく試してみました。
>>82 これは表示形式が変わるだけですね。
>>83 後出しですみません。それは考えたのですが、あとで集計をしなくてはならないため、
単位が1つずれるのは好ましくないんです。
ただし他に方法がなければ、最後の手段として計算結果を60で割って補正することも
考えています。
>>84 その場合、データはどうやって入力すればいいのでしょうか?
2つの数値を区切る操作を教えてください。
86 :
83 :2007/07/12(木) 08:24:16
>>85 入力後に関数やマクロを使って一括修正するのも、そう難しくはない。
入力の利便性向上に伴うメリットと、その後のデータ加工で発生するデメリットを
天秤にかけて考えてみて。
87 :
83 :2007/07/12(木) 08:29:40
>>86 例えば1:30:00を0:01:30に変換したい場合は、こんな風な関数で変換できる。
=TIME(0,HOUR(A1),MINUTE(A1))
(A1セルに1:30:00が入力されていると仮定)
88 :
名無しさん@そうだ選挙にいこう :2007/07/12(木) 09:45:31
こんにちは。 エクセルの操作法以外で、知りたい事、というのは質問しても良いのでしょうか?
90 :
88 :2007/07/12(木) 10:01:53
お返事ありがとうございます。 やはり技術的なものではないので、別の所へ行きますね。 エクセルで使われている計算で、どんな式で求められているかを知りたかったのですが、そのような質問はどこですればいいのでしょうか? よかったら教えて頂けないでしょうか。
>81 入力の手間を省く為なら、入力列を用意する。 また「:」より「.」で区切った方が、 テンキーだけで処理できるし、後処理も楽。 例えば1分30秒なら「1.3」と入力する。 表示集計用には次の式(A1が入力セルとする) =TIME(0,INT(A1),(A1-INT(A1))*100)
>>90 よそで聞くのか、ここで聞くのかどっちだよ
ちなみにマルチポストしたらそれなりの扱いになるからね
>>90 その質問もスレ違いだと言うことに気づこうね。
94 :
名無しさん@そうだ選挙にいこう :2007/07/12(木) 12:28:31
うぜ
95 :
名無しさん@そうだ選挙にいこう :2007/07/12(木) 15:14:11
Excel2003をWindowsXP上で使っています。 新規ファイルを開いた状態で表示されている罫線を非表示にするには どのようにすればよいのでしょうか?見た目としては、全てのセルを 選択して白で塗りつぶしたようになります。 他人から渡されたファイルが上記のような状態をベースに編集されている のですが、その人も設定の仕方を忘れてしまったようで、やり方がわかり ません。実用上は既存のファイルを使いまわせばいいのですがなにぶん 気持ち悪くて。よろしくお願いします。
>>96 レスありがとうございます。
ただ、気持ち悪いと表現したのは、素の状態から
>>95 で表現した状態に
持っていく方法がわからないことが気持ち悪いということなので、
テンプレ化することでは解決しないのです。
せっかく教えていただいたのに、わがままな要求ですみません。
98 :
名無しさん@そうだ選挙にいこう :2007/07/12(木) 15:37:35
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 ウィンドウの左隅に├ みたいな罫線があってそれをクリックするとカラムが 表示・非表示になるエクセルをこの前見たのですがあれはどうやって設定しているのですか?
>>97 [ツール]−[オプション]−[表示]の枠線とかかな?
見当違いだったらごめんね
101 :
名無しさん@そうだ選挙にいこう :2007/07/12(木) 16:25:10
>>98 グループ化の事かな?
だったらグループ化したい列でも行でも選択して
データ→グループとアウトラインの設定→グループ化
103 :
超初心者 :2007/07/12(木) 20:45:38
一か月分のデータを特定の列だけ統合させる操作を、マクロで記憶させようとしましたが、「行継続文字……を使いすぎています」という表示が出て記憶できませんでした。 仕事で使うので誰か教えてください。お願いします。
104 :
名無しさん@そうだ選挙にいこう :2007/07/12(木) 21:46:26
【1 OSの種類 .】 WindowsXP
【2 Excelのバージョン 】 Excel2003
【3 VBAが使えるか .】 はい
【4 VBAでの回答の可否】 可
【5 検索キーワード 】 VBA 罫線 入力
先日お世話になりました55です。
>>61 、66さん
ありがとうございます。
教えて頂いたVBAコードに条件を追加したいのですがうまくいきません。
以下
セルE9に数値1がある場合 → セル範囲N7:X18の外枠へ罫線を引く
セルE9が空白の場合 → セル範囲N7:X18の罫線を消す。
>>57-58 -66さんにて解決済み
【追加条件】
セルE9に数値2がある場合 → セル範囲S7:AC18の外枠へ罫線を引く
セルE9が空白の場合 → セル範囲S7:AC18の罫線を消す。
セルE9に数値3がある場合・・・・
との具合に、入力した数値によって罫線を引くセル範囲を左右上下にずらしたいのですが。
ご協力をお願い致します。
こういう奴は相手にするとキリがないから、ここらで放置するのが吉だな 哀れな教えたがり厨以外はw
>>66 も頑張ったようだが、ソースの可読性・再利用性に対する意識が
全くなかった。
元より、
A)引数で指定されたセル範囲に罫線を引くプロシージャ
B)E9セルの変更イベントを検知して、特定のセル範囲を
引数にAを呼び出すプロシージャ
の2プロシージャ構成で実装していれば、
>>104 のような問い合わせは
来なかっただろうに。
ウダウダうるせー奴だな
どこにでもいるのか…鬼の首を取ったように他人の間違いを後から指摘するやつ。はぁ、つかれます・・・
まいどの揚げ足取り君だろw ほんと感心するわ
つーか、回答者のレベルが低いのは昔から。 ここで大した回答を期待しない方がいい。
「動けば正解」ってレベルだからな・・・ まぁ間違っちゃいないが、正直溜息が出ることもあるわな。
112 :
名無しさん@そうだ選挙にいこう :2007/07/12(木) 23:59:21
【1 OSの種類 .】 Windows Vista 【2 Excelのバージョン 】 Excel2007 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 Vista Excel オートシェイプ/ショートカット オートシェイプ(図形)をよく使うので、旧バージョン(XPの2002)までは 下段ツールバーに入れたり、小さいウインドウを置いて使っていたのですが Excel2007で同じようにすることはできませんか? せいぜいいじっても、ツールバーの上に小さいアイコンを入れて、そこから いちいち形を選ぶことしかできません。2007ではこれが精一杯なんでしょうか?
114 :
名無しさん@そうだ選挙にいこう :2007/07/13(金) 00:16:40
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 エクセル・分析・ツール・アドイン・分析ツール・回帰 回帰分析をしたいのですが、分析ツールが表示されません。 アドインから分析ツールをチェックしてOKを押しましたが追加されません。 どのようにすれば分析ツールから回帰分析をできるか教えてください
>>113 偉そうな口を叩くなら、人に頼ってないで自分で教えてやったらどうだい?
まぁ、どうせできないんだろうが。
動けばいいんだよ。再利用性だのうだうだうるさいことを。 104だってもともとE9は1以外は要らないと言っていたしな。 文句を言うだけなら誰でも出来る。
「傍観者からすれば」とか、笑えること書いちゃう子がたまに居るが 書き込んでしまった時点で傍観者ではなく参加者になるんだがな
>>106 >66ごときで可読性もくそもないだろ。1しか入らない条件で、
プロシージャを分ける感覚がオレにはわからんよ。
分けたところで、2の時はどうやって呼び出すんですかぁ?
と訊いてくるのは目に見えている。
>105には禿しく同意だな。
123 :
よろしくおねがいします :2007/07/13(金) 10:36:57
Windows xp /Excel2002 / VBA使えませんがVBAでしかできない又はそのほうが遥かに簡単というのであればおk 検索キーワード/1列を複数列に など やりたいことは、1列のデータを複数列で横に展開したいということです。 しかも、横8列めで次の行に行く、という形。 例えると、1列40行のデータを、8列5行にしたいのです。 A B C D 1 山田 2 鈴木 3 小林 4 佐藤 5 田島 6 須藤 7 伊藤 8 竹中 9 三澤 ↓ A B C D E F G H I 1 山田 鈴木 小林 佐藤 田島 須藤 伊藤 竹中 2 三澤・・・・ 3 4 5 ということです。 1列の元データは固定ではなく、随時変更が加えられるので(挿入、削除、文字変更など) その都度、8列データの方も更新される、といった形にしたいです。どのような方法がありますか?
124 :
名無しさん@そうだ選挙にいこう :2007/07/13(金) 10:42:05
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 セルに7/13と入力するだけで 7/13(金) って感じで最後にカッコつきの曜日をつけたいのですが 書式設定でどう書けばいいですか?
m/d(aaa)
>123
元データを残す必要がありそうだから
シート2のA〜H列の必要な行数だけ次の式を入れる。
=INDIRECT("Sheet1!a" & (ROW()-1)*8+COLUMN())
動けばいいってレベルだから、もちっとスマートな方法は
>>111 に訊いてね。
127 :
よろしくおねがいします :2007/07/13(金) 12:16:08
>126 うお!感動しました。ありがとうございました!! ビバ2ちゃん。
128 :
名無しさん@そうだ選挙にいこう :2007/07/13(金) 15:07:19
129 :
名無しさん@そうだ選挙にいこう :2007/07/13(金) 15:25:22
データ 入力規則のリストで フォントの大きさ ドロップダウンリストの表示数 をかえることってできますか? excel2000使いです。お願いいします
Sub シート4色変換() Dim 次行, 色, 合格, 列, 行, 挿入行 As Integer, 判定値 As Single 挿入行 = 0 Sheets("Sheet4").Select For 次行 = 3 To 2061 Step 7 色 = 2 For 判定値 = 0.02 To 1 Step 0.02 合格 = 0 For 列 = 9 To 12 For 行 = 1 To 4 If Cells(行 + 次行, 列) < 判定値 Then 行 = 4 列 = 12 判定値 = 1 End If 合格 = 合格 + 1 Next 行 Next 列 If 合格 = 20 Then 色 = 色 + 1 End If Next 判定値 If 色 > 2 Then 挿入行 = 挿入行 + 1 Range(Cells(次行, 9), Cells(次行 + 4, 13)).Interior.ColorIndex = 色 Cells(挿入行, 14) = Cells(次行, 1) Cells(挿入行, 14).Interior.ColorIndex = 色 End If Next 次行 End Sub
132 :
131 :2007/07/13(金) 16:27:31
上記文で、11行目のIF文でエラーが出ます。 エラーが出ない方法を教えてください
オレはエラー出ないんだが。 というか「列」と「行」を4×4回廻しても、 「合格」が20になることは有り得なくて、 当然「色」も2を超える事は無い。 これは無意味にループを回すジョークプログラムか? それから Dim はひとつづつ指定するように、 For の抜け方も感心しない。
>>133 合格の数字16でした。
あと他にも直す所がありました。
元データにエラーがあったのが原因かもしれません。
新規シートではできましたので。
もっと勉強して精進致します。
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 テキストボックスに2文字入ったら次のテキストボックスに フォーカスを移動させたいのですがどうすればいいですか?
Private Sub TextBox1_Change() If TextBox1.TextLength = 2 Then TextBox2.SetFocus End Sub
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 特定のセル(A1)に「男」か「女」を入力し、 もし「男」ならセルC1に「2*3」を、「女」なら「2+3」を表示させたいのですが、 IF関数を使っても論理式には数値しか入力できないみたいで・・・。 文字列を使うことのできるIF関数のようなものはないのでしょうか?
>>138 やりたいのはこんな感じのであってますか?
=IF(A1="男","2*3",IF(A1="女","2+3",""))
VBAをはじめるにあたって みなさんはどういう風に勉強していきましたか? 手持ちの書籍はSHOEISHAのエクセルVBA完全制覇という 分厚本です。分厚すぎて重石にしかなってません。。
>>138 意味が分からないです。
C1=IF(A1="","",IF(A1="男",2*3,2+3))
ではダメなんですか?
>>141 その数式だと、"男"と入力した場合は"2*3"を表示しますが、"男"以外の文字を
入力すると"2+3"を表示してしまいます。
なので、(1)"男"と入力した場合 (2)"女"と入力した場合 (3)それ以外 を順番に
判定する形にしています。
143 :
138 :2007/07/13(金) 21:46:46
>>139 レスありがとうございます。
そうです、そんな感じなことをやりたいのですが、
男か女かによって計算式をパターンを変えたいのです。
しかし、「この関数に対して、多すぎる引数が入力されています」と表示されるのです
>>141 文字列扱うなら””で括る
で、その式だと、A1が男意外だと全部2+3が表示されるのはわかる?
>>140 まずは勉強方法すら聞いてしまおうという
安直な考え方を改めることから始めましょう
146 :
138 :2007/07/13(金) 22:07:53
>>140 俺の場合はexcel vba 初級 みたいな感じで検索して一番上に来たことを隅々まで読んだ
面倒だけどコピペせずに実際に打ち込みながら読み進めていくのがお勧め
ある程度理屈が分かってからEXCEL VBAのリファレンス本を買ったな¥2500ぐらいのぶっといやつ
EXCEL VBA関連の本はこれ1冊だけ 基礎はWebで十分だった
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 カレンダーのフォームで該当日付をクリックしてセルに日付(例:2007/01/01)を表示させたいのですが、 何かツールが必要でしょうか
>>140 俺、最初はそれで勉強したよ。
基本的なことはほぼ網羅してるし、痒いところも結構詳しく解説してる。
厚いけど解説が丁寧なので決して内容は十分でないけど入門ならそれ一冊で十分。
一週間まじめにやれば、ある程度の応用も身につくはずさ。
「重石にしかなってません。」とか言ってる奴に何言っても無駄
比喩表現も読み取れないバカはスルーで
XPのエクセル2000です。 貼り付けたデータが数値になってくれなくて困っています。 2000の仕様みたいですが。 で、VBAで数値に変換しようと思います。 何かいい方法ないでしょうか? 自分でも書いてみたのですが、途中でエラーになります。 何故ですか? Sub 数値変換() Dim str As String Dim y, a, b As Integer For y = 7 To 305 str = Sheets("sheet1").Cells(y, 119).Value a = Len(str) b = Right(str, a) Sheets("sheet1").Cells(y, 119).Value = b Next End Sub
XPのエクセル2000です。 小数点以下2桁の数字を入れる変数にSingleを選びました 変数に入った数値をセルに書き込むようにしたのですが、セルの値が狂うのです たとえば0.3と入れた場合0.300000011920929とセルに表示されます これの解決法を教えてください
>>152 3行目 y, a は Integer と宣言されない
7行目 Right の戻り値は String だから型が合わない。 Val で数値に汁
文字列の右から文字長分取り出すと、元の文字列と同じだろ。
Singleを選ばないでください
156 :
名無しさん@そうだ選挙にいこう :2007/07/14(土) 14:44:49
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 Excelの散布図グラフでX軸やY軸の値をセルから参照させますが そのテキストボックスに直接値を入力してグラフに反映させるにはどうしたらいいですか? 具体的には Y=5 (つまりXがどの値をとってもYは常に5) のグラフを散布図で作りたいのです 簡単なグラフなので直接かけるといいのにと思ったのですが無理でしょうか
>>156 散布図つかって横線引きたいってこと?
データ範囲の行と列の設定誤ってない?
158 :
156 :2007/07/14(土) 17:37:15
>>157 その行と列の設定の書き方を教えて欲しいのです
セル参照じゃなくて値を直接入力で
160 :
157 :2007/07/14(土) 19:51:32
>>158 系列を追加して、
Xの値に={0,1} (1の部分は任意のMAX値)
Yの値に={5,5}
Y=5をX→±∞で引く方法は知らん。
あとは横軸の長さ等で適当に見た目はごまかしてくれ。
162 :
名無しさん@そうだ選挙にいこう :2007/07/15(日) 00:09:31
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Exce2000 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 VBA 文字列 検索 find 等々 C:\AAAA\BBBBB\CCCCCCC\作業完了\XYZ\dddd\eeeee.csv というパスを PassName = "C:\AAAA\BBBBB\CCCCCCC\作業完了\" & myFilePass & "\dddd\eeeee.csv" という様に置き換えたいのですが、どうやればいいのかわかりません。 "C:\AAAA\BBBBB\CCCCCCC\作業完了\"の部分はおそらく固定なので そのままパス名をコードに書き込む事は可能なのですが "\dddd\eeeee.csv"の部分を抜き出す方法がわかりません。 また、"\XYZ\dddd\eeeee.csv"は階層の深さもファイル名も変わります。 左から\の個数を数え、その\より後、または\より前を抜き出す事は可能でしょうか。
>>162 可能
Excel関係なく
>>2 \7に該当するから具体的な方法は伏せるが
文字列操作の初歩中の初歩だよ
ただ¥を判断して抜き出すなら。もっといい方法もあるだろうけど俺にはここまで。 Sub 文字の抜き出し() Dim str_Dat As String Dim lng_Num As Long Dim myCrtPath As Variant myCrtPath = CurDir("c") Debug.Print myCrtPath lng_Num = InStr(myCrtPath, "\") Debug.Print lng_Num str_Dat = Mid(myCrtPath, lng_Num + 1) Debug.Print str_Dat lng_Num = InStr(str_Dat, "\") Debug.Print lng_Num str_Dat = Mid(str_Dat, lng_Num + 1) Debug.Print str_Dat lng_Num = InStr(str_Dat, "\") Debug.Print lng_Num str_Dat = Mid(str_Dat, lng_Num + 1) Debug.Print str_Dat End Sub
ああ、上みたいに面倒なことなくても、右から"作業完了\"までを検索すれば簡単になるか。
InStrの反対のInStrRevを使えばできるな。
>>163 関数そのものはVBA関数にあるのにく
>>2 \7に該当するのか?
>>163 スレ違いだったんですね・・・申し訳ない。
初歩中の初歩という事が聞けただけで嬉しいです。
ありがとうございます。
>>164 文字列操作に関しては全く無知なので参考になります。
そのコードを参考に色々勉強します。
本当にありがとうございます。
連休中に何とかなりそうです。本当にありがとうございます。
>>165 組み込み関数はVisualBasic6.0開発環境とほとんど共通、VBSとも多くが共通
つまりこれらはVBA関数ではなくVB関連言語の関数
なのでそれらの関数を使ってるからと言ってExcelの分野とは言えない
>>3 にもあるようにVBAの[A]であるExcel Applicationを操作して初めて
VBではなくVBAの分野の話になる
あっそ。このスレにお世話になったことがあるから、俺は自分でわかるところは答えるだけだ。
なんでもかんでもスレ違いにしようとする人が居るみたいだけど Excelの置換え機能使ったことないのか? Private Sub CommandButton1_Click() Dim myFilePass As String Dim flag As Boolean myFilePass = "xxxx" Range("A1:A2").Replace what:="dddd\eeeee.csv", replacement:=myFilePass & "\dddd\eeeee.csv" End Sub
170 :
169 :2007/07/15(日) 01:32:31
ちょっと間違えてた。 × Range("A1:A2").Replace what:="dddd\eeeee.csv", replacement:=myFilePass & "\dddd\eeeee.csv" ○ Range("A1").Replace what:="dddd\eeeee.csv", replacement:=myFilePass & "\dddd\eeeee.csv" スレ違いでしょうか?
>>169-170 気分良く指摘したつもりになってるところ悪いが
dddd\eeeee.csvは可変なので、そのままでは使い物にならない
その方法が使えるような質問内容だったらスレ違いではないけど
今回のはそうではないし
まあワークシート関数をVBAから呼び出して組み合わせれば
Replaceメソッドで対応出来ないこともないけど不自然だしね
ところでDim flag As Booleanは何に使うの?
172 :
名無しさん@そうだ選挙にいこう :2007/07/15(日) 01:41:31
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Exce2000 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 すばやくオートフィルする方法を教えてください 今はマウスでドラッグさせてフィルしてるんですが データが数万になってくると指がつりそうになります
>>172 カーソルが+になったところでダブルクリック
>>174 これで行き過ぎてイライラする事もなくなりそうです
ありがとうございました
>>171 不自然ってなに?w
不自然=スレ違いで片付けるのかよ。
LenやLeft、Right使わないで出来るなら教えてやればいいじゃん。
だいたい、いまどきのVBAリファレンス買えば文字関数なんて必ず載ってるのに
スレ違いって頭固すぎるね。
教えたくなかったらレスしなければいいのに。
どうしたの? 何か嫌なことでもあったか?
……\eeeee.csv はパスじゃないんだが
180 :
名無しさん@そうだ選挙にいこう :2007/07/15(日) 11:12:03
たすけてくだされ! Excel2007で集計ってどこから選択できるんですか? 見つからないから集計するときだけ2003使ってる・・・・・・・・・・・・・・。
>>180 データタブ→アウトライン(リボン)→小計
これでどうでしょう
184 :
名無しさん@そうだ選挙にいこう :2007/07/15(日) 14:00:53
>>180 確かに今までのに慣れていると2007はスゲー使いづらく感じるなw
185 :
名無しさん@そうだ選挙にいこう :2007/07/15(日) 15:35:27
エクセル 2000 です。 小数点以下の00を表示しないにはどうしたらいいですか?
>>185 見かけ上だけでよいなら書式設定を「0」
計算結果自体をそうしたいならROUDDOWNやROUND関数使えばよし
187 :
名無しさん@そうだ選挙にいこう :2007/07/15(日) 16:34:54
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 少々 【4 VBAでの回答の可否】 可 A B C D E ・ ・ 1 山田 佐藤 鈴木 吉田 2 加藤 相馬 野口 3 坂口 田口 中沢 渡辺 4 吉井 木下 5 ・ ・ このような表を空白セルを無視し、同一シート内に例えば「A10」から 横一列に 山田 佐藤 鈴木 吉田 加藤 相馬 野口・・・ と並べ替えることは可能でしょうか。 よろしくお願いします。
>>187 とりあえず作ってみたんだけど変な動きをする。
何が悪いのかよく分からない・・・。便乗質問って形で、識者の方、ご教授願います。
Sub どんどんコピー()
x1 = 1
y1 = 1
x2 = 1
y2 = 10
yoko = 7 '横方向に名前が入力されている数
tate = 7 '縦方向に名前が入力されている数
For j = 1 To tate
For i = 1 To yoko
If Cells(x1, y1).Value <> "" Then
a = Cells(y1, x1).Value
Cells(y2, x2).Value = a
x2 = x2 + 1
End If
x1 = x1 + 1
Next i
x1 = 1
y1 = y1 + 1
Next j
End Sub
>>187 こんなのはどう?動かんかったら直してね。
Option Base 1
Sub narabechau()
Dim Rng1 As Range, Rng2 As Range
Dim Ary() As Variant
Dim i As Integer, j As Integer, n As Integer
Set Rng2 = Range("A1").CurrentRegion.SpecialCells(xlCellTypeConstants)
n = Rng2.Cells.Count
ReDim Ary(n)
i = 1
For Each Rng1 In Rng2
Ary(i) = Rng1.Value
i = i + 1
Next Rng1
For j = 1 To UBound(Ary)
Cells(10, j) = Ary(j)
Next j
Set Rng2 = Nothing
End Sub
よく考えると if 以降の2行分、 cells(y2, x2).value = cells(x1 ,y1 ).value の方がすっきりしてますね。
>>190 無駄が多いでつね。直しきれません。
Sub どんどんコピー()
x1 = 1
y1 = 1
x2 = 1
y2 = 10
yoko = 7 '横方向に名前が入力されている数
tate = 7 '縦方向に名前が入力されている数
For j = 1 To tate
For i = 1 To yoko
If Cells(y1, i).Value <> "" Then
Cells(y2, x2).Value = Cells(y1, i).Value
x2 = x2 + 1
End If
Next i
y1 = y1 + 1
Next j
End Sub
Option Base 1 Sub hoge() Dim r As Range, rng As Range Dim ary() As Variant Dim i As Long, n As Long Set rng = Cells.SpecialCells(xlCellTypeConstants, 23) n = rng.Cells.Count ReDim ary(n) i = 1 For Each r In rng ary(i) = r.Value i = i + 1 Next rng.Delete Range(Cells(10, 1), Cells(10, n)) = ary Set rng = Nothing End Sub
193 :
187 :2007/07/15(日) 19:39:39
>>188-192 みなさんどうもです!ばっちり動きました。
これで作業能率が何倍にもあがりそうです。
本当にありがとうございました。
こんばんは。初歩的なことなのですが 日付を2007/7/1と入力しそのままドラッグで7月31日まで作りたいのですが、 2007/7/9までは表示されますがその後が「########」になってしまいます。 これはどういうことなのでしょうか。 エクセル2000です。 よろしくお願いします
セル巾を拡げる
1つのブックの各シート毎にファイル(データを羅列したtxt)を展開したいのですが どのようにすればいいでしょうか。 【2 Excelのバージョン 】 Excel2003
202 :
名無しさん@そうだ選挙にいこう :2007/07/16(月) 07:43:19
実行中のモジュールを強制終了させるにはどうすればいいのでしょうか バージョン2002
モジュール? プロシージャではなくて? プロシージャならCtrl+Breakで強制終了というか強制中断でき、そこから更に修了も出来る でも途中終了する可能性が事前に解ってるなら、終了フラグを作っておくべきだな
204 :
名無しさん@そうだ選挙にいこう :2007/07/16(月) 08:06:00
>>203 ありがとうございます
すいません、プロシージャでした。
ですがCtrl+Breakと言う操作が分かりません?
具体的にどのような操作が必要なんのでしょうか
お願いします。
205 :
名無しさん@そうだ選挙にいこう :2007/07/16(月) 10:21:40
エクセル2000 罫線付の表に数字が何十行もあって、しょっちゅうひとつ下へずらしたりすることが よくあるんですがそのときに、 「形式を選択して貼り付け」で「数値」を選ぶやり方は知っているんですが それ以外にもっと良いやり方はないですか?
206 :
名無しさん@そうだ選挙にいこう :2007/07/16(月) 10:26:45
>Ctrl+Break キーボードのCtrlキーとBreakキーを同時に押す事なんじゃ? こういう操作表現はこれからも一杯出てくるよ
>204はPause/Breakキーがどこにあるかも 知らないんじゃねーの
209 :
名無しさん@そうだ選挙にいこう :2007/07/16(月) 15:33:34
210 :
名無しさん@そうだ選挙にいこう :2007/07/16(月) 15:38:02
うぜえな
2007使いづれえー セルの書式設定って右クリック以外でどこにあるの?
213 :
名無しさん@そうだ選挙にいこう :2007/07/16(月) 22:54:06
>>206 舌足らずでした。外枠罫線の枠を増やさず数値のみの移動をしたいんです。
行挿入だとその分表が大きくなるでしょ?
214 :
名無しさん@そうだ選挙にいこう :2007/07/16(月) 23:22:39
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 否 =SUMIF(,sheet1!A:A,A1,sheet1!B:X)とやるとエラーになります。 =SUMIF(,sheet1!A:A,A1,sheet1!B:B)+SUMIF(,sheet1!A:A,A1,sheet1!C:C)+..... とするか、VBAで合計するしか方法が無いのでしょうか。
215 :
名無しさん@そうだ選挙にいこう :2007/07/16(月) 23:38:49
自己解決しました。すいません。 {=SUM(IF(sheet1!A1:A65535=A1,sheet1!B1:X65535))}
>>213 行の挿入したら、その分空行を削除すればいいだけだよ
下にずらせるってことは、下に空行があるってことだし、別にたいした手間もかからない
そんなことにも気付かないの?
もしかして、更に条件後出しで「挿入→削除」はヤダとか言い出さないよね?
ちなみに君は舌足らずではなく言葉足らずねw
舌足らずってのは発音に関するものだ
217 :
名無しさん@そうだ選挙にいこう :2007/07/17(火) 02:18:36
うぜえ
218 :
名無しさん@そうだ選挙にいこう :2007/07/17(火) 06:53:55
データ 入力規則のリストで フォントの大きさ ドロップダウンリストの表示数 をかえることってできますか? excel2000使いです。お願いいします
220 :
名無しさん@そうだ選挙にいこう :2007/07/17(火) 15:01:52
【1 OSの種類 】 Windows XP 【2 Excelのバージョン】 Excel2003 【3 VBAが使えるか 】 はい 【4 VBAでの回答の可否】 可 質問です。 一枚のシートを、3部印刷した時にそれぞれのヘッダが 【A】【B】【C】となるようなマクロはありますか? 3部印刷するのはマクロを使って、 Sub 3部印刷する() 部数 = 3 Sheets("SSS").PrintOut Copies:=3 End Sub と記述しています。 どなたかよろしくお願いします。
【1 OSの種類 】 Windows XP 【2 Excelのバージョン】 Excel2003 【4 VBAでの回答の可否】 なるべく、VBAは使わない方向で 次のような表がある時に、5人以上に該当する最高得点と最低得点を求めたい場合の 算式を教えてください。 人間なら最高70点、最低40点とすぐにわかりますが、Excel式で表す方法がわかりません。 この例題では100点から0点の11段階しかないので、If文の10重入れ子でなんとかなりそうですが、 実際には1点刻みで100段階以上あるのでIf文の入れ子は不可能です・・・ 100点 1人 90点 1人 80点 2人 70点 8人←5人以上が該当する最高得点 60点 9人 50点 4人 40点 6人←5人以上が該当する最低得点 30点 4人 20点 2人 10点 0人 0点 0人
222 :
名無しさん@そうだ選挙にいこう :2007/07/17(火) 16:11:30
バージョン2000です。 セルに収まりきらない文字数の場合 セルを横にはみ出してまで表示させる方法はないでしょうか? またそれを上下に複数行出来ますか?
223 :
221 :2007/07/17(火) 16:20:33
フラグを使ったらあっさり解決できました。以上
【1 OSの種類 .】 Windows XP 【2 Excelのバージョン 】 Excel2002 【3 VBAが使えるか .】 使えない 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 突然 一部のマクロ有りのファイルが開けなくなりました。 マクロを有効にするかどうかを聞いてきて 有効にすると そのまま終了してしまいます。 修復インストールはしてみました。 その他、何か思い当たることはないでしょうか?
225 :
224 :2007/07/17(火) 18:42:47
visual basic editorすら起動しないことに気がついた。 なんか他の理由が有りそうです。 もう少し検証してみます。
>>219 散々既出だが、フォントの大きさはレジストリで変えられるけど
Excelのシステムフォント自体の変更だから他の所まで大きくなる
フォントだのDDリストだのを自由に変えたければ、入力規則のリストという
気軽に使える変わりに機能が限定された簡易ドロップダウンボックスではなく
本物のドロップダウンボックス(コンボボックス)を使おうね
>>222 そのはみ出し表示させたいセルの右側のセルを空にしておけばいいだけだが
そういうことでないならちゃんと日本語で説明してくれ
>>224 修復インストールではなくOfficeをアンインストール→インストール
それでもダメだったらOSをクリーンインストール後Officeをインストール
更にそれでもダメだったらもう一度おいで
自分で出来ること(OSやOfficeのインストール作業)すら面倒だからやりたくないとかは無しの方向で
まあインストール作業が嫌だから自分で解決方法探すというならそれはそれでいいが
227 :
224 :2007/07/17(火) 19:46:17
.NET.flamework3.0を削除したら 無事起動できるようになりました。 アン・インストール → 再インストールもしてみたけど やっぱりダメで 最近インストールしたものは上記のものしかなかったので削除してみました。 もともと matroxのボードに必要だったので 1.0はインストールしてあったんだけどね 3.0が原因とは思いもしませんでした いろいろ お騒がせしました。
おー、そんな事もあるのか。 これはありがたい情報。
【1 OSの種類 .】 Windows2000 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 少しだけです 【4 VBAでの回答の可否】 可 A列にA-001、A-002、A-003・・・・A-999(末尾は三桁数値です)っていう値が並んでます。 全く同じ名前のファイルが、このブックと同一フォルダに有ります。 ハイパーリンクを設定して値をクリックしたら、それと同じ名前のファイルが開くように 設定したいのですが、一つ一つ入力はかなりの労力です。 開きたいファイルも連続した数値ですから、オートフィルのような簡単な方法で、 ハイパーリンクを設定することはできないでしょうか?
>>216 >>213 じゃないが、お前に回答者を気取る資格はないよ。
相手の無知を煽るのが目的なら、鬱陶しいから失せてくれ。
234 :
名無しさん@そうだ選挙にいこう :2007/07/18(水) 00:19:18
>>220 【A】【B】【C】となるようなマクロはありますか?
ありません。しかし作ることはできます。
まずマクロの自動記録で、ヘッダを【A】にして1部印刷
【B】にして1部印刷、【C】にして1部印刷してみて
ヘルプを見ながらコードを研究してみてくだはい。
>>230 HYPERLINK関数を調べると幸せになれるかもしれない。
>234 回答ありがとうございます。 ヒントをもとに、自動記録を使ってみました。 sheet2にあらかじめ【A】【B】【C】を入力しておき、 ヘッダではなくセルA1に【A】をハイパーリンク→印刷 A1消去、【B】をハイパーリンク→印刷 A1消去、【C】をハイパーリンク→印刷…… でしました。 お騒がせしました。
239 :
名無しさん@そうだ選挙にいこう :2007/07/18(水) 11:15:48
2007なんじゃこれ〜 CSVを扱うと落ちまくるし、メモリーリークしたまま帰ってこないし、強制終了効かないし、使えね〜
【1 OSの種類 .】 Windows xp sp2 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 少し 【4 VBAでの回答の可否】 可 ユーザ定義型(構造体)について教えてください。 Type SheetStructure myStr As String targetBName(9) As Variant targetSName(6) As Variant 他にメンバ多数 End Type これを引数にするのですが、対象ブックが10のときもあれば1のときもあります。 なので、 Dim typArgStruct_1B As SheetStructure でインスタンス?を作ったとき、targetBName(9)をtargetBName(0) に出来ないもの物でしょうか。 なんかむちゃくちゃなことを言っていますが、 ご教示いただけたら助かります。よろしくお願いします。
1〜5行目を固定して、6行目以降のみスクロールバーでスクロールさせる設定は どうやればいいのでしょうか?
>>240 構造体作る時にRedimで配列の長さを定義しなおせばいいんじゃね?
Type chinko
rightBall() As String
leftBall() As String
bigJhon As Long
End Type
Sub hoge()
Dim mySon As chinko
'配列の長さを定義しなおす
ReDim mySon.rightBall(1), mySon.leftBall(1)
'値設定
mySon.rightBall(0) = "b1": mySon.rightBall(1) = "b2"
mySon.leftBall(0) = "sh1": mySon.leftBall(1) = "sh2"
mySon.bigJhon = 8
'引数として渡す
Call hogehoge(mySon)
End Sub
'構造体を受け取る関数
Sub hogehoge(penny As chinko)
Dim i As Long
For i = 0 To UBound(penny.leftBall)
MsgBox penny.leftBall(i) & ":" & penny.rightBall(i)
Next
End Sub
それか、 rightBall As variantで宣言しておいてarrayつっこんでuboudで処理とか Type chinko rightBall As variant rnd type mySon.rightBall = array("b1","b2")
244 :
240 :2007/07/18(水) 13:19:15
>>242-243 ご丁寧に教えていただきありがとうございました。
シートに関する処理を詰め込んだひとつの関数に構造体を渡す計画に光が見えました。
redimでrightBallとはうまいですね(笑
>>241 6行全部を選択して、ウインドウメニュー>ウインドウ枠の固定でいかがでしょうか。
245 :
241 :2007/07/18(水) 14:25:16
>>244 回答ありがとうございます。
早速やってみたところ、範囲指定関係無しに30行目以降が固定されてしまいます。
これは仕様なのでしょうか?
246 :
241 :2007/07/18(水) 14:26:35
すみません。自己解決しました。 ありがとうございました。
【1 OSの種類 .】 Windows Xp 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 date関数・標準モジュール・thisworkbook vbaで右クリックした時に動くマクロを作ろうとしています。 日付を以下の記述で取り出し、他のシートに値を放り込もうとしています。 しかし『コンパイルエラー』『プロジェクトまたはライブラリが見つかりません。』 と出てデバック画面になってしまいます。 Dim HIDUKE As Date HIDUKE = Date 根本的なことなのだと思いますが、何が間違っているか教えて下さい。 お願いします。
248 :
247 :2007/07/18(水) 14:51:21
すいません。 やっぱり自分でいろいろと検証してみます。 上記の相談は、他の人が困っていてそのまま相談カキコミしてしまいました。 検索して、同様のコードを貼り付けなどしてみると動いたりします。 また困ったら相談させてください。 スレ汚しすいませぬ。
EXCEL2007でセル選択のとき、ひとつのセルを選択すると、隣の2つのセルも選択されてしまいます。 非常に使いづらいので、ひとつのセルを選択するように設定できないでしょうか?
250 :
247 :2007/07/18(水) 17:07:24
追記: 対処はできました。しかしよく分らない解決でした。 vbにてDate関数(?)が機能しないのでいろいろ試していました。 結論としてはBookに問題ありでした。 他のBookにて機能するDate関数を含む構文が、とあるBookに貼り付けるとうまくいかない。 「標準モジュール」に貼り付けたのが悪いのか、「thiswookbook」に貼り付けたのが悪いのか。 あるいはexcelのバージョンの違いが原因なのか。 いろいろと条件を変えたところ、結局わからずじまい。 新規に作ったBookにシートをコピーして移動し、 標準モジュールもエクスポートしておいたものをインポート。 「thiswookbook」の構文はインポートできなかったので、手作業でコピーペースト。 以上の手順で動くようになりました。 元々のexcelファイルは2002年に作られたもの。 office2000で作った物だろうからバージョンは同じで問題なし。 (テンプレで2003と書きましたが、2台で検証していたので2000も使いました。)
毎日新しい情報を一番上に入れるために それまでの情報を全て選択して切り取って何段か下げる作業をしています。 情報がたまってくるとその選択する作業が面倒になってきます。 もっと簡単な方法はありますか? excel2003 XPです。
>>250 そういうケースは大抵の場合は、VBEで参照設定調べてみると、
動かないブックは変なもん参照してるからそれをはずせばおk
>>251 コピーしたセルの挿入ってのが右クリにある
254 :
251 :2007/07/18(水) 20:17:36
>>253 おおお、できました。ありがとうございました!
255 :
名無しさん@そうだ選挙にいこう :2007/07/18(水) 21:19:15
いつもお世話になります マクロ解除について相談にのってください 立ち上げ時に毎回、「マクロ使用の確認」がでるのが面倒なのでマクロを消したいと思います そこで本スレやネットで調べたように、マクロの標準モジュールを開放をし、すべてのマクロを開放したはずですが、なお立ち上げで確認されてしまいます。 どうすればマクロを完全に排除し、この確認をスキップできるでしょうか? なお標準モジュールの真上にあったパーソナルモジュール?も開放しています(これを消さないと立ち上げるたびに勝手に標準メジョールが作成されていたため)他ブックからのリンクもありません。 はて、どうしたものか 困りはてています。。。
>>255 シートかThisWorkBookになんか書かれてるんだろ
VBA画面で上記をダブルクリックしてコード書かれてるのをデリすれ
言ってることが分からなかったらEXCEL新規作成してそこにEXCELの必要なシートをコピペして保存すればいい
古いほうは捨てて新しいのを使うようにすればVBAはまっさらだ
257 :
名無しさん@そうだ選挙にいこう :2007/07/18(水) 22:29:53
【1 OSの種類 .】 WindowsXP
【2 Excelのバージョン 】 Excel2003
【3 VBAが使えるか .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード 】 分析ツールが追加されない 分析ツール 表示されない アドイン
>>114 でも似たような質問があるのですが、
アドインで分析ツールをチェックしてOKを押しても
ツールに分析ツールが追加されません。
どうやったら追加されるでしょうか。
【1 OSの種類 .】 Windows2000 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 エクセル CONCATENATE A B 1 No.12345 NIKU 2 SAKANA 3 YASAI 4 No.12346 YASAI 5 NIKU 6 SAKANA 7 YASAI これを↓ A B 1 No.12345 NIKU SAKANA YASAI 2 SAKANA 3 YASAI 4 No.12346 YASAI NIKU SAKANA YASAI 5 NIKU 6 SAKANA 7 YASAI こうしたいです 要は、A列のNo.で区切られるB列の内容を一行にまとめたいわけですが、これが6万行ぐらいあるので何とか一括で処理したいです。しかしA列の区切る行数がバラバラで、No.だけの行もあったり…どうすればいいでしょうか?
【1 OSの種類 .】 Windows2000
【2 Excelのバージョン 】 Excel2000
【3 VBAが使えるか .】 はい
【4 VBAでの回答の可否】 可
【5 検索キーワード 】 エクセル URL 設定 ブラウザ
セルに
http://www …
と入力するとURLになりますが、
クリックして起動するのはIEです。
しかも何故かエクセルは最小化されてしまいます。
Q1 IEではなく、DonutPというタブブラウザで起動するように設定できませんでしょうか。
Q2 エクセルが勝手に最小化しないようにできませんでしょうか。
↓ではマイクロソフトの限界と結論付けています(限界ではなく陰謀では?)
http://q.hatena.ne.jp/1117801753
セルを古い順に並び替えるというものなんですが間違ってるとこありますか? Selection.Sort key1:=Range("B5"), order1:=x1Ascending, Header:=x1Guess, _ orderCustom:=1, MatchCase:=False, Orientation:=x1TopToBottom, SortMethod _ :=x1PinYin, dataoption1:=x1SortNormal
262 :
247 :2007/07/19(木) 02:05:21
>>250 どうもありがとうございます。
まだ確認はしていないのですが、参照ライブラリの設定は各PCに入っているofficeごとの設定だと思っていました。
Bookごとに設定されている、ということですね。
ヒントになりました。
また調べてみます。
【1 OSの種類 .】 Windows Xp 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 ぃぃぇ 【4 VBAでの回答の可否】 否 0 0 0 50 100 200 以上の様なデータが大量にある場合に、0以外の最小値を求める時にはどうすればいいのでしょうか? min(上記のセル) だと、求めたい数値は50なのに、結果は「0」になってしまいます。
=SMALL(範囲,COUNTIF(範囲,"=0")+1)
>>263 関数を組み合わせるか、ゼロを消してしまえ
組み合わせ方がよく分からないなら、作業用のセルを隣に作ってそこでゼロを削除するなりしよう
=IF(A1=0,"",A1)
など
あとは作業セルに対してMIN関数で集計すればよし
ゼロを消すなら範囲指定しておいて検索だ
検索された結果をShiftキーを押しながら全部選択すればゼロが入力されたセルが全て選択される
あとはDelキーを押せば綺麗に消える
>>260 ExcelがURLクリック時に使うブラウザを変更するのは結構面倒なので
(単純にレジストリで関連付けただけじゃダメなので)
VBAのイベント使ってURLが書かれたセルをクリックしたら
任意のブラウザにURL渡すようにしておくのが手軽だよ
267 :
名無しさん@そうだ選挙にいこう :2007/07/19(木) 12:13:26
すいません、オフィスシリーズで、ある作業をショートカットみたいに登録できるって 聞いたことあるんですけど、ヒントを教えてください。 たとえば、コピー→形式を選択して貼り付け→値 と言うようにマウスやキーボードでいくつかのステップを踏む必要があるものを、 反復的にやる必要がある時に、結構時間がかかってしまいます。 Ctr+Cでコピー、その後、あるキーを入力すると、形式を選択して貼り付け→値となるショートカットを 作りたいのです。 2003,2007両方ともやりたいです。
>>267 1)ツール>マクロ>新しいマクロの記録
2)反復動作させたい作業内容を実際に操作する
3)記録終了ボタンを押す
4)ツール>マクロ>マクロ
で実行すれば記録した内容を1回自動で行なってくれる
詳しい内容が知りたかったら
EXCEL マクロ 初心者
見たいな感じで検索しれ
>>267 悪いことはいわん。素直にツールバーに
値貼り付けボタンおいて桶。
270 :
名無しさん@そうだ選挙にいこう :2007/07/19(木) 15:44:58
ルール違反すいません。 ExcelBVAも中級クラスで使いこなせます。 が、自分はやったことないことなので、基本的なことかも知れませんがわかってない機がします。 作業を反復させるのではなく、「ある動作のみ」実行するって方法です。 ショートカット割り当てってようなことなんですよ。 クリップボードにある図形をコピーしてある。 次に、任意の貼り付けたいセルをクリックする。 このとき!あるキーを押すと「形式を選択して貼り付け→値のみ」を押した事と同じ動作をしてほしい
271 :
名無しさん@そうだ選挙にいこう :2007/07/19(木) 17:05:59
WindowsXPでExcel2003を使っています。 微分の計算は出来るのでしょうか 例えばセルに =(x^5+2x^3+5)' と入力してみたのですが、数式が正しくありませんと表示されてしまいました。
272 :
名無しさん@そうだ選挙にいこう :2007/07/19(木) 17:34:47
>>270 VBAが中級レベルで使いこなせるんなら
楽勝だろ?
まんまコード書いてショートカットに割り振っちゃえよ
>>270 VBAが中級レベルで使いこなせるんなら
楽勝だろ?
まんまコード書いてショートカットに割り振っちゃえよ
びぶんの事はびぶんでしなさい。
>>267 ,
>>270 >>267 ,
>>270 の質問レベルからして、君はまだVBA入門者レベルですよ
未だ初心者レベルにも達して居らず、やっとVBAの門を潜ったばかりというところ
やったことないから知らないなんて言い訳に過ぎず、この程度のことを
ヘルプとGoogleで調べ付けられない基礎能力が既に初心者以下と言える
どうせ基礎能力だけでなく知識の方もたいしたこと無いんだろうし
276 :
名無しさん@そうだ選挙にいこう :2007/07/19(木) 19:14:20
>>275 まぁそう言うなって。
VBA中級でも、検索初心者なんだからさ。
まずは毎日骨太飲むといいぞ。
「ある動作のみ」をマクロの記録で録ってマクロ一覧のオプションでキーを割り当ててやるだけじゃん。 中級者だの入門者だの以前にVBA全く使えませんって奴だってこのくらいのことは結構やってるよ。 だって自分でコード書いてOnKeyでキー割り当てたりするならVBA使ってると言えるけど、 これだと記録機能や割り当てキー選択機能を使ってるだけの話だからね。
>>276 VBA中級というのは、情報が存在するなら
自分のやりたいことを自分で調べられる能力も含みます
学校のテストと違って、事前知識を試しているわけではないしね
そんなのは毎日骨太でも飲んで落ち着いて考えてみれば解ることだろう
俺のことではないけど、ベテランプログラマだってプロジェクトの立ち上げから完成まで
一切書籍を開かず、Web検索を使用せず、アンチョコも見ずに
事前知識だけでコーディングしてるわけじゃないから
279 :
名無しさん@そうだ選挙にいこう :2007/07/19(木) 20:38:26
うぜえ お前の自己紹介なんてどうでもいい
検索出来ない自称プログラム中級者って交差点で右折できない自称車運転中級者みたいなものか
Shift×5回でシフトロックがかかりますが 一度かけると抜け出せないです。 再度5回押しただけじゃだめ?
>>281 それって、固定キー機能?
だったら、コントロールパネル→ユーザー補助のオプション→固定キー機能を使うのチェックを外す。
なぜロックを掛ける?手か指が少ないの?
間違えてShiftを5回押すのなら有効にならないように設定しとけばいいのに。
284 :
260 :2007/07/19(木) 21:24:42
>>266 ありがとうございます。
VBAは趣味の独学程度のレベルなので
「任意のブラウザにURL渡すようにしておく」というコードを
どうやって作ってよいかわかりません。
命令文だけでも教えてプリズ。
285 :
名無しさん@そうだ選挙にいこう :2007/07/19(木) 21:55:59
【1 OSの種類 .】 Windows Xp 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 【5 検索キーワード 】select case A B C スタート 10:00 りんご 1速 10:00 2速 10:00 3速 10:01 スタート 10:05 4速 10:06 ストップ 11:12 スタート 13:25 ぶどう 1速 11:26 2速 12:01 スタート 12:50 スタート 13:00 ストップ 20:00 〜以降2万行ぐらいあります〜〜〜 書式はカラムAは文字列、Bは時刻、Cは文字列に設定してあります 一番時刻の新しいスタート時刻からストップまでで運転時間を計算させ 指定のセルに出したい場合どのようにすればいいですか? スタートが複数回出てきますが対になるストップは1回しか出てきません 上のケースで言えばsheet2に A B 運転者 運転時間 りんご 1:12 ぶどう 7:00 と出したいです。
>>285 「りんご」は最初のスタート時刻とストップ時刻の差を出してるのに、
「ぶどう」は最後のスタート時刻とストップ時刻の差を出してる。
どっちが正しいんだ。
説明文と合致しているのは「ぶどう」のようだが。
287 :
名無しさん@そうだ選挙にいこう :2007/07/20(金) 00:24:36
>一番時刻の新しいスタート時刻からストップまでで運転時間を計算させ 指定のセルに出したい場合どのようにすればいいですか? ストップの時間から一番新しいスタート時刻を引けばよろしい。
すいません、教えてください 例えば Aのラインに商品一覧を書いて、BからH位に各スペックを書いて Aはそのままの位置で動かなくて、BからHまでを横スクロールするのは どうしたら出来るんでしょうか?
↑ 訂正:BからHのみを横スクロールするには です
290 :
名無しさん@そうだ選挙にいこう :2007/07/20(金) 01:03:13
三角形のなかに 60゜とか 直角マークとか いれるにはどうしたらいいですか 算数のプリントつくるのにしりたいので おしえてください
>>288 B1にカーソル置いて「ウインドウ枠の固定」
>>290 「花子」などの図形プロセッサをお使いください
>>288 分割/ウインドウ枠固定 で検索しようね
>>290 IMEの話か?
だったらスレ違い
【書式設定】の話なら乗っても良い
ユーザー定義で 「0°」
を設定してみなさい(「」は含まない)
的外ればっかだな
294 :
名無しさん@そうだ選挙にいこう :2007/07/20(金) 07:31:58
>>286 すいません書き間違えてますね
A B
運転者 運転時間
りんご 1:07
ぶどう 7:00
が正しいです
>>287 複数あるスタートの中でストップから見て一番新しいスタートというものを
どうやって判別させるのかよく分からないのです
>>294 ちゅーか、VBA使えるならマクロ組めばいいのに。
296 :
名無しさん@そうだ選挙にいこう :2007/07/20(金) 09:07:13
質問なのですが 【1 OSの種類 .】 WindowsXP SP2 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 Googleとヘルプ バランスシートを棒グラフで作成(資産と 負債・資本が対になっているのです)を作成しようとしたのですが エクセルのグラフ作成には入っていないのですが 何か良い方法は無いのでしょうか?
>294 そんな判別必要ねーべ Sub hoge() n = 2 For i = 1 To Range("A65536").End(xlUp).Row If Cells(i, 3) <> "" Then dName = Cells(i, 3) If Cells(i, 1) = "スタート" Then dStart = Cells(i, 2) ElseIf Cells(i, 1) = "ストップ" Then dStop = Cells(i, 2) Sheets("Sheet2").Cells(n, 1) = dName Sheets("Sheet2").Cells(n, 2) = dStop - dStart n = n + 1 End If Next End Sub
>>264 >>265 回答ありがとうございます。
書き忘れましたが、セルの配置が非常にゴチャゴチャしてて、作業セルを利用すると
一からワークシートを作り直さないといけないので、どうしても作業セルなしでやらなければなりませんでしたが、
>>264 さんの方法でできました。
ありがとうございました。
299 :
名無しさん@そうだ選挙にいこう :2007/07/20(金) 12:00:33
【1 OSの種類 .】 Windows XP SP2 【2 Excelのバージョン 】 Excel 2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 どう調べてよいか見当つきませんでした Sheet1にマスタデータとして、以下のデータがあります。 ─┼───┼───┼ 1 .| 番号 | 名前 | ─┼───┼───┼ 2 .| 1 |赤井 | ─┼───┼───┼ 3 .| 2 |青井 | ─┼───┼───┼ 4 .| 3 |白井 | ─┼───┼───┼ 5 .| 4 |黒井 | Sheet2にマスタデータから抽選を行った結果として、当選した番号のみが記録されたデータがあります。 ─┼───┼ 1 .| 番号 | ─┼───┼ 2 .| 2 | ─┼───┼ 3 .| 4 | この2つのシートを合成?して、以下のように当選した番号と名前を出力するにはどうすればいいでしょうか? この例のように4件程度なら手でやればいいんでしょうが、実際は2万件ほどありますので途方に暮れています。 ─┼───┼───┼ 1 .| 番号 | 名前 | ─┼───┼───┼ 2 .| 2 |青井 | ─┼───┼───┼ 3 .| 4 |黒井 |
300 :
299 :2007/07/20(金) 12:06:17
すみません、
>>299 の「番号」はA列、「名前」はB列になります。
よろしくお願いします。
301 :
299 :2007/07/20(金) 12:20:09
自己解決しました。 Sheet2 の B列 に =VLOOKUP(A2,Sheet1!$A$2:$B$5,2,FALSE) でいけました。
302 :
名無しさん@そうだ選挙にいこう :2007/07/20(金) 15:01:32
>>277 なーるほど、イベントを選ぶだけか。よゆーじゃん。助かったぜ。
303 :
よろしくおねがいします :2007/07/20(金) 15:32:28
Windows xp /Excel2002 / VBAはちょびっとしか使えません 検索キーワード/WORKDAY 土曜を除く など やりたいことは「ある日付の”日・祝を除く4日前”を算出したい」です。 WORKDAYでは土日は強制的に省かれてしまうようで・・・ 色々検索しましたが方法がわかりませんでした。 祝日データはすでに作ってあるので、同じように 「全日程の土曜のみ抽出したデータ」を作って祝日扱いにするしか ないでしょうか? WORKDAYで不可能だとしたら、どんな方法がありますか? よろしくお願いします。
祝日データでなく4日前データにする 元 4日前 1/1 12/28 1/2 12/28 1/3 12/29 1/4 12/30 という感じに、データに無いものは4日引く
305 :
名無しさん@そうだ選挙にいこう :2007/07/20(金) 16:20:01
エクセルが使えるなんてそんなに尊敬されることなの?
エクセル使いたい人には尊敬されるんだよ 割とそういう人は多いんだ
307 :
303 :2007/07/20(金) 16:43:14
>304 す、すいません。脳みそが追いつきません。涙 WORKDAYをそのままつかって、ただし、祝日データの中身を −4日したものに書き換えるという意味でしょうか???
308 :
名無しさん@そうだ選挙にいこう :2007/07/20(金) 17:37:24
>>303 >祝日データはすでに作ってあるので、同じように
>「全日程の土曜のみ抽出したデータ」を作って祝日扱いにするしか
>ないでしょうか?
この方法でいいじゃないか。
土曜日のデータは、最初の土曜日に7をプラスしていけばいいだけだから
リストは簡単にできるよね
309 :
303 :2007/07/20(金) 17:47:26
>308 他に何かないものか、と思ってしまったもので。 しつこく検索していたらWORKDAYを使わずに土曜だけ除くには =A1+B1+INT((B1+WEEKDAY(A1)-2)/6) (A1が日付、B1が-4) という関数も使えるようです。 しかし、更に祝日を除くにはどうすればいいのか・・・ あと一歩のような気もするのですがこれ以上さっぱり前にすすめません。汗
310 :
303 :2007/07/20(金) 17:56:10
連投すまそ。 とりあえず308さんのいうとおり土曜を祝日としてやる、という方法で 作ることにしました。 もしどなたか309のようなやり方がわかる方がいれば 教えていただけるとありがたいっす。
>”日・祝を除く4日前”を算出 するのに、どうして土曜を除くのか ワカラン
312 :
303 :2007/07/20(金) 18:45:31
>311 ですね。日曜の間違いです。 =A1+B1+INT((B1+WEEKDAY(A1)-2)/6) を日曜バージョンにしなければ。 ていうか土曜を祝日にしたら土曜まで除かれてしまいますな・・・(アホ やってみてから気付きました。この手もダメということか。 誰か助けてください。涙 また月曜に来ますです・・・
日曜だけを除くのはこれで =IF(WEEKDAY(A1)<6, A1-5,A1-4) 休日は>304のように、祝日をまたぐ日を全部リストに汁 例えば海の日なら、7月18日〜20日まで
314 :
名無しさん@そうだ選挙にいこう :2007/07/20(金) 19:31:20
>>303 アドイン関数に「WORKDAY」ってのがあるよ
315 :
名無しさん@そうだ選挙にいこう :2007/07/20(金) 19:41:26
横やりすまんが、アドイン関数ってどこで拾えるんですか?
>>315 アドイン関数にもいろいろあるが、WORKDAY関数ならOfficeかExcelのCD-ROMの中
アドイン関数は固有関数の名称ではなく、アドインに組み込まれた関数全般を指すものなので
MSが作って付属させてるものから、企業や個人が作って販売しているもの、個人が無償公開してるもの
社内で作られたもの、友達に作ってもらったもの、自分で作ったものなど、いろいろだよ
317 :
260 :2007/07/20(金) 21:25:30
>>317 > 命令文だけでも教えて
Shell
使い方はヘルプ参照
320 :
285 :2007/07/20(金) 22:22:01
うまくいきました ありがとうございました
>>297 B列の時刻が降順に並んでればね。
>>285 の質問内容は片手落ちで回答する気になれんかった。
322 :
317 :2007/07/21(土) 00:28:01
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, _
Cancel As Boolean)
Dim URL As String
URL = "
http:/xxxxxxx " & ActiveCell
Shell "C:\Program Files\DonutP\DonutP.exe " & URL
End Sub
ワークシートのイベントとしてこんな感じで作ってみましたが、
これだと関係ないセルをダブルクリックしてもDonutPのタブが起動してしまいます。
特定の範囲だけ起こるようにするにはどうしたら???
323 :
名無しさん@そうだ選挙にいこう :2007/07/21(土) 00:44:05
TargetのRow,Columnを見るなどTargetについて調べて分岐する
324 :
322 :2007/07/21(土) 00:46:25
ごめんなさい。 素人仕事のためお手上げです。 targetの意味わかってません。 分岐の仕方を教えて下さい。
325 :
名無しさん@そうだ選挙にいこう :2007/07/21(土) 02:12:15
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 初心者 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 シート名 配列 削除 VBAで200近いシートを一括で削除したいです。 今までは削除したいシート名を、 <シート名> a b c d e と、削除したいシート名のリストをシート上に作ってから、 繰り返し処理をしていました。 array("a","b","c",・・・) といった方法での一括削除をしたいのですが、 ひとつひとつ"a","b","c",,,とやるわけにもいかないので、もし、 array(range("A1:A200")) ←A1セルからA200セルにはシート名が入っています のようなやり方で、 一気にシートを削除できる方法があれば、教えてください。 宜しくお願いします。
326 :
名無しさん@そうだ選挙にいこう :2007/07/21(土) 04:05:38
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2002 【3 VBAが使えるか .】 初心者 【4 VBAでの回答の可否】 可 Cells(2 * (i - 1), j + 1) = Cells(i, j) なぜこの命令で「アプリケーション定義またはオブジェクト定義エラー」になるのでしょうか お願いします。
327 :
326 :2007/07/21(土) 05:00:26
解決しました 原因は、2 * (i - 1)の値が0になる可能性があったためでした
>>327 ソースの些細なデバッグごときでここを使わないでくれ
330 :
名無しさん@そうだ選挙にいこう :2007/07/21(土) 11:01:48
>>325 ブックの中のシート1から…
残したいシートでなければ削除
次のシートへ
「シート名 取得」で検索するといいことあるかも。
>>324 特定のセルがダブルクリックされたら処理を実行する
サンプル
特定のセル(D5)がダブルクリックされたら
メッセージボックスを表示する処理を
Private Sub Worksheet_BeforeDoubleClick _
(ByVal Target As Range, Cancel As Boolean)
With ActiveCell
If .Row = 5 And .Column = 4 Then
MsgBox "セルD5がダブルクリックされました"
End If
End With
End Sub
332 :
名無しさん@そうだ選挙にいこう :2007/07/21(土) 11:27:56
>>331 は親切だなぁ。
ケータイからじゃソース書いて上げられなくてスマソ。
333 :
名無しさん@そうだ選挙にいこう :2007/07/21(土) 12:03:26
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 ・否 【5 検索キーワード 】 オートコンプリート機能がオンになっていても使えないのは どうしてなのか知りたいです。 教えてください。
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 空白のブック 表示されない。 久しぶりにエクセルを起動したところ、bookが表示されなくなっていました。 新規作成ができません。新規作成をクリックした瞬間にウィンドウが閉じられてしまう感じです。 再インストールでも変わりません。XLSTARTフォルダにも問題ありません。 ウィンドウ非表示設定ではありません。(メニューではブックが開かれていない状態なので選択すら不可) 既存のファイルを開くことはできます。起動時と新規作成時の空白のブックが表示されません。
335 :
名無しさん@そうだ選挙にいこう :2007/07/21(土) 15:27:59
Excel2003です
VLOOKUPで日時指定集計を作っているんだけど
たとえば
2006/12/14〜2007/6/14を指定した場合は問題ないけど(黄色部分)。
2006/12/12〜2007/6/14にした場合12/12のレコードがないので上の12/11(橙色)を読みに行ってしまい
合計22個のところ23個になってしまいます。
マクロやVBA以外でこれをうまい具合にやるにはどんな方法がありますか?
http://www16.plala.or.jp/es350/Book1.xls
MATCHで調べて検査値と同じ値でなければ減ずる
MATCHでなくていいや
338 :
325 :2007/07/21(土) 18:34:17
>330 有難うございました。 その方法を探して頑張ってみます。
339 :
名無しさん@そうだ選挙にいこう :2007/07/21(土) 21:02:40
罫線コマンドで1番細い線を引くよう設定出来ませんか?
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 ほんの少し 【4 VBAでの回答の可否】 ・否 【5 検索キーワード 】 「’」がついているものをアクセス突合のため削除したいんですが、 エクセルの置換機能を用いても削除できません。一括削除の方法を ご存知でした教えてください。よろしくお願いします。
341 :
340 :2007/07/21(土) 21:21:36
自己解決しました。セルを一列丸ごと切り取って 形式を選択して貼り付けして、値だけを貼り付ければ 隠れていた’が消えました。ありがとうございました。
342 :
名無しさん@そうだ選挙にいこう :2007/07/21(土) 22:08:33
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 少しだけ 【4 VBAでの回答の可否】 可 REPEAT,C:\excel\hogehoge.exe,'07/06/30,14:50:18 こういう文字列からhogehoge.exeという部分だけ取り出したいのですが hogehoge.exeの右部分は文字の長さが一定ですが左部分は文字の長さがコロコロ変わります またhogehoge.exeも長さがコロコロ変わります ようは最後の\から,までの文字を取り出したいのですが何かいい方法ないでしょうか?
343 :
名無しさん@そうだ選挙にいこう :2007/07/21(土) 22:19:47
【1 OSの種類 .】 Windows2000 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 可 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 グラフ作成 勤務時間 勤務開始時間、勤務終了時間、勤務時間が1か月分データとして持ってます │ Aさん│■■ ■■■■ ■■■ ■■■■ ■■■■ Bさん│■■■■ ■■■■■■ ■■■■ ■■■■ └─────────────────────── 1 2 3 4 ・・・・・・・・・・・ こんな感じで横軸:日にち、縦軸:勤務者 なグラフをどうやって作ればいいですか? 勤務時間を棒グラフか点と点を線でつないで休暇期間は空白にしたいです
345 :
名無しさん@そうだ選挙にいこう :2007/07/21(土) 23:56:49
>>344 Right関数でしょうか?
しかし取り出したいhogehoge.exeは長さが一定ではなく
hoge.exeやhogehogehoge.jpegのようなケースがあるので
Right関数で文字数の指定が出来ないのです
347 :
324 :2007/07/22(日) 00:17:53
>>331 は超親切!
ありがとうございます!
あなたはきっと超幸せになれるよ!
>>335 出庫数欄を
=VLOOKUP($G$2,$B$10:$F$29,4)-VLOOKUP($E$2-1,$B$10:$F$29,4)
とする方法も考えられます。ただ,$E$2に,VLOOKUPの検索範囲
$B$10:$F$29の1行目の日付が入った場合はエラーになる欠点が
ありますが。
>>349 ありがとうございました
InStrRevで数えてMidでいけました
351 :
ht :2007/07/22(日) 01:58:01
エクセル2007で10個にランク付けしたいんですがかのうでしょうか?数式がわかりません これでいいいいのでしょうか? =IF(I4>300%,"SP">250%,"A">190%,"B">160%,"C">101%,"D">90%,"E">60%,"F">40%,"G",>26%,"H">0%,"I")
>>343 VBAが使えるなら自分で作ればいいだろう。
元データがあるなら、ここで人に聞くような問題点は皆無だと思うんだが。
355 :
名無しさん@そうだ選挙にいこう :2007/07/22(日) 08:59:34
>>351 IF関数の基本的な使い方が分ってないね。
このレベルは自分で勉強しなきゃいけないよ
=IF(条件,条件が真の場合の処理,条件が偽の場合の処理)
VLOOKUP.HLOOKUP,LOOKUP関数なんかも役に立つかもしれないから
調べてごらん。
357 :
名無しさん@そうだ選挙にいこう :2007/07/22(日) 09:26:58
>>348 さんくす
$E$2-1 とするのがミソですか
「日付-1=前日」 になると2006/12/12を指定した場合におかしくなると思ったのですが
おかしくなっていないのは何故なんでしょうか?
シリアル値も整数だから前日になるはずと思っていたのですが違うのでしょうか?
>>357 (期間出庫数)=(期間終了日の累積出庫数)−(期間開始日の前日の累積出庫数)
として計算しています。
ただし,期間終了日及び期間開始日の前日が存在しない場合は,
各日の前の直近日の累積出庫数としますが,これは,VLOOKUPで,
第3引数がTRUE(または省略)の場合,「検索値が見つからない場合は、
検索値未満の最大値が使用されます。」の仕様を使っています。
359 :
名無しさん@そうだ選挙にいこう :2007/07/22(日) 13:32:55
>>358 わかりました。
今まで3つのセルで計算していたので、混乱していました。
日が連なっている時とかも色々試してみて実用上問題ないようです。
これで運用できそうです。
どうもありがとう。
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2002 初歩的な質問ですみませんが教えてください メールアドレスを入力したくて「...」と入力すると「…」になってしまいます 最初に「’」を入れてもだめなんで、どうすればよいか教えてください
>>360 ツール>オートコレクト
で該当するものを削除
362 :
名無しさん@そうだ選挙にいこう :2007/07/22(日) 18:31:56
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 再度インストールしても名前ボックスが出てきません。どうしたらよいですか? 不良品なんでしょうか?
>>362 人に分かるように説明する努力を怠るな。
>>362 メニューバーの「表示」から「数式バー」を選択。
【1 OSの種類 .】 WindowsMe 【2 Excelのバージョン 】 Excel2000 セルのA1からA10までの数字を それぞれ同じ数字を掛けたものをB1からB10に出すことはできますか? できるのであれば教えてください。
366 :
名無しさん@そうだ選挙にいこう :2007/07/22(日) 18:47:05
セルC1にかけたい数字を入力する B1に =$c$1*A1 と入力する B1をB2〜B10にコピペする。 #$c$1の代わりにかけたい数字を入れてもOK
367 :
365 :2007/07/22(日) 18:59:14
366さん$使ってできました。 どうもありがとうございました。
368 :
福男 :2007/07/22(日) 19:44:41
ありがとうございました。名前ボックス出てきました。ほんとにありがとう。
369 :
360 :2007/07/22(日) 20:26:48
>>361 できました!(^Д^)d
どうやってもできなかったので、ちょっと感動しました!
370 :
名無しさん@そうだ選挙にいこう :2007/07/22(日) 22:57:22
>365,366 乗算貼付の典型例だろ。
excel2000です。 エクセルの式の中で「今月」を判定する方法はどうすれば良いのでしょうか? 例えばA列に 7/21 7/24 6/25 7/11 6/14 8/1と並んでいた時に、 今月中はB1に7月の数をカウントし、「3」が表示され 8月になるとB1は8月の数をカウントし「1」が表示されるという式をB1に入れておきたいのです。 (A列は際限無く増えます) 今は便宜上、 「(countif(A:A,">=7/1")) - (countif(A:A,">=8/1"))」 という式を入れる事で「7月の数」を表示していますが (来月の数が今月の数より多くなる事は絶対に無いので特にこれで問題ないです) 毎月1日に式の中の数字を入れ替える必要があって面倒ですし、間違いの元です。 「7/1」「8/1」の部分を自動化したかったのですが 「MONTH(today()) & "/1"」では文字列になってしまうのか、「0」になってしまいました。 「今月」を判定する方法がわかる方、もしくはB1に入れるもっと適切な式がわかる方 どなたかお願いします。
君のやり方でいくと =(COUNTIF(A:A,">="&MONTH(TODAY()&"/1")) だが、ここは =(COUNTIF(A:A,">="&DATE(YEAR(E1),MONTH(E1),1))) としないと後で困ることになる まあもっと適切な方法はいくらでもあるけど ▼━ 質問のしかた ━の★4の必須情報のうち1つしか書いてないのでこの辺で終わり
Excel2000です。 グラフの系列の並び替えってできないですか? とくに凡例を表示してる場合は、系列を追加するとその系列は一番下に追加されるので困ります。 こういう場合は一からグラフ作り直すしかないのでしょうか?
375 :
373 :2007/07/23(月) 16:09:25
376 :
名無しさん@そうだ選挙にいこう :2007/07/23(月) 19:41:15
【1 OSの種類 .】 Windows2000 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 かろうじて 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 変数 データ型 数値型 VBA上でMidで数字部分を切り出したものを 数値として変数に格納したいのですがどうやって変換したらいいですか?
変換関数使えばいいだけだよ 変換関数使わなくても、数値型変数に一度代入すれば その変数の型で扱える範囲の数値なら自動変換されるし 数字文字列から数値への変換関数はいくつか種類があるので 詳しくはヘルプを見てね
COUNT関数だと数値だけみたいですが 文字列も数えれる方法はないでしょうか? やりたいことは表の文字列が入力された数をカウントして 合計値を出したいです。
380 :
名無しさん@そうだ選挙にいこう :2007/07/23(月) 21:24:32
【1 OSの種類 .】 Windows xp 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 少し 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 エクセル IF 条件 複数 たとえば。。 C1に1、C2に2、C3に3、、、、でC9に9の数値があります。 D1、D2、D3、、、、D9には適当な数値があります。 A1 に1から9のうちのいずれかの数値が入力さたら、 C1からC9のデータと一致する横のD*の数値をB1に表示させたいのですが。。 IFで試しました。 B1のセルに IF(A1=C1,D1)こんな感じです。これを(A1=C2,D2) (A1=C3,D3)....(A1=C9,D9) のような感じに、ひとつのセルに9個の条件を入れるにはどうしたらいいでしょうか。 またIF以外でもっと効率のよい方法がありますか。
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2002 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 エクセル 切り捨て 数式 エクセルで千未満切り捨て、千未満切り上げという式を作りたいのですがどうすればいいでしょうか?
384 :
名無しさん@そうだ選挙にいこう :2007/07/23(月) 23:05:57
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 勉強中 【4 VBAでの回答の可否】 可 テキストボックスがついてるフォームのボタンを押すと プロシージャAが立ち上がりそこからCall Bで プロシージャBが立ち上がるのですがこのBにテキストボックスの 内容を渡すにはどうしたらいいですか?
【1 OSの種類 .】 WindowsME 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 不可 【4 VBAでの回答の可否】 不可 A1〜Z1までの数字を大きい順にA2〜Z2に並べ替えたいのですがどうすればいいのでしょうか?
386 :
382 :2007/07/24(火) 01:05:24
>>383 上手くできません。計算結果の値の下三桁を切り捨てもしくは切り上げたいのです。
計算結果は常に変動するので機械的に切り上げ下げを行うようにしたいのです。
>>386 ROUND
ROUNDUP
ROUNDDOWN
をHELPで引けば使い方が載ってる。
388 :
303 :2007/07/24(火) 09:46:23
>313 >日曜だけを除くのはこれで >=IF(WEEKDAY(A1)<6, A1-5,A1-4) >休日は>304のように、祝日をまたぐ日を全部リストに汁 >例えば海の日なら、7月18日〜20日まで そのIF関数と、休日を除くという命令はどのように合体させればよいのでせうか。 そして祝日をまたぐ日、というのは要するに起点日から4日前、の中に 祝日がある日ってことでしょうか? それはもしかして一個ずつ算出せねばならないということですか?
389 :
名無しさん@そうだ選挙にいこう :2007/07/24(火) 12:13:40
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2007 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 不可 【5 検索キーワード 】 インデント 半角 セルの書式でインデントを1にすると、全角1文字分ぐらい下がりますよね。 この下げ幅をもうちょっと小さく、半角1文字ぐらい下げる方法ってありますか? 自分でスペースを入力するのはなしでおねがいします。
391 :
名無しさん@そうだ選挙にいこう :2007/07/24(火) 13:39:28
【1 OSの種類 .】 Windows2000 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 勉強中 【4 VBAでの回答の可否】 可 AもしくはBのときCをしなさい のようにしたいのですが以下のようにすると必ずここで止まります 1つのときは普通に動いていたのでorの使い方が悪いんだと思いますがどうなおせばいいですか? If Left(Cells(j, 3), 8) = "No.00264" Or "No.00307" Then
>>391 その部分を分けて書くときはこうなるよね。
If Left(Cells(j, 3), 8) = "No.00264" Then
If Left(Cells(j, 3), 8) = "No.00307" Then
それを1行にまとめる時はこうする。
If (Left(Cells(j, 3), 8) = "No.00264") Or (Left(Cells(j, 3), 8) = "No.00307") Then
ようするに、Ifの次に書く条件をそのまま並べるのよ。
条件を1つずつカッコでくくるのを忘れないようにね。
393 :
303 :2007/07/24(火) 17:25:47
>314 見逃して未レスでした。アドインは自分PCに入っておらず、 同僚のPC借りてトライしてみたんですがWORKDAYだと 土日両方強制的に排除してしまうようだったので諦めました。 日曜・祝日だけ排除する方法もあるんでしょうか?
>>390 無い
Excelはワープロじゃないからな
>>392 うまくいきましたありがとうございました
>>388 祭日のリストを調べて、該当すればその日付
しなければ、日曜を飛ばす。
リストが大変だけど、関数で実現するには
現実的方法で、仕方ない。
VBAならすっきりするんだけど。
>>392 どうしてかっこでくくるのかな?
>>396 >どうしてかっこでくくるのかな?
文法上必須じゃないが、その方が若干可読性が改善することが多いからじゃなかろうか。
398 :
名無しさん@そうだ選挙にいこう :2007/07/25(水) 10:44:23
>386 =rounddown(A,-3)
399 :
名無しさん@そうだ選挙にいこう :2007/07/25(水) 10:57:54
>384 さんぷる。 Private Sub CommandButton1_Click() A TextBox1 '呼出プロシージャ名の後に引き渡す変数名を記入 『Call』は書かない End Sub Sub A(ByVal TextBox1) 'byval で変数宣言、場合に応じてbyrefで宣言 B TextBox1 '呼出プロシージャ名の後に引き渡す変数名を記入 『Call』は書かない End Sub Sub B(ByVal TextBox1) 'byval で変数宣言、場合に応じてbyrefで宣言 MsgBox TextBox1 & "です。" End Sub
>397 かっこが増えて余計読みにくいんだけど、、、
http://q.hatena.ne.jp/1157982114 にある、コンボボックスのオートコンプリート機能のVBAを複数のコンボボックスで使えるように
改造してExcel2000上で使用していますが、
エクセルのシート上でのコピー&ペーストができなくなりました(オリジナルのものでも同様でした)。
厳密にいえばコピーは可能ですが、ペーストのために他のセルをクリックした瞬間、
コピーした領域の点線枠が消えます。
いくつか試行錯誤の上、
Private Sub Worksheet_SelectionChange(ByVal Target As Range)のルーチン内にある、
ComboBox1.Visible = False
ComboBox2.Visible = False
ComboBox3.Visible = False
この部分を消せばコピー&ペーストが可能になることが分かりました。
ただし、これを消してしまうと、別のセルをクリックした時にボックスが隠れず、見苦しくなります。
コピーが解除されないような仕組みを取り入れることは可能でしょうか。
作った奴に聞け
403 :
401 :2007/07/25(水) 16:19:29
なるべく具体的なイメージをお伝えするために引用元を示したのですが、問題の核は Private Sub Worksheet_SelectionChange(ByVal Target As Range)の中で、 ComboBox?.Visible = Falseを使っていると、そのシート上でコピー&貼り付けが できないという点にあると解釈しています。 そのため、プログラム固有の問題ではなくExcel一般の問題と考えて、こちらで質問しました。 VBAを使ったのが今回初めてということがあって、あやふやな質問の仕方になったことをお詫びします。
404 :
名無しさん@そうだ選挙にいこう :2007/07/25(水) 16:21:02
作った奴に聞け
>403 コピーしてもペーストする前に他の処理をすれば ペーストできなくなるのは当たり前。 .Visible = False の問題じゃない。 こんなトリッキーな方法真似するより 自分が具体的に何がしたいのか書いた方が 回答が得られるんじゃないか。
>>405 レスありがとうございます。
やりたいことは以下の点です。
・エクセルで入力フォームを作る際に、ドロップダウンリストで選択できるようにしたいが、
選択肢は「1.未契約」「2.契約手続き中」「3.契約済み」のように頭に数字をつけて、
その数字を入力すれば自動補完してくれるようにしたい
・上記の機能によって、コピー&ペースト機能が阻害されないようにしたい
コピー&ペースト問題さえなければ、今使っているもので充分なのですが…。
> コピーしてもペーストする前に他の処理をすれば
> ペーストできなくなるのは当たり前。
コピー後に他の操作をするとペーストができなくなるのは日常の経験で知っていたのですが
そもそも、それが何故なのかが、この場になって疑問になってきました。
ペースト前に他の処理をするとクリップボードが空になるということなのでしょうか。
>>406 >選択肢は「1.未契約」「2.契約手続き中」「3.契約済み」のように頭に数字をつけて、
>その数字を入力すれば自動補完してくれるようにしたい
シート1にコンボボックスとコマンドボタンを一個ずつ追加して↓をコピペ
コマンドボタン押してからコンボボックスにそれぞれの頭文字入れてみ
Private Sub CommandButton1_Click()
ComboBox1.Clear
ComboBox1.List = Array("1.未契約", "2.契約手続き中", "3.契約済み", "あいうえお", "いろはにほへと")
End Sub
>そもそも、それが何故なのかが、この場になって疑問になってきました。
>ペースト前に他の処理をするとクリップボードが空になるということなのでしょうか。
そう思うならOfficeクリップボード見てみれ
408 :
401 :2007/07/25(水) 18:20:37
>>407 原理としてはお教えいただいた方法が概ねやりたいことなのですが、
・リストをセルに埋め込む
・リストにない情報が入力されたら警告を出す
・セルが選択されていない状態ではコンボボックスを隠す
というように、インターフェースを整えていこうとすると、プログラムが長くなり、
コピー&ペーストができなくなる、といった次第です。
ただ、入力規則と同じにすることに拘る必要もないので、お教えいただいた方法を参考に
最もニーズに合った方法を模索したいと思います。
どうもありがとうございました。
> そう思うならOfficeクリップボード見てみれ
406の書き込み後、自分で思い至り調べてみました。
残っているのに貼り付けられないのはどういうことか、と余計に混乱することになりました。
n
>>408 >>407 は自分の思いこみの世界でしゃべってる程度。
あまり真面目に応対しても、この阿呆からは回答は得られない。
疲れるだけだよ。
またでた
お前もな
415 :
名無しさん@そうだ選挙にいこう :2007/07/26(木) 07:56:49
各ページの数値をあるページの一つのセルに合計して出す仕方を教えてください。
416 :
名無しさん@そうだ選挙にいこう :2007/07/26(木) 08:02:04
12時にまた来ますので、 それまでに誰か教えて…。
>>415 こんなテキトーな内容の書き込みで回答してもらえると思うな
>>415 そもそもExcelで計算するのにページって概念は無い。
似たような感じにしたければ、改ページ挿入しといて、それに合わせてSUM関数しかない。
419 :
303 :2007/07/26(木) 15:04:01
>396 むぅ。そうですか。関数でやるのは諦めたほうが いいみたいですね・・・涙 どうもありがとうございました。 VBAを勉強せねばいかんですな。エクセル道ってきびちい。
>>418 もしかして、
>>415 の言うページとはシートのことじゃないかな?
まあ、俺も教えたくないがw
421 :
396 :2007/07/26(木) 16:27:56
>419 すぐに解決しなくても、覗いていればいい事あるべ Basic Editor で次のコードを標準モジュールに置けば =fourdaysbefore(A1) とか他の関数と同じように使える。 Function FourDaysBefore(d As Date) As Date Dim i For i = 1 To 4 d = d - 1 Do While IsHoliday(d) d = d - 1 Loop Next FourDaysBefore = d End Function Function IsHoliday(d As Date) As Boolean Dim Holiday, i Holiday = Array("1/1", "1/8", "2/12", "3/21", "4/30", "5/3", "5/4", _ "5/5", "7/16", "9/17", "9/24", "10/8", "11/3", "11/23", "12/23") For i = 0 To 14 If d = Holiday(i) Then IsHoliday = True Exit Function End If Next If Weekday(d) = 1 Then IsHoliday = True Else IsHoliday = False End Function
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 クリップボードメニュー 同じ文字を続けてコピーするとクリップボードメニューが出てくるんですが あのメニューが出てこないようにする事はできませんか?
423 :
名無しさん@そうだ選挙にいこう :2007/07/26(木) 17:59:27
【1 OSの種類 .】 WindowsMe 【2 Excelのバージョン 】 Excel97 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】不可 【5 検索キーワード 】 不可 ここでお訊きするのがはばかられるような低レベルな質問で恐縮です。 ビスタパソコンを購入するのに合わせExcel2007も買ってインストールの予定。 この新パソコンに、これまでExcel97により作ったファイルを読み込ませると 果たして開けるのでしょうか? またExcel2007にバージョンアップでき、継続して作業できるファイルに なるのでしょうか?
>>423 可能
逆の場合は保存方法を工夫する必要あり
425 :
名無しさん@そうだ選挙にいこう :2007/07/26(木) 18:32:09
>>424 ご返答ありがとうございます。97で作ったファイルが無駄にならず、
そのままExcel2007ファイルになるのでほっとしました。
2007のバージョンアップの対象がExcel2000以降で、97は対象外なので
心配していました。
ショップの店員さんによれば、ビスタパソコンにはOffice97を
インストールさえできないとのことです。
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 負 マイナス EXCELやったこともないのに、計算シート作れと言われて涙目になっているので助けてください。 計算の結果がマイナスになった場合に0を表示させたいのですが、関数は何を入れれば良いのでしょうか。
>>427 ありがとうございます。求めていた結果が得られました。
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 不可 【5 検索キーワード 】印刷範囲 均等 など A4用紙を4分割して回覧用紙をつくりたいと思っています。(A4から同じ大きさ(A6?)の用紙を4枚とる) シートに同じ表を下のように4つ並べて □□ □□ 印刷範囲を指定しても均等に印刷できません・・・ 4つの表を均等に印刷することは可能なのでしょうか? できれば設定した印刷範囲を自動で変倍してA4用紙に納める機能がベストです
>>425 もう見てないかな?
Office97はVistaに普通にインストールできるよ。
うちではVista UltimateにOffice97 Professionalを入れて使ってるが、これといった問題も出てない。
とりあえずショップの店員の言うことは鵜呑みにすんな。
ただし、すでにOffice2007が入ってるマシンに97を入れて共存できるかは知らん。
>>429 均等にならないのは、列の幅や行の高さがきっちり同じになってないからでは?
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 不可 下の表の用にaの列に日付を入れて PCの日付を参照してc4に今日が7月28日だったら 30という数値を表示させるにはどうしたらいいのでしょうか? また参照させるには日付をどのように表記すれば いいのでしょうか? a b c 1 7/26 10 2 7/27 20 3 7/28 30 4 * よろしくお願いします。
ずれてしまいました。すいません
>>432 =VLOOKUP(TODAY(),A:B,2,0)
>429 ページ設定の余白を水平・垂直にしてもならんの?
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 不可 Excelで例えば100≦x≦200みたいな変域の指定って出来ますか?
438 :
名無しさん@そうだ選挙にいこう :2007/07/26(木) 23:21:39
>>429 プリンター側の問題だべ!!
機種によって印刷可能範囲が違うから
位置調整しながらトライアルするしかないな。
俺のプリンターは分割印刷が付いてるから簡単にできるけど
君のには付いてないの?
439 :
名無しさん@そうだ選挙にいこう :2007/07/26(木) 23:22:45
【1 OSの種類 .】 WindowsXPsp2 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】EXCEL 以上 以下 関数についての質問です。 A1の値が「0.2%以上3%以下」または、「-3%以上-0.5%以下」なら B1に「○」、 A1の値が「-0.5%以上0.2%以下」ならB1に「△」、 それ以外ならB1に「×」を入れなさい。 以上のような関数をIF関数で作りたいのですが、うまくいきません。 よろしくお願いいたします。
どう書いたの? とりあえず問題文の範囲が重複してるからうまく行かないという
>>437 =and(A1<=100,A1>=200)
>>440 0.2と-0.5はどっちに含まれてるんだ
=IF(OR(AND(A1>=0.2,A1<=3),AND(A1>=-3,A1<=-0.5)),"○",IF(AND(A1>-0.5,A1<0.2),"△","×"))
イコール部分は自分で治せ
>>442 不等号の向き逆じゃね?
=AND(A1>=100,A1<=200)
445 :
名無しさん@そうだ選挙にいこう :2007/07/27(金) 00:43:32
=IF(AND(A1>-0.005,A1<0.002),"△",IF(AND(A1>-0.03,A1<0.03),"○","×"))
446 :
440 :2007/07/27(金) 01:04:35
>>441 >>443 >>445 確かに0.2と-0.5が重複しているのが原因でした。
単純ミスでした。
うまくいきました。
遅い時間にもかかわらず、素早いレス有り難うございました。
>>434 ありがとうございました。早速やってみます。
448 :
447 :2007/07/27(金) 07:02:06
できました。ありがとうございました。
449 :
437 :2007/07/27(金) 08:32:30
回答して下さった方々、有難うございました 解決しました
450 :
名無しさん@そうだ選挙にいこう :2007/07/27(金) 14:51:23
>>430 >Office97はVistaに普通にインストールできるよ。
>とりあえずショップの店員の言うことは鵜呑みにすんな。
そうですか、ありがとうございます。新宿の某大手ショップ女店員が断定的に
インストできないと答えるものだから、私も”誰かが試したのですか?”
と訊きなおしたら、即座に”物理的にインストールできないんですよ”と
0.1秒で答えが返ってきた。その勢いに負け彼女が言うのが事実と
思い込んでいました。
本当は軽快で使い易い97から重いという評判の2007にはしたくないので、
ビスタパソコンを買ってもOffice97をインストして使い続けようと思います。
やはり体験者の助言は、心強いですね。重ねて礼を申し上げます。
451 :
名無しさん@そうだ選挙にいこう :2007/07/27(金) 18:29:02
【1 OSの種類 .】Windows XP PRO 【2 Excelのバージョン 】 Excel 2007 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 EXCEL 一番下の値まで 初歩的な質問で失礼いたします 例えば =SUMIFS($D$2:$D$65000,$A$2:$A$65000,A2,$C$2:$C$65000,C2) の様な式を作る時に↑の65000を「1番下の値のある所まで」という様に指定したいのですが 「(A:A)」以外に指定する方法はありますか?
453 :
名無しさん@そうだ選挙にいこう :2007/07/27(金) 19:03:57
>>451 データが入力されてる行まで…ならVBAをドゾ
454 :
名無しさん@そうだ選挙にいこう :2007/07/27(金) 19:35:13
>>451 オライリーのExcel Hacksって本買ってみ?
3章の「名前付きセル範囲」の所にまさに答えがあるから。
この本は買っといて損は無いよ。
456 :
名無しさん@そうだ選挙にいこう :2007/07/28(土) 00:08:06
悩んでいます。よろしくおねがいします 仕事で試算にエクセル使用しているのですが、ファイル枚数がかさむと すぐに「これ以上、書式の追加はできません」となってしまします 今回は4Mで警告がでてきました この状態で書式を掃除?して、正常状態に戻す方法はないでしょうか? 例えば書式を掃除するエクセルソフトなどはないでしょうか (ちなみに「書式の掃除屋さん」は上手く機能しませんでした。。) もちろんネットで調べたのですが、 ・書式をすべて標準に戻す ・罫線をすべてなくす までしてしまうと、見た目が雑多になり、とても仕事では使えません ある程度の書式・罫線はキープしたままで、書式を掃除できればいいの ですが。。。 都合、ファイルを複数に分割するのは避けたいと考えています
>>456 あれこれ難しいことを考えたくないならExcel2007に乗り換えましょう。
古いExcelでは書式の上限が1つのブックに4000種類までだったのが、
2007では64000種類まで (なんと16倍) にパワーアップされています。
ただし、限界まで使うにはメモリの増設も必要になるので注意してください。
459 :
名無しさん@そうだ選挙にいこう :2007/07/28(土) 08:08:28
質問です。 横に並んだセルに、数式を分割して代入し、一番右端のセルに計算結果を表示させたいです。 例えば、 A1 , B1 , C1 , D1 , E1 (2* , 10 ,) +1 , = , 21 とか、 sin( , 0.5 , ) , = , 0.479 です。 E1に =&A1&B1&C1 としても、文字列としてしか認識してくれなくて困っております。
460 :
名無しさん@そうだ選挙にいこう :2007/07/28(土) 08:54:02
>>459 計算式の表示は文字列、計算結果は数値。
2つは別もの、一緒くたに出来なくて当たり前
計算式(文字列)を参照して計算結果を出したけりゃ
VBAで作るしかない(この手のVBAは探せば結構落ちてるぞ)
461 :
456 :2007/07/28(土) 09:16:42
レスありがとうございます 会社で使っているPCなので、自由に2007をインストールしたりはできません… 他に方法はないものでしょうか ぜひお知恵を
462 :
名無しさん@そうだ選挙にいこう :2007/07/28(土) 10:18:56
>>222 >そのはみ出し表示させたいセルの右側のセルを空にしておけばいいだけだが
>そういうことでないならちゃんと日本語で説明してくれ
もちろんそれは知っているんですが表示されないんですよ。
2000 のバージョンですが・・・
>>462 おまえにはどこがどうダメでどうなるかを説明する事ができないのか!?
勝手にテンパってるんじゃねー
1.右のセルにスペースや他の式が入ってたら消せ
2.セルの書式設定のどっかのタブで縮小して表示するにチェックが入っていたら外せ
ダメだったら頭冷やして情況を説明しろ
>>454 やり方は色々あるけど単なる興味なら教えない
465 :
名無しさん@そうだ選挙にいこう :2007/07/28(土) 17:07:12
表作成で枠引いて¥□□□□の枠も作るとして、枠は上のD・E・F・Gの幅を縮めて作るしかないですか? そばにあった保険証を練習で枠引いたら、保険者番号欄に数字枠があって、どう引くか迷ったんです。
意味がわからない
467 :
名無しさん@そうだ選挙にいこう :2007/07/28(土) 17:25:46
大きい四角枠引いたとして真ん中に□□□□があったのでどう引くのかなと。
468 :
名無しさん@そうだ選挙にいこう :2007/07/28(土) 18:08:17
バージョン2000 A3の用紙2ページを1ページにまとめて印刷したいために 印刷プロパティで倍率を下げたんですが85%あたりからプレビューでなぜかB4で4ページになってしまうんです。 ページ設定の用紙サイズや印刷のページ設定ではA3になっているのにです。
今日からVBAはじめます。 君たちが泣いて謝るまでぼくはやめないよ
471 :
名無しさん@そうだ選挙にいこう :2007/07/28(土) 18:48:09
>>470 どうも、オートシェイプで頑張ってみます。
>>469 ヽ(`Д´)ノウワァァァン
ごめんなさい!ごめんなさい!ごめんなさい!
>>456 ・他のソフトでオープン・セーブ
・delxf2
・k茶
もうここ見てねぇか・・・
474 :
名無しさん@そうだ選挙にいこう :2007/07/28(土) 20:39:24
456です ご存知の方、ぜひ宜しくお願いします
>・他のソフトでオープン・セーブ
え?それってオープンオフィスとかで開いて上書き保存すると
ファイルサイズが縮んだりするって意味?
て言うか、
>>474 は
>>473 を見てないのか?www
>>475 ファイルサイズは肥大する傾向だが
扱えない書式はかっ飛ばされたよ。
456です 473さん、ありがとう! ちょうどレスが行き違いになりました(゚Д゚;) ・delxf2 ・k茶 は書式を軽くするソフトのことでしょうか 帰ってすぐさま調べてみます >・他のソフトでオープン・セーブ 476さんと同じく、この方法が気になります… 他のソフトとは具体的にはどのようなものでしょうか? より具体的な方策を指示していただけると助かります
エクセル2000です。 書類の経過年数を色で表現したいのですが。 @ある列に書類の作成日付が記入されている。 Aシート内に当日の日付があります。 書類の作成日付が、当日から15年から20年(未満)経過のものは青色表示、 20年以上経過のものは赤色表示にしたいのですが。 条件付き書式でいろいろ試したのですが、うまく出来ませんでした。 いい方法あったら、教えてください。 よろしくお願いします。
>>478 数式が =DATEDIF($B$1,$C$1,"Y")>=20
数式が =DATEDIF($B$1,$C$1,"Y")>=15
などと設定する
473だが
>>456 ・・・落ち着け、見落としすぎだ
>>475 を見てみ
kingsoftはどうだか知らん
この際、人柱になってレポるのも良いかもよ
482 :
名無しさん@そうだ選挙にいこう :2007/07/28(土) 23:23:13
456ですスマソ。落ち着かないと汗 あ〜提案書の提出期限が・・・アワワ 他PGで開いて保存というのは上手くいけば効果絶大の予感 メモ帳でオープン&セーブしてみましたがエクセルが壊れて しまいました(解読不明文字ばっかりになってしまった) この方法に最適なPGはないものでしょうか? 現在オープンオフィスをダウンロード中です これでも挑戦してみます
うぜえ
485 :
名無しさん@そうだ選挙にいこう :2007/07/28(土) 23:56:40
【1 OSの種類 .】 Windows Xp 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 不可 エクセルのセルに○、△、×が入力されていて、○の数だけを数える関数のやり方を教えていただきたいです。 よろしくお願いします。
=COUNTIF(A:A,"○")
487 :
名無しさん@そうだ選挙にいこう :2007/07/29(日) 00:24:57
490 :
名無しさん@そうだ選挙に行こう :2007/07/29(日) 05:40:50
…だが断る
ひとりしか泣いて謝ってないじゃない
492 :
名無しさん@そうだ選挙に行こう :2007/07/29(日) 09:01:03
無駄無駄無駄
493 :
482 :2007/07/29(日) 10:21:49
極窓をダウンロードしてみました これでエクセルをどの拡張子で?開けばいいのでしょうか… 複雑なソフトだ…(゚Д゚;)
494 :
名無しさん@そうだ選挙に行こう :2007/07/29(日) 10:39:53
version2000 売り上げ 4/1 大阪 中央区 ← 北区 ← 阿倍野区 ← という表があった時 並べ替えした場合、普通なら 阿倍野区 北区 中央区 となるんでしょうが←の所を並べ替えさせたくないんですが そんなことはできるんでしょうか?
その例だと並べ替えなければ良いのではないか?
>>493 そこまでたどり着いたなら後はヘルプを熟読するだけだろ・・
497 :
482 :2007/07/29(日) 12:25:59
横着すみません ヘルプを熟読したいところなんですが、機能がありすぎて 極窓のどの機能を使って、 エクセルを開く? エクセルの拡張子をかえる? エクセルそのものを軽くする? をするのかわかりませんで汗 指針だけ教えていただけませんでしょうか?
ファイルの拡張子変えろ なんでもいい そして調べろ。当然エクセルファイルと出る あとはそのまま進んでみろ
499 :
名無しさん@そうだ選挙に行こう :2007/07/29(日) 15:51:41
フォームのチェックボックスを使用して □りんご □みかん □いちご 〔OK〕 などと一覧をつくりチェックを入れた後にOKボタンを押し 表を作るマクロを作成しようと思っています。 この場合、OKボタンが押された時チェックが入った箇所だけ判定して シート2に表を作るのはフォームではなくコントロールツールボックスの フォームボタンじゃないと無理でしょうか?
>>499 何でオブジェクトの種類でそんな差が出るんだ。なんか特殊なことでもやろうとしてる?
実際に作ってみて何かトラブルに見舞われてるんなら、その辺の状況も子細に説明しなよ。
>>499 フォームツールはワークシートと連携して使うもの
コントロールツールはVBA(マクロ)と連携して使うもの
元から想定されてる用途が違うんだから、フォームツールを使ってマクロと連携させるには〜ではなく
マクロと連携させるには、フォームツールとコントロールツールのどちらを使うべきか〜と考えるべき
で、その答えが「コントロールツールを使うべき」なわけだから、それに従えばいいんだよ
まあフォームツールでも出来なくはないが面倒なだけだし
フォームツールっていらなくないか? コントロールツール使っとけばいいじゃない。
503 :
862 :2007/07/29(日) 19:06:45
レスありがとう やってみました >ファイルの拡張子変えろ >なんでもいい >そして調べろ。当然エクセルファイルと出る >あとはそのまま進んでみろ 書式掃除したいファイルを、適当に xls → fadraxds にかえました そして極窓で調べました エクセルファイルとでました 変換しました 元のエクセルファイルに戻りました。。 書式掃除はおろかファイルサイズも変化ありません。。 はてどうしたものか
おーぉー 無責任な当てずっぽうレスに振り回されて苦労してるな。 かわいそうに・・
なんだ、やっぱりテキトーに書いただけのレスだったのか 俺も、「極窓にそんな機能あったっけ?」ってちょっと考えちゃったよ
>>503 もういい加減鬱陶しいから、
書式設定をデフォに戻すのをマクロで記録して
For Each s In ThisWorkBooK.Sheets
For Each r In s.UsedRange
'↓にコードコピる
'---------
Next
Next
とかで処理しろよ
507 :
名無しさん@そうだ選挙に行こう :2007/07/29(日) 20:21:36
もう少し丁寧に教えてやれよ >スレタイ 極窓がどうとかマクロがどうとか、初心者にはわからないと思う 教えてやりたいが、俺にはわからんのだ…ヽ(`Д´)ノ!!
>>456 ミもフタも無い言い方のようで悪いんだが、目視で不要と思しき書式を
探して、手動でひとつひとつ解除して行くのが良いと思うよ。
仕事で使ってる大事なファイルなんでしょ?
怪しいツールを使ったり、覚えたてのマクロで無理な事しようとするのは
あんまりお勧めできないな…。
>>506 いい加減鬱陶しいって、お前が頭の悪いレスで質問者を混乱させたからだろうが。
鬱陶しいのはお前だよ。失せろキチガイ
456が馬鹿すぎてかわいそう
>>456 は普通に質問しただけで、これと言って非常識でも不作法でもないと思うんだが。
そこに阿呆が一匹(?)出てきて、回答者気取りでテキトーな思いつきのレスを並べて、
混乱させてる。
最近こーいう馬鹿がやたらと出没するな。
つうか、極窓ってなんだよ?
514 :
名無しさん@そうだ選挙にいこう :2007/07/29(日) 22:21:56
そもそも>>456の質問に答えられる人間いないの?
>>514 症状自体がかなりイレギュラーだし
警告が出るような使い方を改めるべきってのが究極の回答だな
そもそも > ある程度の書式・罫線はキープしたままで とかが、どの程度なのかは彼の頭の中にしかないからね つまり、質問として完成してないんだから、納得できる回答が来ないのも当然 この状態で彼が満足できる答えを用意できたらエスパーだな
517 :
名無しさん@そうだ選挙にいこう :2007/07/29(日) 22:38:24
そうか? 俺もよくこのエラーでて困ってるよ 456氏にジャストフィットする答えでなくても、例えば使ってない書式を自動で処理する方法などはないの? すまん、正直オレも知りたい 上のレスみてるとジャストフィットな回答はおろか、書式掃除の一助になる方法もなさそうにみえるが そもそも解決策がないってことなのか!? ネ申後輪キボ
519 :
506 :2007/07/29(日) 22:40:24
>>509 おいおい
>>456 に初めてレスしたのにいきなりキチガイかよw
だれと勘違いしたのか気になるな・・・
一応いっておくけど、俺なりにちゃんとした返答してるんだが?
(細かい部分が不明なんで適当っちゃ適当だが)
その部分は無視か?
もし、間違っているなら、その部分を指摘し
>>456 に教えてくれ
>いい加減鬱陶しい
は、
>>456 を煽ってる奴も含んでんだからな。
>>509 も人を煽る暇があるなら自分なりの解答を示してやれ
因みに俺は
>>3 に書いてあるとおりに行動したまでだ。
VBAで書いてやっても「使いたくないです」とか言われたら時間の無駄だしな。
条件も「一部の書式を残して・・・」と本人が濁す以上答えようがないだろ
まぁ迷惑みたいだからもうレスすんのは止めるわ
ttp://excel.onushi.com/purpose/allcell-form.htm
結局ろくな回答が出てこない役立たずスレ
522 :
名無しさん@そうだ選挙にいこう :2007/07/29(日) 22:55:03
k茶は理解できるが、 ・他のソフトでオープン・セーブ ・delxf2 は使い方がよくわからない 実際、473氏はこれで成功したのだろうか
>>456 の「ある程度の書式と罫線」って言うのは、
「自分で不要な書式を選択して出来るだけ少ないクリック数でそれらを削除したい」
ってことだろ?
「ある程度」の部分がはっきりしてればマクロで簡単に処理できるけど
「ある程度」を
>>456 が判断したいってことなら、
>>456 が簡単に「不要な書式」を
選択できるマクロも書かなければならなくなる。
後者を望んでるならクソスレ認定とか回答者あおり倒すとか、頭がおかしいとしかいえない。
○投げなんて善意で成り立ってるんだからな。
・書式をすべて標準に戻す ・罫線をすべてなくす はダメだってんだから、何が正常状態かわからん俺らに 正常状態に戻す方法なんか、わかるはずがないやんけ。
525 :
名無しさん@そうだ選挙にいこう :2007/07/29(日) 23:07:19 O
そこまで細かい要求でないと思うが… 深読みし過ぎ
>>523 >「ある程度」の部分がはっきりしてればマクロで簡単に処理できるけど
お前、こんな頭の悪いこと平気で口走ってる時点で不要だよ。
この板、IDないから、本当にタチが悪いな
最近酷いのが2〜3人いるな 回答者と回答者にレスする奴は鳥付けろよ 鳥付けない奴は荒らし認定でいいよもう
ここ、回答者の質が明らかに落ちたよな
530 :
名無しさん@そうだ選挙にいこう :2007/07/29(日) 23:17:11 O
たしかにIDないといかんな 456は馬鹿かもしれんが、すくなくともそれなりの努力はしていたと見える やはりアドバイス不足だろな こんな簡単な要求に正答だせないとは本スレも解散か… (自分のことは棚に置いてるがw)
夏だし気にするな 毎年のことだ
532 :
506 :2007/07/29(日) 23:24:03 0
トリップ賛成ゼロでワラタ
議論はいいから 回答はやめによろしく
535 :
528 :2007/07/29(日) 23:46:51 0
良くねーよw 馬鹿数名にスレかき回されたらたまらんつうの
結局わからないから うやむやになるに1票
538 :
◆ovrvtQ.I/g :2007/07/30(月) 00:07:51
539 :
名無しさん@そうだ選挙にいこう :2007/07/30(月) 00:08:28
書式の件、要はわからんてことだな ここは無知の知がたりんな
おまえもその一人
541 :
528 :2007/07/30(月) 00:19:28
>>539 お前のレスは癖がわかりやすくてわかりやすいなw
↑きみもウザイよ(おれも含めて) スルーを覚えるべき(おれも含めて)
543 :
名無しさん@そうだ選挙にいこう :2007/07/30(月) 00:24:38
【1 OSの種類 .】 WindowsVISTA 【2 Excelのバージョン 】 ExcelXP 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 jpg 貼り付け jpgをEXCELに貼り付けるのに適した貼り付け方法を教えてください コピペ 挿入>オブジェクト 挿入>図>ファイルから と試しましたがファイルサイズがやり方によって変わるようです 貼り付けた写真を再加工する必要はありません
>>543 ワークシートとjpgを紙に印刷して糊で貼る
>>543 ファイルサイズが一番小さくなる方法でおk
分からないなら無理して答えずにうつむいてろよ
547 :
名無しさん@そうだ選挙にいこう :2007/07/30(月) 01:06:31
【1 OSの種類 .】 Windows2000SP4 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 項目軸 負 任意 原点 目盛り線 ある事象の計測結果をグラフ化しています。 項目軸は経過秒数で表示していますが、データは、事象が始まる 84秒前から始まり3秒おきに記録したものです。 項目軸の目盛り線は30秒としているのですが、-84、-54、-24と 引かれてしまいます。 これを、-60、-30、0、30、60、、、と、0を丁度通るように変更したいの ですが、どのようにすれば良いのでしょうか、、、 データの範囲を、-60秒からとすれば、-60、-30、0と、0を通りそうですが、 -70秒あたりにある揺らぎを収録したくて、-60秒からと出来ません。 かと言って、-90秒までさかのぼってのデータはないわけで、、、 どうすれば良いのでしょうか。よろしくお願いします。
-90からでいいじゃん データ無しで項目軸だけ使えばいいだけなんだから
>>547 データが無くても軸の書式設定で-90って指定するのはダメなのですか?
550 :
547 :2007/07/30(月) 01:31:23
>>548-549 有難うございます。
-87秒、-90秒のデータを、行挿入で作って、数値はブランクに
して作ってみました。うまくいきそうです。
本当は、目盛りラベルは60秒おき、目盛り線は30秒おきとして、
ラベルは、-60、0、60、120といきたかったのですが、
-90からラベルを打つと、-90、-30、30、90と肝心な0がスルーされて
しまう、、、あきらめて、目盛りラベルは30秒にしてしまおうと思います
Y/数値軸との交点
項目境界で交差する
なんか、このあたりかもと思って、色々といじっていましたが、うまく
いかずに苦労していました。有難うございます。
>>546 君のご両親も似たり寄ったりの出来損ないなのかい?
Q&Aだけだと味気ないから、たまには無駄レスもいいもんだが 無理して自分の莫迦さ加減を自慢しなくてもいいのにな。
【1 OSの種類 .】 WindowsXPSP2 【2 Excelのバージョン 】 Excel2007 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 条件 すみません 初心者的な質問なんですが 文章が下手なので例なのですが、セルA1に入力された数値を 100以下の時はセルA2にその値を出して 100を超200以下の場合はセルA3にその値を出して 200以上の場合はセルA4にその数値を出すようにしたいのですがどのようにすれば宜しいでしょうか? 宜しくお願いします。
>553 A2,A3,A4はすべて =A1 ってしておいて、 条件付き書式の関数で該当する範囲だったら文字色を黒、それ以外は白にするというのが 初心者には簡単なんでなかろうか? それとも、条件を満たさない場合は空白セルにしないとだめ?
555 :
463 :2007/07/30(月) 13:09:09
>>488 せんせーは偉いんだからいいんだよw
>>553 >200以上の場合はセルA4にその数値を出すように
これは「200超の場合はセルA4にその数値を出すように」の間違えだよな?
A2=IF(A1,IF(A1<=100,A1,""),"")
A3=IF(A1<=100,"",IF(A1<=200,A1,""))
A4=IF(A1<=200,"",A1)
>>554 有難う御座います。
できれば条件を満たさない場合のセルは空白セルにしたいです。
IF関数でA2,A4の値の設定をしてみたのですが、
A2=IF(B1<4000000,B1,0) A3.A4は0もしくは空白
A4=IF(B1>8000000,B1,0) A2,A4は0もしくは空白
A3の「100から200まで」の範囲指定の方法がわかりません。
度々すみません。宜しくお願いたします。
>>555 すみません、書いていたら
>>555 を見ていませんでした。
無事、できました。有難う御座いました。<(_ _)>
558 :
555 :2007/07/30(月) 13:42:58
>557 書き忘れたが、 A3=IF(AND(A1>100,A1<=200),A1,"") とかでもいけるぞ 雰囲気的にこっちの方がわかりやすいと思ってな
>555 せんせー、「間違え」じゃなくて「間違い」だとおもいまーす!
>>555 重ねて有難う御座います。
この方法でもできるんですね。有難う御座います。
「●から●まで」の条件指定方法が分からなくて参ってました
勉強になりました。(´∀`)
562 :
名無しさん@そうだ選挙にいこう :2007/07/30(月) 14:22:07
うぜえ
>>562 せんせーはうざいものだよ
>>562 君は
>>559 君と同じ子かな?
同じなら自滅を反省して夏休みの宿題を終わらせなさい。
違うならせんせー調子に乗っちゃうからスルーしてね。
564 :
名無しさん@そうだ選挙にいこう :2007/07/30(月) 19:03:14
>>553 セルA2に→ =If(A1<100,A2,"")
セルA3に→ =If(AND(A1>100,A1<200),A1,"")
セルA4に→ =If(A1>200,A1,"")
でどうなの?
565 :
564 :2007/07/30(月) 19:09:32
>>555 が答えてるし
俺、馬鹿だ・・・スレをよく見ろよな
簡単な質問になったら、急にせんせーが湧いてきたな。 どっちも夏なんだ。
教える側も教わる側も幸せになれるんだから、結構な話じゃないか。
568 :
429 :2007/07/30(月) 20:44:10
レスくれた皆さんありがとうございました
>>429 です。
アドバイスを参考にいろいろやってみましたが、結局エクセルでは解決策がみつかりませんでした。
powerpoint に表をコピーしてA4一杯に拡大し、プリンタの割付機能を使って満足のいく結果にたどり着きました
>>566 だって赴任したてなんだもん
それにそんなに難しい質問出てないじゃん
情報不足ばっかだし。
それからせんせーは関数専門なんでVBAは答えられないよーー
んじゃ、また今度!
> 関数専門なんでVBAは答えられないよーー 要らねぇーーw
>>570 せんせーは君のためのせんせーじゃないからどうでもいいw
でも関数に関しても、カンスウの"カ"の字をやっと覚えた程度なんだろ?
んじゃ、また今度! とか言っておきながらスグに出てくる奴はロクなもんじゃないという法則
574 :
名無しさん@そうだ選挙にいこう :2007/07/30(月) 22:03:07
質問に答えたいんじゃなくて自分をアピールしたいんだけなんだろうな 普通にいらねーうぜえスキルとか関係ねー死んでくれた方がまだ役に立つ
max関数で、指定した範囲のセルの中から最大の数字を表示させているとして、 どこのセルを参照しているかってのはどうすれば一番手っ取り早く判明出来ますかね?
>>572 せーかい!
>>573 せーかい!
>>574 構ってくれてありがと!
NGワード登録マジおすすめ!
今日はもう来ないつもりだよ
でも強いリクエストがあればまたすぐにでもくるかもよーー!
じゃーねーー
>>575 今日は終わろうと思ったらなんか質問あったんで置き土産
条件付書式
セルの値が =MAX(範囲)
好きな色に!
ではまたーー
579 :
名無しさん@そうだ選挙にいこう :2007/07/30(月) 22:35:31
夏厨の季節ですなぁ・・・
このセンコー、本当に学校の教師なのかな。 さぞかし生徒からは軽蔑されてるんだろうなぁ・・
せんせーの人気に嫉妬
582 :
名無しさん@そうだ選挙にいこう :2007/07/30(月) 23:51:16
せんせーだろがニートだろが終わってるよ。 もしリアルなら、生徒がかわいそうだ。
583 :
名無しさん@そうだ選挙にいこう :2007/07/31(火) 00:24:07
で、456件は答えでたの?
自分で全レス読め
【1 OSの種類 】 WindowsXP sp2 【2 Excelのバージョン】 Excel2003 【3 VBAが使えるか 】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 ドロップダウンリスト 空白 表示しない グラフ 空白 表示しない 凡例 ドロップダウンリストを作成したさい、汎用性を持たせるため広めの領域を指定しましたが、空白のセルも選択出来るようになってしまいます。 ドロップダウンリストで空白のセルは非表示にする事は可能でしょうか? また、円グラフにおいて、同様に空白のセルを非表示に、凡例も空白のセルは非表示にする事は可能でしょうか? よろしくお願いします。
>>586 ドロップダウンはRowSourceとかListFillRangeを指定してるってことだよね?
残念だけど、解決策はおそらくない。
必要になったタイミングで都度「行の挿入」をしてからデータを入力するのが現実的かな。
>>587 ドロップダウンリストについてはデータ->入力規則からリストを選択してセルを指定するやり方でした。
詳しく書かなくて申し訳ございません。
やはり円グラフに関しても難しいのでしょうか?
>>588 入力規則のリストなら、空白無視する設定があるじゃん
中間空白は無視されないけど、今回問題にしてるのは末尾の空白なのでこれで問題ない
グラフの場合は円グラフに限らずだけど、元データとグラフソースを別にして
望みのグラフになるようなグラフソースを、論理式使って元データから作れば良いだけ
グラフの設定でどうにかしようとするから行き詰まるわけで、柔軟性のないグラフの設定ではなく
柔軟性のある数式使えばどうにでもなる話
詳しくはヘルプ読んでね
>>589 レスありがとうございます。
やってみたいと思います。
591 :
586 :2007/07/31(火) 11:28:39
度々申し訳ございません。 入力規則についてですが、入力値の種類をリストにし、空白を無視するとドロップダウンリストから選択するにチェックを入れ、 元の値に選択肢のセルを指定しましたが、元の値が空白セルの場合、ドロップダウンリストにも空白が含まれてしまいます。 元の値に空白セルが含まれていてもドロップダウンリストからは空白セルを除外するにはどのようにすればよろしいでしょうか? よろしくお願いします。
関数に関する呼び名?名前?についてお聞きしたいのですが SUM(サム)、ROUND(ラウンド)、AVERAGE(アヴェレージ) など、たくさんの関数がありますが皆さんは膨大な関数類を何と読んでいるのでしょうか? ローマ字表記はわかるのですが、いざ●●関数(カタカナ)と読むときは正しい呼び方はあるのでしょうか? 技術的な問題ではないのですが宜しくお願いします。
>>591 ひょっとしてデータリストの間に空白があるの?
それだったら別セルや別シートで空白をなくしたリストを作るしかないと思う
>>594 そうですね
例えばA1からA9を元データと指定したときに後から追加出来るようにA7以降は空白セルなのですが、
ドロップダウンリストにはその空白セル分は表示しないようにしたかったです。
円グラフの件も同じです。
596 :
594 :2007/07/31(火) 13:27:39
>>595 そうじゃなくて…
A
1 aaa
2 bbb
3 ccc
4 ddd
5 eee
6 fff
7
8
9
なら「空白を無視する」にチェックをいれれば
A6までのリストになるはずです
A
1 aaa
2 bbb
3 [空白]
4 ddd
5 eee
6 fff
7
8
9
だったりしたら別リストを作るしかないということです
どっちなんですかね?
>>596 上のパターンです。
そこで空白を無視するにチェックを入れてあるのですが、A7:A9分の空白セルもドロップダウンリストに表示されてしまいます。
598 :
594 :2007/07/31(火) 14:06:12
>>598 すみません。
ありがとうございました。
ちなみにある任意のセル
A1と仮定してそこから任意の範囲を選択するにはどうすれば良いでしょうか。
例えばa=3の時
A1:A(1+a)という感じでA1からA4まで範囲指定するなどは可能でしょうか?
600 :
598 :2007/07/31(火) 14:44:21
元の値に =$A$1:$A$4 じゃだめ?
601 :
598 :2007/07/31(火) 14:45:29
勘違い… スルーしてください
>>591 入力規則のリストを可変にする方法
●リストが同じシートのA列にある場合
入力値の種類:リスト
元の値:=$A$1:INDEX($A:$A,COUNTA($A:$A))
●リストが別のシートにある場合
手順1
挿入−名前−定義で
名前:リスト
参照範囲:=Sheet1!$A$1:INDEX(Sheet1!$A:$A,COUNTA(Sheet1!$A:$A))
手順2
入力規則の設定タブで
入力値の種類:リスト
元の値:=リスト
>>602 こういう場合はコピペではなくリンクだけはればOKだよ
>>603 リンク元がわからないんだよ
せんせーの代わりに元を探してね!
>>600-604 皆様ありがとうございます。
本当に助かりました。
何とか頑張れそうです。
606 :
名無しさん@そうだ選挙にいこう :2007/07/31(火) 17:04:24
すいませんが、VBAでショートカット割り当てをしたいんだけど、 Application.OnKeyなどのコードってどこに書けばいいでしょーか? 標準モジュールだと思うんだけど、うまく動かない。 あと、Excel2003のようなツール→ユーザー設定って2007だとどうやって呼び出すんでしょうか?
>>606 VBAはよくわからんが、ユーザー設定は
officeボタン(一番左上)→excelのオプションを選ぶといいよ
608 :
名無しさん@そうだ選挙にいこう :2007/07/31(火) 18:02:28
【1 OSの種類 .】 WindowsXP SP2 【2 Excelのバージョン 】 Excel2002 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】E エラー 初心者質問で済みません。 空白を含む複数のセルを選択して、右下の「合計」欄を見ると、 -8.54872E-15と出てきて計算が合いません。 どう見ても足すとゼロになるように思えるのですが。 何をどうすれば0と表示してもらえるのでしょうか。
609 :
名無しさん@そうだ選挙にいこう :2007/07/31(火) 18:09:39
>606 ショートカット割り当て Application.MacroOptions Macro:="モジュール名", ShortcutKey:="割当キー名" 例) Application.MacroOptions Macro:="Macro1", ShortcutKey:="l" ctrl + l でmacro1を実行。」
>>608 本当に空白か?文字がセルと同じ色では?
数字は小数点以下も表示している?
表示していない行はないか?
あと、何があるかな?
>608 合計するセルは、何かの計算結果じゃないかな。 ツール→オプション→計算方法→表示桁数で計算する にチェキを入れてみなはれ。
612 :
名無しさん@そうだ選挙にいこう :2007/07/31(火) 21:53:00
【1 OSの種類 .】 Windows2000 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 中級者以下 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 $ 複数のセルにある相対座標をまとめて絶対座標に変える方法を教えてください 番地や関数はいろいろ変わります 4000個ぐらいあります
613 :
名無しさん@そうだ選挙にいこう :2007/07/31(火) 21:59:45
【1 OSの種類 .】 Windows2000 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 一応 【4 VBAでの回答の可否】 不可 【5 検索キーワード 】 オートフィル A1=集計!N18 B1=集計!N34 C1=集計!N50 のように参照座標が18づつ規則的に増えていくのですが これをオートフィルさせるにはどうしたらいいですか?
方法1 A1=INDEX(集計!$N:$N,IF(COLUMN()=1,18,OFFSET(A1,,-1)+16)) 右にフィルコピー 方法2 A1=18 B1=INDEX(集計!$N:$N,A1+16) B1を右にフィルコピー まちがった 少し保留
>>613 A1=INDEX(集計!$N:$N,COLUMN()*16+2)
右へフィルコピーで!
618 :
名無しさん@そうだ選挙にいこう :2007/08/01(水) 02:47:03
簡単な株の集計をエクセルでつけたいんだけど 個人で頼むので何処に頼んでいいかもわかりませんし いくらぐらいするのでしょうか? 本当簡単な奴で、後少し抽出出来るぐらいのが欲しいです。 宜しくお願いします。
Excel2000なのですが ピボットテーブルの集計の方法で、合計や最大ではなく、 二番目に大きい値を表示させたいのですが可能なのでしょうか?
>>612 何列何行かにより、簡単な方法は変わる。
>>618 メールでのサポート込みで、上限3万程度(内容による、応相談)で承りますよ。
まぁ、冷やかし程度にメールくださいな。
連絡先:
[email protected] あと、ここは技術的な質問をする場所なので、その手の質問は控えてくださいな。
>>619 つGoogle
つエクセル 2番目に大きい
626 :
619 :2007/08/01(水) 09:54:13
>>625 LARGE関数が検索で引っかかったのですが、この関数を
ピボットテーブルにどのように設定すればよいのでしょうか?
627 :
名無しさん@そうだ選挙にいこう :2007/08/01(水) 10:11:48
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 Google Excel 稼働日 非稼働日 週日単位で設定すると(土・日)が非稼働日として認識されるのですが、 これを変更する方法があれば教えてください。 よろしくお願いします。
>>619 ピボットじゃなきゃダメ?
>>627 そういう質問をする時にはレイアウトと入っている式を
書いてくれないと回答のしようがない。
【1 OSの種類 .】 WindowsXP SP2 【2 Excelのバージョン 】 Excel2002 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】セル 参照 セルを指定したい時に、あるセルの値を参照して指定することはできますか? 例えば、セルA1にx(xは整数)の値、セルB1にセルA1の値を使ってセルC(x+5)の値を書き込みたい時に セルB1に=c(A1+5)としてもエラーになってしまいます。 よろしくお願いします。
>>630 このような関数があったんですね。
おかげでうまくいきました。
ありがとうございました。
632 :
名無しさん@そうだ選挙にいこう :2007/08/01(水) 16:08:23
>>609 超絶にありがたいんですけど、そのコードをどこに書けばよろしいんでしょう?
標準モジュールでおけ?
INDEX の好きなせんせーだな。 =INDIRECT("C" & A1+5)
>>633 INDEX関数で代用できるのにINDIRECT関数やOFFSET関数のような
揮発性関数を使うやつは間抜け
> INDEX関数で代用できるのにINDIRECT関数やOFFSET関数のような
> 揮発性関数を使うやつは間抜け
残念、ハズレ
>>629 の場合の適正は
OFFSET >>> INDEX >>> INDIRECT
>>635 それ処理スピードか?
でも、その場限りの適正だな
これから先もっと色々な式やデータを加えていくと予想できるだろうに…
先を考えた時に余計な所で再計算が走るくらいなら俺はINDEXを薦めるね
とはいえ、その情報を知らなかった訳だから素直に感謝するよ
ありがとな。
せんせーも日々勉強だよ
Excelの悪いところは、解決方法が人の数ほどあることだな
639 :
名無しさん@そうだ選挙にいこう :2007/08/01(水) 20:23:46
人の数・・・は言い過ぎだろう。利用者の数の五倍ぐらいだな。
> これから先もっと色々な式やデータを加えていくと予想できるだろうに… だからこそこの場合はOFFSETが一番
>>640 とりあえずOFFSET式を教えてやったら?
とりあえず揮発性関数という表現には感心した。 ウケたという意味ではあるが。
>>643 ちょw
それってマイクロソフトも認める呼び方
ググってみてもいいし、マイクロソフトのホームページを検索してもいい
>>641 =OFFSET(C5,A1,)
式が増えることを考えると、汎用性の低い文字列参照のINDIRECTは×
INDEXはC:C、A1の部分は絶対指定も相対指定も出来るが、5の部分は絶対指定しか出来ず
ここを相対指定したい場合にROW関数や外部インデックスを使わなければならない上に、
データ増加を考慮すると無駄に多いセル参照(2003以前ならC:CはC1:C65536なので65536+1で計65537セル)
が発生するので△
全てに置いてこの関数のみで相対指定も絶対指定も思いのままで
参照セル数も2個ながら、データが増えても問題ないOFFSETが◎
646 :
名無しさん@そうだ選挙にいこう :2007/08/01(水) 21:45:47
はいはい、ご苦労さん
また荒れるから議論するなら鳥付けろ ここは相談所だ
648 :
641 :2007/08/01(水) 22:07:30
>>645 俺にレスされても・・・
あとは629が決めるだろ
>>647 鳥付けても荒れるからスルー推奨
>>645 実際どれくらいの時差がでるの?
せんせーその数字を知りたいな
まあ、返答は予想できるけどね…
650 :
647 :2007/08/01(水) 22:12:28
652 :
名無しさん@そうだ選挙にいこう :2007/08/01(水) 22:29:05
すげー吹き溜まり感だなww 荒れてきたら自作自演のテンプレ質問に自分で解答付けて自分でお礼 言って流れを変えようとしてた奴がいたころ以来の大爆笑相談所だなwwwww
653 :
629 :2007/08/01(水) 22:38:00
みなさん、いろいろな解決法を教えてくれてサンクスです。 3つとも試してみましたが、今のところどのやり方が最もいいのかわからないので、 最初に教えてもらったINDEX関数を使うやり方でやっていこうと思います。 また相談したいときはよろしくお願いしますね。
>>652 は陰謀論の好きな厨二病患者
空気感染するので近づかないようご注意ください
>>654 おまいもそうやって煽るんじゃない
今は夏休みだ。ああいうのはそっとしておくんだ。
夏だし2ちゃんらしくていいなw
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 わかりません セルAの数字とセルBの数字によって セルCの数式を予め登録・指定しておいた3〜4種の中の数式から 判別と計算って可能でしょうか? 例 セルAが1の場合は1+1、セルBが1の場合は5+5 セルAが3以上且つセルBが1の場合は10+10 2つのセルに数字が入る可能性(1つのセルの場合もあり)があって その中の数字によって、使う数式を変える こんな感じです
複数条件が当てはまる場合(例の1つめ)でも一つに決定できる条件があるなら可能です IFをネストする、検索/行列・データベース関数を使用する・・・ 色々な方法があります
659 :
657 :2007/08/02(木) 02:10:05
>>658 >一つに決定できる条件があるなら可能です
これは、数式を決定する条件と言うことでしょうか?
数式を決定する条件は
セルAとセルBの数値で、どちらか片方には必ず数値が入っており
セルAのみの場合と、セルBのみの場合では異なる数式を用いたい
さらに、数値の増減?によって異なる数式を用いたい
セルA・セルB共に数値が入っている場合も別の数式を用いたい
これもセルAとセルBの数値の増減?で異なる数式を用いたい
わかりにくいかも知れませんが、こんな感じです
>>659 「増減」の意味がわからん。「大小」と違うのか?
どっか別の所に数式を並べておいて、条件式によって結果を取り出せばいいんでね?
>>659 セルの数字と数式のパターンがわからん
例えばセルA1に2が入ってたらどうなるの?また、セルA1・B1に1が入ってたら?
そのパターンが決まれば、後は
>>660 の言うようにすればいい
【1 OSの種類 .】 Vista 【2 Excelのバージョン 】 Excel2007 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 名前 定義 条件 一致 参照・・・ A列 B列 C列 D列 E列 氏名 売上 日給 出勤日数 概算 3 田中 100 15 =C3*D3 4 佐藤 200 10 =C4*D4 5 島田 150 20 =C5*D5 〜 上記の様なシート上でC列の日給をA列の氏名により田中なら9000、 島田なら12000と表示させるにはどうすれば良いでしょうか? ちなみにA列、B列には別シート(ピボット)から参照した値が入っています。 F列に氏名、G列に日給を記入しA列の値により対応させる方法がわかりません。 よろしくお願いします。
>>662 VLOOKUP
過去レス検索くらいしてくれ
グゥの音も出ずに、せんせー轟沈
からかって面白いくらいのレベルに上がってきたら遊んであげるよ
【1 OSの種類 .】 Windows2000 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 ある列のぜんぶのセル内の数字の合計をだすのはsumでOKですが、 例えば、ある列における背景色グレーのセルだけを、 合計することってできますか?
そうでもないか
>667 _ A 1 値 2 1 3 2 4 3 5 4 で25%灰色のセルの値を合計したい場合 手順1 挿入−名前−定義で 名前:色 参照範囲:=GET.CELL(63,!A1)+NOW()*0 手順2 B2:=色 フィルダウン 手順3 集計セル=SUMIF(B2:B5,15,A2:A5) でいけるみたいだけど色々なサイトとかみる限り 既に正式サポートは終わってるみたいだね。 やっぱりセル色を使って集計する事はやめた方がいい。 VBAでやるかセルに色をつける代わりに対象セルの横に1とかを 入力してSUMIFでやるべきかな。
673 :
名無しさん@そうだ選挙にいこう :2007/08/02(木) 15:15:47
エクセルで全角文字(英数文字列)を半角に変換する方法ってありますか?
675 :
名無しさん@そうだ選挙にいこう :2007/08/02(木) 15:22:49
>>674 即レスありがとうございます。
大きな問題が一つ解決しました。
ついでといっては何なんですが、ある文字列の前から何文字目までを取得するとか言う関数はありませんか?
VBではあったような気がするんですが・・・。
よろしくお願いします。
>>675 =MID(文字列,FIND("ある文字列",文字列),文字数)
あたりですかね?
あ、前から前へ何文字?ってやつ? =MID(文字列,FIND("B",A1)-文字数,文字数) かな?検証してません。
挿入→関数でRIGHT、MID、LEFT
>=MID(文字列,FIND("B",A1)-文字数,文字数) =MID(文字列,FIND("ある文字列",文字列)-文字数,文字数) m(_ _)m
>>676-679 またまた即レス、ありがとうございます。
上記を参考に、色々試してみます。
エクセルに貼り付けたURLから飛ぶとき、IEではなくスレイプニルを開くように設定したいんですが どうすればいいでしょうか?
スレイプニルオプションで標準のブラウザとして使用するにチェックは入れてるんですが・・・
684 :
657 :2007/08/02(木) 21:39:09
>>660 ,661
増減では無く、数値の大小でした
セルの数字と数式のパターンは
セルAのみの場合は1で750、2で1500、3以上の場合は数字が1増える毎に
500を足して行くことになります
1→750 2→1500 3→1500+500 4以上→1500+500*?
セルBのみの場合は、1は存在せず、2だと13001、3以上の場合は1300+500
3以上の場合は数字が1増える毎に500を足していきます
1→存在せず 2→1300 3→1300+500 4以上→1500+500*?
セルAとB両方に数字が存在する場合は
セルAの計算は上記のまま
セルBの計算は、セルAの数値が1の場合は、セルBの数値が1で1650、1増える毎に500ずつUP
セルAの数字が2以上の場合は、セルBの数値が1で500、1増える毎に500ずつUP
わかり難い上にややこしいかも知れませんが、このようになります
あと、1つ間違いがあって、セルAの計算結果はセルCに
セルBの計算結果はセルDに表示させたいです
685 :
名無しさん@そうだ選挙にいこう :2007/08/02(木) 21:47:55
=left(A1,2)みたいな関数の2文字を現す2って部分を どこかのセルに入ってる2という数字を使ったり、そういう事は可能でしょうか?
>>681 通常、httpや.htmlに対して関連付けをすれば、殆どの場合標準ブラウザとして使えるが
(オプションの「標準のブラウザとして使用する」は自動で関連付け変更を行う物)
ExcelのURLリンクからも利用したければ、関連付けだけではなくそのブラウザをシステム標準のブラウザにしなくてはならない
関連付けの変更は野球で言えば代打を立てた状態だが、Excelからも使いたければ代打ではなくレギュラー入りさせなきゃダメ
その方法については、Excelの設定ではなくWindowsの設定なので、スレ違いだから具体的な方法は伏せる
やりたければ自分で調べてね
>>685 聞くヒマがあったら、自分で試してみたらどうなんだ
688 :
名無しさん@そうだ選挙にいこう :2007/08/02(木) 22:49:57
689 :
名無しさん@そうだ選挙にいこう :2007/08/02(木) 23:18:41
EXCEL2007の質問です。
以下のファイルを見てください。
http://www.uploda.net/cgi/uploader3/index.php?dlpas_id=0000005274.udn パスワード:11
シート1とシート2にそれぞれ、わかりやすく実際のファイルを作ってみました。
2003で出来ていたことが出来なくなって不便で困っているというものです。
1つ目は、テキストボックスの配置・位置のコピーペーストが、2007では配置場所までコピーできないのですが
以前のようにコピーできる方法はありますか?
2つ目は、セルの表をオブジェクトに起こして、そのオブジェクトに元の式と連動する式を入れて
連動するようにしたいのですが、2003では出来ていたのですが、2007ではオブジェクトが
ピクチャーとか言う形式になってしまって式が入力できません。会社が無理矢理2007に変えてしまって・・・
本当に困っています。よろしくお願いします。
690 :
名無しさん@そうだ選挙にいこう :2007/08/02(木) 23:35:23
>>689 1テキストボックスではなくセルを選択して貼り付け
2コピーしてからホームタブ貼り付けの▼をクリック
図から図のリンク貼り付け
これで出来ますよ
693 :
691 :2007/08/02(木) 23:42:02
>>689 言葉不足だったので一部補足
コピー元のセルA2を選択コピーして貼り付けたいセルB2へ貼り付け
これで位置関係は大丈夫だと思います
694 :
名無しさん@そうだ選挙にいこう :2007/08/02(木) 23:43:12
689です
>>6911 ありがとうございます
2、は解決しました。
1、なのですが、すでにセルに値が入力してある場合で
後付けでテキストボックスだけをコピーすることがあるのですが、
セルごと貼り付けてしまいますと、その貼り付けたいセルに入っていた
値が消えてしまうので困っております。なんとかなりませんでしょうか。
695 :
691 :2007/08/02(木) 23:51:55
>>694 後付したテキストボックスも後で内容を書き換えるのでしょうか?
書き換えないなら2の応用で 図として貼り付けを選択し位置調整でどうでしょう
696 :
名無しさん@そうだ選挙にいこう :2007/08/02(木) 23:55:28
689です
>>695 図として貼り付けすると文字がピンぼけした感じになってしまいました(T_T)
しかも他のセルにコピー貼り付けをしても、貼り付け位置の座標が左上の0,0になってしまいます。
2007は一長一短ですね。前出来ていたことが出来なくなるのは不便です。
697 :
名無しさん@そうだ選挙にいこう :2007/08/03(金) 08:31:22
エクセル初心者ですが質問です。 例えば30,000円に対して1,000まで5%、1,001以上10,000まで10%、それ以上は20%の割引を適応する場合 どの関数を使ったら自動計算できますか?教えてください。
>>697 そういうユーザーが条件を指定するような計算は
「関数を探す」ではなく「数式を作る」が正解
あとは単に「1,000まで5%、1,001以上10,000まで10%、それ以上は20%の割引を適応する」を
そのまま式にしてやれば良いだけなので簡単
小学生でも出来る
699 :
名無しさん@そうだ選挙にいこう :2007/08/03(金) 08:53:05
小学生以下なので申し訳ない。参考にします。
700 :
名無しさん@そうだ選挙にいこう :2007/08/03(金) 09:00:21
>>698 説明が間違っていました。例えば30,000と書きましたが、500もあるし1,000,000もある。
入力された数字に対して1,000まで5%、1,001以上10,000まで10%、それ以上は20%の割引を適応する、といった数式を教えてください。
割引を適用した値段な =IF(A1>10000,(A1-10000)*0.8 + 9050,IF(A1>1000,(A1-1000)*0.9+950,A1*0.95))
702 :
名無しさん@そうだ選挙にいこう :2007/08/03(金) 09:25:18
>>701 有難うございます。説明が曖昧で申し訳なかったです。
703 :
名無しさん@そうだ選挙にいこう :2007/08/03(金) 10:04:35
【1 OSの種類 .】 Windows2000 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 少し 【4 VBAでの回答の可否】 はい あるセルに、 「12:00」のように時計がわりに時刻を表示させたいのですが マクロ使わずに出来るでしょうか?
>>703 表示自体はマクロ使わずに出来る
=NOW
但し再計算が行われないと更新されないので
時計代わりにはならないな
自動更新させるにはVBA(マクロ)必須
705 :
703 :2007/08/03(金) 10:12:18
ありがとうございます。 やはりそうですか、あきらめます。
706 :
名無しさん@そうだ選挙にいこう :2007/08/03(金) 10:44:40
表示形式から小数点以下を切り捨てる設定にするやり方はありませんか?
707 :
名無しさん@そうだ選挙にいこう :2007/08/03(金) 10:55:35
>>706 数値桁丸めの関数
EVEN/INT/MROUND/ODD/ROUND/ROUNDDOUN/ROUNDUP/TRUNC
708 :
706 :2007/08/03(金) 11:04:22
ありがとうございます。 ただ関数だと数値を直接入力したセルには設定できなくないですか?
709 :
名無しさん@そうだ選挙にいこう :2007/08/03(金) 11:43:34
>>704 >>703 ではありません。便乗質問させてください。
なんらかのアクションで、ストップウォッチもどきはできそうですが、
タイマー(たとえば5分後にアラーム)はVBAを使わないと絶対にムリでしょうか?
711 :
710 :2007/08/03(金) 12:49:03
自分でキーを連打とかしないと、トリガーが無いのでムリですね。 失礼しました。
>>706 表示したいセルを選択
右クリック−セルの書式設定
−配置タブ−「折り返して全体を表示する」にチェック
−表示形式タブ−ユーザー定義
−種類に 0 Ctrl+Jを押す −そのまま .00 −OK
この場合の問題点が最低2つ
1.セルの高さを広げると小数点以下が表示される
2.例えば1.995以上2.000未満の場合でも2と表示されてしまう
__2回目の0を多めに入力すれば精度は上がるがそれなりのセル幅が必要になる
__適当な所で Ctrl+J で改行する方がいい
この方法で納得しなかったらあとは白根
>種類に 0 Ctrl+Jを押す ハイフンが抜けたが「種類に0を入力した後、Ctrl+Jを押す」って意味な
714 :
名無しさん@そうだ選挙にいこう :2007/08/03(金) 14:20:23
↑こいつ気持ち悪いな
【1 OSの種類 .】 WindowsXP SP2 【2 Excelのバージョン 】 Excel2007 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】グラフ 処理 遅い 最近エクセル2007にUGしたのですが、とにかく何をするにも処理が遅いと 感じています。とくに、グラフ作成とグラフの編集に至っては、処理落ち と勘違いするような遅さです。 また、シート内にJPGを貼り付けた際にも同様の現象が生じます。 設定変更などで対処できるものかお教え願えませんでしょうか?
716 :
661 :2007/08/03(金) 15:17:34
>>657 の人もう解決したのかな?
取りあえず作ってみたのでよければどうぞ
まずセルAの計算
セルC1に→ =IF(A1=1,750,IF(A1=2,1500,IF(A1>=3,1500+((A1-2)*500),"")))
次がセルBだけど、セルB単体の計算なら↓でいいんだけど
=IF(B1=2,13001,IF(B1>=3,1300+((B1-2)*500),""))
セルAの数値が絡むと俺の知識では作業列を使わないと出来ないよ
それで、作ったのが↓
セルE(セルB単体の計算)→ =IF(B1=2,13001,IF(B1>=3,1300+((B1-2)*500),""))
セルD→ =IF(A1="",E1,IF(A1<2,IF(B1<2,1650,((B1-1)*500)+1650+E1),IF(B1<2,500,((B1-1)*500)+E1)))
>>710 昔日経PCのExcel腕自慢で1分ごとに表示するのを見た記憶があるので
関数の組み合わせ?で出来ると思います
718 :
710 :2007/08/03(金) 16:52:11
>>717 情報どうも。少し関数のリストを眺めて考えて見ます。
スマートフォンがソフト揃ってないタイプを購入予定で、
色々くだらないけど必要なものをMobileExcelで考え中です。。。
719 :
名無しさん@そうだ選挙にいこう :2007/08/03(金) 19:35:41
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2007 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 不可 Excel2007でセルに色を塗るためのボタンがありますが、新規のブックを開いた際、必ず黄色が選択されています。 これを任意の色に変更することは可能でしょうか? 2003以前ではツール→オプション→色で可能でしたが、2007ではこの機能がないように思います。 Xlstartフォルダも色々操作してみましたが出来ませんでした。
720 :
名無しさん@そうだ選挙にいこう :2007/08/03(金) 19:40:16
>>719 てめーいくつの掲示板にマルチしてんだ!!!?
氏ね!
つうか死ね!
>>657 >>684 やっとできたぜ!
条件の整理とネストの仕方にかなり手こずってな。
すまんかった。
さて、まず条件を2ヶ所ほど脳内変換した
>セルBのみの場合は、1は存在せず、2だと13001、3以上の場合は1300+500
=セルBのみの場合は、1は存在せず、2だと1300、3以上の場合は1300+500
>1→存在せず 2→1300 3→1300+500 4以上→1500+500*?
=1→存在せず 2→1300 3→1300+500 4以上→1300+500*?
で、できた数式が
C1=IF(A1="","",A1*500+LOOKUP(A1,{0,1,2},{0,250,500}))
D1=IF(B1="","",B1*500+LOOKUP(A1,{0,1,2},{300,1150,0}))
よかったら使ってくれ。
なにこのスーパーアホ
本人も認めてる通り、「カンスウの"カ"の字をやっと覚えた程度」なんだから 不適切なものや間違いがあっても大目に見てあげよう
725 :
名無しさん@そうだ選挙にいこう :2007/08/04(土) 08:40:59
この手のヤシは毎年出てくるけど、自己満足に終始して何の役にも立たないんだな ほっとけば自然消滅するから気にする事はないよ 質問者は惑わされないように気をつけてね!
カンスウのカというより、読解力の問題だな。
>>684 必ず正整数が入力されるのなら、もう少し省略できる
C1=IF(A1>=2,500+A1*500,IF(A1=1,750,""))
D1=IF(A1>=2,IF(B1>=1,B1*500,""),IF(A1=1,IF(B1>=1,1150+B1*500,""),IF(A1="",IF(B1>=2,300+B1*500,""),"")))
727 :
名無しさん@そうだ選挙にいこう :2007/08/04(土) 09:50:51
【1 OSの種類 】 Windows 2000 【2 Excelのバージョン 】 Excel 2003 【3 VBAが使えるか 】 いいえ 【4 VBAでの回答の可否 】 否 【5 検索キーワード 】 テンプレート Excel テンプレートが入っているフォルダを開くには,下記の操作をしているのですが, もう少し,簡単にテンプレートのフォルダを表示させる方法はないでしょうか。 [ファイル]-[新規作成]を選択 右側のペインに表示される[このコンピュータ上のテンプレート]をクリック Office 2000だとスタートメニューにテンプレートのフォルダを開くショートカット があったのですが,2003ではなくなってしまいました。2003でも2000のように テンプレートのフォルダのショートカットがスタートメニューに表示されると されにうれしいのですが,そのような方法はないでしょうか。
おはよう!
>>723-724 文句いうくらいなら間違いの部分を指摘してほしいな
まあ、君たちにそれほどの能力があればだけどねw
>>726 読解力の問題?
どこらへん?
Bのみの場合は1は存在しないからその点だけは無視したんだ
その他の部分で表示される答えは変わらない気がするんだけど…
まあ、でも別回答ありがと。
質問者も答えが複数ある方が選びやすいからね!
あら
>>725 のレスを無視しちゃってた!
自己満足は否定しないよ
でなきゃ回答者なんかやってらんない
確かにいつかは自然消滅するからもう少し我慢してね!
記録より記憶に残る仕事をしたいのさw
なんかこのスレ、いつの間にか変なコテが住み着いちゃったなぁ。 居心地悪いからもう来るのやめよ
>>730 夏は、こんなヤツラを見て楽しむ季節さ
たまにチャチャ入れるとスグに食いついてくるから
暇つぶしに遊びにおいで
チャチャ入れるヤツラがいるからせんせーがのさばるんだろ? NG入れて放置しとけば問題ない
657です こちらの説明に、間違いがあってすいません >684の文中にある13001は1300の間違いでした >726さんの数式をセルに突っ込んだら、解決しました 726さん始め、レスくださった皆さんありがとうございました IFは1つのセルに1度しか使えないと思っていたので 大変、勉強になりました<(_ _)>
【OS】 Win XP Excel2003 【VBA】 不可 【VBAでの回答】 不可 【質問内容】 妹の話なので、曖昧部分がありますが ご了承下さい。 リサーチのNSA(?)が分からないとの事でしたが、 私もリサーチは分かりますが NSAとは何の事でしょうか? 教えて下さい。 宜しくお願い致します
>>734 への追加というか、修正です。
リサーチのMSNの日本語…だそうです。
私も今手元にパソコンが無いため
教えて下さい。
736 :
名無しさん@そうだ選挙にいこう :2007/08/04(土) 13:28:50
スレ違い
>>736 スレチでしたか…
すみませんでした。
自分で見てみます。
ごめんなさい
質問者からすれば回答者のナリは問題じゃない 糞コテだろうがなんだろうが回答もらえればありがたいことに違いはない
ほとんどの質問者は一見さんだしな。 常駐してると目に付くし鼻につく。
自演乙
俺は自演なんかしてないぜ。 俺もそれなりに2ちゃん歴長いからな、>739のようなレスをつければ 当たり前のように>741みたいな粘着アメーバ野郎が現れるのは予想できるしな。 そんなめんどくさい事はやらねー つーことで細胞分裂しろよ
と、アホが涙ながらに語っております。
>>743 なんだ?ママンにプールへ連れて行って貰えなかったから拗ねてるのか?w
質問に答えるのは良い事だと思うが、コテは荒れる元だからヤメレ。
てめーに指図される事じゃねーよデブ
747 :
名無しさん@そうだ選挙にいこう :2007/08/04(土) 23:29:57
1回目のアドバイス >とほほさん 心配無用です。 まず彼らは家には来ません。「住所を知っているんだぞ」とすごむ方が 効果があることを知っているし、ヘタに行けばそれこそ自分たちが捕まる 可能性があるとわかっているからです。顔も割れてしまうし、警察を呼ばれ てしまえばおしまいですから。 彼らは「自分達の情報は極力教えずに金を巻き上げる」「労力をかけない」 というのが基本スタンスです。だから電話やネットによる詐欺にこだわる ワケです。 逆に家に来たら思うツボだと大きな気持ちで構えているといいでしょう。
748 :
名無しさん@そうだ選挙にいこう :2007/08/04(土) 23:41:47
uzee
>>745 ゴッホ氏とかhoge氏とか、荒れに繋がらなかったどころか逆に良い流れを生み出したコテも居るよ
要はその人の知識や人格次第
彼らは叩かれること自体ほとんど無かったし、間違い指摘されれば素直に受け止めたり
間違いではないと言い返すなら、その根拠をきちんと提示してきた
偶に変なのが湧いても大人な対応を見せたしね
荒れる原因は「コテを名乗ったから」ではなく、
「たいした知識もないくせに、ショボい回答を強気で繰り返し、
ちょっと指摘されると素直に受け止めたりきちんと反論したり出来ずに
ムキになって痛い反応する」からだよ
そういう奴が常駐し始めれば、コテ付けて無くても荒れるからね
コテ涙目wwww
>ゴッホ氏とかhoge氏 そのエロイ方達は今どこに…
>>742 生徒から「クサイ」「キモイ」「死ね」と言われたことは一度や二度じゃないだろう。
753 :
名無しさん@そうだ選挙にいこう :2007/08/05(日) 10:36:17
質問する俺が明らかに低レベルで申し訳ないんだが、すごく困っているのでお願いします。 【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003,2007 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 是非 【5 検索キーワード 】 Googleやヘルプでの検索キーワード 調べられなかった・・・。 (状況) 各種報告書を一元的に作成するVBAで作ったExcelブックがあります。 で、その報告書の一部のシートのみ、メール添付にて報告する部分があります。 そのため、一部分のみ別のブックへ同様のものを出力したいのです。 当然ですが、このときセルの内容がリンクされてる作りだと、送付先では当然データが反映されません。だから、値や書式はダイレクトなものでなければなりません。 (達成したいこと) 報告書作成VBAを実行したときに、「相対パス」の指定した別のブックにある師シートの内容と同様のものが出来上がった状態にしたいです。 VBAは大体わかるのですが、一つのブックでしか作ったことがないのでブック間のコードの書き方がわかりません。参考を示していただけないでしょうか?
>>753 コピー先のシートに対して 形式を選択して貼り付けで値をコピーする をマクロ記録で
できたものを修正して使えばいいんじゃないの?
755 :
718 :2007/08/05(日) 15:30:34
710です
>>721 できることを確認しました。あとは細かいところをつめるだけです。
ちなみにSoftBank X02HTを購入予定です。
ありがとうございました。
756 :
名無しさん@そうだ選挙にいこう :2007/08/05(日) 16:10:34
>>754 基本概念を理解してなくてすんません。
流れとして、
BVAでブックを開いて、そのブックのシートに張り付けて、ブックを閉じるってコードの書き方でOKですか?
ブックを開かずに参照できるものなのかどうかがよくわかってません。
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 時間計算等 退勤表を作成しているのですがA1のセルに始業時間、B1に終業時間、C1に休憩時間を入力したとして D1に就業時間から始業時間を引いた8時間以内の労働時間時間、E1に8時間を超えた時間を表示したいのですが この場合の数式はどのようになるのでしょうか? 自分が書いた数式はD1にIF(B1-A1>="8:00","8;00",B1-A1)と書いたのですがまったく駄目でした どうぞよろしくお願いいたします。
>>757 時間はシリアル値だから
D1=IF(B1-A1>=8/24,8/24,B1-A1)
とかで。。。
>>756 まぁ俺もたいして詳しいわけじゃない(と言い訳しといて)んで
1 各種報告書を一元的に作成するVBAで作ったExcelブックを開く
2 対象範囲をコピーする
3 新たなブックを開く
4 コピーしたものを新たなブックに「形式を選択して張り付ける」で値を選択して張り付ける
5 開いたブックを全部閉じる
みたいな?
様は、コピーしたものをそのまま貼り付けるんじゃなしに値を貼り付ければ良いんでしょ?
760 :
名無しさん@そうだ選挙にいこう :2007/08/05(日) 21:43:43
Excelで,マン・ホイットニーのU検定や,ウィルコクソンの符号付順位和検定をする方法はあるのでしょうか? 【1 OSの種類 .】 Windows XP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 少しだけ 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 ノンパラメトリック検定 U検定 Mann-Whitney Wilcoxon マンホイットニーのU検定 標準では入っていないアドインを入れないと出来ないでしょうか? すみません。教えてください。
>>757 >758が書いている通り"8:00"は文字列だからシリアル値(数値)に変換する必要があるよ
方法は>758の他、
"8:00"*1やTIMEVALUE("8:00")で可能
つまり
D1=IF(B1-A1>="8:00"*1,"8;00"*1,B1-A1) とか
D1=IF(B1-A1>=TIMEVALUE("8:00"),TIMEVALUE("8;00"),B1-A1)
にすればおK
あとは普通に加減算やIFで式を
エンダァァーーーーーーーーーアア
763 :
名無しさん@そうだ選挙にいこう :2007/08/05(日) 21:48:31
反応早いな…
765 :
名無しさん@そうだ選挙にいこう :2007/08/05(日) 22:03:44
横の列の内容と縦の列の内容の入れ替えはできますか? aaaa b b b b ↓ bbbb a a a a
できますよ
767 :
Qpi :2007/08/05(日) 23:03:53
Exceiで文字間隔の変更が出きないか?
>>765 あっという間にできるという方法は知らないけど
「形式を選択して貼り付け」や関数を使って別セルに写してから
適切なセルへコピペという方法なら知ってる
ここでは
「形式を選択して貼り付け」を使う方法
まずbbbbを選択−右クリック−コピー
空いてるセルにカーソルを合わせて右クリック−形式を選択して貼り付け
「行列を入れ替える」にチェック−OK
aaaaを選択−右クリック−コピー
一番右のbの下にカーソルを合わせて右クリック−形式を選択して貼り付け
「行列を入れ替える」にチェック−OK
並び替えが終わったセルを選択して適切な所にコピペ
>>767 ワードのように数値を指定して文字間隔を変更する方法は知らないけど代替案
文字間隔の変更をしたいセルを選択−右クリックーセルの書式設定
配置タブ−横位置を均等割り付け(インデント)に変更−OK
セル幅を広げる
TRANSPOSEじゃね?
>>770 あ。そうか
でも、あれ配列じゃなかったっけ?
調べてみる
dクス
>>770 確認した。
やっぱり配列だね。
>>765 TRANSPOSEはヘルプをみてもらった方がいいです。
確認してみてください。
ポイントは数式を配列で確定(Ctrl+Shift+Enter)する事です。
う><
>>765 >一番右のbの下にカーソルを合わせて右クリック−形式を選択して貼り付け
一番左のbの下にカーソルを合わせて右クリック−形式を選択して貼り付け
の間違えでした。申し訳ありません。
>>768 それやるならaaaaとbbbbを別々に処理せずに一括して行列入れ替えした後
aaaaを1行1列右下にズラした方が早い
>>770 数式でやるならTRANSPOSEより可変参照式の方がいいかもな
どうせTRANSPOSEで一括処理は出来ない(1行目が b b b b ではなく a b b b b になってしまう)ので
=OFFSET($A$1,COLUMN(A1),0)
=OFFSET($A$1,0,ROW(A1)-1)
を適当なところに入れて、それぞれ右と下にフィルコピーした方が汎用的で手っ取り早い
行列要素数を揃えた例でみると解りやすいと思うが
■■■ ■□□
□ → ■
□ ■
という完全な行列入れ替えではなく
■■■ □□
□ → ■
□ ■
■
という変則的な行列入れ替えである点にご注意あれ
>>771-772 配列だからどうしたって言うの?
>>760 ・形式的な解法が存在しない(明確な計算式がない)もの
・膨大な計算が必要なもの
に当てはまらないなら、普通に関数を組み合わせていれば実現できるだろー。
やり方は粋なり人に聞かず、まず自分で考えてごらん。
【1 OSの種類 .】 WindowsVista 【2 Excelのバージョン 】 Microsoft office Excel 2007 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 申し訳ないですが不可 【5 検索キーワード 】 エクセル 印刷 エラー プリンター:エプソン PM-890C WEBサイトを印刷する際には普通に印刷ができるのですが「エクセル(ワードも)」を印刷しようとすると 「エラーが発生したため印刷ができませんでした」 原因としては メモリ不足 →65%なので違う ネットワークプリンタではネットワーク接続に問題 →USBで1つのPC、1つのプリンタにしか接続していないので違う プリンタケーブルが接続されていない。またはコンピュータとプリンタに問題あり。 →WEBサイトを印刷するときは普通にできるので違う とでるのですが「→」で示した通り問題はないと思います。 PC/プリンタを再起動しても直らず、インクも新品を買い、用紙もまだあります。 エクセルデータには文字を入れただけで計算はさせてないです。 グラフも入れてないです。 文字には少し色をつけています。 また用紙は横向き、1ページで収まる内容です。 印刷するときは「PM-890C」ときちんとなっているのですが「アイドル」と表示されています。 先ほどプリンターのソフトをアンインストールし再度インストールしましたが直りません。 どうすれば印刷できるようになるのでしょうか? 申し訳ないですがお教えください。 またこの質問を誤って別のスレに書き込んでしまったためこちらに再度書き込みます。 申し訳ないのですがよろしくお願いいたします。
PM-890CってWindowsVista対応のドライバ出てないんじゃないの?
ttp://www.epson.jp/download2/list/PM-890C.html ここ見ると、WindowsXPまでしか対応してないようだけど
非対応であっても、必ずしも全く動かないというわけではないので
Webページが印刷できることを以てドライバに問題がないとは言えないし
ドライバ自体が非対応なら、Excel以前の問題だ
なんにしても使用OS対応のドライバ当ててからでないと
ExcelやWordの問題としてそれらのスレで聞くのはお門違いってものだ
例え印刷できないのがExcelやWordだけだとしてもね
とりあえず金を掛けずに解決する方法としては、期待薄だけどエプソンにVista対応のPM-890Cドライバを要望する
早く確実に解決したいなら、OSをXP以前に変えるか、Vista対応のプリンタに買い換えるかだな
その上で(OSとプリンタドライバが対応関係にある状態で)問題が再発したらまたおいで
>>777 さん
確かに私も再インストする際ドライバのページを見てたら「Vistaないなぁ」と思ってたら対応してないですか・・。
わざわざ調べてくださってありがとうございます。
非対応の機種で質問して申し訳ございません。
エプロンに要望しても無理でしょうね〜・・。
新しいプリンターを買います。
本当にありがとうございます。
>>778 上から5行目
エプロンはエプソンのタイプミスです。
セルのデータを操作してるときにバックスペースなどで文字列を消していくと、 HDDを読みに行って動きが止まるときがあります。 なんらかの処理をしているとは思うのですけど、これって何をしてるんでしょうか?
>>78 エプソンの旧型プリンタはビスタの標準ドライバに入ってるぞ
もちろんPM-890Cもだよ
>>774 >>765 はここの板では先頭のスペースが無視されるということ知らないで書き込んだんだろ?
左上隅にはデータはないんだと思うな。
それにお前OFFSETなんか使うなよ。
ちょっと前にINDEXよりOFFSETが◎なんていう厨房がいたようだが。
>>783 Live2chなどで
>>765 にカーソルを合わせてポップアップを見てみれば、左上は空白だと分かるね。
785 :
783 :2007/08/06(月) 15:57:18
>>784 サンクス。やっぱりそうなの?
俺IEしか使ってないしそういうのは良く分からん。
mtmlのソースでも見れば分かるかも知らんけど、
てすと
<nbsp>ppp
恥じかいたな。 再てすと ppp
CTRL+↓ で一番下までジャンプしますが このショートカットキーを無効にするには どうしたらよいでしょうか
>>787 Application.OnKey "^{DOWN}", ""
を実行すればいいよ。特定のブックのみこの機能を殺したいんだったら、
そのブックのWorkbook_Openにこれ書いておけばいいんじゃない?
エプロン
この板に限らず連続2ヶ以上の半角スペースは無視されるだけだろ
2個以上のホワイトスペース(半角スペース、改行、タブ、etc)は一個の半角スペースに置き換えられる。 2chに限らず、IEでWebサイト見てれば例外なく起きること。
>>791 いやIEとか関係なし
HTMLの仕様やがなw
結局みんなA1が空白だと分からないで回答してたという事だね。 範囲を選択してコピー、行列を入れ替えて貼り付ければ一発ってこと。 TRANSPOSEは2回ならいいけど、1回では他のセルに入力できないから駄目だな。 OFFSETは使っちゃダメ。
794 :
超初心者 :2007/08/07(火) 07:55:43
すいません。 初心者なんですが、入力規則ってシートをグループ化して、まとめて出来ないんでしょうか?
>>794 セル範囲に名前つけて
リストの欄に
=名前
797 :
名無しさん@そうだ選挙にいこう :2007/08/07(火) 09:04:56
>>788 どのブックにも使えるようにショートカット割り当てってどこに書けばいいんですか?
798 :
超初心者 :2007/08/07(火) 13:16:31
796さん、すいません。質問のしかたが悪かったです。 例えば、Sheet1からSheet3までをグループ化したときに、入力規則の文字が薄くなって使えないんですが……。
799 :
名無しさん@そうだ選挙にいこう :2007/08/07(火) 13:54:42
>>797 「個人用マクロブック」(共通のマクロ保存するブック。ヘルプに乗ってるよ。)のWorkbook_Openにかけばおk
>>794 ,
>>798 薄くなるものはまとめては出来ないということ。
VBAが使えりゃ記録マクロをちょっと弄くってループを回すだけだが、VBAが出来なきゃシートごとに設定するしかない。
801 :
超初心者 :2007/08/07(火) 14:21:15
800さん、ありがとうございます。 グループ化では、できない機能もあるみたいですね。 VBAに関しては、全くわからないので、あきらめてシートごとに設定するしかないですね。
802 :
名無しさん@そうだ選挙にいこう :2007/08/07(火) 14:29:22
あるセルの値が1〜10ならA、11〜20ならB・・・みたいにしたいのですが、 if関数使うとエラー表示がでました。 調べてみたところ、関数ネストの制限の問題であることが分かりました。 それは勉強になったので良かったのですが、こういう場合どうすればいいのか分かりません。 どなたか教えていただけないでしょうか? 文章読み辛くてすみません。お願いします。
VLOOKUPなど検索系関数を使用する あるいは、作業セルを使って分割する
804 :
名無しさん@そうだ選挙にいこう :2007/08/07(火) 14:41:52
805 :
名無しさん@そうだ選挙にいこう :2007/08/07(火) 14:50:42
あるセルの値が1ならA、2ならBというのは自分でも 検索系関数でできるのですが、範囲の場合どうすればいいでしょうか? 素人ですみません。
>>805 >検索の型に TRUE を指定し、検索値が見つからない場合は、検索値未満で最も大きい値が使用されます。
こういった性質を利用します。
つまり1、11を書けば11未満については1が
>>802 A B
1 1 A
2 11 B
3 21 C
4 31 D
.
.
10 100 J
こんなテーブルを作っておき、
=VLOOKUP(あるセル,$A$1:$B$10,2,TRUE)
=LOOKUP(あるセル,$A$1:$A$10,$B$1:$B$10)
等々。
断っておくが10.5はAになるから。
範囲が一定なら、こんな手も =CHOOSE((A1-1)/10+1,"A","B","C","D","E","F","G","H","I","J")
>>802 増えていくのは10ずつでいいの?
だとしたら
=CHOOSE(ROUNDUP(A1/10,0),"A","B","C","D")
とかが使えるかも。
引数リストは29個までだから、ある値が2900以下でマイナスがないのが条件。
それからエラー処理は入れてない。
ほぼ、かぶった。すまん
812 :
名無しさん@そうだ選挙にいこう :2007/08/07(火) 17:48:10
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 Excel VBA Printerオブジェクト Excelで帳票を印刷するときに、VB6のようなPrinterオブジェクトを使う方法はないでしょうか。
813 :
名無しさん@そうだ選挙にいこう :2007/08/07(火) 18:04:46
せんせー ◆adhRKFl5jU ってセンスねぇーな
>>802 =CHAR(ROUNDUP(A1/10,0)+64):戻り値は半角アルファベット
=CHAR(ROUNDUP(A1/10,0)+9024):戻り値は全角アルファベット
これもセンスねぇーけど、おもしれーだろ
>>813 ウけたw
まさか、そんな風に組んでくる奴がいるとは思わなかったw
恐ろしく汎用性低そうだが今回の回答としてはまさにネ申技だな
俺の完敗だ。
816 :
760 :2007/08/07(火) 21:03:15
>>775 レスありがとうございます。
いろいろ考えてみました。
やはり,Excelでは,地味にコードを書くしかないですかね・・・。
ありがとうございました!
>>815 分からん奴は一生分からんでいい。
65537回の参照ね〜w
哀れ…
レベルが違うと、自分が何故失笑を買っているのかも解らず、相手がオカシイと思っちゃうんだろうな。
プゲラ
822 :
winXP & word2003 :2007/08/07(火) 21:58:18
TEXT関数で、文章の中に数字を入れたいのですが、数字の部分が桁区切りで表示されません。 参照先のセルは、桁区切りの数字が入っているのですが。 どうすれば、TEXT関数で桁区切りの数字を表現できますでしょうか? 宜しくお願います
823 :
名無しさん@そうだ選挙にいこう :2007/08/07(火) 22:00:34
VBAでソルバーを使いたいのですが、参考になるHPとかありますか?
827 :
825 :2007/08/07(火) 22:09:32
828 :
822 :2007/08/07(火) 22:21:08
>>824 出来ました!どなたか存じませんが、ありがとうございました。
829 :
名無しさん@そうだ選挙にいこう :2007/08/07(火) 23:48:41
すみません、ちょっと教えてください。 各行に在る文字列から特定の文字列(単一入力でない)を含む行の カウントのやり方を教えてください。 countifだと単一入力しかカウントできないので困ってます。 宜しくお願いします。
VBAでお願いします。 挿入されているセルが日付(8月6日)と判断できる条件式を教えてもらえませんか?
831 :
名無しさん@そうだ選挙にいこう :2007/08/07(火) 23:57:23
こんばんは for i = 1 to 5000 x(i) = cell(i,1).value next i みたいな感じでセルの値を配列にいれて その配列の中で重ならない、て説明しずらいなぁ、 固有の値、 りんご、みかん、みかん、梨、梨 りんご、梨 の場合 りんご、みかん、梨 みたいに、ピボットで集計したときみたいにデータを取り出すのに いい方法てありますか?
>>829 =COUNTIF(A:A,"*hoge*") とか
>>830 IF文にMonthとDay関数使えばすぐやろ?
>>832 そっか、アスターかorz
ありがとうございました!
835 :
831 :2007/08/08(水) 00:24:41
countif つかってもhogeにどんなアイテムが出てくるかわからないデータなんです。 つまりマンゴーがいきなり出てくるかもしれないし、キウイが出るかもしれないよ。 そっか、その列までcell(i,1)まででカウントしてやればいいってこと? それでcountif >1だったら、もう既出なんだから、""でもいれとけってことかな? for i = 1 to 5000 cells(i,2).formula = "=countif(C[-1]:C[-1],R[" & i & "]C[-1])
836 :
830 :2007/08/08(水) 00:24:50
>>833 ありがとう。助かりました。
しかも自分の変数が間違っていたorz
837 :
831 :2007/08/08(水) 00:29:42
途中でEnterおしちゃった countif つかってもhogeにどんなアイテムが出てくるかわからないデータなんです。 つまりマンゴーがいきなり出てくるかもしれないし、キウイが出るかもしれないよ。 そっか、その列までcell(i,1)まででカウントしてやればいいってこと? それでcountif >1だったら、もう既出なんだから、""でもいれとけってことかな? for i = 1 to 5000 cells(i,2).formula = "=countif(C[-1]:C[-1],R[" & i & "]C[-1]) y = cells(i,2).value if y >1 then hogege(i) = "" else hoge(i) = cells(i,1).value endif next i とりあえずこれで重ならないデータと""をわけることはできるかなぁ? なんか綺麗じゃないな、スーパーハッカーさんはもっとシンプルに綺麗に出来そうなんだけどな。
>>835 まずは落ち着いてよく見ろ。
そして質問内容はExcelとあまり関係が無い、アルゴリズム関連の話じゃないのか?
>>792 あの、知ってて言ってんですが。
いちいち重箱の隅ツツかれてもなl・・。
>>814 「ウけた」って、ごく普通に思いつきそうな関数を見て、何が面白がってるjんだ。
>>813 程度の発想が出てこないってのも痛々しいな・・。
せんせー君を弄ってるだけとも知らずにマジな反応しちゃってる子も居るね。
>>825 おかしいのはOFFSETが駄目とかいってる奴だな。
スピードもOFFSETが若干速いもんな。
マジでキモイ奴が集ってるスレだな まあ、1人か2人なんだろうが、こういう奴はID出る板だと相手にされない奴だろ
だね ちゃんと解ってる奴も居るようだし
848 :
名無しさん@そうだ選挙にいこう :2007/08/08(水) 10:36:05
スキャナーで保存したJPEGファイルをエクセルで貼り付けて 回転させたいんですができますか? 図形の塗りつぶしで画像を取り込めば図形と共に 回転させれると思ったんですが・・・
COUNTIF関数で、たとえば「000136」「0136」等が
途中送信申し訳ありません・・・ COUNTIF関数で、たとえば「000136」「0136」等が 文字列として格納しても(頭に ' をつける、表示形式を「文字列」に) 同じデータとしてカウントされるのですが、
同じデータとみなされる事を防ぐ方法はありませんでしょうかorz
COUNTIFの評価は「一致、等価」ではなく「評価、式」だからね その仕様が目的に合わないならユーザー定義関数を作るとか配列数式を使うとか
853 :
名無しさん@そうだ選挙にいこう :2007/08/08(水) 12:14:53
なんかOFFSETでちょっと盛り上がってたようですがINDEXのー質問です。 =INDEX(A:A,10)とINDEX(A1:A100,10)とどっちが軽いんでしょうか? 5の部分は最大でも100を超えることはありません。
5の部分ってのが何なのかわからんが軽いのは後者
>>853 >>854 そんなの同じに決まってるって。
試すまでもないが、B1::K65536の10列の全セルに=INDEX($A:$A,5)と=INDEX($A$1:$A$100,5)の
同じ式を入れて、計算速度を体感してみることを勧める。
>>849-851 文字の長さも評価するとか
=SUMPRODUCT((A1:A10="001")*(LEN(A1:A10)=LEN("001")))
>>856 配列を使う式なら長さはいらないんじゃない?
{=SUM((A1:A10="001")*1)}
=SUMPRODUCT((A1:A10="001")*1)
859 :
853 :2007/08/08(水) 13:04:52
>>854 >>855 レスありがとうございます。
すみません5の部分じゃなくて10の部分でした。
おっしゃるように10列の同じ式でやってみましたが軽さの違いは分かりませんでした。
あまり変わらないみたいですね。
>>858 いえ、ただ疑問に思って質問しただけです。
860 :
856 :2007/08/08(水) 13:07:22
>>855 10列ではなく100列くらいにすると体感で違いが解るね。
つまり、実用レベル(式の数的に)では体感差は無いけど
厳密には後者の方が速いってことか。
862 :
855 :2007/08/08(水) 13:30:36
>>861 違う方法で計ってみたが変わらんよ。
こんなのは常識。
最終セルまでしか計算しないように作ってるからねえ 昔ならともかく、今でも体感で変わるっていう嘘は本当なわけ? ひょっとしていっつもセルIV65536になんか値でも入れてるのかね
2007とかはどうなんだろう?
なんか必死だなw
866 :
855 :2007/08/08(水) 14:09:36
>最終セルまでしか計算しないように作ってるからねえ それは今回は関係ないんじゃない? A列が全部埋まってても =INDEX(A:A,10) =INDEX(A1:A100,10) どちらも変わらない。
867 :
855 :2007/08/08(水) 14:17:19
どちらも変わらないというのはちょっと変だな。 A101以降にに入力すると、上の式はは計算するが下のは計算しない。 A列をいじくらないのであれば同じということ。
( ゚д゚)ポカーン
869 :
名無しさん@そうだ選挙にいこう :2007/08/08(水) 15:10:58
変な数字コテが湧いてると思ったら・・・・・そうか、今は夏休みなんだな
870 :
名無しさん@そうだ選挙にいこう :2007/08/08(水) 16:11:36
=INDEX(A:A,10) は 無駄に多いセル参照(2003以前ならA:AはA1:A65536なので65536+1で計65537セル) =INDEX(A1:A100,10) は 少ないセル参照(A1:A10なので10+1で計11セル) =INDEX(A1:A100,10)は =INDEX(A:A,10) より5958倍はやい
871 :
名無しさん@そうだ選挙にいこう :2007/08/08(水) 16:11:46
【1 OSの種類 .】 Windows XP Pro 【2 Excelのバージョン 】 Excel 2007(但し2003形式でファイルを保存) 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 Excel 近似値 近い値 Aのセルの値とBのセルの値を比較し、Cのセルの値に近いどちらかの値を、 Dのセルに求めるにはどうすればいいのでしょうか?
>>870 冗談を書くのはやめましょうよ。
知らない人は本気にするんだから。
差の絶対値の小さいほうを求める =IF(ABS(A-C)<ABS(B-C),A,B) なんだかExcelを使ってはいるけどExcelと関係の無い質問が多いな
>>870 あそうか、
>>645 を茶化してるわけね。
彼ももう間違いには気づいてるだろうから勘弁してやりなよ。
875 :
871 :2007/08/08(水) 16:32:57
【1 OSの種類 .】 WindowsXP
【2 Excelのバージョン 】 Excel2003
【3 VBAが使えるか .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード 】 偶数 奇数
次の表は1から25について、偶数なら2で割り、奇数なら3倍にして1を
足していき、1になるまでの回数を表したものである。
IF関数を使って求めなさい。
大学の入試問題です。助けてください。
http://up.mugitya.com/img/Lv.1_up25905.bmp.html ↑は表です
オネガイシマス
コラッツ予想で調べればいくらでも出てくる
878 :
名無しさん@そうだ選挙にいこう :2007/08/08(水) 19:06:36
>>876 B4 = IF(OR(A4=1,A4=""),"",IF(MOD(A4,2)<>0,A4*3+1,A4/2))
あとコピーすれば表は埋まる。
一番右の回数は
Y4 = COUNT(B4:X4)
って入れれば良いんじゃない。
879 :
876 :2007/08/08(水) 19:10:49
ありがとうございます!!
大学入試にEXCELが出るのか、、、
そういう事にしといてやれ
ちょっと教えてください。 セルに8月8日と書かれているとして、 If Cells(y, 4) = Format(Date , "m月d日") Then これで条件あっています?
Excel2003で、Visual Basic Editorを初めて使ったのですが、 その後上書き保存時のHDD動作音が明らかにオカシクなりました HDDがクラッシュする時のようなガガガガーという音なので少々気になりますが、 これってVisual Basic Editorと関係ありますか?
どうしたらそういう発想が出来るのか、それが不思議だ。関係なんかあるかっての
885 :
名無しさん@そうだ選挙にいこう :2007/08/08(水) 22:26:35
すみません・・・ あの、エクセルで作った表を画像にするにはどうしたらいいでしょう?
>>885 PrintScキーを押す。PaintでもWordでもいいから開いてペーストしろ
887 :
名無しさん@そうだ選挙にいこう :2007/08/08(水) 22:30:14
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 ? 885 です。
888 :
名無しさん@そうだ選挙にいこう :2007/08/08(水) 22:30:54
ありがとうございます。
>886 それだと画面の外は切れちゃうよ?
890 :
名無しさん@そうだ選挙にいこう :2007/08/08(水) 22:35:32
891 :
883 :2007/08/08(水) 22:43:50
>>884 うーん、私の表現が悪かったです。すいません。
そのVisual Basic Editorとやらを使う事で、保存する容量が極端に増えるのかと思って。。。
さっき、先週ノートPCにバックアップを取った同じファイルがあるのを思い出して、
名前を変えてデスクトップにコピーしてみました。
普通に中身を変更して保存しても一瞬で終わりますが、
Visual Basic Editorを使ってからだとガガガガガーって3秒くらいかかるんですよ。
色の付いたセルを合計したくてググったんですが、
下記の様なユーザー定義関数を作成とあったので、それをやってみました。
Function CellColor(セル)
CellColor = セル.Interior.ColorIndex
End Function
何かオカシナ事をしてしまったのでしょうか・・・
仕事で使うファイルなので心配です。
>890 フリーソフトで、画像形式で書き出してくれるのある。 あと、XPならMicrosoft Document Image Writer って入ってない? 印刷する時プリンタの一覧にないか?それ使って書き出して、 あとは好きなアプリで読み込めばいい。 あるいは、画像にしたい範囲を選択して、 ワード開いて、「形式を選択して貼り付け」の中からWindowsメタファイルを選んで貼り付け。 あとはそれコピってEXCELに貼り付け。
>891 そういうの関係ないから。 単にハードの問題。
894 :
883 :2007/08/08(水) 22:52:28
>>893 でも、、、今色々実験してたんですが、
Visual Basic Editor開いて何もせずに閉じただけでも保存時間が長くなるんです。。。
Visual Basic Editor開く前が0.3秒くらいだとすれば、開いた後は5秒くらいかかります。
これでもハードの問題なんでしょうか。。。
>>890 画像にしたい範囲を普通にコピーしてペイントに貼り付けたらできたけど・・・
2007だからかな?
896 :
名無しさん@そうだ選挙にいこう :2007/08/08(水) 22:58:11
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2002 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 住所録で電話番号が03 1234 5678 という風にセル3つに分かれています これを0312345678と繋げてしまいたいのですがどうすればよいでしょうか? =B1&C1&D1と書いて連結して表示させる方法は分かったのですが これだと元の3つに分かれたのを残しておかないといけないので できれば完全に繋げてしまいたいです
>>896 =B1&C1&D1
をコピーして値として貼り付けでどうでしょう
>>897 おお、できましたああ
ありがとうございます
1時間悩んだのが馬鹿みたいでした
>>885 つ[カメラ]
エクセルのヘルプで検索すると幸せになれるかも
901 :
名無しさん@そうだ選挙にいこう :2007/08/08(水) 23:07:51
本当ありがとうございます!!
902 :
896 :2007/08/08(水) 23:13:36
たびたびすみません・・・ できたと思ったのですがデータを書き出した時 "山田 太郎","03 1234 5678" みたいになってしまいます・・・ 完全に繋げてしまいたいのですが何か他に方法はありませんでしょうか?
>>902 元のセルに余計なものが入っていませんか?
試しに元のセルの書式を削除してはどうでしょう
905 :
904 :2007/08/08(水) 23:31:59
ごめん間違えた =TRIM(B1)&TRIM(C1)&TRIM(D1)
>>905 ありがとうございますっ
>>904 のやり方で無事できましたああ
データ書き出しても余計なものが入らずちゃんと繋がってます
これが何なのか意味が分かってませんが後で勉強しておきます
とても助かりました
>>903 さんもありがとうございました
お世話になりました
>>885 Excelファイルを「Webページとして保存」すると、グラフの画像が一緒に吐かれるのでお手軽かな。
>>886 は偉そうなクチ叩いてる割に発想がバカだから、相手にしなくて良いよ。
909 :
名無しさん@そうだ選挙にいこう :2007/08/09(木) 08:25:39
@5千円以上1万円まで10%割引A1万円以上3万円まで15%割引B3万円以上20%割引C5,000円以下は割引なし の法則でIF関数を使って計算したいのですがうまくいきません。ご指導お願いします。
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 B1が10でC1が100ならA10:A100の合計をだしたいんですが、どうしたらいいですか。 INDIRECTでは簡単ですしOFFSETでも何とか出来たのですが、INDEXがなかなか出来ません =SUM(INDEX(A:A,B1&":"&C1))などいろいろやってみましたがうまくいきません。
>909 if関数使うより、金額と割引率を別の表にして lookupで計算するよにしたらいいんでね?
きっと夏休みの宿題…
913 :
宿題処理班 :2007/08/09(木) 09:58:27
>909 A1 = IF(A1<5000,A1, IF(AND(5000<=A1,A1<10000),ROUND(A1*0.9,0), IF(AND(10000<=A1,A1<30000),ROUND(A1*0.85,0), IF(30000<=A1,ROUND(A1*0.8,0)))))
>>910 =SUM(INDEX(A:A,10):INDEX(A:A,100))
かな?
少なくともエクセルの問題ではない。
× =SUM(INDEX(A:A,10):INDEX(A:A,100)) ○ =SUM(INDEX(A:A,B1INDEX(A:A,C1)) m(_ _)m
>>910 =SUM(INDEX(A:A,B1):INDEX(A:A,C1))
せんせー泣くしかない(;;)
918 :
910 :2007/08/09(木) 12:06:57
>>917 出来ました。
INDEXを二つ使うとは知りませんでした。
A1からA列の10行目までならA1:INDEX(A:A,10)と出来るんですね。
知らんかった。
>>913 いいじゃん、別に間違ってないし。
無駄が多いだけ
921 :
920 :2007/08/09(木) 12:52:58
922 :
名無しさん@そうだ選挙にいこう :2007/08/09(木) 13:21:41
>919 ???
=A1*IF(A1<5000,1,IF(A1<10000,0.9,IF(A1<30000,0.85,0.8)))
>>909 小学生から数学を勉強して来い。
5000円だしたら、何割になるんだ?
小学校は算数な 今回は国語の問題かもしれない
926 :
名無しさん@そうだ選挙にいこう :2007/08/09(木) 16:25:49
うぜえ
一流は学びたがり 二流は教えたがり 三流は文句を付ける好きだけを見逃さない
このスレは質問者が一流です。 二流の教えたがりは、質問者に粗相のないようにだそうです。 今日から俺は教えるのアホらしいから、質問者になるわ。
929 :
名無しさん@そうだ選挙にいこう :2007/08/09(木) 17:49:56
( ´,_ゝ`)プッ オコチャマ達は元気がいいね
嘘を書いてる人を叩かないで、ほんとのこと書いてる人を煽ってる奴がいるもんね。 嘘書いてるやつが一人で煽ってるのかな? とにかく好きか嫌いかじゃなく、情報が正しいか正しくないかで判断しないとまずいよ。 うざくても正しい情報と、ほのぼのとした嘘とどちらがいい?
当然、ほのぼのとした嘘の方がいい 2chならの話だけど
932 :
名無しさん@そうだ選挙にいこう :2007/08/09(木) 18:34:14
>>928 一言一句違わずに同意なので、お前の用なクズは
見てるだけにしてもらえたらどんなに助かる事か。
絶対にもう書き込むなよ。お願いだから。
ほのぼのとした嘘ならいいけど自信満々の嘘はたちが悪い
決まってるとか常識だとか言ってた彼とかね
>>933->934
あれは
>>854 がひどい嘘つきだよ。
>>855 は正しい。俺も計測して確かめてみた。
ってか普通にみんなINDEX(A:Aとかやってるし、それがまずかったら彼らの全否定になるもんな。
=A10 をINDEX関数に変えると =INDEX(A:IV,10,1) だ ってせんせーが言ってた
>>936 どういう意味で言ったか知らんけど、別に同じという意味では言ってないと思うな。
一番の違いは、前者はA10が変化したときだけ再計算するが、後者はどこのセルの値の変化でも再計算する。
彼もこの程度は知ってると思うから、別に同じと言ったんじゃないだろう。
たちの悪い嘘は
>>870 や
>>645 だろう。
>>870 は誰かがおちょくって書いたかも知らんけど、もし
>>645 が書いたのなら死んだほうがいい。
人の指摘をまじめに聞く耳を持たないんだから。
>>924 良く読め、5000円なら割引無し、5千円なら、10%割引。
つまり札なら割引くが、コインが混ざるとダメなんだよ。深読みしろ。
939 :
937 :2007/08/09(木) 20:56:20
>>936 もしかしてA:IVじゃなく1:65536って意味?
A:IVと入力しても1:65536となるからね。
こんなのはほのぼのとした間違いだね。
間違いと言えるかどうか知らんけど。
>870のおちょくりは、素の>645には書けないと思う。 INDIRECTに汎用性が無いというが、HumanInterfaceの観点から こんなに汎用性のある関数は無いのでは? あと揮発性の問題は、他所でやってくれ。
>>938 どう曲解したらそんな頭の悪い解釈ができるんだい?
>>941 本人じゃないが、本人だろうと嘘がどっちかはひっくり返るものではないって。
>>943 本人は受けるつもりで書いてるんだから生暖かく見守ってやれ。
>>942 どうしたのボク、彼女に振られたの?
946 :
名無しさん@そうだ選挙にいこう :2007/08/09(木) 23:18:26
( ´,_ゝ`)プッ オコチャマ達は、疲れを知らないね
あのさ…LOTUS123みたいに循環参照できないのか?エクセルは
できる
>>945 センコウの擁護お疲れ様です。どうせ本人でしょうが。
950 :
名無しさん@そうだ選挙にいこう :2007/08/10(金) 09:30:51
A1に「1111」という文字・数字があったとして "他のセルで=IF(A1="""","""",A1) とすると、そのセルに当然「1111」と表示されるじゃないですか、 やりたいのは さらに「1111」を あ+1111のように関数に文字を足したいんですがそんなことは可能ですか?"
>950 その例だと =IF(A1="""","""","あ+"&A1)
952 :
名無しさん@そうだ選挙にいこう :2007/08/10(金) 11:48:36
【1 OSの種類 .】 Windows XP Pro 【2 Excelのバージョン 】 Excel 2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 セルの書式設定 ユーザー定義 Excel セルに特定の値(*、-、+等 数字以外のテンキーにあるもの)を入力すると、 任意の文字列に変換させるようにできませんでしょうか? これまで、変換させるのが1種類だったので、 [=0]"文字1";G/標準 といった定義でできていたのですが、後3種類増やしたいのです。 ※”*”を入力すると文字2、”-”を入力すると文字3・・・のように よろしくお願い致します。
953 :
名無しさん@そうだ選挙にいこう :2007/08/10(金) 12:50:08
>>951 versionも言わずにすいません。ありがとうございました。
>>952 いままでできたいた というのがよくわからないけど、
その条件では無理。
VBA使うかオートコレクトなどでやれば近いとこはできるかも。
955 :
952 :2007/08/10(金) 13:40:39
>>954 [=0]"文字1";G/標準
で、0を入力でできています。ただ、この1パターンのみでしかできません。
オートコレクトで辞書登録をすればいいんですね。
しかし、これですと環境が変わってしまうと無理なんですよね・・・。
レス有難うございます。
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否(VBAなしで実現したいです) ここ数日思考してみたものの、私の脳力ではどうしても分からないのでご教示願います。 A列にランダムに数字が並んでいて、B列ではA列の数字X個の平均を求めるというものです。 Xは可変の予定ですが、ここではX=3と仮定した場合、 下表の様にB列にA列の数字3個の平均を出したいのです。 OFFSETは分かりますが、不規則な並びのおかげで思考停止状態です・・。 2個直前の数字のセルが何行前なのかが導ければよいのだとは思いますが。 ご教示頂けると助かります。 A B(求めたい値) 1 2 20 3 4 50 5 6 7 30 (30,50,20の平均) 8 9 40 (40,30,50の平均) 10 11 50 (50,40,30の平均)
957 :
名無しさん@そうだ選挙にいこう :2007/08/10(金) 17:03:16
【1 OSの種類 .】 Windows Vista 【2 Excelのバージョン 】 Excel 2007 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 リンク エンターキー Excel セルにハイパーリンクを設定しています アクティブ(設定ホームページに移動する)にするには マウスで該当セルにあわせてクリックしていますが キーボード操作のみでアクティブにすること(設定)はできるのでしょうか (たとえば矢印キーでセルを選択したあと、そこでエンターキー押下 とか) それともこれはエクセルの問題ではないのでしょうか
Ctrl+Home キー機能を Ctrl+A キーにバインドさせたいのですが、 外部のキーバインドソフトではなく、ExcelのVBA とかで設定 するにはどうしたら良いでしょうか?
>>956 一気に出そうとすると配列数式になるから
C列あたりに作業列作った方がいいな
同行のA列に数値があれば、行番号を返すようにしておけば
あとはそこから簡単に導けるでしょ
せんせー君が解るようなら式書いてくれるだろうけど
入門者レベルではなく初心者レベルなので、あの子には荷が重いかも
>>957 Shift+F10 → O
AppMenu → O
どちらでもお好きな方を
>>958 OnKeyとSendKeys
960 :
名無しさん@そうだ選挙にいこう :2007/08/10(金) 22:25:12
>>959 おお!!
どうもありがとうございました!!!
961 :
名無しさん@そうだ選挙にいこう :2007/08/10(金) 22:29:10
>>956 C1にX(数値)を入れた場合
B1=IF(A1,AVERAGE(INDEX(A:A,LARGE(INDEX(ISNUMBER(A$1:A1)*ROW(A$1:A1),0),IF(COUNT(A$1:A1)<C1,COUNT(A$1:A1),$C$1))):A1),"")
以下フィルダウン
データが多いと重くなっちゃうから作業列を使うのが楽かな
作業列案はちょっと待ってね
【1 OSの種類 .】 Windows XP 【2 Excelのバージョン 】 Excel 2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 Excel 関数 一覧表示 使用関数 シート内に存在する関数を一覧出力(表示)することはできませんか? できれば、種類ごと--オートフィルで多数存在する場合は重複を省略--できれば いいのですけれど。
あら、またやっちゃった… C1を絶対参照にし忘れ。 B1=IF(A1,AVERAGE(INDEX(A:A,LARGE(INDEX(ISNUMBER(A$1:A1)*ROW(A$1:A1),0),IF(COUNT(A$1:A1)<$C$1,COUNT(A$1:A1),$C$1))):A1),"")
*推奨NGネーム* せんせー ◆adhRKFl5jU
966 :
956 :2007/08/10(金) 23:08:37
>>959 なかなか単純そうで自分には複雑でてこずってます。
貴重な助言ありがとうございます!
>>964 感動!出来ました!ありがとうございます。
まさに実現したいことでした。
計算は実際には2万行くらいで平行して他の計算も行っています。
作業列は、単純に式を分解して2列に分業するだけでは意味ないでしょうか?
なるべく軽く処理できれば何列でも構わないのですが。
>>966 作業列案
D1にX
C1=IF(ISNUMBER(A1),ROW(),"")
B1=IF(ISNUMBER(A1),AVERAGE(INDEX(A:A,LARGE(C$1:C1,IF(COUNT(C$1:C1)<$D$1,COUNT(C$1:C1),$D$1))):INDEX(A:A,MAX(C$1:C1))),"")
以下フィルダウン
なんか長くなっちゃった…
C列(作業列)もフィルダウン…
あとは
>>959 にお任せして今日は寝ます。
お子ちゃまなので。
しねやカスブタ
972 :
956 :2007/08/10(金) 23:28:40
>>967 作業列案ありがとうございます。
考察しつつ精進したいと思います。
本当に助かりました!!
>>970 お前一人でバカみたいにスレを大量消費しやがって。
失せろよキチガイ
>>950 書式のユーザー設定で
"あ+"0
とするとか。
975 :
sage :2007/08/11(土) 00:06:32
>971、>973 答える力のない人間がわめいてる事がスレの無駄ということに気付こうね
>>975 また名前を隠して自己擁護か
懲りないなこの糞センコウ
回答する内容をある程度整理してから書いてもらいたいもんだ。 独り言みたいな些細なレスを量産してスレを無駄に埋められるのは周囲に迷惑。
印刷時のページ設定や余白などを、 book内のすべてのシートに反映(統一)させる にはどうすればいいですか? XP/Excel2000/
>>956 まず作業列に旗を立てて並べ替え、空白をなくせば簡単だろ?
C1に任意の数値を書き込み、C2以下は
=IF(ISNUMBER(A2),IF(ROW()>$C$1,AVERAGE(OFFSET(A2,1-$C$1,,$C$1,)),""),"")
もう1列作業列を作って連番を振っておけば、後で並べ替えで元に戻せるよ。
平均値はコピーから値貼り付けしてないと駄目だけどね。
どうせ値貼り付けするからOFFSETで全然問題ないね。
VBAが駄目とか書いてるが、これは記録マクロを作った方がいいね。
範囲を少しいじくるだけだろう
981 :
979 :2007/08/11(土) 09:01:16
断っておくが
>>979 の式は1行目は項目のつもりだからね。
ume
うm
>>977 それは反省してる
申し訳ない m(_ _)m
ところで俺の作業列の数式、我ながらひどいな…
これでよく突っ込みがこなかったもんだ…
やっぱ眠いとろくな事ない
作業列案(再)
D1にX
C1=IF(ISNUMBER(A1),ROW(),"")
B1=IF(ISNUMBER(A1),AVERAGE(INDEX(A:A,LARGE(C$1:C1,MIN(COUNT(C$1:C1),$D$1))):A1),"")
C2、B2以下フィルダウン
で若干短くなる
まあ、今更だけどね
>>977 改めて申し訳ない
うm
987 :
名無しさん@そうだ選挙にいこう :2007/08/11(土) 11:11:28
うm
>>984 作業列にROW関数なんか使っちゃだめだよ。
>>959 のヴァカの言うことを真に受けたのか?
>>988 そうなんですか?
勉強不足でした
kwsk
>>989 お前、謝っておきながら相変わらず無駄レス書きまくるな。
いい加減学べよ
991 :
名無しさん@そうだ選挙にいこう :2007/08/11(土) 11:54:27
>>990 お前が無駄レス。
いい加減学べよ
そして俺も知りたい
根拠のない指摘を「煽り」と言う ヴァカの言うことを真に受けちゃダメだよw
と、デブが涙ながらに語っております。
995 :
せんせー ◆adhRKFl5jU :2007/08/11(土) 13:34:35
埋め段階だし、そろそろ重要な発表するよ 喜べ! 粘着アメーバ共のご要望に応じ、せんせーはこのスレ限りで引退します。 引退記念に道徳の授業。 ・2ちゃん以外の専用板の質問に回答をつける奴らへ 2ちゃんならまだ仕方ないが、エクセル専用板に回答する時は言葉遣いや回答内容には充分気をつけて 回答しろよ。 専用板で2ちゃん用語や、2ちゃん独特の「見切り発進・無責任・不親切」な回答を見ると痛々しい。 簡単にできないとレスする奴もいるが、俺も含めてお前ら(全員じゃないが)と専用板の 常連回答者との間にはレベル差がありすぎる。 お前ができないと思っても他の回答者があっさりとやってのける事もよくある事。 ・2ちゃん以外の専用板に質問する奴らへ 質問にはレイアウや現在の数式等、きちんと状況の説明を入れろよ。 また、回答があった場合はちゃんとお礼のレスをする事! うまくいかなくても回答してくれた事に感謝しろ。 その上でどこがどのようにダメだったか報告する事。 2ちゃんと違って専用板の人は親身に対応してくれるはず。 さて、このレスに不快な思いをした奴らも多いだろうが、これで消えるから許してくれ。 最後に俺の粘着アメーバ共よ!せんせー、記録より記憶に残る仕事ができてよかったよ。 じゃーな!
うm
997 :
名無しさん@そうだ選挙にいこう :2007/08/11(土) 13:44:22
はいはい
はいはい。 目立ちたがり屋のお馬鹿さんはもう来ないでね。
やっと迷惑野郎が失せたか。 コイツに呆れて来なくなった常連識者が少しは戻ってくればいいんだが・・。
1000 :
せんせー ◆adhRKFl5jU :2007/08/11(土) 13:53:23
NULLPO!! . * ∧_∧ + ( ´∀` ) + (つ ⊃ * ( ヽノ *. し(_) +
1001 :
1001 :
Over 1000 Thread このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。