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/ 前スレ
Excel総合相談所 78
http://pc11.2ch.net/test/read.cgi/bsoft/1233437779/
▼━質問時の注意・決まり事━━━━━━━━━━━━━━━━━━━━ ・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のように 近い値に勝手に丸められる。
テンプレ終わり
◎回答者のみなさんへ。 「できる」と書くだけではできたことになりません。ちゃんとやり方を書きましょう。 「ぐぐれ」だけでは教えたことになりません。せめて検索キーワードを教えましょう。 きちんと教えるのは面倒だ、などと思う人は、最初からレスを付けないようにしましょう。 これらの構ってちゃんには絶対にレスを付けないでください。
VBAで集計するコードを240秒でできるとか書くのも禁止なw
スキル自慢も禁止だぞ
VBA厨とピボット厨の覇権争いも禁止な
>>9 あれは事前に用意した集計用の汎用モジュールを使った場合の話だろ。
それなら240秒はあるんじゃね?
即効性で大幅な差が付けられなくて悔しいのかもしれないが
認めるところは認めないとダメだぜ。
そんなんだからピボット使いはバカにされちゃう。
自分で問題出して自分で解く自作自演は…、まあいいか
問題出したのはピボット厨だったね
>>9 ちゃんとやりかたを書かないとだめなんだろ? できるんなら出さなきゃねw
あと最近は、といってもID出ないからなのかもしれないけど 質問して、回答してもらったのにお礼しない人多くない? お礼というか、解決したのかどうかさえわかんないのはスレとしてもよくない
早く出してー 240秒でつくったコードをさー 自作汎用モジュールもいっしょにねー
自分等のことは棚上げですかw
うん、先に自分が出せよって感じ
ここはもう雑談スレって事でよくね?
だよな なんでピボット厨ってこうも支離滅裂なんだろう
前スレでフルボッコにされて、とうとうピボット厨が壊れましたとさ ここまで壊れると弄り甲斐もないからしばらく暴れさせておきましょう まともに言い負かしても、論破されてることに気付けない状態だからマジレスなんかしても無駄だし
240秒なんてうそでしたごめんなさい本気でやっても1日はかかります って謝れば許してあげてもいい
じゃあ俺が代わりに謝っとくか 240秒なんてウソでしたよーだ ごめんねごめんねー! じゃあもう黙ってろよ
そう思い込むことでしか精神安定を図れない程とは…
じゃあつぎは
>>22 の成績シートをVBAで集計してみてくれ
出身校別・科目別の平均点だ
1時間でできたらまあ合格レベル
ピボットなら40秒だけどなw
自分でやれよ
で、合格するとどんな特典があるの?
>>29 集計にVBAを使う愚かしさを思い知ることで労力と時間の大幅な節約ができるのが特典
思い知ることでは節約にはならんよ
じゃあ要らないや ピボットで対応できる場合にピボット使うことの有効性くらい解ってるし VBA使ってるものに関してはピボットで対応できないからこれ以上節約できないし というかさ、もとがピボットで集計するのに適したデータなんだから それをわざわざVBAで集計させて「遅せー m9(^Д^)プギャー」とか言うのってアホらしくない? 逆にピボットに不向きなデータ出して、ピボットで集計してみろとか言ったら怒るか データが悪いだのと責任転換しはじめるくせに
じゃあ試しにピボットは使えないけどVBAでなら集計できるサンプルを出してみてくれ データとコードの両方 たぶんとんでもないものがでてくるだろうけど
>>27 クロス集計限定でVBAに勝って喜んでるなんて、キミ普通じゃないよ
こんなん親族にいたら堪らんだろうな
おれはもう寝るから 朝までにサンプル提出しとけよ
ここは放置の一択でしょ
こんだけピボット厨の恥さらして他のピボット厨から苦情が出ないってことは、 このスレに住んでるピボット厨はやっぱり奴ひとりなんだろうな
>>35 最初からクロス集計に限定してるだろ。
VBAでクロス集計作ろうとするやつはあほ。
全員がまともに作れるわけでもないし。
>>35 とりあえずVBAが劣っていることは認めざるを得ない。クロス集計ではな。
>>12 本当に優れたプログラムならば敬意を払う準備はある。
ただね、優れた人が、時間と手間をかければ優れたプログラムはできるんだよ。
そんなのは当たり前なんだ。たかが集計なんだし。
それからこのスレの住民どもに言うが、間違いを指摘されたら返事くらいしろよな。 お前だよ、そこのお前。
間違いを指摘されても決して認めないピボット厨。 間違った間違い指摘をして悦に入ってるピボット厨。 絶対に自分の非は認めないので、いくら正してやっても一方通行です。
このスレのVBA厨も以前に比べて成長してきた。 「データを正規化すれば俺たちだってクソコード書かなくてもすむんだよ!ピボ厨だけが正規化データ前提なのは不平等だろ!」 とか 「私はピボットテーブルに付加価値を付けたクロス集計体系を自作した!」 とか主張し始めた。 もうしばらくしたらデータを正規化してピボット使うところに到達だな。
VBAで集計してるやつの意見をたとえ話で V「俺たちだって道路を整備してエンジン積んだ機械に乗れば目的地に到達できるんだよ!」 P「私たち昔から乗ってますけど…。」
残念、ハズレ
> データを正規化してピボット使うところ ごめん。 もう通過済みで、普段から状況に応じてそれやってる。 中には正規化もピボットも解って無くて、変なコードで集計してるVBA厨も居るようだけど 多くのVBA厨は普通にピボットでも集計やってる。 でもピボット厨は一切VBAでの集計はやらず認めずなんだよね。 不適切だなんだ言ってるが、結局これって自分が出来ないことを認めたくないだけのことだよな。 ピボット厨が両方使えるところに到達すれば、両方使えた上でどっちが好きだとしても こんな惨めな展開にはならなかったんだろう。 ピボット厨も早く大人になれるといいね。 両方使える、あるいは自分が使えない物でも認められる大人に。
48 :
名無し変更議論中@詳しくは自治スレへ :2009/02/08(日) 09:11:45
2003と2007を併用中。 osはxpとvistaとをそれぞれ別機で使ってます。 デスクトップにショートカットを貼り付けているエクセル(ブック・シート)をダブル クリックして開くと、常に2007で開くのを常に2003で開くように、当分の間 したいのですが、どんな方法がありますか。
>>47 VBA厨がピボットにすりよってきただけにしか見えない。
いや、そうでもないか
>>48 関連付けを変更する。
変更方法は「Windowsの操作方法」に該当する物なので
解らなかったらWindows板へ。
52 :
48 :2009/02/08(日) 09:23:09
あぁ、そうですね。 やさしく、回答もらえて、サンクスです。
VBA厨はピボットを嫌わず ピボット厨はVBAを嫌う そしてVBA厨はそんなピボット厨が嫌いで 当然ながらピボット厨もVBA厨が嫌い これが最初から変わらぬ構成です すり寄ってきたように見えるなら、やっと真実が見えてきたのかもしれない 今まではVBAが使えなくて嫌いな自分と重ねて、VBA厨はピボット自体も嫌いで使えないはずと思い込んでいたのが やっとVBA厨はピボット自体を嫌っておらず、普通にピボット使っていて、 嫌われてるのは自分等ピボット厨だけだということに気付き始めているのかも ピボット厨はもっとすり寄ってきてもいいぜ 歩み寄る謙虚さを持ってるなら、ピボット厨も嫌わず受け入れてやろう
>>状況に応じてピボットも使うやつはVBA厨じゃないよ。 正規化の考え方を知らず、ちょっとした集計をすぐ何時間もかけてVBAで作ってしまうやつがVBA厨。 ピボット厨との論争で今や野生のVBA厨はほとんどいなくなった。 昔はいっぱいいたんだけどね。
>>53 違うな。
お前らは正規化もピボットも大嫌い。
前スレで完全にピボットの優位が確定したからすりよってきているのだ。
なんかピボット厨妄想モードに入った? 俺等は正常な精神を保てないところまで追いつめていたのか?
輸出入収支問題をピボットで計算する方法を説明されても理解できなかったことも忘れて、昔からピボット使ってるだの、歴史捏造甚だしいぞ。
ちょっとピボットさん頑張りすぎじゃね? そろそろ雑談はよそでやってくれ ピボットさんは「ピボットでできる」だけとかヒントだけのレスやめて、 質問者が分かる回答をさくっと書く事を覚えてくれれば文句ないんだけど
>>56 人格を攻撃する事しか、書くこと思いつかないのか。
つーかさ、ピボット厨にもいろんなのが居るしVBA厨にもいろんなのが居る。 総称で呼ぶのは無理があるからこの話題に参加する奴はコテ付けた方が良いのでは? 総称で呼べばかならず例外はあるからし、どちらも自分以外の奴のせいで 自分や自分が属する派閥のレベルまで貶められるのは気分悪いだろ?
>>59 人格を攻撃することで逃げてた己の過去は棚上げですか?
少なくともVBA厨はコテつけたほうがいいぞ。 このままじゃ全員まとめてバカの集まりだ。
あ、いや、逆だったか
ピボット厨ってきっと学生さんだろう。 論理を実践して壁に当たり、それを乗り越えて成熟していく立場ではなく、 ひたすら論理をたたき込まれるだけの立場に見える。 俺もピボットじゃないけど、こういう凝り固まった考え方をしていた時期が有ったよ。
>>64 壁にぶつかったプロが到達する正解が正規化だよ。
残念、ハズレ
>>65 ピボットが到達点じゃないんだね
少しはすり寄ってきたかな?
VBA使ってる奴でピボット使ってない奴なんていねーんだ ピボットの長所短所が分かってるからVBAを使ってるんだ なんでそれが理解できないのwww
VBA厨さんは反論一行レスにいそがしいな VBAで最新のレスがピボ擁護かどうか判定して反論レスするスクリプトでも書いてるのか
>>68 俺はVBA厨だが、ピボット使ってないどころか使えないVBA厨は間違いなく居るよ
それがピボット厨の唯一の攻撃可能地点になってる
ピボット厨に質問ですが。前前スレの輸出入のピボットだが、2007で集計アイテムってどうやったら出てくる? Trade Flowのセルを選択した状態で 数式→集計アイテム と書かれてるがどこにも見当たらん。
さて、さわやかな朝だ VBAで集計する意味のあるデータとコードのサンプルはまだか?
まだやってたの?
ここは放置の一択でしょ
VBA厨さんが一生懸命力説するVBA集計の有用性をこの目でぜひ確認させてほしいんだけどな。 できるできると書くだけではできたことになりません。ちゃんとやり方を書いてほしい。 きちんと教えるのは面倒だ、などと思う人は、最初からレスを付けないようにしてほしいね。 こういう書き逃げって良識の有無を疑われても仕方ないと思う。
だからあれはウソだったんだって ごめんねごめんねー!
残念、ハズレ いや、そうでもないか まだやってたの? ここは放置の一択でしょ 俺たちはここまでピボ厨を精神的に追い詰めていたのか あ、いや逆だったか
壊れた?
それが抜けてたなw つぎはそれも加えとかないとww
>>70 そうだったのか・・スマン
そいつは早く使えるようになってくれ
そうだな ピボットは使いこなせるようになって卒業したが、まだVBAは完璧に使えてるとは言い難い 早くVBAも使いこなせるようになりたい
【 このスレの登場人物 】 ┌─質問者─────────── どこにでもいるごく普通の初心者だったり 会社で上司に無理難題を押しつけられて困っている人だったりする。 たまに学生が宿題を持ち込んでくることも。 ┌─回答者─────────── テンプレを使わないと無視したり、質問を小出しにするとキレたりするくせに 自分は回答を小出しにして優越感に浸りニヤニヤしている嫌なヤツ。 ┌─自称回答者───────── 質問者を煽ったり、回答者を煽ったり、とにかくスレを引っかき回すだけで 何の役にも立たない賑やかし。単なるヒマ潰しでこのスレを見ている。 ┌─VBA厨 ─────────── VBAは万能と信じ、どんな単純な問題もついVBAで解いてしまう。 Module1がデフォルトで挿入されている世界を夢見るが、いまだ実現していない。 その実態はほとんどが理系の(元)学生。ピボット厨に目の敵にされている。 ┌─ピボット厨────────── ピボットテーブルの機能が強力すぎるため、なんでもできると錯覚している。 口癖は「データを正規化して出直せ」「ピボッと参上ピボッと解決」など。 弱点は大嫌いなVBAを使わないとテーブルのリアルタイム更新ができないこと。 ┌─啓蒙先生────────── ピボット厨一派の過激派。Excelはピボットテーブルだけのためにあり、 それ以外の機能はワークシート関数すら不要と言い切る。ピボットテーブルで 解決できない質問からは威嚇しながら逃げる。最初から出てこなきゃいいのに。 ┌─そのほか────────── ワークシート関数厨……何重にも入れ子になった複雑怪奇な数式を作り出し、 関数だけでどんな問題も解いてしまう。たまに自分でも何をやっているか わからなくなる。悩みは数式バーが1行しかないこと、頭が薄くなってきたこと。 配列数式厨……意外と使えるやつだが滅多に出てこない、というか出番がない。 極めてマイナーな存在。見かけたらその日はいいことがあるかも。 ナレーター……誰か知らない人。
ところで何故ピボット厨はVBAで集計しろって言ってるんだ? そんなレスあったっけ
VBAで240秒で結果が出せ立ってのが余程気に入らなかったらしい 速度でしか勝れないのに、速度でも劇的な差を付けられないんじゃ立場弱いもんな だからムキになってるが、ここで打ちのめすと余計に壊れて厄介だぞ
いまどきVBAで集計するやつなんているわけないだろ 都市伝説のたぐい
という妄想でVBA使えない己の未熟さを誤魔化し精神安定を図るのでした
88 :
名無し変更議論中@詳しくは自治スレへ :2009/02/08(日) 11:08:25
89 :
名無し変更議論中@詳しくは自治スレへ :2009/02/08(日) 11:08:57
90 :
名無し変更議論中@詳しくは自治スレへ :2009/02/08(日) 11:09:34
VBAで集計することのすばらしさを説いてやまないVBA厨だが どういう具合にすばらしいのか実例を出すことは決してない もはやUMAかカルト宗教の域
VBA集計は宗教と思い込むことで落ち着いてくれるならそれもまた良し
VBAで集計することのすばらしさを説いてやまないVBA厨だが データの正規化にVBAを利用してピボットつかうのと、集計自体にVBAをつかうのを 比較してどちらが簡単かを考えることは決してない もはや池沼かチンパンジーの域
VBA集計は池沼又はチンパンジーあるいはその両方と思い込むことで 落ち着いてくれるならそれもまた良し
あら自演w
96 :
名無し変更議論中@詳しくは自治スレへ :2009/02/08(日) 12:05:07
97 :
名無し変更議論中@詳しくは自治スレへ :2009/02/08(日) 12:05:40
チンパンジー並の記憶力だと覚えてないのかも知れないけど 正規化完了からの手順として、ピボットの簡単さを否定しているVBA厨は居ないんだよ そういえばピボット厨って、ピボットは簡単だ簡単だと言う割には、 VBA厨がピボットを使えてることを認めなかったりするよな ピボットは、俺達上級者にしか使えない高等機能 的なことを言う一方で ピボットは、簡単速攻便利な機能 とも言う 実態は後者で、簡単さにおいてはピボットが勝ることはVBA厨も認めてるわけだが ピボット厨としてはどちらが都合が良いのか気になる あ、その時々で変えるのが一番都合が良いのかw
そろそろピボット厨の相手するのも飽きてきたから1抜けするわ
おう、あとは適当にやっとく。
101 :
名無し変更議論中@詳しくは自治スレへ :2009/02/08(日) 12:15:40
残念、ハズレ いや、そうでもないか まだやってたの? ここは放置の一択でしょ 俺たちはここまでピボ厨を精神的に追い詰めていたのか あ、いや逆だったか 壊れた? そろそろピボット厨の相手するのも飽きてきたから1抜けするわ おう、あとは適当にやっとく。
>>98 「それならピボットでやってみせてよ。どう?できないでしょ。だってこれはピボットではできない問題だからね。VBAはすごいだろう?」
「できますが何か?」
こんなやりとりが何回あったと思う。
VBA厨がここに至ってピボットできる宣言、ピボット好き宣言しても薄気味わるいよ。
ああ、あったね 都合の良い前提条件を勝手に追加して、ピボットでも出来ると言い出す でもVBA厨が出してる条件そのままだと対応出来なくて涙目
"こんなやりとり"じゃなくて実例を持って来いカス どういう質問に対してVBAで解決した時にピボットでできないと言われたのか きちんと引用しろ 捏造とかいいかげんやめろクズが
>>106 このスレの王道パターンでしょうが。
吉本新喜劇みたいなもんだよ。
>>106 本人に捏造してるつもりはないんだよ
ただピボット厨は妄想と現実が区別できてない
>>106 たとえばExcel2000ではアイテム数が多いことこけるのでピボットは使えん。
しょうがないからVBAでとなる。
2000使ってる人がいることも忘れるな。
だいたいVBAで集計できるんだーと何度もいってるが実例を出してきた試しがない でてきたらでてきたで「こんなデータ構造設計するなんて頭わいてんじゃないの?」 レベルなのは間違いないけどな
うんうん、何度も見た
そして
>>105 の通り毎度撃沈か逃げだし
>>109 仕方無くか。理由がだんだんやけくそになってきたね。
そうでもないか
そうでもないねw
同意ありがとw
残念、ハズレ いや、そうでもないか まだやってたの? ここは放置の一択でしょ 俺たちはここまでピボ厨を精神的に追い詰めていたのか あ、いや逆だったか 壊れた? そろそろピボット厨の相手するのも飽きてきたから1抜けするわ おう、あとは適当にやっとく。 同意ありがとw
言い返せないのが悲しいな 壊れてるのも追いつめられてるのも事実だもんな
123 :
名無し変更議論中@詳しくは自治スレへ :2009/02/08(日) 14:16:04
すみません。教えて下さい。m(__)m XPで、エクセル2007です。 共有ブックにして、他のLAN接続のPCと情報のやりとりをしています。 このブックには、複数シートがあります。 @一端保存して閉じる。 A再度立ち上げる。 B閉じた時のシートが表示されず、随分前に開いたシートが表示される。 という現象に苦しんでいます。 再度立ち上げる時に、保存したシートが表示される方法はないものでしょうか? 自分のPCもそうですし、他のLAN接続のPCでも同じように保存したシートを表示させたいのですが。
ピボット使えばピボっと解決
【1 OSの種類 .】 Windows xp 【2 Excelのバージョン 】 Excel 2000 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 配列数式 SUMPRODUCT 下のような1年分のデータが約3万行あります。 日付 商品 売上 1/1 すいか 3500 1/1 りんご 4000 1/2 メロン 2000 1/3 すいか 1500 商品の種類は900種類くらいです。 各商品の1月〜12月のそれぞれの売上をもとめたいのですがどうしたらいいですか?
>>123 たぶん異常終了したときの修復ファイルが開かれてると思う
立ち上げ時にはエクセルじゃなく開きたいファイルをクリックすること
>>125 作業列を追加して月フィールドを作成。その後ピボッといっぱつ
>>128 ピボットで月ごとなら作業列いらないから。。。
132 :
名無し変更議論中@詳しくは自治スレへ :2009/02/08(日) 14:27:46
>>126 回答ありがとうございます。
再度開く時には、そのブックのショートカットを使って開いているので、
多分に修復ファイルを開いているということはないと思われます。(^◇^;)
>>125 例えば2月の場合、SUMIFを2使って「2月以前の合計-1月以前の合計」を計算する。
けど、ピボットならもっと簡単。
ピボット厨のレベルもいろいろだな
136 :
125 :2009/02/08(日) 14:32:45
あのーどうもピボットは使えないみたいですけど。
今回はVBA厨もピボットと答えてるわけで
2000じゃピボット無理だそれ たぶん止まるぞ
そうですか じゃDB関数かSUMPRODUCTでもつかうかね
140 :
125 :2009/02/08(日) 14:36:26
あのー、どうも2000では駄目みたいなんです。 どうにかなりませんか?
ピボ……………関数でorz
>>136 あれだろ。Excel2000でアイテム数に制限があるのを利用してVBA厨が作った引っかけ問題だろ。
まったく姑息なやつだ。
自分がやってる陰湿な手口は、相手もやってるように見えてしまうのですね わかります
144 :
125 :2009/02/08(日) 14:37:38
じゃあVBA厨に回答してもらえるわけだな 頼むぞ!
146 :
125 :2009/02/08(日) 14:39:10
いえ紙に誓って引っかけじゃありません。
>>146 大丈夫、皆解ってる。
変なのは一部のピボット信者だから気にするな。
148 :
名無し変更議論中@詳しくは自治スレへ :2009/02/08(日) 14:40:36
>>125 例えば2月の場合、SUMIFを2使って「2月以前の合計-1月以前の合計」を計算する。
>>144 私は引っかけだと気付いたからVBA使えと回答したんだが、あわてものがいたようだ。
ピボットテーブルにも弱点はあった。だがそれも解消されてきている。
>>125 SUMIFだな
monthで月をとればいい
一番楽なのは別のブックにVBAかいてADOで集計SQLかな
>>145 今回はSUMIFだな
個人的には配列関数厨にでてきてほしいところだがw
確かに、前々スレの6○1あたりに、またバカやってほしいねw
>>151 俺たちにできないことを平然とやってのける!そこにシビれる!あこがれるゥ!
関数でやるならユニークな商品名をフィルタオプションかなんかで取得して転記しておいてSUMIFあたりかな ただ件数見ると先に商品名でソートして月ごとで集計かけちゃった方が楽そうだけど
156 :
名無し変更議論中@詳しくは自治スレへ :2009/02/08(日) 14:47:30
すみません。教えて下さい。m(__)m XPで、エクセル2007です。 共有ブックにして、他のLAN接続のPCと情報のやりとりをしています。 このブックには、複数シートがあります。 @一端保存して閉じる。 A再度立ち上げる。 B閉じた時のシートが表示されず、随分前に開いたシートが表示される。 という現象に苦しんでいます。 再度立ち上げる時に、保存したシートが表示される方法はないものでしょうか? 自分のPCもそうですし、他のLAN接続のPCでも同じように保存したシートを表示させたいのですが。 なお、再度立ち上げる時には、ショートカットから立ち上げています。
複数条件はSUMIFでできるか? 作業列に商品と月を結合すりゃできると思うけど。
159 :
名無し変更議論中@詳しくは自治スレへ :2009/02/08(日) 14:49:54
>>158 解決されているなら、書かないと思いますが?
>>159 ここのレベルはそう高くない
必ずしもすべての問題が解決されるわけじゃないからMOUGとかにいったほうがいいかも
>>158 回答されてないから、書いているのでしょ?
二度書いてほしくないなら、解決してさしあげたら?
前スレ601は大先生へ向けてなのでもう出てきません。
実際の所は恥ずかしくてもう出て来れないんだろうな
>>160 う〜〜ん。そうだね。その通りだね。
あなたの言うとおり、素晴らしい。おめでとう!
>>125 はいくらなんでも配列数式やSUMPRODUCTは無理だろうよ。
やるやついたら馬鹿だ。
>>164 大先生の目にとまれば目的は達したのでもう出る必要がないのです。
あら本人さんいらっしゃい でも出てきた当初はそれが目的とは思えない発言を多々してたね( ̄ー ̄)ニヤリッ
>>163 どうでもいい揚げ足取り
前スレじゃなくて前々スレの611だろぅね。
611 名前: 名無しさん@そうだ選挙にいこう [sage] 投稿日: 2009/01/28(水) 10:09:14
>>610 書いても後出し君は使えないから大丈夫だなw
答えが出ねーって怒ったりしてwww
B1:B1000に
{=INDEX(A:A,SMALL((MATCH(A1:A1000&"",A1:A1000&"",)<>ROW())*1000+ROW(),ROW()))&""}
君はこれで答え出せるよな?
出せてもやり方書いちゃいかんぞ。馬鹿が増えるだけだからw
作業列使った式より2倍以上遅いから少し糞だが、あっちのの式より100倍以上は速い。
ちなみに作業列作ればSMALLなんて馬鹿な関数は使わん。
そうそう、この子。 最後は逃げちゃったけど痛かったよねぇ。
馬鹿と鮭は帰ってくるもんだ
産まれた川を覚えている鮭と ついこの間の自分の発言を忘れてる彼を 同列に語ったら鮭に失礼ですよ
大先生、新スレ立ってますよ。
本人は分かってるから。
簡単な解決方法は新しいExcel買ってピボットだな
>>177 だな。
いろんなピボットの代替手段が出てきたが、どれもこれもスマートさに欠ける。
ピボットがいかに優れた解決手段であるかがかえって明確になった。
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 テンプレ エクセル 新規ファイルのシート3つありますがこれを1つに減らしたいのです。 エクセルで最初に開くファイルはどこに保管されてるんでしょうか また他に方法があればそれでも構いません。よろしくお願いします。
こうなったらピボット作れるフリーソフトを開発しろよ
>>179 メニューのツールからオプションに入って
その中のどこかで設定できなかった?
【1 OSの種類 .】 Windows Vista 【2 Excelのバージョン 】 Excel 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 エクセル 質問お願い。 例えば、セルC2に文字を打っていて、セルC2に入りきらない場合、 D2の方につづけて文字が入力されるけど、enterキーを押すと C2に入る文字しか表示されないよね? それを、C2に入りきらない分をC3に表示されるようにしたい。 改行というのかな? それには、どこをどうしたらいい? 上手く説明できてないがよろしく頼む
C2の縦幅を広げればいんじゃね? もしくはC2の開業したい文字位置でAlt+Enter
セル書式で折り返しありにするのがいちばん簡単
>>184 >>185-186 が普通
英文や和文ときまってるんならC3に=if(LEN(C2)>10,mid(c2,11,10),"")
なんて方法でそれっぽく見てることも可能だけど混合してるならalt+enterだろうね
【1 OSの種類 .】 Windows2000 【2 Excelのバージョン 】 Excel2002 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】水道料金 パソコン初心者です・・・。 水道料金を算出する計算式を教えてください。 メーターが 0〜8?は基本料金 514円 超過量9〜20?は1?に付き 115.50円 21〜30?は 141.75円 31?以上は 180.60円 と言うふうに加算される水道料金を算出できる計算式を教えて下さい。 どうか宜しくお願い致します。
さんすうの問題? あ、ごめん、算数レベルか
?はたぶんリットルの一文字版を使ったんだろうな
192 :
189 :2009/02/08(日) 15:56:44
189です。 すみません ?は立米です。 記号を入れてしまいました。 宜しくお願い致します。
>>189 8〜9の時は単価いくらになるんだ?
514円かのままか、115.50円の追加料金が発生するのか
たとえば40立米の場合 514+((20-8)*115.50+((30-20)*141.75+((40-30)*180.6 でいいのか? それとも514+(40-8)*180.60 ?
195 :
189 :2009/02/08(日) 15:58:18
>193 8〜9の時は514円に115.50円加算されます。
196 :
189 :2009/02/08(日) 16:03:59
>194 質問がへたくそですみません。 0〜8は514円 9〜20は514円*115.50円 21〜30は1900円*141.75円 31以上は3318円*180.60円 です。
A列=0;8;20;30 B列=1;20;30;9999 C列=514;115.5;141.75;180.6 D列=MAX(0,MIN(使用量,B1)-A1) E列=C1*D1 で、好きなところに=SUM(E1:E4)で結果が出ると思うが 作業列使うの嫌だったら、上記SUM関数の中に参照先の式を全部ぶち込め 因みにB列の9999は、9999以上使う可能性があるならもっと大きくするか D4だけ=MAX(0,使用量-A4)にしよう
>>184 だが、レスthx
やってみたんだが、普通の状態でやったらそれでできた。
だが、例えばC2とD2を結合してる状態でやったら、改行されなかった。
結合したら折り返しありにしてもダメなのかな?
>>200 セルの高さを拡げてみ?(行番号書いてるところの境界線をドラッグ)
もしどうしても下のセルに割り付けたいなら割り付けるやりかたもあるが
使い勝手悪くなるから勧めにくい
>>189 数式いっこで片付けるならa1が使用量のとき
=514+if(a1>8,(a1-8)*115.50)+if(a1>20,(a1-20)*(141.75-115.50))+if(a1>30,(a1-30)*(180.60-141.75))
(バスで暇つぶしに携帯から打ってるから括弧に自信ない間違えてたら修正plz)
かぶったけど、参考に =SUM(514,(A1>30)*(A1-30)*180.6,(A1>20)*(A1-20)*141.75,(A1>8)*(A1-8)*115.5)
>>203 みんな中途半端な情報をもとに回答してるからどれが合ってると言い切れないけれど
それだと大量使用者がぼったくられまくりんぐに見える・・・・
205 :
203 :2009/02/08(日) 18:49:50
間違えました orz
おまえら算数の問題に手間取りすぎw
しかもだれひとり
>>196 のとおり計算してねえww
口先厨キタ───(゚∀゚)───!!!!
>>189 請求料金を
基本料(使用料/立方メートル)として表すと
9未満は 514 (0)円
9以上21未満は 514(115.50)円
21以上31未満は 1900(141.75)円
31以上は 3318(180.60)円
という意味で良いの?
211 :
名無し変更議論中@詳しくは自治スレへ :2009/02/08(日) 19:37:52
>>206 了解した。
>>196 その通り作ると
=IF(A1<0,"",IF(A1<=8,514,IF(A1<=20,514*115.5,IF(A1<=30,1900*141.75,IF(A1>=31,3318*180.6)))))
考えすぎた。 料金は単なる4種類ってことか。
>>211 ネタに書こうかとしたのを質問者が混乱したらいかんと思って我慢してたのにお前はw
と、ひととおりいぢり倒したところで俺様登場
>>196 は足し算と掛け算間違ってるから正しくは下記のとおり
=IF(A1<0,0,IF(A1<9,514,IF(A1<21,514+115.5*A1,IF(A1<31,1900+141.75*A1,3318+180.60*A1))))
215 :
214 :2009/02/08(日) 19:53:09
しまった こうだな =IF(A1<0,0,IF(A1<9,514,IF(A1<21,514+115.5*(A1-9),IF(A1<31,1900+141.75*(A1-21),3318+180.60*(A1-31)))))
水道量は使用量0でも取られると思ってたが随分良心的だな
いや0だと取られる計算か 見間違えた勘忍な
【1 OSの種類 .】 Mac OS 10.3.9
【2 Excelのバージョン 】 Excel2004(11.4.3)
【3 VBAが使えるか .】 いいえ
【4 VBAでの回答の可否】 否
すいません質問です。
説明しにくいので、ロダにcsvうpしました。
http://www1.axfc.net/uploader/He/so/192830.csv DLキーワード:rei
A列には人名を「データベース1」よりコピペしたものが入ります。
B列にはA列をコピーし、手動で名字と名前の間にスペースを入れたものが入ります。
C列には「データベース2」よりコピペしたものが入ります。
D列では「A列と同じ名前があったら、その隣のB列のもの(名字と名字が分けられた状態)を持って来る」としたいのですが、関数使って何か方法はありませんでしょうか?
件数が多いので少しでも手間がはぶければと思ってるんですけど・・・。
>>218 例をExcelで開いたシートのD1には
=IF(ISERROR(VLOOKUP(C1,$A$1:$B$5,2,0)),"",VLOOKUP(C1,$A$1:$B$5,2,0))
が入る。これをD列にコピペすればおk。B列の行指定は適当に調整。
221 :
186 :2009/02/08(日) 21:48:49
アホな質問に丁寧にお答えくださった皆さん、ありがとうございました。
>>214 さんの計算式で出来ました。
一応自分なりにやっていましたが、31立米以上でおかしくなってしまい、困っていました。
本当に助かりました。
ありがとうございました。
222 :
名前欄 :2009/02/08(日) 22:05:52
>>221 お前ってとことんアホなのなw
嫌いじゃないぜまたこいよ
>>129 ,220
レスさんくすです!!!!!
まさかこんなに即レスで解決できるとは思いませんでした!!!
>>220 さんの作ってくれた関数、本番用のファイルに突っ込んでみたらばっちり変換できました。
これで明日から楽になる・・・。
ありがとうございました!!
>>223 ついでにいうと、苗字は2文字がほとんどだから関数で左から3文字目に空白をいれると
8割がた処理できるぞ
225 :
名無し変更議論中@詳しくは自治スレへ :2009/02/08(日) 23:08:23
【1 OSの種類 .】 XP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 エクセル 教えてください。 売り上げ管理したい。 BOOK1は全得意先+前月売り上げを先に入力済み ここからが質問です。 BOOK2に、例えば当月今日までの売り上げを別DBから貼り付けるとする。 (この時、今日までに売り上げ計上のない得意先は含まれていない。) このBOOK2にデータを貼り付けるだけで、BOOK1の各得意先の当月売り上げの項目セルに反映 させるにはどうしたらいいのでしょうか?
>>224 それならC列の文字列からスペース除去してA列からとマッチさせた方がいいんじゃね
「金田 一太郎」と「金田一 太郎」とかで不具合あるけど
228 :
227 :2009/02/08(日) 23:34:28
ごめん、スルーしてくれ 脳内変換間違えた
当たり前すぎて省略したんだと思うけど Excelに持ってくる前に必要な集計はDBでやってからっていう前提があるな それならVLOOKUPで一発だ
>>225 BOOK1には前月売上といわず月別に売上を入力しておく。
BOOK2に貼り付けたデータを集計したものを得意先の当月分のセルに表示させて
年間合計を出す、ていうふうにしたらいいね
おれならピボットテーブルつかうけど
>>229 集計もやりたいならピボットテーブルでできるね。
233 :
225 :2009/02/08(日) 23:52:35
234 :
名無し変更議論中@詳しくは自治スレへ :2009/02/09(月) 00:38:46
教えてください。 ハイパーリンクを設定したいのですが、コピペしただけではただの文字列として認識されてしまいます。ダブルクリックをするとハイパーリンクとして認識してくれるみたいですが。 アドレスを大量にエクセルのシートに貼り付けたいので、いちいちダブルクリックするわけにもいきません。何とかなりませんでしょうか? 教えてください。
>>234 普通は「コピペしたらハイパーリンクになるのがうざい」とか逆の質問が多いんだよ
ツール→オプション(2007ならオフィスボタン→Excelのオプション)のどっかが
自動リンクしない設定なんじゃね?と布団の中から無責任に答えてみる
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 入力、データ、行列等 品名別での店舗ごとの価格を打ち込むときに、行、列から絞り込み 対応するセルへ入力することはできるでしょうか? | |A店|B店|C店| |白桃|100| x|150| |桜桃|200|190 | y| |品名|店舗|価格| |白桃|B店| |品名、店舗名は直接入力で絞込み イメージとしては上記のような感じです
【1 OSの種類 .】 Windows2000 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 はい excelでマクロを組んだら、下のバーでひたすら、 「コマンド→再計算 コマンド→再計算 コマンド→再計算・・・・・・・」 と繰り返し交互に表示され、文字が交互に点滅しています。 落ち着かないので、なんとかこの表示を消す方法はありませんでしょうか。 先輩方宜しくお願い致します。
>>239 もしかして作った中にWorkSheet_Changeとかのマクロが入ってない?
>>239 根本的にマクロを見直した方がいいと思う。
蒸し返して申し訳ないが、>221が>214で出来たというのが分らない。 少なくともこれまでの正解は、>202だけじゃないかなあ。 >203はスマートにやろうとしてミスったけど、正しくは =SUM(514,(A1>8)*(A1-8)*115.5,(A1>20)*(A1-20)*26.25,(A1>30)*(A1-30)*38.85) >215は、(A1-9)とか(A1-21)あたりを誤解してる。
>>239 それは作ったマクロの問題なので、マクロを修正する必要があります。
どんなマクロを作ったのか詳しく書いてください。
30行以下の短いマクロならそのままここに貼り付けてください。
>>239 重いシートの場合、自動計算が止まる場合がある
>>238 行列で指定したセルを参照(検索)するなら関数で出来るけど
行列で指定したセルへの入力を行いたいならVBA使わないと無理
行だけの絞り込みならオートフィルタでいけるが
>>242 検索じゃないと思うが
どうみても検索じゃ? =OFFSET(クロス集計表の左上,MATCH("白桃",行のセル範囲,0),MATCH("B店",列のセル範囲,0)) みたいな事だろそれ
248 :
238 :2009/02/09(月) 16:13:17
回答ありがとうございます
説明が悪く、伝えきれなかったようでで申し訳ないです
>>246 さんの通り下の図で絞り込んだ条件を元に、x、yの数値を入力したかったのです。
ということはマクロ使わないとダメのようですね……すこし、勉強してきます
説明は悪くないよ 「対応するセルへ入力する」って書いてるのに 「対応するセルを検索する」のだと勘違いしてる奴がおかしい
>>248 マクロというかVBAでフォームを作るのがよさげ
品名と店舗をコンボボックスで入力
価格をテキストボックスに入れて
入力ボタンでシートの該当するセルにに反映
って流れで
251 :
239 :2009/02/09(月) 19:01:46
「コマンド→再計算 コマンド→再計算 コマンド→再計算・・・・・・・」
のループで悩んでいると書いたものです。
返答を下さった皆様親切に有難うございます。
>>240 ないです。
>>241 見直しましたが、分かりませんです。
何せマクロ暦まだ3日ほどです。
>>244 有難うございます。
そして分かりました。
コードを書きますので、
宜しくお願い致します。
範囲を指定して、ソートをかける、
というプログラムです。
宜しくお願い致します。
>>245 そこまで重いとは思えないのですが。
252 :
239 :2009/02/09(月) 19:02:49
>>244 コードです。宜しくお願い致します。
Sub RSS縦一覧単位差額()
'
' RSS縦一覧単位差額 Macro
' マクロ記録日 : 2009/2/9 ユーザー名 : 1
'
'
Application.Run "銘柄メモ.xls!RSS縦一覧全選択"
Selection.Sort Key1:=Range("AD27"), Order1:=xlAscending, Header:=xlGuess _
, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
SortMethod:=xlPinYin
ActiveWindow.SmallScroll ToRight:=19
Range("AA25:AA26").Select
End Sub
253 :
239 :2009/02/09(月) 19:14:49
もう少し詳しく症状を説明させていただきます。 この症状は、 @エスケープキーを押すと一瞬止まります。 ACPU使用率100%になります。 B症状が出ている時、特定の行の特定の列が、 同時にブルンブルン震えています。 場所はあちこちに散乱している状態です、
>>252 "銘柄メモ.xls!RSS縦一覧全選択"
というマクロコードも必要だ。
256 :
239 :2009/02/09(月) 19:41:07
>>254 有難うございます。
すいません。理解しようとしてるのですが・・・。
もう少し詳しく教えてもらえないでしょうか。
>>256 Application.Run "銘柄メモ.xls!RSS縦一覧全選択"
の行の先頭に ' をつけて実行してみろ。
症状が出なければ"銘柄メモ.xls!RSS縦一覧全選択"が症状の原因ということ。
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2002 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 可 セルの値に対応する画像を貼り付けるマクロってできますか? 山田 ・▽・ ←顔写真 鈴木 ・ω・ 別のシートに画像のリストを置いてそれをコピペするような
マクロの自動記録で画像のコピペを記録すればコードがわかる あとは条件分岐で画像コピペのコードを再利用すればいいだけ
260 :
254 :2009/02/09(月) 19:59:15
>>256 「銘柄メモ.xls」というファイルに「RSS縦一覧全選択」というマクロが入っているから
そのコードも貼り付けろって事。
261 :
名無し変更議論中@詳しくは自治スレへ :2009/02/09(月) 20:06:30
セルに001って入力したいときはどうすればいいの?
いくつか方法がある ・書式を000にする ・書式を「文字列」にする ・'001と入力する
263 :
名無し変更議論中@詳しくは自治スレへ :2009/02/09(月) 20:16:11
>255 >196は、補足しようとして余計混乱してるから 東京都の水道料金の表を見て来た。 整数きざみだが、分岐点は8、20、30 だよ。
東京かどうかもわからんし、
>>196 は使用量によって基本料金が変わると書きたかったんじゃないの
>>243 は使用量区分ごとに単価を積算してるが、それは正しい解釈ではなく
>>215 が正しいのかもしれない
266 :
名無し変更議論中@詳しくは自治スレへ :2009/02/09(月) 21:04:11
質問者が
>>208 の質問に答えれば
はっきりすることだが
もうどっちでもいいじゃん。
269 :
名無し変更議論中@詳しくは自治スレへ :2009/02/09(月) 21:19:06
ちぃと教えて。 個人使用の目的で パソコンを3台買って、ワードエクセルは、プレインストール版ではなく ソフトだけを買ってインストールすることってできる? 3つとも、ワードソフトを買わなくちゃダメ?
271 :
名無し変更議論中@詳しくは自治スレへ :2009/02/09(月) 21:22:07
PDFをエクセルに貼るとき、Adobe Readerがない場合は クリップボードにコピー貼り付け くらいしかないそうですが、 どうやったらきれいに貼り付けられますか。フリーソフトは使えないです。
>>269 デスクトップ・デスクトップ・ノート
か
デスクトップ・ノート・ノート
なら、パッケージ版2つ買えば良い
「デスクトップ・ノート」に対して1つ、それ以外の1台に対して1つ
全てデスクトップ、もしくは全てノートの場合、又は上記の組み合わせでも
OEM(DSP)版を買う場合は3つ買わないとダメ
>>271 挿入→オブジェクトで対象ファイルを選んでもダメ?
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2002 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 Cells 列名 excel 英語 数字 VBAでCells(行,列)を記述する際、列を数字で書くのと、英字で書くのとでは なにか違うのでしょうか? 会社のエクセルVBAで Cells(1,"A")と書いているのがあり、数字じゃなくても 設定可能なのを知ったのですが、HELPやwebを見ても、Cells(1,1)と書いているものばかり "A"等英字の指定はなにか問題があるのでしょうか
>>274 足したり引いたりできないから不便なんじゃね?
276 :
名無し変更議論中@詳しくは自治スレへ :2009/02/09(月) 21:47:06
なんで〜。 レコード聴くのに、ステレオごとにレコード買うようなもんではないの? 音楽ソフトなら、PCごとに、i-podごとに、曲買わないよね? おかしいよ。
レコードとかステレオとか何時代の人ですかw それはともかく、マイクロソフト様がそういう売り方をしてるんだから仕方がない 殿様商売ってやつ
278 :
名無し変更議論中@詳しくは自治スレへ :2009/02/09(月) 21:58:09
だね。著作権法の権利の及ぶ範囲も、著作者が自由に決められるって いうのもおかしいよ。すんげーMS社って儲けすぎでない?個人使用の目的なら、もうすこし ね。安くしてくんね〜。1家に1ライセンスにすべきだーーーー。
>>274 俺はアルファベットで書く派だけど、わかり易さのためだけだね
Cells(1,35).Valueとかになった時に、実際どの列が対象なのかわかりにくいから
280 :
名無し変更議論中@詳しくは自治スレへ :2009/02/09(月) 22:03:20
近い将来NHK受信料も、パソコン、テレビごとに受信料かも。
>>275 ,279
ありがとうございます。用途に合わせて使い分けていきます。
>>276 ,
>>278 不服ならMS製以外の使えば良い
不満があっても、機能や周りとの互換性優先でMS製を選ぶなら、
それはMSに強制されたわけではなく自分で選んだこと
選択肢はいくらでもある上で、自分でMS製を選ぶなら
不満は抱えても良いが、文句を言うべきでは無い
>>276 2台のプレーヤーで同時に再生したい時はレコードが2枚いるでしょ?
>>274 問題があるとしたらパソコンから見た時のわかりやすさ(=処理速度)
人間には"A1"の方がピンとくるがプログラム内部では「"A1"と言えば"(1,1)のことだな」と
ちょっとだけ考える時間がいる
相当な巨大プログラム以外どっちでも無問題
287 :
名無し変更議論中@詳しくは自治スレへ :2009/02/09(月) 22:40:53
288 :
名無し変更議論中@詳しくは自治スレへ :2009/02/09(月) 22:43:56
一太郎とか、松とか、いったいどうなったん?
>>285 定数ならVBEは1行ずつ入力した瞬間にPコードに置き換えるから処理時間の差は体感できないよ。
人間の入力スピードのがずっと遅い。
差がわかるとしたら、巨大なソースをエディタで書いて、一気にコピペした時ぐらいかな。
290 :
285 :2009/02/09(月) 22:55:54
>>289 その通りだと思ってるよ補足サンクス
質問者が「どう違うんだろう」って思ってそうだったから285を書いた
最終的にはメンテナンス性があれば一番だと思う
「2台のプレーヤーで同時に再生したい時はレコードが2枚いるでしょ?」
折れ的には、この論理で行くと、個人では常に1台のプレーヤーでしか使わないこと
の方が多い。同時に2台で再生して聞く、うましかはいないw
>>269 実際に購入して、何台、認証が受けられるか試して見れw
そうすればわかるから。
プレイヤーや、再生時以外データを使用(保持)せず逐次読み込みだけど PCはソフトのデータを自前のHDDに内容を保持(使用)しっぱなしだからね。 PCでも、インストールとアンインストールを繰り返して、 保持(使用)しているのが1台のみなら、ソフトも1ライセンスでOK。 プレイヤーの場合も、データを保持するものは、本体やメディアにその分の課金がされてるし。
やったこともないくせに、うましかとか言っちゃってw
294 :
名無し変更議論中@詳しくは自治スレへ :2009/02/10(火) 01:28:14
On Error GoTo errorMsg 動作1 動作2 動作3 動作4 Msg”” という内容で動作3までしかない処理でマクロ実行すると、 エラーメッセージが出て、動作の順番が狂ってしまうんですが、 何故でしょうか。3が先頭にきてしまいます。
実コードをどうぞ
2台のステレオの置いてある部屋が同じで、聞く人間が一人とは限らないし、 使用者が一人だったとしても、人間が聞くために再生するとも限らない。別のメディアにダビングとかね。 あと、昔のDJは一人で同時に何枚ものレコードを使ってたよな。
3枚ずつ買うに決まってるだろ 保存用、観賞用、布教用
>>294 説明を省略しすぎ
その質問から読み取れる範囲では、処理の順番が狂うことはありえない
いったいどんなプログラムを作って何がやりたいのさ
>>294 On Error GoToを抜いて実行しろ
301 :
名無し変更議論中@詳しくは自治スレへ :2009/02/10(火) 10:17:57
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】いいえ 【4 VBAでの回答の可否】 否 表の中から、当月分データの合計を拾う数式があれば 教えてください。 表の一番上に日付が入って(G8:S8)、下にその日付に対応したデータがあります(G60:S60)。 G60:S60の中から、今月の分の合計を求めたいです。 よろしくお願いします。
>>301 イマイチイメージできないが・・
G7=MONTH(G8)
S列までオートフィル
あとはどこかに=SUMIF(G7:S7,MONTH(NOW()),G60:S60)
でいいのかな?
303 :
301 :2009/02/10(火) 10:38:26
>>302 ありがとうございます!
ちなみにこのままだと、前年同月のデータも拾ってしまいますが、
いい解決法はあるんですか?
>>303 こんなんでよかったのか
んじゃ↓に改造
G7=YEAR(G8)+MONTH(G8)/100
どこか=SUMIF(G7:S7,YEAR(NOW())+MONTH(NOW())/100,G60:S60)
305 :
301 :2009/02/10(火) 10:51:02
306 :
301 :2009/02/10(火) 11:01:43
連投スマソ さっきの表のg60:s60から、月間平均を取るにはどうすればいいですか? countも考えたですが、飛んでしまう月もあるので (データは1月、3月しかなくて2月のがなくても、3ヵ月としたいので) よろしくお願いします。
>>306 =SUMIF(G7:S7,YEAR(NOW())+MONTH(NOW())/100,G60:S60)/COUNTIF(G7:S7,YEAR(NOW())+MONTH(NOW())/100)
あまり小出しにしないように
頼むよ
308 :
301 :2009/02/10(火) 11:14:45
>>272 何か勘違いしてるようだけど、ノート3台の場合3つ買わないとダメ 、というのは間違ってるよ
Office2003の場合だと使用許諾はこうなってる。
>1.1 インストールおよび使用
> (a) お客様は、本ソフトウェアのコピー 1 部をパーソナル コンピュータ等の1 台のデバイスにインストールして使用できます。
> (b) お客様は、本ソフトウェアの 最初のコピーを主に使用する方が専用に使用する別の 1 台の携帯用デバイスに、本ソフトウェアの追加のコピー1部をインストールすることができます。
デスクトップ3台だとしても1台を携帯デバイスとして使うのであればOfficeを3つ買う必要は無い。
310 :
名無し変更議論中@詳しくは自治スレへ :2009/02/10(火) 12:21:26
便乗で教えてください。 たとえばA1:T1の中から、月数を抜くにはどーすればいいですか? たとえばA1に2009/01/01、C1に2007/12/31があって、どこかにその間の月数「14」を返すみたいな。 よろしくです。
311 :
310 :2009/02/10(火) 12:26:21
すいません、補足します A1:T1には他の日付も入ってるけど、一番古い〜一番新しい期間の月数がほしいです。 小出しですいません。
>>311 =DATEDIF(MIN(A1:T1),MAX(A1:T1),"M")
条件によっては+1しないといけないかもしれん
>>309 認証ではハードがデスクトップかノートかで判断している件について
携帯用デバイスってUSBメモリなんかのことじゃないの? パソコン本体のことなの?
>>314 USBメモリにインストールしてどうすんだよw
単に携帯用デバイスと言えば、USBメモリも携帯できるパソコン本体も含むが 「インストールするデバイス」という話になると、USBメモリは コピーは出来てもインストール(直接使用・実行できる状態に)は出来ないので除外される
317 :
310 :2009/02/10(火) 12:40:16
319 :
309 :2009/02/10(火) 12:50:54
ついでに言うと、バージョンによっては1人の人が開発、テスト目的に使うのであれば何台にでもインストール出来るものもある。
例えばXP Developer版の場合
>また、お客様は、お客様のソフトウェア製品を開発およびテストする目的に限り、本ソフトウェア製品のコピーを数に限りなく作成して使用することもできます。ただしその場合、かかる本ソフトウェア製品のコピーを使用できるのは、特定の1名のユーザーに限ります。
開発、テスト目的だから仕事で使う書類を作るとかは出来ないし、高いから普通の人には関係無いけどね。
>>313 使用許諾と機械的なライセンス認証は別の問題だよ。
ライセンス認証が通らなければ電話で「携帯して使うパソコンにインストールしたい」と言えばいいだけの話。
ところでライセンス認証ってハードウェアの変更があった事は分かってもハードの内容までは分からないものだと理解してたんだが、
本当にMicrosoftの方でノートかデスクトップかを判別してるの?
Officeのサイトによればこうなってるんだけどね。
>A. Office ライセンス認証ウィザードにより、ソフトウェアがインストールされるハードウェアの仕様が認識されます。しかしこれは、ハードドライブをスキャンしたり、個人情報を検知したり、PC やその構成部品の型番や製造元を特定するものではありません。
320 :
名無し変更議論中@詳しくは自治スレへ :2009/02/10(火) 13:08:49
【2 Excelのバージョン 】 Excel2007 【5 検索キーワード 】 excel2007 グラフ 自動調整 文字 サイズ フォント Excel2000ではグラフエリアの書式設定にてフォントサイズの自動調整があり、 グラフの大きさに連動して文字サイズを変更する・しないを選択できましたが、 excel2007ではどのようにすればよいのでしょうか? グラフエリアの書式設定にはこの項目はなく、 データラベルの書式設定>配置は「テキストに合わせて図形のサイズを調節する」であり かつグレーアウトしています。
> ハードの内容までは分からないものだと理解してたんだが 当然、内容(型番や製造元)までは解らんが。 因みに、デスクトップを携帯するってのは通らない。
>>321 それはデスクトップ+デスクトップではネットでのライセンス認証が通らなかったって事?
それとも電話認証で「デスクトップを携帯して使ってます」と伝えたら断られたって事?
miniITXなんて携帯出来る程 小さいデスクトップPCだぜ
両方
【1 OSの種類 .】 WindowsXP
【2 Excelのバージョン 】 Excel2003
【3 VBAが使えるか .】いいえ
【4 VBAでの回答の可否】 否
http://www.uploda.org/uporg2005563.jpg このような状態があるのですが、(300行くらいあります)
この文の「01」の数を数えるにはどのようにすればいいですか?
('認識された文字は01です'と書かれたセルの数でもOKです)
妙な質問ですいません
326 :
名無し変更議論中@詳しくは自治スレへ :2009/02/10(火) 14:18:47
>>314 基本は主利用者が使うということで、携帯デバイスへのコピー目的は、
@バックアップという意味と、
A出先で主利用者が使用したいときに、PCのインストールされていない場合
携帯用デバイスから、一時的にインストールして使用する。
を意味しているのかも知れないな。
結論は2000使えという事か…おやチャイムが、、
328 :
名無し変更議論中@詳しくは自治スレへ :2009/02/10(火) 14:22:09
329 :
名無し変更議論中@詳しくは自治スレへ :2009/02/10(火) 14:28:08
Excel2000 vba勉強中 If文の分岐にセルA1と他のファイルのセルB2〜セルD2(セル結合)の文字が同じなら分岐 ってやりたいのですが上手く分岐してくれません… どなたかソース見せて貰えませんか? お願いします
>>325 =countif(a:a,"認識された文字は01です")
>>329 =IF(A1=[xxx.xls]シート1!$A$1,"同じ","おなじじゃないよ")
ファイルを二つ開いて = だけ入力して、もう一つのファイルのセルをクリックすると
自動的に[xxx.xls]〜の部分が入力されるよ
332 :
名無し変更議論中@詳しくは自治スレへ :2009/02/10(火) 14:41:08
>>331 さん
それってピボットって奴ですか?解りません(;´Д`)
VBAで回答いただけると有りがたいのですが
>328 =(YEAR(MAX(A1:T1))-YEAR(MIN(A1:T1)))*12+MONTH(MAX(A1:T1))-MONTH(MIN(A1:T1))+1
>>329 If [A1] = Workbooks("他のファイル.xls").Worksheets("Sheet1").[B2] Then
>>333 2008/12/1 と 2009/1/1 の2つのデータがある場合、この式だと何ヶ月になるかな?w
>>335 (2009-2008)*12+1-12+1=2
おそらく合ってるだろ?
質問者が月数をどう定義しているかハッキリは分からんが
2007/12/31から2009/01/01の月数を14と言ってるのだから
開始月と終了月はそれぞれ1月と数えるのだろうと推測は出来る。
2だよ。それが何か? データが2つ無いと1になっちゃうけどね。
>>336-338 おまえらバカか。3人のふりして1人だろ。ゆとりとかそんなもんじゃねえぞ
(2009-2008)*12+(12-1)+1=24
すまん ゆとりはおれだったようだ
341 :
>>329 :2009/02/10(火) 18:59:35
>>334 文でも数字でも同じで良かったんですね(;´Д`)
他の場所が悪いみたいです…もう少し頑張ってみます
ありがとうございました。
頭で考えるより先に、まず実際に式をワークシートに入れて見ればいいのに… 携帯厨ならすまん
>>339 このゆとりの態度と口調ってどっかで見たような気がするのは俺だけですか?
344 :
名無し変更議論中@詳しくは自治スレへ :2009/02/10(火) 21:00:57
With Application.FileDialog(msoFileDialogFilePicker) .InitialFileName = "フォルダ保存先" If .Show = -1 Then For Each p In .SelectedItems ActiveSheet.Pictures.Insert (p) Next End If End With End Sub これフォルダを選択して画像選択して挿入するマクロです。 ここで教えてもらいましたが、画像の順番がうまくいきません。 1,2,3,4 と選ぶと 貼り付けが4,1,2,3 となってしまいます。 なぜでしょうか。教えてください。
346 :
344 :2009/02/10(火) 21:22:36
>>345 挿入した画像をそれぞれActiveSheet.Shapes(1) ・(2)・(3)・(4)として、
次の作業に移るので、挿入する順番が重要なんです。
ForNextで回したほうがいいかもしれんね
348 :
344 :2009/02/10(火) 21:45:17
349 :
344 :2009/02/10(火) 21:56:36
今日はプロがいないんでしょうか
試してないけど これでどうよ For i = 0 to SelectedItems.Count - 1 ActiveSheet.Pictures.Insert SelectedItems(i) Next
>>344 それはWindowsの仕様で、複数のファイルを1つのダイアログでまとめて選んだ時、
順番がどうなるかは決めることも知ることも出来ない。
順番が重要なら1枚ずつ選ぶしかない。
352 :
名無し変更議論中@詳しくは自治スレへ :2009/02/10(火) 22:17:05
エクセルのフリーソフトのカレンダーで 毎日,毎週,毎月の収支を入力できる欄のあるものってないでしょうか? もしくはエクセルで簡単に 年間のカレンダーを(休日の設定とか自動的に設定) 関数とか利用して作ったりできないものでしょうか? よろしくお願いします。
353 :
名無し変更議論中@詳しくは自治スレへ :2009/02/10(火) 22:20:26
>>351 そうだったんですか。
どのPCでやっても最後の1枚が最初にくるようになってました。
すみません
>>350 は
>>344 のどこに入れたらいいんでしょうか。
>>344 複数選択した場合の順番は、アクティブなものから下方向に順次
ついでアクティブな物の上にも選択しているものがあれば、一番上から下方向に順次
つまり
1,2,3,4という順で選ぶと、最後の4がアクティブになってるので、最初に4
そしてその下が無いから次は一番上の1、そこからした方向に2,3と続く
1,2,3,4の順で貼付というか選択コレクションに格納したいなら
1をアクティブ(点線枠が掛かった状態)にしよう
>>352 あてずっぽうに答えるけど
ググればみつかるんじゃないの?
>>352 Excelには祝日を求める関数はありません。
祝日以外の部分なら基礎的な知識で作ることは出来ますが、
すべてここに書くと長くなってしまうので、まずは自分で調べて、
どうしてもわからない部分だけ聞いてください。
カレンダーを作るフリーのマクロはいくつもあるので検索してください。
質問です VBAで組み込みの「名前を付けて保存」ダイアログを使うとき 2007でもそれ以前でもファイルの種類をxlsにするのはどう指定すればいいですか? 2007メインで使ってるんだけどArg1に「ほにゃらら.xls」を指定しといたら それで保存できたから安心しかけてたら 開く時になって「拡張子とファイルの種類が一致しない」みたいな警告が出るんで 中身がxlsxのものをリネームしただけみたいな状態なんだろね 保存前にファイルの種類を手動で選択すればいいんだけど 誰が使っても後でエラーにならないようにしたいんで (普通に保存できたように見えるからかえって性質が悪い)
>>352 収支を入力したいのが主目的なら、カレンダーとか祝日とかにはこだわらない方がいいと思う。
>>352 休日がらみの話抜きなら「簡単にできる」が答え
休日判定がらみのツールに詳しいサイトもあるから
自作するならそれも使えばいいかと
スキルが「簡単にできない」レベルとかなら再質問するよろし
>>357 古いバージョンの形式で保存するときはこんなふうに書く
Workbooks(1).SaveAs FileName:="なんとか.xls", FileFormat:=xlExcel8
-----------------
>>360 ありがとう
質問してたのはxlDialogSaveAsを使って「ファイルの種類の既定値」を設定できないかと
同じ指定で2007でも2003でも同じようにxlsで保存になるかが知りたい
363 :
名無し変更議論中@詳しくは自治スレへ :2009/02/10(火) 23:01:13
>>354 1から順に選んで1をアクティブにしてくれるマクロって作れないでしょうか?
364 :
名無し変更議論中@詳しくは自治スレへ :2009/02/10(火) 23:02:51
>>354 1から順に選んで1をアクティブにしてくれるマクロって作れないでしょうか?
>>362 arg2でファイルの種類の既定値を変更できる。2007のマクロから2003の形式を指定する場合はこう。
Application.Dialogs(xlDialogSaveAs).Show arg1:="", arg2:=1
あとは、Excelのバージョンを調べて処理を分ければいい。
>>363 マクロに詳しくない俺がやるなら
・画像は順番に並ぶようにリネームしておく
→選ぶ画像だけをまとめてフォルダに入れておく
→VBA実行
→ファイル選択画面ではctl+Aで全選択
で希望の結果にならないかな試してないけど
>>363 何を選ぶんだ。
落ち着いてもっと長い日本語で書け。
質問させて下さい。エクセル2003を使用しています。 現在、フォーム → オプションボタンを貼りつけ、簡単なマクロを登録させています。(マクロ自身は、行の高さを変え る程度の簡単な物です) データ入力する際に、オプションボタンを押すと、必要でない行の高さを 0にする事で入力者には必要な項目だけ 入力するようにしています。その際に、行が 0になる場合にその行に設置しているオプションボタンを消えたり表示 したりしたいと思っております。 オプションボタン@を押すことで、別のオプションボタンAが消えたりオプションボタンBが表示されたりするようなマクロ はないでしょうか? どなたかご教授お願いします
>>365 Arg2:=1で良かったんですか!!
それならむしろバージョン分けの必要ないかもですね
休み明けに両バージョンで試してみますありがとうございました
370 :
名無し変更議論中@詳しくは自治スレへ :2009/02/10(火) 23:18:16
>>367 挿入する画像を選んでいくとき、どうしても最後に選んだやつがアクティブになってしまうから
知らない人が使っても困らないように最初に選んだやつを自動でアクティブにしたいんです。
枚数は毎回違い、常に新しい画像を使用します。
>>368 こんな感じでボタンを隠すことが出来る。
CommandButton1.Visible = False ボタンを消す
CommandButton1.Visible = True ボタンを出す
>>370 続けて関連する質問をするときは、名前に最初の質問のレス番を入れてね。
特定のシェイプを一番前にして選択状態にするにはこう。
ActiveSheet.Shapes(1).Select
Selection.ShapeRange.ZOrder msoBringToFront
373 :
368 :2009/02/10(火) 23:32:43
>>371 早速、レスありがとうございます
最近、マクロを触り始めたばかりで、マクロを分かっておらず質問ばかりですいません。
オプション@を押すと、リンクしているセル( 仮にA10 )に数字が反映されるよう設定していたとすると
A10が 1の場合、オプションボタンAが消えオプションボタンBが表示される。
このような設定をする場合、
>>371 さんのコードからどういったコードを追加すればよいでしょうか?
>>373 A10が1ならボタン2が消えてボタン3が表示される。
ボタン名は自分で思ってるのと違うことがあるのでちゃんと調べてね。
If [A10] = 1 Then
ActiveSheet.Shapes("Button 2").Visible = False
ActiveSheet.Shapes("Button 3").Visible = True
End IF
375 :
368 :2009/02/11(水) 00:15:16
>>374 さん。レスありがとうございます
コントロールツールボックスを使うことで、374さんのコードでボタンの表示・非表示が出来ました。ありがとうございます。
再度、質問ですいませんが、フォームからのオプションボタンでボタン名の登録(登録が無理ならボタン名の確認)のような
事は出来るのでしょうか?
あまり、マクロに慣れていない事もあって割と簡単なフォーム−オプションボタンで一連の動作をしたいと思っております。
>>375 ボタンには名前だけでなく番号も付いている。
さっきのプログラムを、例えば
ActiveSheet.Shapes(2).Visible = False
ActiveSheet.Shapes(3).Visible = True
みたいに、番号で指定することもできる。
ボタン名を確認するには、
MsgBox ActiveSheet.Shapes(1).name
ってやると、1番目のボタンの名前が表示される。
そして名前は自由に変更することができる。
ActiveSheet.Shapes(1).name = "1番目のボタン"
ActiveSheet.Shapes(2).name = "セカンドボタン"
ActiveSheet.Shapes(3).name = "灰色の長方形"
番号とまったく関係ない、自由な名前を付けることができる。
さらに、名前を変えた後なら
ActiveSheet.Shapes("セカンドボタン").Visible = False
のように書くことも出来る。
377 :
368 :2009/02/11(水) 01:04:09
>>376 さん
レスありがとうございます
夜分遅くなりましたので、明日にでもためしてみたいと思います
また、質問させていただく事もあると思いますのでよろしくお願いします。
長々とありがとうございました。
378 :
名無し変更議論中@詳しくは自治スレへ :2009/02/11(水) 05:08:25
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2002 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 Excel 時刻 足し算 作業完了予想時刻を関数を用いて計算したいのですが「時刻(〜日〜時〜分)」+「作業時間(分)」の足し算の 計算方法が分かりません。 Aのセルに「作業時間(分)」を計算して出させているのでNOW()の値に加算したいのです。 お手数ですが関数の記述例をご教授ください。
379 :
名無し変更議論中@詳しくは自治スレへ :2009/02/11(水) 05:37:51
やりたいのは B1セルに今の日付:NOW() B2に作業時間(分):関数を用いて整数として計算済み。 B3に作業終了時刻: このような場合はB3にはどのような記述を行えばいいでしょうか?
=B1+B2/1440
ありがとうございます。 無事計算できました。 ところでなぜ「1440」なのでしょうか?
60*24
>>381 シリアル値では1が一日
なので、1/24が一時間、1/24/60(=1/(24*60) =1/1440)が一分
よく分かりました。これで「分」以外の場合でも自分で計算できそうです。
=B1+(3+9/60)/1440 これでいいですか? (´・ω・`)
>>386 身になってるようで良かった
こういう人には回答し甲斐があるね
これからも頑張って下さい
皆様、ありがとうございました。
質問者に例題やらせるのは 新しいパターンだな。
自演なんだけどね
(;゚д゚)ァ
たまにはTIME関数も使ってあげてください
【1 OSの種類 .】 WindowsXP vista 【2 Excelのバージョン 】 Excel2003 2007 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 sumif 複数条件 sumproduct A列からDC列ぐらいまでデータが入っていてシート1がこんな感じ A B C D E F G 1 店番 店名 商品コード 商品名 取扱個数 条件1 条件2 (略 2 001 A店 101 鉛筆(黒) 2 ’1 3 001 A店 102 鉛筆(赤) 1 ’2 4 002 B店 102 鉛筆(赤) 10 ’3 5 002 B店. 201 ノート(白) 5 (空白) ’1 6 002 B店. 202 ....ノート(赤) .. 8 (空白) ’1 シート2に以下のイメージで集計して提出資料を作りたいのです。 A B C D E F G 1 店番 店名 金額 鉛筆(黒and条件1=1) 鉛筆(赤and条件2=2) 鉛筆(赤and条件3=3) ノート(全色) 2 @100円 @100円 @102円 @200円 2 001 A店 (取扱個数計) 3 002 B店 4 003 C店 ※C列の所に@単価×取扱個数の合計を表示。 データは絞り込みをしたり、しなかったりで2000行〜37000行あります。 アクセス(2000)からデータを取り出して、データを集計して、印刷用の様式に加工しています。 商品コードは約100種類、条件によって同じ商品コードでも単価が違うので集計する列を分けています。 データの1行はA列からDC列ぐらいまであるので、sumprodcutを使うと再計算でとんでもなく時間がかかります。 sumproduct以外でスマートな関数はないでしょうか?
395 :
393 :2009/02/11(水) 14:56:56
つづき、 アクセスは、システム屋からのリースで、仕様変更にはコストが掛かるので無理との回答でした(同じプログラムを多数卸しているため) アクセスを理解するにはどんな本が良いですかね?
>>394 年によって単価が変更されることは、あります。
間違いがありました。列が1,2,2,3,4となっているところを1,2,3,4,5に読み替えてください。
>>396 表示するのは現在の単価でいいということにするよ。
ACCESSで作られているなら単価マスターが存在するだろう?
もしかしたら商品マスターの中に単価項目があるかもしれないな。
1,2行目は単価マスターを表示するだけだ。
3行目以降はピボットテーブルで集計するといい。
>>393 よくわからんけどCOUNTIFSかSUMIFSあたりを使えば多少は速くなるんじゃない?
>>398 私のPCに2007入ってます。上司のPCには2003が入ってます。
sumifsを使うと、「Excel2003だと使えないぞ《゚Д゚》ゴラァ!」って言われました。
>>397 後出し情報でごめんなさい。システムの画面に「Excel形式で出力」ボタンがあるのでそれで出力してます。
単価マスターとか商品マスター見ること出来ません。ただ、商品コード(A列)と商品名(B列)の一覧は作成済みです。
>表示するのは現在の単価でいいということにするよ。
okです。2行目は手入力しても間違う可能性が少ないので
ピボットテーブルにしてみたら、条件の絞り込みは出来ました。出てきた数値を様式に手入力ですか?
手入力だと間違いそうです・・・
>>399 >手入力だと間違いそうです・・・
形式を選択して貼り付けで値のみにするとか使えないかな。
Excel2000 を使っていて不自由は感じていないのですが PCをビスタにしても問題無く使用できますか?2007は使う気ないです。 やっぱXPにしとこうかな?
=VLOOKUP(A2,A4:C7,MATCH(A1,A4:C4,0),FALSE) このセルにリンクをつけ、該当する数値へリンクさせジャンプしたいのですがどのようにすればいいのでしょうか?
403 :
名無し変更議論中@詳しくは自治スレへ :2009/02/11(水) 17:30:34
すみません、どなたか教えて下さい エクセルで、となり同志に掛け合わせたいものを書いて、その右側に掛け算の答えを出す事ってできますか? どうやって、すればいいですか?
A1=PRODUCT(B1,C1)
>>403 例えばその隣同士がA1とB1だとしたらその右側のC1に
=A1*B1
って書けばいいですよ。
A2〜C2でも同じことをしたかったら、
C1をコピーしてC2にペーストしたらいいです。そうしたら自動的に
=A2*B2
って入力されますよ。
406 :
名無し変更議論中@詳しくは自治スレへ :2009/02/11(水) 18:03:32
>>405 ご親切にどうも有り難うございます
やってみたのですが、A1*B1と書いて、=を押したら、掛け算の答えが出て感激しました
それで、その下に、コピーしたのを貼り付けたら、上の計算の答えと同じものが出てきました
下の数字は1行目とは違う数字なので、答えは違うものなのですが・・・
ごめんなさい、どうしたらいいでしょうか
教えて頂けたら有難いです
408 :
名無し変更議論中@詳しくは自治スレへ :2009/02/11(水) 18:19:11
コピーと書かれていたので、A1*B1と入れてたのですが、よく考えたら A2*B2と書けばいいのですね? そうすると正しい答えが出たのですが・・・ 本を見ても、このやり方載ってなかったので、本当に助かりました 心から感謝です!!!
Excel2003ですが、作業状態ファイルから起動すると、設定してあったウィンドウ枠の 固定が解除されてしまいます。解除されないようにするにはどうすればいいですか?
>>402 ちょっとは関数使えるみたいだからまずADDRESS関数のヘルプを見れ
ジャンプしたい先のアドレス表示ができるようになったら
次はHYPERLINK関数のヘルプを見れば解決
>>408 せっかく聞きに来たんだから
いちいち入力せず言われた通りコピペするんだ
>>399 Excel好きだからこのスレにいるのにこんなこといっちゃあ何だが
その条件ならAccessのレポート使った方がよっぽど効率よさそう
せっかくAccessあるんならちょっとは触ってみろよ
とくにレポートの部分はうまく使えばExcelなんて糞ソフトだなと言いたくなるくらいいろんな機能がある
>>409 どうやればその状態を再現できるかわからんから答えにくい・・・
ほんとに固定した状態で保存できてるのか?
もう一度設定しておきたい状態にしてから新しく作業状態ファイルを作っても駄目?
414 :
名無し変更議論中@詳しくは自治スレへ :2009/02/11(水) 19:33:41
>>411 すみません、何度もやってみたのですが、うまくいかなかったので、入力もしてみたのです
コピーでできるのなら、その方がやりやすいです
コピーでまたやってみます
>>413 1 ファイルAにウィンドウ枠の固定を設定
2 resume.xlwを保存
3 Excelを終了
4 resume.xlwから起動
5 ファイルAのウィンドウ枠の固定が解除されてる
>>415 あらま本当だねぇ(2007で確認)
解決できそうなのはVBAのOpenイベントで処理するか
似た機能(ウインドウの分割)で代替させるかくらいかねぇ
>>409 いい加減な答えしてたけれど多分わかったねぇ
ウインドウ枠の固定をしたブックを保存してないとかじゃ?
作業状態ファイルはあくまでその時のウインドウの状態とか保存してくれるだけだから
個々のブックの設定はそのブックを保存しないと駄目
これでどうかねぇ
2007だとこれで解決したんだけど2003は駄目かねぇ 2003仕事で使って作業状態ファイルも使ってるけどその不具合経験したことなくて 2003で駄目ならいい加減なこと書いて申し訳ない手元に2007しかないんで本来はROMってる立場なのにでしゃばった
420 :
名無し変更議論中@詳しくは自治スレへ :2009/02/11(水) 20:58:41
前回操作時に何か余計なことをしてしまったようで そのファイルを読み込むと、 「他のファイルへの自動リンクがあります。更新しますか?」 が毎回出てきてしまいます。 シートの数も多く、どのセルに自動リンクが設定されているか 探し出せないのですが、何か簡単に探せる方法はありませんか?
>>421 発見!! こんな所に!!
ホントありがとうございます。
423 :
344 :2009/02/11(水) 21:20:32
>>370 >続けて関連する質問をするときは、名前に最初の質問のレス番を入れてね。
>特定のシェイプを一番前にして選択状態にするにはこう。
>ActiveSheet.Shapes(1).Select
>Selection.ShapeRange.ZOrder msoBringToFront
教えてもらった上のマクロなんですが、
('さいしょにはりつけた画像を一番上にもってくる)
ではなくて
フォルダで選択した順にshapes1,shapes2,shapes3となるようにしたいんですが
できないでしょうか。
希望とする内容は
('フォルダでファイルを順に選択して先頭のファイルを点線状態で挿入)
もしくは
('画像を挿入したあとShapes1をShapes(ラスト)に変更)
>>414 そもそも最初に、
>やってみたのですが、A1*B1と書いて、=を押したら、
これおかしいよ。
=を押してからその後ろにA1*B1 したがって、セルには =A1*B1 と入れる
あなたの順序だと、計算されるのが分からん。
A1とB1をかけた結果がC1のセルに入れば
あとは、C1のセルをC2にコピーすればC2の式は自動的に =A2*B2 と行番号
が増える。この自動で増えるのがエクセルの基本的な仕様。
>>423 最後に選択したのが最初に処理され、その後最初に
選択したものから順に処理されるのなら、
選択する順番を、2番目に処理するものから順に選択し、
最後に1番目に処理したいものを選択すれば?
おお!
427 :
393 :2009/02/11(水) 22:48:43
>>412 VBA(マクロ?)とアクセスなら、どちらが楽に覚えることが出来ますか?
またしても後出しじゃんけん御免なさい。
1.私がアクセスでファイルを作る→人事異動→後任はアクセス使う気がない→私にヘルプくる。
2. └→上司にファイル提出→上司「アクセスで作るな。読めない」言われる。
3.システム屋がアクセス以外のソフトで開発する。→アクセス無くなる。→ファイル読めなくなる(可能性(小))
1の可能性は、Excelでファイルを作ったときに経験したことなのですが、こうなる可能性が(大)
2は、もうどうしようもないのです。私だけがこの様式を作って上司に報告している訳ではないので。
上司が8人から上がってくるファイルをコピペして全体の集計をさらにしているのです。
やっぱり複数条件の抽出は時間が掛かるのですね。データの行を分割して計算させてみます。
VBAは別に覚えなくても報告できるべ?
複数のファイルにまたがる集計を、条件を変更しながら簡単に試せるのがAccess。 面倒な単純作業を自動化できるのがVBA。 用途が違うべさ。 8人のファイルを1つのシートにまとめるみたいな、 単純作業の繰り返しをVBAに置き換えたいだけならマクロの記録をしてみればいい。
>>427 アクセスを覚えるのがベストな状況だな
csvで出力すればエクセルでも読めるからいいと思うんだけど
VBAは一度試してみては?マクロの記録から始めればすぐに覚えられるはず
ちなみにアクセスでもVBA使えますよ。使う機会ほとんどないと思うけど。
>>427 ACCESSが出力する販売データには単価や金額が含まれていないの?
それはかなり痛いシステムなんで早くリプレースしたほうがいい。
ま、それはそれとして、仕方がないから自分で単価マスターを別シートにでも用意して、販売データにVLOOKUPで結合してやるといいよ。
そして後はピボットテーブル。
こういう事であまり自分が頑張りすぎちゃうと泥沼っつーか 最悪鬱になって会社辞めちゃうとかそういう事になりかねないから 出来るだけ自分が後々楽できる方法考えた方がいいと思うけどねー 金で解決出来るんならいい業者見つけて任せるのが一番だと思うわ。 人によるんだろうけどね。
>>423 アクティブになってるのは必ず4番目で
1番目や2番目をアクティブにしてOK押す人は居ないって条件なら
>>425 で解決だな
そうでないなら、「希望する内容」の後者でも対応できないってことになるわけだが
前者はフックやらウィンドウメッセージやらといった面倒なことが必要で
そこまで丸投げでやってくれる人は居ないだろうし、君自身も使いこなせないだろう
そうなると他の方法だが、ファイル選択ダイアログは、初期状態では名前の昇順で並んでいるが
その並び通りの順番で挿入したいってことは、名前の昇順で挿入したいってことだから
選択コレクションをソートしてから挿入すれば良い
これならどれがアクティブになっていても、一意の順番で挿入される
名前の昇順でもなく、
画像1 3
画像2 1
画像3 2
画像4 4(アクティブ)
という順番で選択したら、画像2、画像3、画像1、画像4という順番で挿入したいとか言うなら
もはやユーザーフォームで挿入画像選択フォームを作った方が手っ取り早い
ユーザーフォームなら選択した順番通りはもとより、選択(クリック)した時点で挿入してしまうことも可能
>>423 もし毎回
1234→4123
123456→612345
のように順番が変わっちゃうと決まってるなら
処理する対象を1回目だけshapes(shapes.count)、2回目以降shapes(i-1)にすれば?
>>434 残念ながらファイルの順番は環境によって変わる。
FileDialogを使う限り、選択した順番を調べるのはほぼ不可能なので、
ファイルの一覧を表示して選択するフォームを自作するのが無難。
携帯から失礼します PC外につながらないんで 【1 OSの種類 .】 Windows2000 【2 Excelのバージョン 】 Excel2002 【3 VBAが使えるか .】 初心者 【4 VBAでの回答の可否】 可 というかVBA データが入ってるセルの一番下の行数を変数として読み込みたいのですが どうすればよろしいでしょうか?
>>436 マクロの記録でctrl+end
xxx = ActiveCell.SpecialCells(xlLastCell).Row
A列を調べるとき Range("A65535").End(xlUp).Row
複数列の一番下なら(1行目にデータがあるとして) ActiveSheet.UsedRange.Rows.Count
440 :
239 :2009/02/12(木) 16:25:35
>>260 =254様
コマンド→再計算のループで悩んでいると書いた239です。
レス遅れて申し訳ありません。
これからご指摘頂いた通り実行したいと思います。
有難うございます。
441 :
名無し変更議論中@詳しくは自治スレへ :2009/02/12(木) 16:36:31
>>424 有り難うございます
やってみたら、ビックリです
ほんと式がコピーされるんですね
昨日やったのは、=を欄外上の空欄左でクリックしました
マス目をコピーしようとしても、昨日はできなかったです
さらに知りたいのですが、欄の中に数字を入れていくのに、ずっと同じ数字を記入していく場合、
一つずつ右クリックして、貼り付けする以外、やり方はないでしょうか?
442 :
名無し変更議論中@詳しくは自治スレへ :2009/02/12(木) 16:56:07
>>441 あんたの質問は全部ヘルプを見ればわかることばかり
これからはヘルプを見てから、それでもわからなければ
疑問点全体をまとめてから質問しなさい
443 :
436 :2009/02/12(木) 16:59:52
皆様ありがとうございます 解決しました <(__)>
>441 貼り付けるセルが矩形範囲ならドラッグで、 飛び飛びなら、Ctrl+左クリックで複数指定してから 貼り付ける。ただ普通に貼り付けると、書式も 貼り付けられてしまうので、値の貼り付けアイコンを ユーザー設定で置いておくと便利。
445 :
名無し変更議論中@詳しくは自治スレへ :2009/02/12(木) 19:03:16
>>444 もっと初歩の方の様子なので
>>441 (式でなく)数字を直接入力したセルをコピーするなら、まずその値のセルをクリックして、
そのセル右下の黒いポッチ(四角)にマウスを合わせる。すると、マウスポインタが+記号に
なるので、そのまま左ボタンを押したまま(たとえば下に)動かすと下のセルが選択されていき
同時に同じ値がコピーされる。
この応用で、マウスの右ボタンでコピーすると、ボタンを離したときに、選択肢が出てきて、
ちょっと違ったコピーもできる。これはどうなるか自分でやってみよう。
式をコピーする場合は、前回の回答にあるように、セルの行番号あるいは列番号が自動で
代わるので、「式のコピー」と「値のコピー」はちょっと違う動きに注意。ただそのほうが
便利なのでそうなっている。なお「式のコピー」の場合でも、行番号や列番号を固定する
ことももちろん簡単にできるようになっている。
なお、質問が、初歩の入門のイントロダクションの始めにの・・・・なので
Excel超入門的な感じで、Webサイトを探れば、どこにでも掲載あると思うので
トライしてみて
446 :
名無し変更議論中@詳しくは自治スレへ :2009/02/12(木) 19:29:25
うざ
ちょっとVLOOKUPについて質問 最後の引数部分、TRUEか省略するとたしか 検索値未満の最大の値がヒットしたと記憶してるけど これを検索値以上の最小の値にすることってできる? 単純に範囲を降順にしても無理っぽい気がしたけど
工夫というものは素晴らしいですね
450 :
名無し変更議論中@詳しくは自治スレへ :2009/02/12(木) 21:58:54
折れ線グラフのY軸の項目で例えば0〜100とする場合、0は表示せずに、100のみ表示したいのですが そういうのはどうすればいいのでしょうか?
>>450 そういう一般的でないことをするときは
グラフの機能あれこれ調べるよりも
縦軸ラベルのフォントを白にして見えなくしてから
テキストボックスで100を貼り付ければいいじゃんと思ったりもする
>>447 範囲を降順にしてMATCHの第3引数を-1にすりゃいい。
当然INDEXと組んで使う。
VLOOKUP関数なんてほとんど使いみちがない関数だ。
どこぞのピボット厨が好きだったようだが。
>>452 範囲を降順にしなくてもできる方法を考えようよ。
INDEXを考えてるんだったらさ…
MATCHの第3引数を省略してMATCHの値に+1してやればいい。
ピボット厨をバカにしているようだが、君はピボット厨をバカにするほどのスキルをもっていない。
久々にどうしようもない関数厨の登場だな
>>452 君はまだ正規化を知らないんだね。
なぜVLOOKUPで十分なのか 考えてごらん。
>>452 お前きっとSUMIFとかCOUNTIF大好きだろ。
そんなの使ってるとどんどん頭悪くなるぞ。
459 :
名無し変更議論中@詳しくは自治スレへ :2009/02/12(木) 23:04:57
ぬるいヤツラの集まりだなココは この時期はこんな程度なんだろうが、それにしても・・・・・
VBA不可ってだけで一気に回答レベルが落ち込むからな
>>460 オマエもそのうちの一人だけどね
口先でオレは違うというのは簡単だが
形にしなきゃ否定は滑稽なだけだし
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2007 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 countif、Excel 関数 セル指定 =COUNTIF(C$3:C$22,">B3") という表記だと返ってくる値が0になってしまうのですが、そのセルの数字以上という条件で記述したい場合、どこを直せば良いのでしょうか あまりに基本的過ぎるのか調べても見つからなかったのでお願いします
>>465 ">=B3"
そのセルのその、はB3のことですよね
これはB3に記述しちゃダメですよ
他のセルに記述してもダメなんですよね……。 「>B3」という文字列での検索になっているためだと思うんですが、セルの数字を参照させたい場合はどうすれば良いのでしょう?
gdgd言ってないで答えてやれよ、使えねーな =COUNTIF(C$3:C$22,">" & B3)
ありがとうございます! なるほど、&が必要なんですね
そんな簡単に納得しちゃっていいのかw まあ別にいいけど。
&が必要っつーか、引数をバリアントで処理する エクセルの悪い所であり、都合が良い所だったり、
正直ださいと思う。
良いところ、じゃないかな
でないと文字列を数値に置き換えるために別の関数が必要なわけだし
非常にメジャーなソフトである以上、あまり低級にしてしまうと一般人が付いてこれなくなるからね
>>473 理解してる人からすれば確かにそうなんだけどねw
この辺は販促的な事情も絡んでくるんじゃないかな。あまりにガチガチだと使いにくくなるという懸念があるわけだし
うん、最近抵抗が無くなって来たけど Range("A" & i) とか、最低だな
>>476 おまえさっきからうっとーしいぞ。
仕切り厨か?
仕切りも雑談なんだよ。ひっこめ。
478 :
自治厨 :2009/02/13(金) 00:40:30
見つけたら誘導してるかなぁ あんまりスレ違いがひどいと削除+アク禁よん♪
Excelって画像ファイルをD&Dで取り込めないんだっけ?
>>454 あんた恐ろしくレベル低いね。
>>455 に馬鹿にされるだけあるね。
単純にMATCHの値に+1していいわけないじゃん。
一致じゃなかったら+1だろ?
こんなことするなら降順でMATCHの第3引数-1が普通だ。
どうせ正論はいても否定するだろうけどな、
なんせ声さえ大きければ勝てると思ってるやつだろうし。
>>482 横から感想。
INDEX&MATCHってバグのおんどこだね。
>>483 482じゃないけどどこが?
MATCHにバグがあればVLOKUPにもあると思うけどな。
MATCHにしかないとすれば照合の型-1のときだけだな。
ピボットの使い方を詳しくかいてあるサイトってありますか? なかなか狙ったデータにならないんです・・
486 :
名無し変更議論中@詳しくは自治スレへ :2009/02/13(金) 09:55:37
>>485 ピボットテーブルでググっていいのが見つからなかったらそれは「ない」という事だ。
俺からしたら詳しく書いてあるように思えるがおそらく君が求めるほどのサイトじゃないだろう。
>>486 そうですか、ありがとうございます・・
やっぱり慣れなんでしょうかね、練習していきます
>>487 てか、どのようなデータにしたいのか聞いたらどう?
気がむいたらピボット厨が教えてくれるでしょう。
>>488 新しい形で集計したいものが出てくると、毎回つまるんですよ
さすがに一回作ったものは覚えてるのですが
また詰まったら教えていただきます。ありがとうございました
というか、ピボットは合計のクロス集計以外は無駄に手間食うよ。 合計のクロス集計に限れば、条件変わってもメッチャ簡単だがな。 まあ基本となる規則さえ覚えちゃえばそう難しいもんでも無いけど。
491 :
名無し変更議論中@詳しくは自治スレへ :2009/02/13(金) 12:17:53
【1 OSの種類 .】 WindowsXP SP2 【2 Excelのバージョン 】 Excel2003 SP2 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 同じ 文字 セル 二点わからない事があります。 よろしくお願いします。 一点目は同じ表の中で同じ文字を3度入力しなければならず一度入力したら他の二箇所にも自動で入力できる方法を教えてください。 下のSheetのタブにもその文字が表示できれば助かります。 二点目は3つ並んだセルの左側に1と打ち込むと、真ん中にお菓子、右側に525と自動的に出るようにしたいのですがそちらの方も宜しくお願いします。 初心者なので用語が分からず検索ワードだけでもご協力お願いします。
492 :
名無し変更議論中@詳しくは自治スレへ :2009/02/13(金) 12:22:11
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 スキャナで取り込んだ書類を図形で挿入して エクセルで打った文字をコピーして貼り付けてるんですけど 前頃は枠線なんて出なくて文字だけ貼り付けられたのに、 なんか今はセルのサイズの枠線みたいなものが出ちゃいます・・・。 どうしたらいいんでしょう?
>>491 A1に打ち込んでB1とC1に表示するとき
B1セルとC1に=A1
sheetタブはVBAが必須
二点目はvlookupで検索
index、matchでもいいけどvlookupで慣れてからの方がいい
494 :
492 :2009/02/13(金) 12:25:45
ちなみにセルの書式設定で罫線はちゃんと無しになってます。
>>492 右クリック 書式設定 色と線
で線なしとかそんな感じ
496 :
491 :2009/02/13(金) 12:28:24
>>493 ありがとうございます。
早速やってみます。
497 :
492 :2009/02/13(金) 12:46:20
>>495 線無し塗りつぶし無しになっているでござる。。
どうやら形式をhtmlにして別の場所に貼り付けしてから
またそれをコピペすれば枠は付かないようでおじゃりますが。。
前はどうして出来てたんだろう。テキピとかいうソフト入れてもうまくいかない。
なんか前みたいにいちいち選択しなくても済む方法ってない?
>>497 よければそのファイルをアップロードしてくれまいか
499 :
名無し変更議論中@詳しくは自治スレへ :2009/02/13(金) 13:45:48
>>444 有り難うございます
Ctrl+左クリックで指定してから貼り付けるというのが、わかりませんでした
あとユーザー設定というのも、後でよく調べてみたいと思います
ためになりました 感謝です
>>445 すごく詳しい説明して下さって、有り難うございます
+になって、そのまま動かしたら、コピーとかできるので、感激しました
ヘルプは見ても、なかなか理解できなかったので、本当に助かりました
感謝です 有り難うございました
すぐに壊れてしまう
501 :
名無し変更議論中@詳しくは自治スレへ :2009/02/13(金) 14:28:17
壊れそうな物ばかり集めてしまうよ。
503 :
名無し変更議論中@詳しくは自治スレへ :2009/02/13(金) 15:56:59
【1.OSの種類 】 XP 【2.エクセルのver 】 2003 すいません教えて下さい。シート2に商品コードに対する商品名が記載されているとします。シート1で商品コードを入力するとその商品コードに対する商品名を出力させるにはどの様にすればよろしいでしょうか?
>>503 =VLOOKUP(A1,Sheet2!A1:B2,2,0)
見たいな感じ
505 :
名無し変更議論中@詳しくは自治スレへ :2009/02/13(金) 16:05:30
ありがとうございます、さっそくやってみます!
Excel で作られた表主体の文書を,MS-Word のファイルへ,書式やセルを崩 さずに変換する手段はありませんか? 有料無料問いません。変換後の文書は MS-Word の表機能を使って作った表にしたいです。 【1 OSの種類 .】 Windows XP 以降 【2 Excelのバージョン 】 Excel 2002 以降 【3 VBAが使えるか .】 わからない (使ったことが無い) 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 xls doc 変換 ちなみに,Convert.DOC は Excel のファイルを入力できないので不可です。
>>506 Wordの表は幅や高さの調整できる範囲がExcelほど細かくないので、
そのまま崩さず、編集できるように変換するのは無理だと思う。
508 :
名無し変更議論中@詳しくは自治スレへ :2009/02/13(金) 17:45:34
>>505 一度PDFにしてから切り貼りしたらどうだろう。
>>506 どこまでやりたいか分かりませんが、
エクセルフアイルhtmlにして保存してからそれをワードにインポートしてみてはどうでしょうか
かなり重くなりますが
>>508 変換後の文書はMS-Word の表機能を使って作った表にしたいです。
>>510 それはWordに変換したあと、Wordの方で内容を修正したりする事はあるの?
変換する文書は大量にある?
それによってベストな方法は変わってきそうだな。
512 :
名無し変更議論中@詳しくは自治スレへ :2009/02/13(金) 18:08:39
>>510 すでにやってることでしょうが、編集あるなら
リッチテキストで貼り付けるあたりが
もっとも、レイアウトが近い気がするのですが。
上下左右の位置関係さえ合ってればいいんならそのまま貼り付けるだけでいいはず。 セルの幅や高さまできっちり同じにするのは不可能。 見た目をExcelの画面そのままにしたいならオブジェクトの埋め込み。ただし編集はできない。 リンク貼り付けにすれば編集はできるけどExcelが必要。
>>506 そもそも何の目的で、Wordにそんな難しいことさせまんのや?
プリントしてOCRで取り込むのが 手っ取り早いと思う。 昔のOCRは酷かったけど 今はどうなんだろう。
>>515 OCRを通す意味が分からない。
それならWordにテキスト形式で貼り付けた方がましでは?
こういう時こそVBA厨の出番なんだけどな。 VBAと言ってもWordの方のVBAだけど、似たようなもんだろ?
それはOCRというよりそのソフトの表を表として読み取って再現する能力が凄いって事なのでは。
質問する側は難しいかどうかわからない
OCRを経由すると再現度はさらに下がるよ。そのまま貼り付けた方がずっとマシ。 そのソフトも万能じゃないというか、むしろきちんと変換できるケースのがレア。
522 :
名無し変更議論中@詳しくは自治スレへ :2009/02/13(金) 20:00:36
普通にテキストとして貼り付ければいいんじゃないか 何十ファイルくらいかしらんけど
523 :
名無し変更議論中@詳しくは自治スレへ :2009/02/13(金) 20:27:57
罫線情報を含めて、ほぼリッチテキストでいけるますよ。 セルの結合があれば、その部分は貼り付けた後でワード側で再度 結合してあげる。セル内の文字位置指定があるとき微調整。 位だとおもうよ。
524 :
名無し変更議論中@詳しくは自治スレへ :2009/02/13(金) 20:30:40
しかし、回答者もみんな前向きで、なかなか良いじゃないですか。 あとは、質問者が混乱せずに理解してくれることを願って! という感じかな。
エクセルで質問です。 上の方にABCDE〜ってのがあるじゃないですか 同じシート内にもう一つ別のABCDE〜みたいなのを追加することは可能でしょうか?
>>525 1、自分でABC・・と入れる
2、画面をコピーして貼り付け。
何のためだろう?
>>527 そういうことです。
できれば上段と下段で
ABCDEの間隔を別にできるようにしたいのです。
そういうときはシートを分けます
>>528 1つのシートの中で、列の途中で幅を変えることはできない
結合でむりやりセル幅変えるのは可能
533 :
名無し変更議論中@詳しくは自治スレへ :2009/02/14(土) 12:04:56
>>528 つぎのような感じを望んでるのかな?
同じブック内の別シートを一緒に表示する。
操作を述べると、
現在Sheet1が表示されているとして、
メニューの「ウィンドウ」から「新しいウィンドウ」を選択すると
同じシートが二つ表示される事になる(これが
>>530 のカメラ機能かな)。
どちらかのシートを(シート下のタブを使って)Sheet1からSheet2に切り替える。
これで、一つのExcel画面上に、Sheet1とSheet2の二つが表示される。
それぞれ好きにレイアウトが可能です。
おなじExcelブック内ですので、あるシート(たとえばSheet1)を変更すれば
もう片方の同じシート(Sheet1)に反映されるということに注意。
>>528 それは表計算ソフトではなく、表組みソフト(ワープロに含まれる)の仕事
計算ソフトでは表組み(表現)より座標が優先されるから、座標を壊すような表組みは出来ない
出来るのは1行1列単位でのサイズ変更と、1行1列単位での増幅(結合)程度
じゃあカメラ機能がどういうものか言ってみろよ雑魚
ざこで〜す
わてが、「ざこば」やけど、どないしはりましたん?
拾ってきたぜ ほれ 離れた場所もしくは別のシートにあるデータを貼り付けるわけなので、印刷をするときなどにレイアウトの自由が利く。 データはリンクされているので、元データを修正すれば貼り付け先にも反映される。 サイズと位置を自由に変更できる。 貼り付け先のシートのセルとは独立した図なので、シート上にセル幅の違う表を表示できる。
これはなんという雑魚
(;゚д゚)ァ
隠しメニューの「図のリンク貼り付け」
なかなか高そうなPCだな バージョンいくつだよ雑魚
カメラだと列見出し出ないじゃん
質問者はABCを出したいって言ってんだぞ
>>526 でがいしゅつ(なぜか変換できない)だけど、PrintScreenしてペイントで余計な部分を切り取って図の挿入
スクショでどんなPCかわかるのか さすが先生w
列見出しは列幅変えるために出したいっていったんだろ おれはエスパーだからわかる
不正インストールするとカメラ機能は省かれるんだよ
しかしカメラ機能で貼り付けた後だと列幅の変更が非常に面倒でっていう
カメラ付いてね〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜_| ̄|○
そしてまた質問者は逃亡か 最近の質問者はなめてんのか
>>551 自分で質問して自分で答えるパターンなので 知らない機能で回答されても無視
554 :
名無し変更議論中@詳しくは自治スレへ :2009/02/14(土) 16:55:05
そういうなよ 回答者も前向きで素晴らしいじゃないですか 同じ人だけど
きしゅつ(←なぜか変換できない舐めてんのかF携帯)だけど 新しいウインドウを開いて綺麗に並べてから その状態で「作業状態の保存」ってのが実用的な気がする
↑ スレちがい帰れ!
まあまあ、スレちがいも人生だカス
559 :
名無し変更議論中@詳しくは自治スレへ :2009/02/14(土) 18:14:55
ごめんなさいも言えないのか
ハァ?おまえが謝れよ スレ違いさせてすみませんでしたってなァ! 死ねクソガキ
VBAの勉強方法って独学で出来ますか?どうしたらわかるようになりますか?
>>561 > VBAの勉強方法って独学で出来ますか?
できます
>どうしたらわかるようになりますか?
@自動記録でいろいろ試してみましょう
A適当にググれば解説サイトたくさんあります
B本屋さんにも行ってみましょう
グラフ範囲 =Sheet1!$O$3:$T$3,Sheet1!$O$5:$T$269 をマクロで実行するためにはどうすればいいですか? myC = Range("L2") ActiveChart.SetSourceData Source:=Sheets("Sheet1") .Range("$O$3:$T$3", "$O$5:$T$ & myC") , PlotBy:= _ xlColumns で動きません。 よろしくお願いします。
>>563 "$O$5:$T$ & myC"
がおかしい。
前後関係がわからないので推測だが
"$O$5:$T$" & myC
かな?
>>564 ありがとうございます。
構文エラーはなくなりましたがマクロ実行後の
入力値が=Sheet1!$O$3:$T$269となっています。
=Sheet1!$O$3:$T$3,Sheet1!$O$5:$T$269にならないのは
なぜでしょうか?
つ マクロの記録
パソコン教室とか通うお金ないので、参考書見ながらエクセルを習得したいのですが、 何かオススメの本とかありませんか?
>>569 お金が無いなら参考書とか買う金も勿体ないだろ。
図書館で適当に借りてくるんだ。
あとはネットで調べる。「Excel 入門」とか「Excel 初心者」とかでググればいくらでも出てくる。
>>569 この手の質問はExcelに限らずに出てくるのだが、
はっきり言って答えようがない。
なぜなら超初心者でも中級書で理解してしまう奴もいれば
サルでもレベルでも引っかかる奴は引っかかるからだ。
強いて言うならば、本屋に言って中身を自分で確認して
わかりやすそうな本を選べ。
一冊で何でもできるようになるとは、間違えても思わないように。
いや
>>569 はお金がなくてExcelどころかPCも買えないんだよ
でもExcelを勉強したいという向学心あふれる若者なんだ
Excelを使ってる会社に「Excel使えます」と言ってアルバイトに行くんだ
わからないことを聞けば教えてくれる先輩くらいどんなすさんだ職場でもひとりはいるもんだ
Excelを勉強しながらお金もたまるし
>>569 にはいいことづくめじゃまいか
図書館へ行けばいいじゃないか。参考書もパソコンもタダで使えるぞ
575 :
569 :2009/02/15(日) 00:53:14
>>573 勝手な想像すんな
俺は48歳のおっさんで社員は社長の俺一人の超零細企業
先輩なんかいるかタコ
Excelは増えすぎたエロ動画の一覧表を作るために学習するんだ!
>>575 社長だったら経費で落とせるだろうから
Access買いなよ。
577 :
569 :2009/02/15(日) 01:55:26
勝手に人のプロフ作らないでください。 本当は4月から商業高校に入る女子です。 パソ苦手だし授業でEExcelを使うらしいので今のうちに予習したいんです。 教科書は4月にならないと買えないのでまだありません。
ネカマ乙
579 :
575 :2009/02/15(日) 02:26:32
>>577 ごめんよ、暇だったからちょっといたずらしてみたんだ
向学心に燃える若人の勉強の機会を奪ってしまうのは不本意なのでみなさんアドバイスしてあげて下さい
俺に出来るアドバイスはありません
>>569 >ひと目でわかるMicrosoft Excel Version 2002基礎レッスン(マイクロソフト公式解説書)
581 :
506 :2009/02/15(日) 15:49:06
今度暇なときにいろいろやってみます。みなさまありがとうございました。
ワードとエクセルが入っているOffeceXPの初期ディスクから両方ともインストールしようと思ったのですが韓国語で何故か機動し、エラーが出て入れれません。何か分かることがありましたらご教授下さい エラーの詳細のコピー C:\DOCUME~1\ユーザー名\LOCALS~1\Temp\Office XP Personal Setup(0006)_Task(0001).txt C:\DOCUME~1\ユーザー名\LOCALS~1\Temp\Office XP Personal Setup(0006).txt
Excelのリスト入力は入力規則を使えば可能ですが、 でてくるものは商品名、 選択後入力されるものは商品コード というセルを作れませんでしょうか? Accessでは可能なのですが、 データ作成を依頼する書式で実現したいと思っています。 よろしくお願いします。
>>583 名前がうぜぇ。名無しにしてくれ
入力した後違う内容にするにはVBAしか無理。
素直に隣のセルにvlookupか何かで引っ張ってくる事
ただ2007で条件付書式に数式が使えるらしいので、それを利用すれば可能かもしれない
まぁ普通はvlookupだな
585 :
名無し変更議論中@詳しくは自治スレへ :2009/02/15(日) 18:53:24
1 OSの種類 .】 Windows XP 【2 Excelのバージョン 】 Excel20033 【3 VBAが使えるか .】 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 コマンドボタンをクリックした時に、テキストボックスに入力されている値をSheet3のB列を検索して、 該当している値の場合はセルごと削除、該当する値がない場合はメッセージボックスを表示。 としたいのですが、削除するときのRangeの後(9行目)のコードが分からないので教えてください。 Private Sub CommandButton1_Click() Dim n As Variant n = Application.Match(UserForm1.TextBox1.Text, Sheet3.Range("B:B"), 0) If IsError(n) Then MsgBox "該当する商品名は登録されていません" TextBox1 = "" TextBox1.SetFocus Else Range("").Delete xlShiftUp End If End Sub
587 :
585 :2009/02/15(日) 20:50:21
>>586 それだと行が削除されてしまいます。
C列、D列には他のデータが書き込まれているため、該当のセルを
削除して上方向に詰めたいのです。
588 :
585 :2009/02/15(日) 20:53:08
そもそもコードの書き方が間違っているのかな? ネットと本を参考にして書いたんだけど、最後の削除が上手くいかない、、、
Range("B"&n).Delete xlShiftUp じゃダメか? エクセル今ないんだなぁ、申し訳ない 無理ならマクロの記録で検索、すべてのセルを検索、削除 ってカンジでやればできると思う
590 :
585 :2009/02/15(日) 21:48:43
>>589 できました!ありがとうございます。
ゆっくり眠れそうです!
591 :
名無し変更議論中@詳しくは自治スレへ :2009/02/15(日) 22:37:29
ROUNDDOWNでも使えば?
1000円以下も表示ってことなら 0.000,
594 :
585 :2009/02/15(日) 23:08:31
レスをくれた方、ありがとうございました。 おかげさまで、以下のようになりました。 Private Sub CommandButton9_Click() Dim n As Variant n = Application.Match(UserForm1.TextBox7.Text, Sheet3.Range("a:a"), 0) If IsError(n) Then MsgBox "該当する商品名は登録されていません" TextBox7 = "" TextBox7.SetFocus Else t = MsgBox(TextBox7.Text & "を削除しますか?", vbOKCancel, "確認画面") If t = vbOK Then Range("a" & n).Delete xlShiftUp TextBox7 = "" TextBox7.SetFocus Else TextBox7 = "" TextBox7.SetFocus End If End If End Sub VBAの知識がゼロから書き始めて、変数を理解できません。 そこで質問ですが、 t = MsgBox(TextBox7.Text & "を削除しますか?", vbOKCancel, "確認画面") ↑のコードの「TextBox7.Text」の部分で変数「n」は使えないのでしょうか? また、「t」は変数として宣言していないように思いますが、定義されてしまうのが理解できません。 、、、私の言ってる意味が理解できないかもしれませんが。;;
595 :
名無し変更議論中@詳しくは自治スレへ :2009/02/15(日) 23:09:07
>>592 ROUNDDOWN(SUM(A1:A4),-3)という感じで集計セルに入れたらできました!
>>593 千円以下は非表示でお願いします・・・
不慣れでしたが色々考えさせられました
有難うございました
596 :
アホ :2009/02/15(日) 23:11:03
【1 OSの種類 .】 XP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 エクセル 初心者です。 複数の連続した行に入力した値を別のシートの複数の連続した列で参照したいのですが、1つずつセルを指定しないで済む方法をおしえてください・・・ 行同士、列同士ならドロップダウンですぐできるんですがうまくいきません。 馬鹿ですみません・・・
【5 検索キーワード 】 エクセル なめてんのか
598 :
アホ :2009/02/15(日) 23:27:54
まともに返答できない人は黙っててください。 目障りだ!
599 :
アホ本人 :2009/02/15(日) 23:37:09
↑あのぉそんな怖いスタンスで偽者するのやめてください・・・ コピペしたんでエクセルとしてしまいました。
>>582 オークションや海外旅行で入手した格安OfficeのCDはすべて偽物です。
日本のパソコンショップで買った物を使ってください。
> コピペしたんでエクセルとしてしまいました。 他に何か言うことはないのかよ?
別に一つ目か二つ目かくらいちゃんと指定して あとはフィルで引っ張るだけでいいんじゃねえの?
>>603 試しに
A1=B1
A2=C1
って入れてオートフィルしてみ
適当な文字列データでオートフィルしてから、置換で数式に変換すればいい
どっちにしろまた質問者逃げたっぽいか 本当なめてんな 人間がなっちゃいない
プゲラ(^▽^)
>>606 そんな人間は所詮その程度の人間
こちらは淡々と答えていれば良い。怒るだけ時間の無駄よ
え?お礼が欲しいの?
606さんはそうらしいですね 要領を得ない人にこっちが質問して無視されても、俺は全く気にしないんだがなぁ
612 :
名無し変更議論中@詳しくは自治スレへ :2009/02/16(月) 12:27:12
うざ
613 :
名無し変更議論中@詳しくは自治スレへ :2009/02/16(月) 12:29:44
「俺は全く気にしないんだがなぁ」 誰もお前のことなんざ気にしてねぇから好きにしろwwwww
質問と回答、およびExcelに関した話題は有用だけど ただのお礼とか「自己解決しました」だけのレスとかはリソースの無駄遣いでしかないよな。 (このレスもだけど)
回答による解決も自己解決も、書かなきゃ更なる回答が付くことになり 解決報告以上のリソースの無駄使いになる件について
616 :
名無し変更議論中@詳しくは自治スレへ :2009/02/16(月) 12:44:57
おれは質問者のお礼の有無より間違い回答したやつのほったらかしが気になる。
更なる回答が付くって事はすでに出た回答が完全じゃ無かったって事なわけで
618 :
名無し変更議論中@詳しくは自治スレへ :2009/02/16(月) 12:51:04
>>617 後だしじゃんけんで負ける手を出すやつざらにいるぜ?
619 :
名無し変更議論中@詳しくは自治スレへ :2009/02/16(月) 12:56:58
お礼より お札がいい
おふだ、何に使うんだろう
売らない?
買わない?
皮ない。
本田医師
お札=オサツ=紙幣=金
'00'と表示させたいのに'0'となってしまう・・・ 何か策はありますか?
#、#00
できた、ありがとう
631 :
582 :2009/02/16(月) 18:46:07
>>600 日本でパソコン買ってきた時についてきた日本のモノです。
違うPCのXPではちゃんと日本語で起動します。言語設定も日本に設定しましたし、CDROMドライブを取り替えたりもしましたが変わりありませんでした。
>>582 の回答を現在も受付中です。
>>631 だったら2chのスレ違いのとこで聞いてないでさっさとメーカーに問い合わせしろ
>>631 おおかたハンゲームでも入れたんだろう。
Windowsインストーラーが韓国語版に書き換えられてんじゃね?
さもなくばウィルス。
>>633 ウィンドゥズインストーラーの言語を直す事は手動で出来ますか?韓国のゲームを入れたことがあるのでそれかもしれません。
それはここで聞いていいことだと思っているのか?
教えて貰えないのは分かりましたが理由が分かりません。 暇つぶしにでも教えてもらえますか?
なかなか粘る奴だな
2箇所の数値を連動させるにはどうやるの? たとえばA1に120と入れたら、B5も120に自動的に変わるようにしたいんだけど
すいません 解決しました なにか複雑なことを考えてました 単に、=でいいですね
いややっぱり質問 A1に120と入れたら、B5も120 B5に120と入れたら、A1も120 どちらからも修正できるよう連動するにはどうやればいいの?
>>641 それはVBA使わないと無理
入力フォームを作って、データの入力には必ずフォームを使うって方法もあるけど
>>641 A1に=B5、B5に=A1と入れれば要求を満たすものは出来るよ。
単純に考えればいい。
計算式がA1とA2にあって、B1が条件1に合えばA1を採用、条件2ならA2を採用(B1に採用する式が入る) という風に、他のセルにデフォルトの計算式を用意しておいて別のセルでそれを汎用するというのはできませんか? A1、A2の式もB1の条件も絶対参照ではなく相対参照です。 具体的にいうと A1=1000*C1 A2=1000*C1+1200*D1 という式があって、B1にどちらを利用するかを決める条件とはSUM(C1:D4)>40ならA2、<=40ならA1という感じです。 これをB列のセルに次々利用したいので(B5ならC5やD5を参照するので)A列の基本数式を絶対参照にはできません。 簡単なVBAは読み書きできますが、自分しかいじれないものを作ってしまいたくないので関数で乗り切りたいと言う前提で お願いします。 なるべくifの入れ子にしたくないので、今例としてABCD列を使いましたが、SUM(C1:D4)の条件だけの列、 それを満たした場合こちらへ進む、という風に段階を踏むために列や行をどんどん増やすのは一向に構いません。
>>644 その程度のことなら、いちいち数式を別のセルに用意しなくてもこれでいける。
B1=1000*C1+IF(SUM(C1:D4)>40,1200*D1)
どちらかのセルに値を打ち込んでそれで終わりって用途なら
>>643 でいいんだよな。
エラーは気にしなければいいだけの話で。
でも、当然ながら恒久的に両セルでそれを実現したいって話だろ どちらかに値を入れたらもう一方が連動する ではなく どちらからも修正できるよう連動する なんだから
> 簡単なVBAは読み書きできますが、自分しかいじれないものを作ってしまいたくないので VBAで作って自分(VBA解る奴)しか弄れなくなるのは、作り方が悪いからだ Excel自体だってプログラム言語で作られてるが、プログラム言語なんて解らない奴でも弄れるようになってるし VBAに限っても、xlaアドインはVBAで作られてるわけだが、基本的にVBA解らない奴が組み入れても、 必要な設定や条件は弄れるように作ってある むしろ保護掛けてVBA解る奴でもソースは弄れないようになってるものも多いが、それでも問題ないようになってる
>>649 思いつきでレスするな
おまえバカジャネーノ?
場合によってはたまにエラー出るぐらいなら許容範囲なモノもあるわけだ
そんなモンをExcelのアドイン並みの作りこみする必要あるか?
VBAで書いたら必ずアドイン並みに作りこまなくてはいけないのか?
本人が関数で乗り切りたいって言ってるモンを意味不明なイチャモンつけてんじゃねーよ
┐(´ー`)┌
同じドキュメント内でハイパーリンクを貼ってる時、 リンク先の場所が変わったとき、自動的にリンク先の指定をそこへ変更できない?
[1 OSの種類] MacOSX Leopard [2 Excelのver.] Excel2004 [3 VBAが使えるか] いいえ [4 VBAでの回答の可否] 可 ドロップダウンリストなんですけど、入力規則から作れますが、 リストを出すにはセルを選択して、右に出る三角をクリックする必要がありますよね より使いやすくしたく、セルを選択、即リストを表示ってしたいんです。 以前エクセルで作られたシェアウェアの青色申告ファイルを触ったときに、できたので おそらく方法はあると思うのですが。
>>653 ドロップダウンリストならなんでも良いのなら、
コントロールツールボックスのコンボボックスってのを配置して
StyleプロパティをfmStyleDropDownListに設定
入力規則のリストでやりたいなら以下をシートモジュールにコピペ
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Count = 1 Then
Dim DropdownValidation As Boolean
On Error Resume Next
DropdownValidation = Target.Validation.InCellDropdown
On Error GoTo 0
If DropdownValidation Then SendKeys "%{Down}"
End If
End Sub
>>653 少し違うけどalt+↓キーでリスト出せるよ
macの場合は良く分からないけど
On Error とか久しぶりにみたぞ
で?
無知を告白するのはやめてください
ホント、656は恥ずかしい
【1 OSの種類 .】 XP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 IF関数 A1・A2・A3の3つのセルの中で、1つでも-5以下の数値があれば、「大」 A1・A2・A3の3つのセルの中で、3つともに0以上の数値であれば、「小」 それ以外なら、「中」 と入力するにはどの様にすればいいのでしょうか?
>>660 =CHOOSE(1+OR(A1<=-5,A2<=-5,A3<=-5)+AND(A1>=0,A2>=0,A3>=0)*2,"中","大","小")
chooseがうまくつかえねー
>>660 この条件だと変な計算式で工夫するのも素直にIFで書くのも大差ないと思う
何か画期的な短縮方法を思い付かない限り
=IF(OR(A1<=-5,A2<=-5,A3<=-5),"大",IF(AND(A1>=0,A2>=0,A3>=0),"小","中"))
>>661 1文字ならCHOOSEじゃなくてMID使うかな
=MID("中大小",1+OR(A1<=-5,A2<=-5,A3<=-5)+AND(A1>=0,A2>=0,A3>=0)*2,1)
={2,10}>A1 A1=4 とするとFALSEが帰ってくるのですが、これはand(2>A1,10>A1)と解釈していいんでしょうか
計算コストもアルゴリズムもまったく変わってないけど文字数が少ない =MID("中大小",4-AND(A1>-5,A2>-5,A3>-5)-OR(A1<0,A2<0,A3<0)*2,1)
俺もできた。 =MID("小中大",1+(MIN(A1:A3)<0)+(MIN(A1:A3)<=-5),1)
668 :
667 :2009/02/17(火) 17:31:26
もう1個できた。数値が-100以上の整数限定 =LOOKUP(MIN(A1:A3),{-100,-4,0},{"大","中","小"})
素直にIF使えよ =IF(MIN(A1:A3)>-5,IF(MIN(A1:A3)<0,"中","小"),"大")
なるほど =MID("中大小",4-(MIN(A1:A3)>-5)-(MIN(A1:A3)<0)*2,1)
671 :
名無し変更議論中@詳しくは自治スレへ :2009/02/17(火) 18:31:36
ロシアは鉛筆を使った
【1 OSの種類 .】 XP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 ハイパーリンク 自動 修正 同じドキュメント内の別の場所へハイパーリンクを貼っている時、 そのリンク先の場所が変わったときに、自動的にリンク先をそこへ変更するようにできない?
673 :
名無し変更議論中@詳しくは自治スレへ :2009/02/17(火) 18:59:20
674 :
名無し変更議論中@詳しくは自治スレへ :2009/02/17(火) 19:27:29
データが可変するD列とF列をVBAで指定してグラフを作成する時の
セル範囲のコードを教えてください。
右方向へ範囲を連続して指定する場合は分かりましたが。。
g = Range(Range(Range("e5"), Range("e5").End(xlToRight)), Range(Range("e5"), Range("e5").End(xlToRight)).End(xlDown)).Address
ActiveChart.SetSourceData Worksheets("sheet1").Range(g)
>>608 ありがとうございます。なんかお礼が言い難かった。。
675 :
660 :2009/02/17(火) 19:39:04
ありがとうございます。 色々な方法があって驚きました。
>>674 なんか式がめちゃくちゃだな。
その場合、右方向はこう。
g = Range("E5", Range("E5").End(xlToRight)).Address
下方向は
g = Range("D1", Range("D1").End(xlDown)).Address
D列とF列を合わせるには
g = Range("D1", Range("D1").End(xlDown)).Address & "," & Range("F1", Range("F1").End(xlDown)).Address
677 :
名無し変更議論中@詳しくは自治スレへ :2009/02/17(火) 21:21:50
>>676 できました!
ありがとうございます。
「,」を「"」で括ればいいんですね。
なんでこんなことも調べられないのか。。悲しくなってきますわ。
文字列の先頭に空白(半角or全角)を挿入したい場合、 どのようなユーザー定義にしたらよいんでしょうか? 枠線で囲った時に、文字列を左詰にすると枠線との間が窮屈になって しまうので。 どうぞよろしくお願いします。
ふふふ…甘いな @ ↑アットマークの左にスペース
>>679 さっそく、出来ました!
迅速なご解答、ありがとうです♪
681 :
アホ本人 :2009/02/17(火) 22:17:37
>>596 です
皆さんの説明の意味が
まったくわかりませんでしたがありがとうございました。
682 :
名無し変更議論中@詳しくは自治スレへ :2009/02/18(水) 09:53:19
>>682 面グラフを選び下側の領域の色をなしにする
684 :
名無し変更議論中@詳しくは自治スレへ :2009/02/18(水) 10:17:55
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 表を使って別シートの店舗毎の合計金額を算出したいのですが、 A店の金額はDSUMで出せますが、B店の金額は関数で算出できますか? A店:=DSUM(Sheet1!C5:F39,"金額",A1:B2) 店舗名 金額 A店 150000 B店 C店
>>684 他には
・SUMIF関数
=SUMIF(A:A,"A店",B:B)
・ピボツトテーブル
説明のしようがない。実際に使って見て
・作業列
C2=IF(A2="A店",B2,0)
D1=sum(c:c)
・並べ替え→集計
メニューのデータの中に集計がある
お好きなのをどうぞ
686 :
名無し変更議論中@詳しくは自治スレへ :2009/02/18(水) 11:01:01
早い解答ありがとうございます。 SUMIFで対応することにします。
687 :
名無し変更議論中@詳しくは自治スレへ :2009/02/18(水) 11:05:25
>>682 ありがとうございます。
赤い折れ線グラフはどうすれば良いのですか?
>>687 赤いのだけグラフの種類を変えて折れ線グラフにすることもできます
【1 OSの種類 .】 WindowsXP
【2 Excelのバージョン 】 Excel2003(自宅のPCは2007が入ってます)
【3 VBAが使えるか .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード 】「EXCEL 末尾を削る」等
書店で本の発注をしております
今まで、発注する時は書店取次のHPで、バーコードの13桁の数字をテンキーで一つ一つ入力していました
発注画面の説明を読むと、CSVデータを読み込むことで発注することもできるようです
CSVで発注データを作成できれば、バーコードリーダーでバーコードを読むだけでISBNコードを入力できるので発注の時間を相当、短縮できそうなのですが
CSVで発注データを作成する場合、13桁の数字のうち末尾の数字1桁(チェックディジット)を削らないと、上手く発注ができないようです
恥ずかしながら、今までEXCELを使う機会が無かったので、EXCELの機能もほとんどわかってない状態です
ttp://sugar310.dip.jp/cgi/upload2/source/sugar0724.jpg わからないなりに検索をかけて、↑のようにしてみたのですが一番上のコードしか12桁にできませんでした
おおよそ、一回の発注で80個ほどのISBNコードを入力しなければいけないので
その80個ほどの数字の末尾の数字を一括で削る、簡単な方法は無いでしょうか?
全く知識が無いので、とんちんかんなことを言ってるかもしれませんが、よろしくお願い致します
>>690 =LEFT(A1,LEN(A1)-1)
がいいと思う
そして入力したら、右下の黒い点をクリックしながら下にひっぱると
数式が連続で入力される(オートフィルって言うんだけど)
あと頭が0で始まる可能性が無いなら、画像の式でも問題ないよ
692 :
660 :2009/02/18(水) 14:50:47
【1 OSの種類 .】 XP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 入力規則 VLOOK関数 A B C D E F G H I J K L 1 古馬 500万 12 芝 1200 1:09.32 12.3 10.8 11.2 11.3 11.7 12.1 2 古馬 1000万 38 芝 1200 1:08.73 12.2 10.8 11.0 11.2 11.6 12.0 3 古馬 1600万 15 芝 1200 1:08.36 12.1 10.7 10.9 11.1 11.5 12.1 4 古馬 OPEN 21 芝 1200 1:07.93 12.1 10.8 10.9 11.1 11.3 11.8 5 1000万 12.2 10.8 11.0 11.2 11.6 12.0 シートの別このような表があります。 これを入力規則(B1〜B4)でB2(1000万)のタイトルを選べば、 自動的に2G〜2Lを入力する方法があるのでしょうか? 例えば 5AにB2のタイトルを入力して、5BにG2、5CにH2、5DにI2・・・・ このように自動的に入力する方法があるのでしょうか?
vlookupじゃダメなの?
694 :
690 :2009/02/18(水) 15:01:44
>>694 B1:B8を選択してコピー>右クリック>形式を選択して貼り付け>値>OK
696 :
690 :2009/02/18(水) 15:18:20
おおお、出来ました これで30分以上かかっていた発注が5分くらいで出来そうな気がします 非常に助かります、ありがとうございました
>>690 まだ見てるかな?
例えば、A列を選択した後、
[データ] → [区切り位置] → [スペースによって…] → [次へ]
とした後に最後の文字と1つ前の数値の間をクリックして [完了] すると
その後はB列を削除するだけでいいよ。
698 :
690 :2009/02/18(水) 16:21:00
はぁ、そんな方法もあるんですね 便利ですなぁ ありがとうございます
ところで オートフィルのフィルって何?
そのまんま fill だろ fill の意味は自分で辞書引け
ベルリンフィルとかあるじゃん
ベルリンフィル は ベルリン・フィルハーモニー の略で フィルハーモニー は ベルリン に有るコンサートホールの名前 綴りも Berliner・【 Phil 】harmonie 全く別物だ とにかく Fill で辞書引け
別人だとしても同じ指摘が当てはまる件について
>フィルハーモニー は ベルリン に有るコンサートホールの名前 というのは正確じゃないな。 フィルハーモニーなんて、あちこちにあるから 音楽同好会、とでも訳すべきでは、、、てココどこ?
何を勘違いしてるんだ?
707 :
名無し変更議論中@詳しくは自治スレへ :2009/02/19(木) 09:35:50
おいおまいらmougで小数点の位置を揃える質問がでてるぞ。 おれはIDないから書き込めないが前スレ見てたやつ書き込めよ。 おれは整数はゼロサプレスで10.000などとかした方が見やすいと思うがな。 しかしまぁMicrosoftのサポートも表示形式はあまり知らないらしい。 右詰めでスペースで埋めるのかよorz ここの誰かと同レベルだな。
708 :
名無し変更議論中@詳しくは自治スレへ :2009/02/19(木) 09:36:24
709 :
名無し変更議論中@詳しくは自治スレへ :2009/02/19(木) 09:36:57
mougで小数点位置揃える質問が出てるなw
3連投すまん、sageにチェックするところをEnterでで書き込みにしてミスった。
俺、調べてきた。 【コンピュータ】(グラフィクスで領域を)塗りつぶす, (文字・飾りなどで)埋める >>fill in 詰める; 記入する; 情報を知らせる; 代理をする ((for)); (時間を)埋める.
fill調べないと意味わからんとか小学生かおまえは
フィルハーモニーのフィルはギリシャ語で「愛」 直訳すると「音楽を愛する」、転じて「音楽愛好会」という意味で使われる
715 :
名無し変更議論中@詳しくは自治スレへ :2009/02/19(木) 16:44:23
いい加減どうでもいい。 雑談スレ向き
717 :
716 :2009/02/19(木) 19:15:41
自己解決。 LANGE関数やRANK関数でいけそうです。
LANGEではなくLARGEでした・・・(ノ∀`)
719 :
名無し変更議論中@詳しくは自治スレへ :2009/02/20(金) 00:53:27
質問です。今仕事で出面を毎日つけているのですが、以下の事項が出来るのか教えて下さい。 1 名前で人数集計 2 一つのセルに複数の名前を入力して別々に人数集計 いろいろ調べてみたのですが結局分からなかったので、方法なども含めて教えて頂けたら助かります。宜しくお願い致しますm(_ _)m
>>719 1つのセルに複数の名前を入れた場合、スペースを入れて文字数を合わせるとか、区切りの記号を必ず入れるなど、
一定のパターンをきっちり守れば集計はできますが、余計な手間がかかるのでやるべきではありません。
できるだけ1つのセルに1つの名前を入れるようにしてください。
これ以上は、質問が抽象的すぎるので回答も「できるかもしれない」としか答えようがありません。
どのセルに何が入っているか、何行目は何、何列目は何、などと、もっと具体的に書いてください。
そういうリスト内に存在する名前での集計は ピボットテーブルなり、リストやドロップダウンリストを使うなりして 直接入力はしない方が効率的だぞ 複数の名前を別々のセルではなく1つのセルに入力することで得られる効率化より 遙かに高い効率化を望める
>>719 理想的なデータの並べ方は
2/19 田中
2/19 鈴木
2/19 高橋
2/20 山田
2/20 山本
みたいに、縦一直線にすること。同じ日付でもきちんと1行ごとに入れる。
2/19 田中 鈴木 高橋
2/20 山田 山本
みたいに横に並べちゃう人がいるけど、これは集計に手間がかかる。
さらに、1つのセルに複数のデータを入れるのは最悪。
723 :
名無し変更議論中@詳しくは自治スレへ :2009/02/20(金) 01:26:20
そうなのですか(つд`)貴重なご意見ありがとうございます。 一つのセルでやらないようにします(つд`) 最後に名前での集計の仕方を教えて下さいm(_ _)m
>>723 データが正規化(つまり縦一直線)になっていれば、ピボットテーブルで名前でも日数でも月別でも、なんでも集計できる。
そうでなければケースバイケースになるのでデータの状態を晒さないと無理。
【1 OSの種類 .】 Windowsエックスピィー 【2 Excelのバージョン 】 Excel2002 【3 VBAが使えるか .】 できません 【4 VBAでの回答の可否】 やめてお願い 【5 検索キーワード 】 ペペロンチーノの作り方 うちの会社には田中という人が何人も居ます そして会社の成績データベース(?)がややイマイチで __| A | B | C | D | 1|一課|予算|実績|成績| 2|田中|3000|2500|1800| 3|松崎|2000|1200| 900| 4|二課|予算|実績|成績| 5|田中|5000|4800|6200| 6|森田| 800| 500| 0| 7|三課|予算|実績|成績| 8|茂木|2500|2500| 500| 9|田中|2500|2000|1200| 10|四課|予算|実績|成績| 11|ケン|9200| 200|10200| みたいな具合です こんなデータベースから社員別の成績表を別シートに作りたいのですが __| A | B | C | D | 1|所属|氏名|予算進捗率|成績増率| 2|一課|田中| 60% |−28%| 3|一課|松崎| 45% |−25%| 4|二課|田中| 124% | 29% | などとしたいのですがA列やB列にはどんな関数を使うと良いでしょうか? もちろんB列とC列の間などに作業列を作っても構いませんが 名前の列でどの田中かを判別できればVLOOKUPで成績数字は計算しようと思っています なお人事異動で社員が増えたり減ったりすることもあるので 直接データベースからセル指定ではなくあくまで関数で「一課の田中」「二課の田中」と識別できるようにしたいです 最適解を求むとは言いませんので何か良い方法はないでしょうか
>>725 元のデータベースのE2に
E2=IF(B1="予算",A1,E1)
って入れてE2以下オートフィル
>>725 まずは元のデータを
__| A | B | C | D | E |
1| 課 |名前|予算 |実績|成績|
にしろ
集計式で毎度思い悩むより、一時手間掛けてでも後々楽できるようにした方が良い
728 :
725 :2009/02/20(金) 02:49:51
後出しと言われてしまうかもしれませんが 元データは弄らない方向ではできませんか? 毎日変わっていく数字なので 元データをコピー貼り付けだけで成績表になるようにしたいのです
出来るよ 出来るけどめんどくさいし 前提(元データ)が不適切だから回答も一般的には不適切とさえる方法になる 不適切と解りきってる方法を人に伝えるなんてしたくない それにどっかからコピーしてくるならコピー元から直せば良い コピー元がExcelでなかろうと、企業で使ってるソフトウェアがメンテナンス出来ないなんてことは無いだろ
>>728 元データを丸ごとどこかの作業シートにコピーする。
作業シートのA1に=元データ!A1みたいな式を書いてコピペ。
あとは
>>726 で名前と課の対応がきちんと並んだ表ができあがる。それを集計すればいい。
731 :
725 :2009/02/20(金) 03:51:13
>>729 不適切でも良いので教えてもらえないでしょうか?
あと本社データベースなので大元を直接弄るのは無理です
出力してからしか加工はできませんし
毎回作成時に加工をしていたのでは手入力してるも同じです
>>730 そういったやり方をした後でも
やはり田中が何度も出てくるのですが関数で区別はできるのですか?
ぶっちゃけ上から何番目の田中みたいなのがわかるだけでも
元の所属と組み合わせれそうなのですがそういうことは関数でできませんか?
>>731 誰も本社のデータベースを修正しろとは言ってない。
出力されたデータがExcelのシートに入ってるんでしょ?それを修正するんだよ。
そもそも本社のデータベースは
>>727 みたいな状態になってるはず。
本当のデータベースってのは構造上そういう風にしか作れない物だから。
それを誰かがわざわざ
>>725 みたいな形式に作り直して出力してるとしか考えられない。
直す前のデータが入手できれば一番いいんだけど。
> あと本社データベースなので大元を直接弄るのは無理です それは詭弁 確かに君自身は弄れないかもしれないが、変更が不可能という理由にはならない ただ、本社に提言したりするのが面倒だったり、立場的に言いづらかったりで、やりたくないだけだろ 他にもいろいろ理由付けてくるかもしれないが、全ては不可能と言い切る根拠には満たないはずだ そもそも本社がデータベース使ってるなら、むしろこういう対応はしやすいはずだ 君もAccess使えるならそっちで集計やった方がいいが、Excelでやるにしても Excelで扱いやすい形式でデータを吐いて貰うなんて、データベースならわけない
E1に=A1 E2に=IF(RIGHT(A2,1)="課",A2,E1) E3以下はE2をコピー これでE列に課が入るので後は適当にどうぞ
途中のレス全然見て無かったww失礼w
この感じ・・・ピボット厨か・・・・・・
>>735 が詭弁すぎてワロタ
できないとかやりかた知らないなら素直にそう言えと
そういうことにしておきますか
本当このスレ住人は思考停止してるな VBAなしだけですぐ答える気を失くすw 質問者に対して条件を変えろっていう答えを出すとかどんだけwww 条件に沿った回答しろよ
だったらセルにふたり以上の名前が入ってるデータで人数集計しろといわれたら するのか?w
>>742 質問者は無知なんで条件から修正してあげるのが本当の回答だ。
それができない回答者も無知なのだ。
745 :
名無し変更議論中@詳しくは自治スレへ :2009/02/20(金) 09:45:39
>>743 しろと言われたらするしかないだろ
LENでもSUBSTITUTEでもINDEX,MATCHでも何でも使って工夫しろよ
何寝言こいてんだこのクソニートは
おれなら2つ以上の名前が入ってるセルは目で人数を数えて それ以外のセルを関数で数えてから足す。 どういう分離がされてるかもわからないのにLENでもSUBSTITUTEでもINDEX,MATCH だのなんだので数えるのは危険すぎる。
747 :
名無し変更議論中@詳しくは自治スレへ :2009/02/20(金) 10:08:52
ここは自慢厨が多いからね〜 質問者の意思を無視して教えたくないとかバカな事いうやついるよね〜〜〜
730で答えは出てる。 ハイ次の方!
質問者の背景まで読み取って、質問の条件まで 変えられる奴は、そうすればいいさ。 あいにく俺には、そんなエスパー能力は無いんで できますか?と訊かれたら、出来ますよと 答えるだけだ。
だからいつまでたっても「つかえねえやつ」っていわれるんだよ
匿名掲示板では何の義務も責任も発生しないから「できる」って書くだけなら誰でもできるんだよな。 質問者に文句を言ってるのは、それなりにまじめに考えてるやつ。 具体的なデータが一切提示されてないから着手できないだけ。
答え書いたのに無視されてる
>>730 がイライラするスレはここですね。
753 :
名無し変更議論中@詳しくは自治スレへ :2009/02/20(金) 11:40:53
755 :
名無し変更議論中@詳しくは自治スレへ :2009/02/20(金) 11:55:21
Excel2002を使ってます。VBAの勉強をしようと、書籍を探したら Excel2003か2007のバージョンの本しか売ってませんでした。 そこで2002の代用として2003の本を使おうと思うのですが、 VBAを使うにあたり、バージョン2002と2003の差分は軽微なもの でしょうか。それとも大幅な仕様変更がなされているでしょうか。
756 :
名無し変更議論中@詳しくは自治スレへ :2009/02/20(金) 12:14:32
>>755 ほとんど変更ナシです
中古で買ってもok
もし分からないこと・おかしいことがあればここやプログラム板にもVBAスレがあるので効けばok
オレも>730がよく分からん。 2行目を飛ばせば分るけど。
1行目
もしくは2行目
あとは
>>726 〜
って意味じゃない
761 :
725 :2009/02/20(金) 13:56:45
すみません自己解決しました
結局
>>730 のような意味不なやりかたはせずに
INDEXとMATCHで全て解決しました
最初に所属名でMATCHしてから
その値を使ってさらに田中をMATCHするという方法にしました
もしも同じ部課に田中が追加された場合にも
さらに田中より下の田中をMATCHさせるつもりです
田中がいくつ追加されても無敵です
たいして参考にはなりませんでしたが
強いて言えばINDEX,MATCHという関数を思い出させてくれた
>>745 さんありがとうございました
762 :
名無し変更議論中@詳しくは自治スレへ :2009/02/20(金) 13:58:06
>>756 了解しました
親切にありがとうございました
>761は偽物だとオモ
765 :
名無し変更議論中@詳しくは自治スレへ :2009/02/20(金) 15:34:46
VBA不可って言われてるのにVBA持ち出そうとする男の人ってバカなの?死ぬの? コード貼ってから能書きたれなさいよ
768 :
725 :2009/02/20(金) 17:02:23
>>764 いえ正真正銘真の725です
>>762 実際にはINDEXはVLOOKUPと同じ程度の使い方しかしていません
何故なら必要としている田中の行数をMATCHで取得しているからです
あとはいくつ右に進んだ数を使って計算するかだけですので
縦方向には全然動かしていないのでそんなに複雑でもないですよ
正規化せずにそういう横着をすると、ミスがあった場合隣の課の別人がヒットする可能性がある
【1 OSの種類 .】 Windows XP 【2 Excelのバージョン 】 Excel2003 /2007 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 CONCATENATE 範囲指定 複数セルの文字列を結合して一つの文字列にしたいと思っています。 CONCATENATE(J9,J10,J11) 〜と続いてJ100くらいまで結合したいのですが CONCATENATEには範囲を指定しての結合は出来ないようです。 何か上手い方法はないでしょうか。よろしくお願いいたします。
K10=J9&J10 K11=J11&K10 K12=J12&K11 以下同じ
>>770 作業列使っていいなら
K9=J9
K10=CONCATENATE(K9,J10)でオートフィル。
>>771 と思ったらこれは3行までしか出来ませんでした
775 :
名無し変更議論中@詳しくは自治スレへ :2009/02/20(金) 17:42:27
>>773 この形だね。
数値累計だと使うけど、文字もいっしょだね。
>>772 足した合計をまた足して繰り返すと最後のセルで全ての文字列の結合が出来上がるということですね!
途中からオートフィルでやってみようとしたらうまくいきませんでした・・関数いれてやるんだと思います私が馬鹿です
>>773 さんのを足したところ出来ました!!
本当にありがとうございます!発想が天才的です!
そか &はオートフィルが効かないのな
何かの制限にひっかかった汗 テキストファイルに文字列を出力してみると32.0KBぴったりになって途中から切れている 1セルの最大容量は32.0KBってことですかねきっと。。
そうです。1セルの最大サイズは32KBです
780 :
名無し変更議論中@詳しくは自治スレへ :2009/02/20(金) 17:54:07
テキトーなところで分割すればokじゃね
>>770 エクセルの操作だけでやる方法
範囲コピー>メモ帳に貼り付け>メモ帳でコピー
エクセルのセル入力で貼り付け
改行が残るから TRIM で取り除く
書き出しするなら 書き出した先で結合すればいいのに タブや空白除くだけだろ
>782 CLEAN でした、すんません。
ありがとうございます。
すごく勉強になります。
区切りのよいところで分割しようと思います。
>>782 TRIMというのをはじめて知りました。これも発想が素晴らしい・・・天才ですね。
あとはこんな文字数のものがレジストリのキーに収まるのか不安になりました・・
全て上手くいきました! 容量大きくし過ぎずに程々が大事だということもわかりました。。 なるべく自己解決しようと思いますがまたお世話になるかもしれません。 いつ来ても皆さんの天才的な発想の回答が来るので感激です。 本当にありがとうございました!!
787 :
名無し変更議論中@詳しくは自治スレへ :2009/02/20(金) 19:29:51
分かり難いかもしれませんが、よろしくお願いします。 シートにある4列のデータをリストボックスに表示させて、選択後に「編集」ボタンで 別のフォームを開き、新しいフォームで4列の項目をそれぞれ編集できるようにする。 別のフォームはシートの項目4列分のテキストボックスを用意して、 選択したリストボックスの値をそれぞれのテキストボックスに表示させ、 編集後にコマンドボタンでシートのデータを直接編集したいのですが可能でしょうか。 できるようであれば参考になるコードやHPを教えてください。 リストボックスに表示させた項目を削除するのは下記コードでできましたが、このコードには拘りません。 Private Sub UserForm_Activate() UserForm1.ListBox1.RowSource = "Sheet1!c5:F" & Sheets("Sheet1").Range("c" & Sheets("Sheet1").Rows.Count).End(xlUp).Row ListBox1.ColumnCount = 4 End Sub Private Sub CommandButton11_Click() If UserForm1.ListBox1.ListIndex = -1 Then MsgBox "削除するデータを選択してください" Else p = MsgBox("選択したデータを削除しますか?", vbYesNo, "確認画面") If p = vbYes Then Dim a As String Dim b As String a = Mid(ListBox1.RowSource, 1, InStr(ListBox1.RowSource, "!") - 1) b = Mid(ListBox1.RowSource, InStr(ListBox1.RowSource, "!") + 1) Sheets(a).Range(b).EntireRow(ListBox1.ListIndex + 1).Delete End If End If End Sub ↑のリストボックスで選択したシートの4列分を別のフォームに用意したテキストボックス(4個)に それぞれ表示させて、編集後にコマンドボタンでシートの該当するセルのデータを直接編集したいです。 大事なことなので2回書きました。
【1 OSの種類 .】 Windows Vista 【2 Excelのバージョン 】 Excel2007(2003でも使いたい) 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 関数 日付の一部を取り出す セルに、年月日を記入しています。 A B C D E F G H 1 平成21年2月20日 平成 21 年 2 月 20 日 こんな風に数字を抽出して参照させるには、どうしたらいいでしょうか? 現在のところ、A1を文字列にして入力して「MID」関数で参照させています。 もっと簡単な方法はないですか?
>>788 DATE()関数
念のところは+1988すれば西暦に換算される
後はぐぐれ!!!!!!!!!!!!!!!がんばれ!!!!!!!!!!!!!!!!!!!!!!!
>>789 オイオイ…
>>788 =TEXT(A1,"e")
=TEXT(A1,"m")
=TEXT(A1,"d")
792 :
788 :2009/02/20(金) 23:32:04
>>791 出来ました。ありがとうございます。
ちなみに、
>>789 で指摘されているdate()関数だとどうやれば良いんでしょうか?
ググってみたけどさっぱり分かりませんでした。
>>792 DATE関数は逆のことをする。バラバラの年、月、日をまとめる関数
1個ずつ分けるのはMONTH関数とかDAY関数
このスレってVBAだけしかできない人間の巣穴なんだなwwww
795 :
788 :2009/02/20(金) 23:56:30
>>793 講義ありがとうございました。
>>789 質問の条件提示が不十分でした。
「C1」「E1」「G1」に「MID」関数を入れて参照しています。と書くべきでした。失礼しました。
>>795 追加
=YEAR(A1)-1988
=MONTH(A1)
=DAY(A1)
巣穴
798 :
名無し変更議論中@詳しくは自治スレへ :2009/02/21(土) 00:03:57
その読み方は「すくつ」でよろしいですか?
みんなのことは悪く言わないで! VBA厨は私一人で十分よっ!
すけつ(たぶん変換できない)、かな。
801 :
788 :2009/02/21(土) 00:09:41
すまない
ちょつと酔ってしまったようだ
>>792 B1-H1をA1の形にするのがDATE関数
A1があるならtextや書式の
>>791 またyear、month、day関数でもok
>>798 そ・・そうくつ←なぜか変換できる
802 :
798 :2009/02/21(土) 00:18:37
>そ・・そうくつ←なぜか変換できる 「巣窟」ってなっちゃいましたw てかそろそろ雑談スレ行きだな。
803 :
788 :2009/02/21(土) 00:19:56
酒って怖いな 郷は寝るぜ
804 :
名無し変更議論中@詳しくは自治スレへ :2009/02/21(土) 00:21:41
質問があります。縦の列に入力されている名前で人数を集計したいのですが、どのような手順を踏んでいけばいいのか分かりません。宜しくお願い致しますm(_ _)m
なんだこの嵐もどき・・・
>>804 質問が漠然としすぎてるからこんなレスがつく。
まあ、これらの回答のいずれかに正解はあるだろうね。
エクセルはどこでダウンロードできますか?
818 :
名無し変更議論中@詳しくは自治スレへ :2009/02/21(土) 07:45:11
237 :名無しさん@九周年:2009/02/20(金) 22:46:11 ID:FFgBu6eF0
コピペ及び周知推奨
時事放談 野中広務 鳩山邦夫 かんぽの宿 1_2
http://www.youtube.com/watch?v=QPjLhYoi48Q 時事放談 野中広務 鳩山邦夫 かんぽの宿 2_2
http://www.youtube.com/watch?v=ilytA_-1Bko TBS系時事放談は野中広務と鳩山邦夫がゲストだった。その中で両者は驚くべき率直さで次の
三点を国民の前で明言した。
1.小泉発言は「かんぽの宿」疑惑の追及が自分に向かってくる事を恐れた目くらまし発言だ。
2.「かんぽの宿」疑惑を追及している内に、小泉・竹中構造改革は米国金融資本に日本を売り渡し
た事がわかった。
3.日本のメディアは小泉・竹中売国奴構造改革に加担し、疑惑を必死に隠そうとしている。政局報
道に矮小化しようとしている。
この三点セットこそ、これまで様々な人々がネット上で指摘してきたことだ。素人が何を言っても
国民はそれを信じない。しかし裏を知り尽くした元自民党政治家と、現職の政権政党閣僚の口から
このいかさまが発せられ、全国の国民に流されたのだ。
ゲームを何時間やったかをエクセルで計算したいんですがうまくいきません。 たとえば23:00-13:00までやったとすると (13:00-23:00)*24で計算すると-10になってしまいます。 しかも23:00から日をまたいで13:00までやったとすると自分の計算では14時間やったことになるんですが・・ うまく計算できる方法を教えてください!
または。 日をまたぐ場合は (24:00-23:00)+13:00でもよい
>>821 おれなんかマージャンを翌々日の朝まで30時間以上ぶっ続けでやったことあるぞ
多分Excel的にオーソドックスなのは 結果表示セルに セルの書式設定 →表示形式 →ユーザー定義 に[h]:mmかな h:mmは「何時何分」 [h]:mmは「何時間何分」
>>819 よく読んでなかったけれど「*24」は邪魔だから取ってな
「何時間」だけで分はいらないなら上を改造して[h]で桶
excel 2007 数値を入れると勝手に小数点第9位で表示される 例 1 → 0.000000001 このような事は今までなかったので、何か自分がおかしな設定をしてしまってた可能性があるので 分かる方教えてください
>>825 左上のボタンのオプションの詳細設定の小数点の位置かな
>>826 速レスありがとうございます
おかげさまで解決しました!
いつのまにそんな設定にしたのやら・・・
828 :
名無し変更議論中@詳しくは自治スレへ :2009/02/21(土) 18:30:31
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 検索してもわかりませんでした A列に売り、買い、見送りがあり B列に売り、買い があります。 この2つを、条件でC列にまとめたいです。 A列の結果を優先して、A列が見送りの時は B列の結果をC列に書きたい。 A列 B列 C列 売り 買い 売り 売り 売り 売り 買い 売り 買い 買い 買い 買い 見送り 売り 売り 見送り 買い 買い よろしくお願いします。
>>828 1行目から始まってるとして、C1にこの式を入れてオートフィル
=IF(A1="見送り",B1,A1)
830 :
名無し変更議論中@詳しくは自治スレへ :2009/02/21(土) 18:55:59
ありがとうございます。 A列 B列 C列 売り 買い 売り 売り 売り 売り 買い 売り 買い 買い 買い 買い 見送り 売り 見送り 見送り 買い 見送り C列に見送りが出てしまいました。 いろいろ試行錯誤してますが、ここに見送りが出て困っています。 C列に見送りを出さずに売り買いを表示したいです。 書いていただいたのを逆にするとB列の結果が優先されてしまいます。 オートフィル?を使わずにC列に表示するのは無理でしょうか?
>>829 の式自体には、A列B列両方が「見送り」の場合以外に、「見送り」が返る要素は無い
オートフィルを使ったところでそれは変わらない
その条件で「見送り」が返るなら、何か使い方を間違っているだけだろ
初心者は突拍子もないことやってたりするからな
>>830 普通は
>>829 の式で問題ないはずですが、そうなってしまうのはA列のデータが「見送り 」などのように、
余分なスペースが入ってしまっていて、人間の目では違いが発見できないような場合ですね。
回避するアイデアはいくつかありますが、元のデータが膨大だったりマスターが別にあるなどの理由で
簡単に修正できないように場合はこの式を使ってみてください。
=IF(ISERROR(FIND("送",A1)),A1,B1)
834 :
名無し変更議論中@詳しくは自治スレへ :2009/02/21(土) 19:11:43
そうなってしまうのはA列のデータが「見送り 」などのように > 原因これっぽいです。今作業してます。 できたら報告します。ありがとうございます。
>>830 オートフィルの意味わかってる?
C1に式を入れて確定したあと、もう一度矢印キーでC1に戻して、
フィルハンドル(セルを囲む枠の右下にある小さな黒い四角)をダブルクリックだよ。
>>834 余分なスペースはTRIM関数で一発で消せるよ
作業列を増やしたくないなら
>>832 の式を使えばいい
フィルは「愛」なんだよ
838 :
名無し変更議論中@詳しくは自治スレへ :2009/02/21(土) 19:18:21
今日は6時間くらい悩んでいましたが無事に解決しました。 皆様ありがとうございました。 金(ゴールド)を買っておくとこれから短期間で2−3倍になりますよ。 ありがとうございました。
金3000円超えちゃったからな 2000円くらいのときに買って置けばよかった 株安原油安巨額財政出動で投資マネーは金に流入するしかないってのに
この10年で3倍になって最高値更新してんのにまだ上がるの?
金地金やってる業者だろう 値が上がりすぎて売れ行きが伸び悩んでると見た あまり下手なことを書くと風説の流布にひっかかるぞい
842 :
名無し変更議論中@詳しくは自治スレへ :2009/02/21(土) 20:16:32
今日は先物のシステムトレード作っていました。
業者じゃなくて個人ですが、これから日本もハイパーインフレに
なるので金は上がっていくと思いますよ。
去年の年末に資産防衛の為に買ったのですが、
また買い足すつもりです。缶詰も備蓄してますよ。
私がよく見ているスレです。
http://namidame.2ch.net/test/read.cgi/eco/1235134631/ ★大恐慌生活 12日目★
スレ違いになるのでこのへんで。
またわからないことがありましたらよろしくお願いします。
長時間悩んでないで早く皆さんに聞けばよかったです。
ありがとうございました。
金は消費税が上がる前に買っておいて 上がってから売るだけでも儲けあるんだね。 勿論消費税の上がる程度によるけど。 勉強になった。 でも、中国・アメリカも金に向かいそうな気がしてきた。
あれくらいの質問してるレベルでシステムトレードはどうだろw
845 :
819 :2009/02/21(土) 20:36:42
>>820-
>>824 おそくなりましたがありがとうございました。無事できました。
何月何日の何時というデータで管理することにしました。
そこで今表を作っているのですが、2009/2/21 16:00という風にいちいち打ち込むのは面倒です
何かスマートに入力できる方法はないでしょうか?
ドロップダウンリストとか考えましたが、うまくできませんでました。
日付を先に入力しておいて(三行分ずつとか)時間だけ入れるようにするとか んで一月終わったらオートフィルタで開始が入ってる業だけ抽出、とか
>>845 常にEXCEL起動させておいて、
「Ctrlと+」、「Space」、「Ctrlと*」を押すのは?
日付と時間別のセルに入力して関数で合成すればいいじゃん
>>845 時刻だけ入れると、入力した当日の日付が自動的に入る。
24時間以上続ける可能性がないなら、時間がマイナスになった時だけ24を足すという方法もある。
850 :
名無し変更議論中@詳しくは自治スレへ :2009/02/21(土) 22:50:32
winxp sp2 ie7 高校1年です。 数学の勉強の為に式を入れたらグラフ化してくれるものが欲しい。 エクセルでできるんじゃないかなと探したらy=x^2のやつはみつかりました。 y = ax^2 + bx + c こういう二次関数をグラフ化するエクセルファイルってないでしょうか? つまり、式を入れたらパッとグラフにしてくれるということです。 放物線の対称移動、平行移動、その他色々なときに視覚理解したいのです。 そういうものがあるのをご存知でしたら教えてください。
>>850 数学のグラフを書く専用のソフトは別にある。「数式処理」でぐぐれ。
Excelだと極大点や極小点を自分で考えなきゃいけないからけっこうめんどくさい。
853 :
名無し変更議論中@詳しくは自治スレへ :2009/02/21(土) 23:18:01
了解です!ありがとうございました!
>>850 R言語も見てみたらいかがでしょう。
フリーで手に入ります。
使い方は、web上に簡単なものから高度なものまで
あるので、簡単なもの見つけてみるといいです。
>>849 さらっと嘘書いちゃいかん。
6:00としたら1900/1/0 6:00になる。
二次関数のグラフぐらい自分で描いた方が勉強になると思うんだが・・・
セルの書式のパターンの、セルの色だけど、RGBとかで自分で指定できない? 決められ色から選ぶだけ?
>>857 2003はツール→オプション→色→変更→ユーザー設定
2007はその他の色→ユーザー設定
>>858 うぉ できたのか
ありがとう!助かったよ
860 :
845 :2009/02/22(日) 11:27:19
何回も申し訳ないのですが、入力の手間は考えずに ゲームをやり始めた日付、その時刻、ゲームが終わった日付、その時刻 という風に4つのセルで管理することにしました。 そして何時間やったかを表示するためにセルを合成して計算しようとしたのですが うまくいきません。 =(CONCATENATE(E7," ",F7)-CONCATENATE(C7," ",D7)) 具体的には上に書いたような関数で試してみたのですがエラーを返しました。 文字列と文字列の引き算なのでエラーが出たのかよくわからないんですが、 うまくやる方法はないでしょうか?
-1は「-1」、0は「±0」、1は「+1」と表示させたいのですが、どのように表示形式を設定すればいいでしょうか?
>>860 日付と時刻を合成するときは足し算するだけでいい
865 :
845 :2009/02/22(日) 11:40:01
>>862 ありがとうございます。
完成しました!
>>864 ありがとうございました。
今後の参考のためなぜこの記述でうまくいくのか記述ルールを教えて頂けないでしょうか?
867 :
861 :2009/02/22(日) 14:42:04
あれ・・・正解が二通りありますね・・・ 記述は異なるのに意味は全く同じ??? (´・ω・`)
>>867 +と-記号はダブルクォートでくくってもくくらなくても同じ表示になるので
>>864 は無駄とも言える
869 :
名無し変更議論中@詳しくは自治スレへ :2009/02/22(日) 15:23:32
871 :
名無し変更議論中@詳しくは自治スレへ :2009/02/22(日) 20:48:12
excel2000のwinxp sp2でs 二次不等式のグラフを作ろうとしてるのですが。 a1でif(a2<0,1,"") としてあります。 a1が""になってるときにはb1も""にしたいです。 ですがeqなどの文字比較演算子はないようですし、そのまま if(a1,"",1) では循環参照トイウエラーになったりします。 何か良い方法はありますか?
A1=if(a2<0,1,"") B1=if(a1,"",1) これで循環参照になることは絶対ないなあ
873 :
名無し変更議論中@詳しくは自治スレへ :2009/02/22(日) 21:06:38
874 :
名無し変更議論中@詳しくは自治スレへ :2009/02/22(日) 22:00:00
>>873 それだとセルに書いてある式がblankにfalse出し
875 :
名無し変更議論中@詳しくは自治スレへ :2009/02/22(日) 23:41:16
WindowsXP Excel2000 VBA可 検索ワード:重複データ(同じデータ)、件数(個数)、数える 重複データの数(同じデータがいくつあるか)をカウントしたいです。 データは日付なので毎日変わります。2/21が30件、2/20が50件...など、 どの日付が何件有るかを知りたいのですが、COUNTIFでいちいち数えたい日付を 入力するしかないですか?
ピボットテーブルで
日付が最近一ヶ月の範囲とか、ある程度決まってるなら TODAY関数から算出した日付を入れておき、それを条件にCOUNTIFすれば データの変更にも日付の変更にも対応できて、ピボットテーブルよりも手っ取り早い
878 :
名無し変更議論中@詳しくは自治スレへ :2009/02/23(月) 00:14:33
質問します。サーバからダウンロードする形式のCSVで、年月データ (日は不要で、形式は例えば2008年5月なら、"08/5")の表示を正しく したい(CSVでは"8月5日")。手入力しか解決方法がないのでしょうか?
>>875 ピボ厨じゃない俺からみてもピボット向きな気がするから
暇なら試してみれ
>>878 先にテキストエディタ(メモ帳でもいい)で整形してやればいいんでない?
882 :
名無し変更議論中@詳しくは自治スレへ :2009/02/23(月) 10:02:13
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 Excelのフォーマットになった形式の書類を書くことが多いのですが、 同じセルの中で行間を変えるにはどうしたら良いのでしょうか? そのような設定項目が見あたらないのですが・・・ それと下付、上付き文字のショートカットキーも教えて下さい お願い致します。
> 同じセルの中で行間を変えるにはどうしたら良いのでしょうか? 出来ません > それと下付、上付き文字のショートカットキーも教えて下さい ありません Excelは計算ソフトだってことをお忘れなく
884 :
名無し変更議論中@詳しくは自治スレへ :2009/02/23(月) 10:55:17
>>882 複数行に分けて罫線の囲みを表示させ、真ん中を抜くとかとしないと無理
ショートカットキーはApplication.OnKeyでぐぐれば出てくると思う。標準装備はされてない
>>882 どうしてもそういうことをやりたいなら、まずワードで文書を作って
それをエクセルのシートに貼り付けるのが一番早くて簡単で確実
次の質問は「印刷するとずれるんですが」になる悪寒
(;゚д゚)ァ
>886 不覚w
【1 OSの種類】 WindowsXP 【2 Excelのバージョン】 Excel2003 【3 VBAが使えるか】 いいえ 【4 VBAでの回答の可否】 可 【5 検索キーワード】 A列に、実数(正負ともあり)が入力されていたとして、 セル数値がはじめて0もしくはA1の正負と逆転したセルから、 その後をすべて0で埋めるようにするにはどうしたらいいでしょうか? (一度0もしくは正負が入れ替わったら、その後はずっと0) それと、0埋めが生じるまでのセル数を求めたいです。 ↓B列に、こんな感じの結果が得たいのです。この場合、セル数3も求めたいです。 A B 1 0.1 0.1 2 0.05 0.05 3 0.02 0.02 4 -0.1(または0) 0 5 -1.2 0 6 0.5 0 よろしくお願いします。
B2=IF(OR(SIGN(A2)=-SIGN($A$1),A2=0),1,0) B3以下コピペ C2=SUM(B$2:B2) C3以下コピペ D1=A1 D2=IF(C2=0,A2,0) D3以下コピペ 0埋めが生じるまでのセル数は、C列の0の数+1
891 :
899 :2009/02/23(月) 19:29:17
>>890 できました、ありがとうございます
途中のB、C列なしに、A列とD列のみではできなさそうですね
できるよ ひとつの式にまとめればいい 自分ならそうしないけど
>891 B1に =A1 B2以降 =IF(OR(A1*A2<=0,B1=0),0,A2)
894 :
889 :2009/02/23(月) 20:22:13
>>893 ありがとうございます、こんなに簡単にできるとは思いませんでした
>>890 さんも、アルゴリズムの流れがわかりやすく、参考になりました
大変助かりました、感謝します
>891 もうひとつあったな Bn+1に =COUNTIF(B1:Bn,"<>0")
文字数最短式にするならB2以降に
=(B1*A2>0)*A2
変わり目までカウントは
=match(0,B:B,0)-1
かな?
まあこれはあくまでお遊びで
>>893 >>895 が綺麗だと思う
しかし、
>>899 には「A1と正負逆転したら」とあるから、
それを満たしているのは
>>890 しかないな ニヤニヤ
いや おれの勘違いだな 失礼
899 :
名無し変更議論中@詳しくは自治スレへ :2009/02/24(火) 09:56:46
EXCEL2003です。 図形のテキスト縦書きボックスの中のテキストを縦(垂直)方向に 中央配置するには、どうすれば良いのでしょうか? よろしくお願い致します。
>>899 テキストボックスの枠(網掛けになった部分)を右クリック
テキストボックスの書式設定→配置
あとは開けばわかるはず。
中央にならない時は改行やスペース、色が白で見えない文字などが入っていないか確認。
オートフィルをキーボードのショートカットで、 行う方法はありますか?
(;゚д゚)ァ
>>901 VBAで
アプリケーション.オンキー
つづりは分からん
マクロにショートカットキー割り当てでやろうとしたことあるけど、 そのマクロが難しすぎて挫折した覚えがある。 検索しても不完全なやつしか出てこないし、誰か作ってくんないかなあ。
907 :
901 :2009/02/24(火) 13:36:05
VBAでやるしかないみたいですね。 しょうがないので、作りますか ありがとうございました。
2元1次方程式をかきたいのですが、 切片と傾きをうまく入れられません。 グラフツールでかくのでしょうか。
範囲を選んでからCTRL-D
911 :
名無し変更議論中@詳しくは自治スレへ :2009/02/24(火) 14:04:49
オートフィルターで@のように昇順の並び替えをしたいのですが Aのようになってしまい、上手くいきません。 どなたか並べ替えできる方法を教えてください。 バージョンはexcel2003です。 @ 200 300 350〜360 400 500 A 200 300 400 500 350〜360
>>911 書式を文字列にしてからデータを入力して並べ替える
あるいは、並べ替えようの作業列を作る(="●"&A1 とか)
913 :
名無し変更議論中@詳しくは自治スレへ :2009/02/24(火) 14:41:02
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 テキストボックスに入力した値をシートの列を参照して、値が一致する場合はメッセージボックスに 登録済と表示させて、一致しない場合はシートのセルに登録まではできました。 これにテキストボックスが空白だった場合にメッセージボックスを出したいのですが方法が分かりません。 なにか良い方法はありますか。よろしくお願いします。 a = Application.Match(TextBox4.Text, Sheet3.Range("c:c"), 0) If Not IsError(a) Then MsgBox "登録済みです" Else n = MsgBox("「" & TextBox4 & "」" & " を登録しますか?", vbYesNo, "登録画面") If n = vbYes Then Worksheets("sheet3").Range("c65536").End(xlUp).Offset(1, 0) = TextBox4.Text Worksheets("sheet2").Range("b65536").End(xlUp).Offset(1, 0) = TextBox4.Text TextBox4 = "" TextBox4.SetFocus End If End If
914 :
911 :2009/02/24(火) 14:47:44
>>912 ありがとうございます!出来ました!
文字列にしたらよかったんですね。
915 :
913 :2009/02/24(火) 14:51:03
以下のコードを入れることで自己解決しました。 いろいろ悩んで行き詰ってたので、、、すみませんでした。 If TextBox4 = "" Then MsgBox "削除する店名を入力してください" TextBox4.SetFocus Exit Sub End If
916 :
名無し変更議論中@詳しくは自治スレへ :2009/02/24(火) 19:38:00
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 列A=1、列B="あいうえお"を満たす行の 列Cの数字の合計を表示したいんですが どのような方法があるのでしょうか? 一応別シートの数字を参照する場合です よろしくお願いします
>>916 シート名とセル範囲は適当に修正して。
=SUMPRODUCT((別シート!A1:A100=1)*(別シート!B1:B100="あいうえお")*(別シート!C1:C100))
>>917 ありがとうございます!
助かりました!
いちいちタブをクリックするのが面倒なので、 キーボードでワークシートを切り替えるショートカットない?
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 セル範囲指定に、セルに入力されている値を用いるにはどうしたらいいでしょうか たとえばA1にセル数nがあり、B3からB(3+n-1)まで範囲指定するという感じです できましたら列方向だけでなく行方向のやりかたもお願いします
>>921 OFFSET関数使え
=OFFSET(基準セル,下移動数,右移動数,範囲の高さ,範囲の巾)
だから
=OFFSET(B3,0,0,A1,0)でB3から縦3行
>>920 CTRL+PageUp(PageDown)
縦3行は縦n行の間違いなスマン
925 :
899 :2009/02/24(火) 21:47:05
なんかここ数か月INDIRECTやらOFFSETやら、やたらとデムパ飛ばしまくってるやついるね。 まいいけど、がんばって回答励めよ。w
>>917 すいません、C列に文字列があるとエラーになるんですけどどうしたらいいですか?
928 :
名無し変更議論中@詳しくは自治スレへ :2009/02/24(火) 23:03:33
あるメーターの累計が1500の倍数をむかえる度に定期点検しなければなりません A列に1日のメーターの進度が200〜300でランダムに飛んできてB列に累計が表示されるんですが 点検日だけに目印が付くようにできませんか?
>>928 C2から=FLOOR(B1,1500)<>FLOOR(B2,1500)かな
C1=0 C2=IF(AND(B2>=(D1+1)*1500,C1=0),1,0) C3以下コピペ D1=0 D2=SUM(C$1:C2) D3以下コピペ C列の1が目印
>>927 {=SUM(IF((Sheet2!A1:A100=1)*(Sheet2!B1:B100="あいうえお"),Sheet2!C1:C100))}
A1に「お店の名前」を入力する事でA1セルを参照して各食材の価格が自動表示できるようにシートを作ったのですが、 A1セルは毎回同じ名前を入力するのに毎回手入力するのも非効率に思えてきました。 店α、店β、店γ・・・・のようにあらかじめ設定した選択肢を選んでA1に入力できるようにするには どのようにすればいいのでしょうか? (´・ω・`)
入力規則のリストでも使えば?
>>931 こういう場合だけはSUMPRODUCTの方が少しいいよ。
>>926 同感。まあがんばれよと。
INDIRECTとかOFFSET使ってるやつはちょっと足りない。
>>935 SUMPRODUCTだと、C列に文字列が混じってるとエラーになるんだけど、どうやって回避したらいい?
っていう質問。
>>
だから=SUMPRODUCT((Sheet2!A1:A100=1)*(Sheet2!B1:B100="あいうえお"),Sheet2!C1:C100)
ってやりゃいいんだよ。
こういう使い方に限り配列数式よりほんの少し軽い。
>>917 はSUMPRODUCT使う意味がない。
******************** EXCELヲタ徘徊注意報 ******************** マニアの自己満足レスが 頻発しております。 相談者の方は警報が解除 されすまで今しばらくお待 ちいただくようお願いします。 ******************** EXCELヲタ徘徊注意報 ********************
>>939 なんちゃって回答注意報出した方がためになるぜ?
excel2003 vba 可 で、A1セルの内容(あいうえお、等の文字列です)に対して、文字コードの一桁目が偶数のとき その文字を他のランダムなコードに変えるという動作をさせたいのですが、 どうやればいいでしょうか。 文字はオブジェクトでないのでコレクションは使えないですよね? LENで文字数を調べた後、MIDとfornextなどで地味に一文字ずつ調べるしかないのでしょうか 用途はパズルの問題作成のために使おうと思っています。
> LENで文字数を調べた後、MIDとfornextなどで地味に一文字ずつ調べるしかないのでしょうか その方法に何か問題があるの? マクロってのは地道な処理をコード化することで一発で行えるようにするものなので コードとしては地道でも全く問題ないわけだが あれですか、初心者特有の「スマートなコードが書きたい症候群」ってやつ?
>>942 はい、そうです
他の方法も知って勉強になれば思い質問させていただきました
アルゴリズムの話なら完全にスレ違い
excelオタにはそう見えちゃうのか 普通はsplitでできる処理だけどexcelにゃできないから不思議に思うのも無理無いんだけどな
splitも内部でループさせてるだけなんだけどな 単に地道な処理が見えないだけで
オタの精一杯の言い訳かも知れんが そんな事言いだしたら全てのコマンドは(ry
で?
っていう。
スマートなコードが書きたい症候群w
スマートって賢いって意味だろ 賢くないコードが書きたいって何?
952 :
名無し変更議論中@詳しくは自治スレへ :2009/02/25(水) 18:08:43
ワークシート関数でも関数によっては単純に内部でループさせてることわかってないやつ結構いるよな。 ユニークなアイテム書き出してSUMIFやCOUNTIFなんて考える馬鹿も結構いるし。
954 :
名無し変更議論中@詳しくは自治スレへ :2009/02/25(水) 19:15:56
なにいってんのこのひと
>>954 ピボット厨じゃね?
言わんとすることは俺にもわかるけどね。
【1 OSの種類 .】 Windows xp 【2 Excelのバージョン 】 Excel 2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 ピボットテーブル ピボット厨がいらっしゃるようなのでピボット厨の先生方へ質問です。 A1:D200000にいろいろなデータがあります。 どれが何個あるか全て調べたいです。 ピボットテーブルで出来ますか? 1列にまとめれば私も出来るのですが1列にするにはデータが多くて困ってます。 どうしたらいいですか?
957 :
956 :2009/02/25(水) 21:30:51
すいませんA1:D20000の間違いです。
Excel2007とExcel2000でワークシート関数の結果が違うのですが これはどうしようもないのでしょうか。 makiloanという住宅ローンの計算用のExcelのファイルを使っているのですが、 #NAMEのエラーになってしまいます。 Excel2000,Excel97では問題ありませんでした。
> スマートって賢いって意味だろ ハズレ
960 :
名無し変更議論中@詳しくは自治スレへ :2009/02/25(水) 21:48:45
>>956 ピボットテーブルでは無理です。
あきらめてください。
A1からA1000まで範囲指定してコピーしたいのですが マウスのドラッグをしないでする方法を教えて頂きたく・・・先生っ!
ジャンプ→A1:A1000
>>961 左上の名前ボックスにA1:A1000と入力汁
Excelに未修正の脆弱性、悪用ファイルが日本で発見
Office Excelに未修正の脆弱性が見つかり、米Microsoftが2月24日付でアドバイザリーを公開した。セキュリティ企業のSymantecによれば、この脆弱性を突いた悪質なスプレッドシートが日本で出回っている。
Microsoftによると、脆弱性の影響を受けるのはOffice 2000/2002/2003/2007と、Mac版のOffice 2004/2008、Open XML File Format Converter for Macの各製品。細工を施したExcelファイルをユーザーが開くと、リモートでコードを実行される恐れがある。
ユーザーは身に覚えのないExcelファイルを開いたり、スパムメールなどのリンクを不用意にクリックしたりしないよう、各社とも注意を促している。
ttp://headlines.yahoo.co.jp/hl?a=20090225-00000012-zdn_ep-sci
>>956 まずA列、B列、C列、D列とそれぞれの列を個別にピボットで集計してテーブルを4つ作り、縦に並べる。
それをさらにピボットで集計する。
>>958 市販、フリー問わず既製品のサポートは基本的にスレ違い。
そのシートを作った人に聞いてください。
賢いじゃん
見た目重視なコード
具体的にはわからないが
恐らく
>>942 はスリムって
言いたかったのではないかと
973 :
名無し変更議論中@詳しくは自治スレへ :2009/02/25(水) 23:42:45
さすが普段配列数式でオナニーしてらっしゃる方々はスマートという言葉に御執心ですなあ
974 :
名無し変更議論中@詳しくは自治スレへ :2009/02/25(水) 23:47:37
オナニーついでに新スレでも建てておいて下さいな いつものぼくの考えたすごいテンプレを貼れないとお困りでしょうからなあ
>961 おまけ A1を選択して[Shift]+[Ctrl]+[↓] A1を選択して[Shift]+[Ctrl]+[*] まぁA1:A1000の内容が分からんから今回は使えない かもしれないけど知ってると便利だよ。
977 :
956 :2009/02/25(水) 23:53:52
>>966 なるほどそれなら出来ますね。
やっぱ一回じゃ無理なんでしょうね。
>>973 配列数式なんて全然スマートじゃないけどどういうこと?
あんなの馬鹿がやることだぞ?
で?
最近聞いた面白いこと >Smart Code Oriented Syndrome >ピボット厨の先生
ところで配列数式でなんでもやっちゃう奴って自分でスマートだと思ってるの?
ピボットよりはスマートかもな
>>945 おおおそうですsplit関数
なぜ使えないのでしょうかね?VBAだからといえばそうなんでしょうけど・・別に削る必要も無かったような
内部処理的に重かったからといわれればそれまでですが
>>946 まぁそうなんですが、まぁ
>>982 また冗談はよし子さん。
本気で言ってるんだったら終わってるよ。
一人本気でそう思ってるらしいのがいるけどな。
状況も糞もねーよ。 ところで君Word好きじゃない?
状況に関係ない ピボット最強、無敵。 さすが
なんでも配列数式は年寄のボケ防止にいいんだからそっとしておきなさい。 盆栽いじりみたいなもんだ。
VBA厨だのピボット厨だの関数厨だのカテゴライズするのがそもそも理解できんわ 必要に応じて使い分けるのが普通じゃねーのか
それができない異常者たちだから仕方ない
俺VBA厨でピボット厨で関数厨だわ
配列数式のフィルコピーさえしなきゃ別に関数厨でもいいんじゃね?
VBA使えてピボットや関数が使えない奴なんて居ないだろ とゆーことで VBA厨>ピボット厨≧関数厨
>>992 別にフィルコピーが問題じゃなくて何度も同じ計算やってるかどうかだろ?
>>994 当然そういうこと。
同じ計算しないフィルコピーってあったっけ?
>>993 おまえは何を言っているんだ・・・
関数使えない奴だらけじゃないか
>>996 993じゃないが、たいていのやつは使えるよ。
配列数式厨みたいな馬鹿らしい使い方しないだけだな。
>>995 例えば金種計算とか。
同じ計算を少しやってると言えばやってるけど1行にかぎってのことだから。
その老害は「ボクは関数できます」って言いたいだけだからそっとしとけ
配列数式って暇つぶしにゃいいよね。
1001 :
1001 :
Over 1000 Thread このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。