Excel総合相談所 97

このエントリーをはてなブックマークに追加
1名無しさん@そうだ選挙にいこう
▼━ 質問のしかた ━━━━━━━━━━━━━━━━━━━━
★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総合相談所 96
http://hibari.2ch.net/test/read.cgi/bsoft/1299582492/
2名無しさん@そうだ選挙にいこう:2011/05/02(月) 12:44:14.99
▼━質問時の注意・決まり事━━━━━━━━━━━━━━━━━━━━
・1 現行スレ内で既出の質問が無いか、ページ内検索をしよう。(Ctrl+F)
・2 図やコードを書く場合、TABや連続する半角スペースは無視されるので注意
・3 VBAコードを貼る場合は、部分的に伏せたり省略したりせずに全て貼りましょう。何レス使っても構いません。
・4 2回目以降の質問では名前欄に初回質問の番号を入れよう。
・5 回答内容でわからない部分があっても、すぐに聞き返さずにヘルプやGoogleなどで検索しましょう。
・6 バグ・動作上の不都合・仕様に関する質問などはマイクロソフトのサポートを受けましょう。
  ここは技術的な質問のみで。
・7 VBAはプログラム言語のVisualBasic(6以前)に近い処理が可能で Excelに関係ないことも出来ます。
  Excelの操作に関係ない部分は、スレ違いなのでここで聞かずにVB言語やAPI、COMについて自分で勉強し、
  どうしてもわからない部分はVBスレやAPIスレなどの該当スレで質問しましょう。
  但し向こうはプログラマのスレなので、構文規則などの最低限の事は覚えてから質問しましょう。
  ここみたいに丸投げはダメですよ。
・8 うまくいかなかったにしても自分でやってみたこと(組んだ数式やコード)は書きましょう。
  例えエラーになる式やコードでも、何をやりたいのかを的確に把握する手がかりになります。
  その上で、どううまくいかないのかを具体的に書きましょう。
  エラーが出るなら、何処でどういうエラーが出るのか、
  想定外の結果が出るなら、条件と想定上の結果、実際の結果などを詳しく書いてください。
・9 マルチはダメ。一度マルチしたら、謝っても他のスレの質問を取り下げても回答は得られないと思ってください。
・A テキストボックス(エディトボックス)、コンボボックス(ドロップダウンリスト)、リストボックス、コマンドボタン、
  チェックボックス、オプションボタン(ラジオボタン)、スピンボタン、スクロールバー、等の質問をするときは、
  ユーザーフォーム、コントロールオブジェクト、フォームオブジェクトのどれなのかを必ず書くこと。
・B 書籍や解説サイトの紹介以来はスレ以外。ここは技術的な質問のみで。
3名無しさん@そうだ選挙にいこう:2011/05/02(月) 12:44:25.12
★ルールを無視すると…
 >>1-2あたりのルールに従うか否かは自由だけど、従わないと以下のような不利益があるよ

 ★1.マルチをしてしまったら…
 A.謝っても他での質問を取り下げても、以後その質問に対する回答は付かない物と思ってください。
   それが嫌なら初めからマルチなんてしないように。>>2にマルチ禁止と書いてあり、
   マルチの意味が分からなければ検索すれば出てくるので、「知らなかった」は通用しません。

 ★2.>>1★4に従わず、必要な情報を出さないと…
 A.自分の使用しているバージョンで使えない機能を答えられたり、VBA使えないとか使いたくないと書かないと
   VBAでの解決OKで自分でコード書けるものと勝手に解釈されて、「VBAで出来るから自分でコード書いて」程度の
   適当な回答を返されたりします。また、ここではVBAコード書けない人の丸投げ依頼を許可してますが
   これはきちんとルールに従って質問、依頼した人のみの特権です。

 ★3.情報・条件を後出しすると…
 A.後から出された情報は意図的に無視されたり、質問自体を放置されたりします。
   >>1★4の必須情報はもちろんのこと、要望や条件、既に試したことなどは、
   長文になってもいいので詳細かつ明確かつ具体的に書きましょう。


★VBAについて
 VBAとは、『Visual Basic for Application』の略で
  Application
  ├Workbooks
  |└Workbook
  |  ├Worksheets
  |  |└Worksheet
 というApplication以下のオブジェクトを、VB言語で操作するものを指します。 
 例えExcel付属のVBE(Visual Basic Editor)を利用しようとも、このApplication以下のブックやシート、
 セルやオブジェクト等を操作するもの以外はVBA分野の話ではないので、ここでは聞かないでください。
4名無しさん@そうだ選挙にいこう:2011/05/02(月) 12:44:34.16
★ Excelで出来ないこと、仕様上の制限 (括弧内は代用法)

 ▼環境・書式
  ・ 列数を256列以上、行数を65'536行以上に増やす (Excel2007以降では16'384列、1'048'579行扱える)
  ・ Excel2003以前で条件付き書式を3つ以上設定する (文字色だけなら、入力規則でも3つ設定可能。それ以外はVBA)
  ・ 行の高さを0.25きざみ以下の単位で指定する
  ・ セル内の文字を○で囲む、一部のみ2段にする (オートシェイプ、オブジェクト)
  ・ オートフィルタで英字の大小文字を区別する (小文字 → 半角、大文字 → 全角、と使い分ける)
  ・ 祝日を判断する (作業セルに祝日を列挙、VBA)
  ・ 同一列内でセル(行)ごとに列幅を変える、同一行内でセル(列)ごとに列高を変える (セルの結合)
  ・ ヘッダー・フッターのページ番号の開始番号任意指定、ページ番号演算、同シート内で違ったものを指定など
  ・ セルのサイズ(幅、高さ)を、長さの単位(ミリメートルなど)で指定する
  ・ 罫線幅の自由指定
  ・ 表示形式で「10/ 1」といった書式を指定し、日付が一桁の場合のみ日付の前にスペースを入れる (TEXT関数、VBA)
  ・ 書式設定の「折り返して全体を表示する」と「縮小して全体を表示する」を同時に使う (折り返しを有効にして、手動で文字サイズを調整)

 ▼操作
  ・ ファイラーの右クリックメニューからの新規作成で、Excelで設定したシート数のブックを作る (任意のシート数のテンプレートを作成)
  ・ 複数シートを選択して入力規則やシートの保護を設定する (VBA)
  ・ オートコンプリート機能を、別列や離れたセルで動作させる (VBA)
  ・ 選択範囲から一部を除く、Ctrlを押しながらの複数選択で一部を取り消す (VBA)
  ・ 優先キーを3つ以上指定しての並べ替え (優先度の低い方から順に並べ替える)
  ・ 1セルを分割 (分割したいセル以外を結合)
5名無しさん@そうだ選挙にいこう:2011/05/02(月) 12:45:05.76
上記 「Excelで出来ないこと、仕様上の制限」 は、一般的に出来ないとされていること、出来ないと思われるものです。
間違いがある可能性もあるので、上記に挙がってるもので「コレはこうすれば出来るよ」というものがあったらご指摘ください。
Excel2010についても未確認な項目が多いので変更点が有ればご指摘下さい。

また、ここに書かれてないことでも、Excelで出来ないことはたくさんあります。
ここに書かれてないからといって必ず出来るはずだなんて思わないように。

>▼環境・書式
> ・ セルのサイズ(幅、高さ)を、長さの単位(ミリメートルなど)で指定する
補足
2007以降ではページレイアウトビューの表示時に限り、幅・高さともcm単位で表示され、
指定も同じくcm単位でできる。
ただし大元がインチ系なのでなかなかピタリの値は出ない。1cm→0.98cmのように
近い値に勝手に丸められる。

以上でテンプレ終わり (Excel総合相談所 94からコピペ、一部改定)。
6名無しさん@そうだ選挙にいこう:2011/05/02(月) 13:16:05.74
>1乙
7前スレの716:2011/05/02(月) 20:42:46.56
>1乙ついでに前スレ704からの質問にあったExcelのお節介機能などを書いておきます。

1 お節介機能 表の範囲に続けて表外(下)の方にデータを入力し続けると、罫線や塗りつぶしなどの書式が引き継がれる
 対策:ツール>オプション>編集のタブ で、「データ範囲の形式および数式を拡張する(L)」のチェックを外しておく

2 複数シートを選択した状態(作業グループ状態)で保存したときに自動再計算機能がオフになる
 対策:作業グループの必要がなくなったら、この状態を解除(ひとつのシートを選択した状態に)する
8名無しさん@そうだ選挙にいこう:2011/05/07(土) 10:06:15.51
Excel 2002で非常に古いバージョンを使っています。

伺いたい事は
グラフの表示にて横棒を選択の際、

データの範囲を下記の様に選択しても
1
2
3
4
5

横棒のグラフでは
5
4
3
2
1

といった具合に
上下が逆さまに表示されますが

データ選択と同じ順番
1
2
3
4
5

でグラフを表示させるには
どうすれば良いのでしょうか?
ご教示下さいませ。
9名無しさん@そうだ選挙にいこう:2011/05/07(土) 10:27:36.50
>>8
Y軸のラベル(グラフの左側に1 2 3 4 5と表示されている部分)を右クリック、軸の書式設定→目盛タブ→
「軸を反転する」にチェック、OKをクリック
次に、上に行ってしまったX軸の軸ラベルを右クリック、軸の書式設定→パターンタブ→
「上端/右端」を選択、OKをクリック
10名無しさん@そうだ選挙にいこう:2011/05/07(土) 10:51:39.25
基準点という概念を理解していれば

1
2
3
0/0 1 2 3

こそが「逆」で

3
2
1
0/0 1 2 3

と、X・Yどちらも基準点から順に増えていくのが「順」だと思うはずだが…

まあこういう需要があるから軸の反転機能があるわけで、やろうとしていること自体は否定しないが、
この質問は、本来「データ順とは逆に表示したいのですが、どうすれば良いですか?」と来るべきだよな
11名無しさん@そうだ選挙にいこう:2011/05/07(土) 11:59:23.05
>>8です

判りました、
教えて頂きありがとうございました。
12名無しさん@そうだ選挙にいこう:2011/05/08(日) 01:37:59.66
【1 OSの種類 .】 Windows XP
【2 Excelのバージョン 】 Excel2007
【3 VBAが使えるか .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード 】 excel2007 ”コメントの枠”

コメントの枠の形の設定を最初から全てに適用できないでしょうか?
毎回コメントの枠の大きさ等を手動で1つ1つ変えるのが面倒なので
最初にコメント挿入した時点で変更が適用された状態になっていると助かります。
13名無しさん@そうだ選挙にいこう:2011/05/08(日) 12:33:36.06
Excel2003 SP3です。

セルを小さくしすぎると、そこに数値がある場合に表示しきれなくて“#”って表示されるじゃないですか?
あれをセルをはみ出してもいいので、全部表示させたいです。(文字列だとそうなるけど、数字でそれをやりたい)
セルを結合するのは後々めんどくさいので、書式とかオプションでできないでしょうか?

よろしくお願いいたしまする
14名無しさん@そうだ選挙にいこう:2011/05/08(日) 12:45:26.23
>>13
数値を数字文字列にする

具体的には
直接入力されている値なら、先頭に'を入れる
数式結果や特殊な表示形式を適用したいならTEXT関数を使う

それを再度計算で使いたいならVALUE関数などで数値に戻して計算する
15名無しさん@そうだ選挙にいこう:2011/05/08(日) 12:47:51.25
>>14
なるほど
勉強になりました。
ありがとうございます!!
m(_ _)m
16名無しさん@そうだ選挙にいこう:2011/05/08(日) 22:58:51.70
【1 OSの種類         .】 Windows7
【2 Excelのバージョン   】 Excel2010

以前OSがWindowsMe,excel2000でVBAでマクロを組んでて
今の環境になってまた新しくマクロ組み始めました

シートからマクロを起動させたかったので
図形挿入→マクロ登録 で既存のマクロを登録させようとしたのですが
「マクロ シートに対する参照を指定してください」とエラーが出て断念

で、ここまではいいのですが(↑の方法はよくわからないのでボタンクリックでやることに)
今まで「マクロの表示」からマクロの編集ができたのですが「マクロの表示」を押すと「作成」しか選べず
既存のマクロを選択しても編集や削除ができなくなっています

シートの「マクロの表示」→マクロ作成→VBAの編集画面→編集画面の「マクロの表示」
と飛ぶと編集・削除もできるのですがいちいち編集するのにマクロを新規作成せねばならず困っています

図形挿入のくだりの前にはマクロはちゃんと動いていたのでソースコードの問題ではないはずです
解りづらい質問とは思いますが回答よろしくお願いします
1716:2011/05/08(日) 23:17:58.77
それと言い忘れたのですが新しくブックを作っても同様の現象が起きます
18名無しさん@そうだ選挙にいこう:2011/05/09(月) 02:59:37.88
【1 OSの種類         .】 Windows7
【2 Excelのバージョン   】 Excel2010
【3 VBAが使えるか    .】 はい
【4 VBAでの回答の可否】
【5 検索キーワード     】

excel2010でエクセルを呼びだそうとすると、拡張子が xlsx になってしまいます。
拡張子がxlsm でないとマクロが記録できないので、非常に不便です。
普段から xlsmで開ける方法を教えていただけないでしょうか
19名無しさん@そうだ選挙にいこう:2011/05/09(月) 05:54:51.12
【1 OSの種類         .】 windows vista
【2 Excelのバージョン   】 Excel2007
A B    C

A1 B1
(B2-B1)/(A2-A1)
A2 B2
(B3-B2)/(A3-A2)
A3 B3

こんな感じでCだけ隣のセルと半分ずつずらして表を作りたいのですが、
どうすれな良いでしょうか。
またAを横軸、Cを縦軸にしたグラフを書く際に、
A1とA2の間に (B2-B1)/(A2-A1) の値を
A3とA2の間に (B3-B2)/(A3-A2) の値を取りたいのですが、
そのようなグラフは作れるでしょうか。
2019 補足:2011/05/09(月) 05:56:49.44
【3 VBAが使えるか   】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード   】Excel 隣り合うセル 半分 ずらす
2119 20:2011/05/09(月) 07:24:26.55
19は自己解決しました
22名無しさん@そうだ選挙にいこう:2011/05/09(月) 08:50:33.64
OS:WindowsXP
バージョン:Excel2002です

・・・ある数値をシートを超えて
計算式の中で利用したいのですが
その方法を教えて下さい。

例えばシート1のセル・A1に100を入力した時に

シート2のセル・A1、シート3のセル・A1に
入力した100が自動的に現れるようにしたいのですが

シート2のセル・A1、シート3のセル・A1に
それぞれどの様な計算式を入力したら良いのかを
教えて頂きたいのです、
宜しくお願い致します。
23名無しさん@そうだ選挙にいこう:2011/05/09(月) 10:09:03.59
>22 当方Excel2003だけど、手順は同じはず
1 シート2のA1セルをクリックしてから = を入れる
2 画面下の方のシート1のタブをクリックし、シート1を前面にする
3 シート1のA1セルをクリックし、[Enter]キーを押す(画面はシート2に戻っているはず)
4 シート2のA1セルをクリックしてから[F2]キーを押す
5 計算式の部分を全て選択し、[Ctrl]を押しながら[C]キーを押す(複写の操作)
6 画面下のシート3のタブをクリックし、シート3を前面にする
7 シート3のA1セルをクリックしてから[F2]キーを押す
8 [Ctrl]を押しながら[V]キーを押す(貼り付けの操作)、[Enter]  これで試してみてください
2423:2011/05/09(月) 10:12:42.22
>22 図解入りのページがありました
エクセル事典
http://www.excel-jiten.net/formula/ref_other_books.html
25名無しさん@そうだ選挙にいこう:2011/05/09(月) 10:56:00.46
リスト作成時において、リストを表示させるアイコンのサイズが小さいんですが
このアイコンを大きく表示させることは可能でしょうか。
Excel 2003です。
26名無しさん@そうだ選挙にいこう:2011/05/09(月) 11:47:20.55
▼のドロップダウンボタンのことか?

それなら入力規則のリストでは任意変更不可
全体の表示倍率を上げて他を縮小すれば、擬似的に大きくできるけどね

フォームツールのリスト(コンボボックス)なら、ボタンのサイズは高さ依存で
高さを上げればそれと同幅の正方形ボタンになる

あとはVBA使えば入力規則のリストが設定されたセルを選択するだけで
▼押さなくてもリストが表示されるように出来るので、それならボタンのサイズは関係ないでしょ
27名無しさん@そうだ選挙にいこう:2011/05/09(月) 11:50:34.29
>22より

感謝・感謝
ありがとう
28名無しさん@そうだ選挙にいこう:2011/05/09(月) 12:08:03.92
>>26
即レス感謝します。まだExcelには精通してないのでVBAっての初めて聞く単語でした。勉強になりました。
29名無しさん@そうだ選挙にいこう:2011/05/09(月) 23:20:07.24
>>18お願いします

右クリック⇒新規作成⇒エクセル を呼ぶとき、拡張子をxlsmにしたいんですが・・・
windows7だとxlsxだとマクロを保存してくれません…
30名無しさん@そうだ選挙にいこう:2011/05/09(月) 23:53:27.27
>29
Excel2007/2010を持ってないので適切なアドバイスをできませんが、
新規作成のときに .xlsx しか選べなくても、直後に「名前を付けて保存」を行い、
その際にファイルのマクロ付きブックとして(.xlsmを選んで)保存したら、
その後はマクロを登録できるようになりませんか?
31名無しさん@そうだ選挙にいこう:2011/05/10(火) 00:21:50.41
>>29
右クリックってどこを右クリックするのかと思ったら、Winのデスクトップか
>>29>>18も言葉が少なすぎで分かりにくいし、
そもそも貴方のやりたいことはExcel側でどうにかすることではないのでスレチ

で、ざっくり検索してみたけどXPの情報しか見つかんなかったんで、
Windows板にでも行ってみてくれ
32名無しさん@そうだ選挙にいこう:2011/05/10(火) 00:22:36.44
俺もWin7/Excel2010持って無くて、WinXP/Excel2003の話だが
右クリックって言うことはExcelではなくエクスプローラ(ファイラー)からの新規作成の話だと思うけど
エクスプローラからの新規作成で何が作られるかは、Windowsの設定次第でExcelの話じゃない

エクスプローラの[新規作成]メニューをカスタマイズする
ttp://www.atmarkit.co.jp/fwin2k/win2ktips/282filenew/filenew.html


Excelのメニューの新規作成で作られる物を変更したいならこっち

Excelの新規作成ブックの設定を変更する
http://allabout.co.jp/gm/gc/80917/
33名無しさん@そうだ選挙にいこう:2011/05/10(火) 00:22:44.00
>>30-31
了解しました
34 忍法帖【Lv=5,xxxP】 【東電 62.1 %】 :2011/05/10(火) 05:10:02.34
>>29
普段から保存時に
ファイル→名前を付けて保存→ファイルの種類(T):マクロ有効Excelブック 
と、行ってください。
既存のxlsxブックも同様の処理をしてください。
※ただし既存のxlsxブックの場合、マクロ有効ブック(xlsmブック)を他に設けてしまう
事になりますが。
35名無しさん@そうだ選挙にいこう:2011/05/10(火) 05:57:00.10
>>30-34
どうもそうするしかないようですね。ご相談感謝してます
3629:2011/05/10(火) 06:50:19.99
すいません。。。追加で困った問題が出てきました。

マクロを記録したxlsmブックを常に開いていないと、他のすべてのexcelファイルにマクロが適用されません。

http://okwave.jp/qa/q6330936.htmlを試した見たけれど、「使用できないアイテム」を設定しても、「現在そのような
アイテムはありません」と表示されますし、個人用マクロブックがない状態です。

どうすればよいでしょうか・・・?
37名無しさん@そうだ選挙にいこう:2011/05/10(火) 23:28:44.42
シートを高画質でjpg(png)化したいんだけどどの手段が一番よいでしょうか?
画面をコピーしてペイントに貼り付ける方法は試したのですがどうも画像が荒くなっちゃってて…
38名無しさん@そうだ選挙にいこう:2011/05/11(水) 00:22:54.09
>>37
仮想プリンタ
pdfが有名だけど、pdfをjpgやpngにする方法もあるし
直接jpgやpngで出力できる仮想プリンタもある

どう使うかとか、どの仮想プリンタが良いとかはExcel関係ない話なので割愛する
39名無しさん@そうだ選挙にいこう:2011/05/11(水) 00:24:06.78
スレ違い ↓へどうぞ

スレたてるまでもない質問に答えるスレ
http://hibari.2ch.net/test/read.cgi/bsoft/1123764624/l50
40じゃが山さん:2011/05/11(水) 02:14:37.95
>>37
作ったぜ!

apiで画面のデバイスコンテキスト(DC)取得→
二次元配列にDCのデータ流しこむ→
配列の頭にビットマップ構造体をつける→
新しいファイルをバイナリで開く→
ビットマップ構造体を流しこむ→
ファイル閉じる→DC解放


画面をbmpファイルで出力するぞう君1.0001
http://www42.atwiki.jp/syugyou?cmd=upload&act=open&pageid=240&file=%E7%94%BB%E9%9D%A2%E3%82%92bmp%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E3%81%A7%E5%87%BA%E5%8A%9B%E3%81%99%E3%82%8B%E3%81%9E%E3%81%86%E5%90%9B1.0001.xls

デスクトップに落としてから使ってね
41名無しさん@そうだ選挙にいこう:2011/05/11(水) 02:25:04.79
どや顔のところ悪いんだが、
画面をコピー(PrintScreen)と同じ荒い解像度・・・・・意味無さすぎてワロタw

しかもほとんどパクリソース
42名無しさん@そうだ選挙にいこう:2011/05/11(水) 03:37:54.03
HWNDとか懐かしいな
43名無しさん@そうだ選挙にいこう:2011/05/11(水) 04:22:27.27
俺の画面表示カラーは256色だぜぃ(嘘
44名無しさん@そうだ選挙にいこう:2011/05/11(水) 15:44:36.35
【1 OSの種類         .】 Windows XP
【2 Excelのバージョン   】 Excel 2002
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】excel 印刷 ズレる

罫線でマス目を引いた1ヶ月の予定一覧表を作っているのですが、
5/21 22 23 24 25 〜 と1つのセルにひとつずつ入れた日付の数字が、プレビューでは問題ないのに
印字してみると、5/21は枠の中にちゃんと収まっていますが、22から先が
22232425262728293031 と枠を無視して全部繋がってしまいます。
また、31の後には6/1から2 3 4 5〜と20まであるのですが、
6/1から9までは1つずつ印字されるのに、10の後はまた
1011121314151617181920 と繋がって印字されます。
その下の行には対応する曜日が土 日 月 と入っていますが、それは問題なく6/20まで
ズレずに入っています。

同じファイルを違うパソコンで開いて印字すると、同じプリンタで印字しても
文字のズレはおきずに、きちんとマス目の中に1日分ずつ収まっています。

何故こんな現象が起きるのかわかりません。どうしたら解決できるでしょうか
45名無しさん@そうだ選挙にいこう:2011/05/11(水) 16:43:35.76
>>44
Excelではよくあること
フォントを少し小さめに設定しておく
46名無しさん@そうだ選挙にいこう:2011/05/11(水) 20:47:20.58
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel 2002
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否

数式についての質問です。
(A$1-A$3)/5
これを下の行へ(A1-A3)はそのままに5だけ+1づつ
(A$1-A$3)/6
(A$1-A$3)/7
としたいんですが、手入力で6,7・・・じゃなく、
+1させる関数式ありますか?
47名無しさん@そうだ選挙にいこう:2011/05/11(水) 21:20:56.07
>>46
(A$1-A$3)/row()
とか
4846:2011/05/11(水) 21:49:00.51
>>47
ありがとう
49名無しさん@そうだ選挙にいこう:2011/05/11(水) 23:53:55.46
エクセルをゼロから独学で覚えたいのですが
普通に考えて2010を覚えた方が良いのでしょうか?
普及率などで2007を覚えた方が融通が利きますか?

50複乳:2011/05/11(水) 23:57:29.45
どっちも大して変わらないよ
あとタブン2010しか売ってない
51名無しさん@そうだ選挙にいこう:2011/05/12(木) 00:02:11.12
>>50
そうでしたね
売ってないって要素を忘れていました
有り難うございました
52じゃが山さんfromシベリア代行:2011/05/12(木) 03:17:13.87
>>41
すいません実はこれからソースパクってました・・・

エクセルピンボール
http://xlsg.net/cgi-bin/updown2/updown2.cgi?mode=download&id=339
53名無しさん@そうだ選挙にいこう:2011/05/12(木) 15:00:49.48
【1 OSの種類         .】 Windows7
【2 Excelのバージョン   】 Excel2010

A1,A4,B5,C8の値が1以上であるものだけで平均を出したいんですがどう入力すればいいでしょうか?
54複乳:2011/05/12(木) 15:59:00.07
>>53
=(IF(A1>=1,A1,0)+IF(A4>=1,A4,0)+IF(B5>=1,B5,0)+IF(C8>=1,C8,0))/COUNTIF(A1:C8,">=1")
何でもいいんじゃないの
55名無しさん@そうだ選挙にいこう:2011/05/13(金) 00:42:13.12
>>53
=(A1*(A1>=1)+A4*(A4>=1)+B5*(B5>=1)+C8*(C8>=1))/((A1>=1)+(A4>=1)+(B5>=1)+(C8>=1))
56名無しさん@そうだ選挙にいこう:2011/05/13(金) 08:15:36.11
AVERAGEIF教えたれよアホかw
57名無しさん@そうだ選挙にいこう:2011/05/13(金) 08:20:24.00
質問者のExcelバージョン見てないんだろ
いつものことだ
58名無しさん@そうだ選挙にいこう:2011/05/13(金) 23:50:57.65
OS:win7 32bit
Ecxel:2008
VBA可
転写 Excel 文字列などでググりました

ある1つのセルに
結果 : (Aチーム) x - y (Bチーム)
と表示させたいです(x,yは他のセルから参照した数値)

ただいま
=A1 &"結果 : (Aチーム名) "& TEXT(D9,"&""&TEXT(D18,"0")&" (Bチーム名)"
と記述してあります
これではセルに直接チーム名を記述しているので、他セルから参照させて表示したいです
(Aチーム名)、(Bチーム名)のところに例えば、A1,A2のセルに入った文字列を表示させるにはどうしたらいいのでしょうか?
59名無しさん@そうだ選挙にいこう:2011/05/14(土) 00:26:19.32

A1,A2にチーム名には ( ) も付いているなら
="結果 : "&A1&" "&D9&" - "&D18&" "&A2

この式で ( ) を付けたいなら
="結果 : ("&A1&") "&D9&" - "&D18&" ("&A2&")"

TEXT関数外しちゃまずいなら
="結果 : "&A1&" "&TEXT(D9,"0")&" - "&TEXT(D18,"0")&" "&A2
="結果 : ("&A1&") "&TEXT(D9,"0")&" - "&TEXT(D18,"0")&" ("&A2&")"
60複乳:2011/05/14(土) 00:26:53.18
>>58
その数式だとエラーになる。閉じカッコが一つ足りない
61複乳:2011/05/14(土) 00:28:12.15
と思ったら終わってた
62名無しさん@そうだ選挙にいこう:2011/05/14(土) 02:50:16.41
【1 OSの種類         .】 WindowsXP-Pro
【2 Excelのバージョン   】 Excel2000
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 excel 比 基準 セル 計算


あるセル(A1)の値を100%として、その他の(その下の)セル(A2〜A5)の値を
A1に対するパーセンテージとして得るにはどうしたら良いでしょうか?

計算式は例えば、
=100*A1/A1 → 100
=100*A2/A1 → X
=100*A3/A1 → Y

のようになるかと思いますが、(手入力ではない)自動計算を使った方法が分かりません。
63名無しさん@そうだ選挙にいこう:2011/05/14(土) 02:57:18.01
=100*A1/A$1
こういうことか?
64複乳:2011/05/14(土) 02:59:00.78
>>62
B2に
=100*A2/$A$1
でいいのかなぁ
65名無しさん@そうだ選挙にいこう:2011/05/14(土) 03:27:08.12
>>63-64
そうだった・・・$を使うんだった・・・

_ト ̄|○
66名無しさん@そうだ選挙にいこう:2011/05/14(土) 03:49:56.22
つーかなんで複乳は同じ答えを書くんだ?
他の人が答えてるときは、複乳は答えなくていいよ

「それよりこうやった方がいいよ」みたいな、より優れた解法を紹介するならまだしも
いつも既に付いてる回答と同じか、それ以下なんだから
67名無しさん@そうだ選挙にいこう:2011/05/14(土) 04:26:29.41
>>59
ご丁寧にありがとうございました!
助かります
68 忍法帖【Lv=7,xxxP】 【東電 61.5 %】 :2011/05/14(土) 05:21:41.14
>>58
ちょっと気になったんだけどExcel2008ってMac用だけどWindowsに使えるの?使ってるの?
69名無しさん@そうだ選挙にいこう:2011/05/14(土) 05:51:13.14
>>66
2分だからリロードしないで書いただけだろ?
70名無しさん@そうだ選挙にいこう:2011/05/14(土) 07:02:17.96
しかし、そういうことが1回や2回じゃないからなぁ
71名無しさん@そうだ選挙にいこう:2011/05/14(土) 07:21:49.47
>>56
AVERAGEIFはExcel 2007から使えるんだよなー。
72名無しさん@そうだ選挙にいこう:2011/05/14(土) 11:16:08.79
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2000
【3 VBAが使えるか    .】 勉強中
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 excel 変数
ComboBoxA〜ComboBoxD
までありComboBoxAのAの部分を変数で処理したいのですが変数で調べても良く分かりませんどなたか教えてください、お願いします
7372:2011/05/14(土) 11:16:38.57
取り合えずソース書いておきます

Sub 個人貸出表入力2()
Dim 箱 As Object

Windows(bihinn.TextBox25.Text & ".xls").Activate
Sheets("Sheet1").Select
Worksheets("Sheet1").Range("A6").Select
Do Until ActiveCell.Value = ""
ActiveCell.Offset(1, 0).Select
Loop
ActiveCell.Offset(0, 0).Select
ActiveCell = bihinn.TextBox24.Text
If bihinn.CheckBoxA Then
箱 = "A"
ActiveCell.Offset(0, 1).Select
ActiveCell = bihinn.ComboBox & 箱 & 2 & .Text
ActiveCell.Offset(0, 1).Select
ActiveCell = bihinn.ComboBox & 箱 & 3 & .Text
ActiveCell.Offset(0, 1).Select
ActiveCell = bihinn.ComboBox & 箱 & 1 & .Text
ActiveCell.Offset(0, 1).Select
ActiveCell = bihinn.TextBox & 箱 & 6 & .Text
ActiveCell.Offset(0, 1).Select
ActiveCell = bihinn.TextBox & 箱 & 4 & .Text
ActiveCell.Offset(0, 1).Select
ActiveCell = bihinn.TextBox & 箱 & 5 & .Text
End If
ActiveWorkbook.Save
ActiveWindow.Close
End Sub
74名無しさん@そうだ選挙にいこう:2011/05/14(土) 11:38:14.48
> 【4 VBAでの回答の可否】 否
では、何も答えることは無いなw

という意地悪はおいといて、

シート上に配置したコントロールツールのComboBoxなら
OLEObjects("ComboBox" & 変数).Object.Text

ユーザーフォーム上のComboBoxなら
ユーザーフォームオブジェクト.Controls("ComboBox" & 変数).Text
75名無しさん@そうだ選挙にいこう:2011/05/14(土) 14:19:12.36
>>66
>つーかなんで複乳は同じ答えを書くんだ?
>他の人が答えてるときは、複乳は答えなくていいよ

冷静に読むとマヌケだなw
76名無しさん@そうだ選挙にいこう:2011/05/14(土) 14:23:11.35
複乳が間抜けなのは今更言うまでもあるまい。
77名無しさん@そうだ選挙にいこう:2011/05/14(土) 14:24:48.70
>>76
そうじゃなくてキレながら複乳複乳連呼してるところがさ
じわじわくる
78名無しさん@そうだ選挙にいこう:2011/05/14(土) 14:34:01.90
複乳本人か
79名無しさん@そうだ選挙にいこう:2011/05/14(土) 14:45:05.76
>>77
そうでもないだろ。
というか同じようなこと以前も言われてたし。
80複乳:2011/05/14(土) 14:57:39.52
本人です
81名無しさん@そうだ選挙にいこう:2011/05/14(土) 15:00:44.09
名前欄間違わないように気を付けてね
82名無しさん@そうだ選挙にいこう:2011/05/14(土) 15:04:13.51
絶対できないだろうな、と思いながら聞いてみる。

F2でセルを編集状態にしていると、カーソルがセルの方にあるけど、カーソルををキーボード操作で上の数式バーの方に移せない?
マウスじゃないと出来ないような気はするんだけど、ちょっと聞いてみる
83名無しさん@そうだ選挙にいこう:2011/05/14(土) 15:16:27.28
セルが空の場合に限定されるし、先頭に=が入るけど
F2でセル編集にしてからCtrl+Aで数式バーに移る
84名無しさん@そうだ選挙にいこう:2011/05/14(土) 15:20:16.43
シート間のソートについて質問です。

納品されるアイテムが順不同に並んでいるのですが、それらを次のシートで任意の順番に並べたいんです。
毎回並べる順番は決まっているので、一度設定したらそれ以降自動的にソートされるとうれしいんですが。

8584:2011/05/14(土) 15:24:39.58

【シート1】  【シート2】
いちご     @バナナ
ぶどう     Aいちご
バナナ     Bぶどう
いちご     Cりんご
ぶとう     Dみかん

【シート1】の並び順はいつもバラバラなんですが、【シ−ト2】における並び順は固定です。
これをコピペ以外に簡潔に並び替える方法ってないでしょうか。
86名無しさん@そうだ選挙にいこう:2011/05/14(土) 15:28:55.26
>>82
セル内で編集のオプションを外す
87名無しさん@そうだ選挙にいこう:2011/05/14(土) 15:33:33.45
セル内で編集できなくなるやんw
88名無しさん@そうだ選挙にいこう:2011/05/14(土) 15:34:55.56
>>84-85
【シート2】
   A    B
1|バナナ   1
2|いちご   2
3|ぶどう   3
4|りんご   4
5|みかん   5


【シート1】
  A     B
1|いちご   =VLOOKUP(A1,シート2!$A$1:$B$5,2,FALSE)
2|ぶどう
3|バナナ
4|いちご
5|ぶとう


B列をキーに昇順ソート
89名無しさん@そうだ選挙にいこう:2011/05/14(土) 15:46:49.16
>>83
確かに限定機能だけど、面白いね、ありがとう
9072:2011/05/14(土) 16:48:31.69
>>74
助かりました、変数がどうも理解できない・・・勉強あるのみですね 汗
本当にどうもありがとうございました。
91名無しさん@そうだ選挙にいこう:2011/05/14(土) 16:57:21.89
>>82
Excelの機能から外れるけど、そういう常駐ソフトを作るのは可能
92名無しさん@そうだ選挙にいこう:2011/05/14(土) 17:03:33.74
外部ソフト頼りで良いならAutoHotkeyで出来るけどな
93名無しさん@そうだ選挙にいこう:2011/05/14(土) 21:02:59.34
>>84
ユーザー設定リスト使えば?
数に限りがあると思ったが512までだっけ?
94名無しさん@そうだ選挙にいこう:2011/05/15(日) 00:37:26.70
漠然とした質問で申し訳ないのですが・・・
当方エクセルを使って株価の動きを検証しています
多くの人がVBAを使っているらしいのですが
自分はすべてエクセルの関数をコピーするやりかたでVBAを一切使っていません
VBAの使い方がわからないというよりどこでVBAを使えば便利なのかがわからないんです

例えば移動平均を求める関数を1000行にコピーするのと
VBAを使って1000行に計算後の数値を入力していくのとどちらが良い方法なのか?
といったところがよくわかっていません

VBAを使うポイントというかこういうとこで使うべきというアドバイスいただけないでしょうか
よろしくお願いいたします。
95複乳:2011/05/15(日) 02:12:06.58
>>94
軽ければどっちでもいい
重いならvbaで計算させて値だけセルに入力する形にすればいい

他には面倒と思った作業のほとんど全てはvbaで全自動化できると思っていい
ただしコードを各作業自体は結構面倒なので、どちらが楽かはアンタにしかわからない

チャレンジしてみたら?
タダだし、自宅ですぐできるし
プログラム板にもVBAスレあるからわからなければそっちで聞くのもイイ
96名無しさん@そうだ選挙にいこう:2011/05/15(日) 02:55:00.09
>>95
ありがとうございます。
チャレンジしようと思って色々と本を買ったりはしているのですが
どこで使えばいいのかがよくわからなくて・・・
超初心者向けの本を買ってとりあえず始めてみます。
97名無しさん@そうだ選挙にいこう:2011/05/15(日) 03:41:07.36
VBAまともに使えてない奴が、VBAの蘊蓄とかw
98複乳:2011/05/15(日) 04:39:36.28
>>97
ありえねーよなw
複乳さっさと死ねばいいのに
99複乳:2011/05/15(日) 04:48:30.25
みんなで複乳名乗ろうぜ
100名無しさん@そうだ選挙にいこう:2011/05/15(日) 05:45:04.86
貧乳じゃだめかしら
101名無しさん@そうだ選挙にいこう:2011/05/15(日) 13:14:33.74
>94
自分で作ってときどき使っているのが、計算式一覧出力のVBAです。
Excelの基本機能として、計算式を表示させる(ツール-オプションの設定にて)機能がありますが、
VBAを利用すると、開発中のシートの「計算式を出力させたい」部分を範囲指定して、マクロを
実行すると、シート名、セル位置、計算式、値(セルの書式に応じた形式)を1セル1行にして
マクロのあるブックに出力します。
計算表を駆使したシステムのドキュメント代わりになるし、計算式の間違い(計算式中の行指定
部分のズレなど)の発見にも便利です。
102名無しさん@そうだ選挙にいこう:2011/05/15(日) 15:00:30.95
ワークシート分析機能を使いこなせてない人?
10384:2011/05/15(日) 18:21:09.00
>>88
ありがとうございます!
早速使わせてもらいます!
10484:2011/05/15(日) 18:22:17.46
>>88
ありがとうございます!
早速使わせてもらいます!
105名無しさん@そうだ選挙にいこう:2011/05/15(日) 19:17:54.44
家計簿を作ってます。
「食費」「光熱費」とかの出費の分類を毎回全文字記入するのが面倒なので、
その列では「a」と入力したら「食費」「b」と入力したら「光熱費」というように文字列が置換されるようにしたいんですが、
こういうことって出来ますか?
違うセルで文字列を置換ならSUBSTITUTEを使うようですが、同じセル内の場合どうすればいいかわかりません。
106名無しさん@そうだ選挙にいこう:2011/05/15(日) 19:35:11.96
>>105
同じセルで、は無理。後でCTRL+Hで置換するとかになるとおもう。
どっちかというと、セルの入力規則を使いなはれ。
入力規則はググれ。
それか、連続しているセルなら上の情報がALT+↓で出てくるよ
107名無しさん@そうだ選挙にいこう:2011/05/15(日) 20:34:47.87
>>106
ありがとうございます。
教えてもらった入力規制でリストを作ったら、使い易くなりました。
後々、分類を変更追加する可能性もあるので、自分がやりたかった方法より拡張性があって良いです。
ありがとうございました。
108名無しさん@そうだ選挙にいこう:2011/05/16(月) 00:48:22.44
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel97
【3 VBAが使えるか    .】 はい
【4 VBAでの回答の可否】 可
【5 検索キーワード     】エクセル { } 使い方
質問
下記の式を右に11列コピーしその後下に11行コピーするとエクセルが落ちます。
PC変えても落ちました、同じ機種メビウスでも落ちないPCもあります。
オープンオフィスの最新版でも落ちました。

{=SUM((会費納入表!$C$4:$C$44=$B4)*(会費納入表!$D$4:$D$44=C$3))*会費}

です、前後のカッコはctrl+alt+enter でいれるらしいです、私の古いpcでは入りません。
このカッコはなんの意味があるんでしょうか。なければ落ちないんですが。

109名無しさん@そうだ選挙にいこう:2011/05/16(月) 01:45:00.07
>>108
{ }に意味があるのではなく、式が通常数式か配列数式かの区別のために表示されているだけです。
{=式} というのは、セルや数式バーに {=式} を入力するのではなく =式 と { } を外した式を入力し
Enterで確定する代わりにCtrl+Shift+Enterで確定します。AltではなくShiftです。

またその式は、入力する場所によっては循環参照というエラーを起こします。

そもそも、{ } の意味さえ分かってないようだと、その式も自分で組んだ物ではなく
その式がどういう内容なのかも把握してないのでは?

しかし、いろいろと間違いが多すぎる上に、何がやりたいのかも全く書かれてないので、これ以上のことは言えません。
「何故問題が起きるのか」という理由部分だけ解れば良いなら、それではさようならってことで構わないけど
問題解決のアドバイスを欲しいなら、ブックをロダにアップした上で、やりたいことを具体的に書きましょう。
110名無しさん@そうだ選挙にいこう:2011/05/16(月) 12:34:09.79
えーと
A1セルに数値を入れたらあちこちセル計算して
結果がC5セルに出てくるとします。
X=A1
Y=C5となるようにXY表を作りたいとき一番スマートな方法はどれですか?
C5セルのやってることをスパッと関数化する奴があればいいんだけど・・・・
111名無しさん@そうだ選挙にいこう:2011/05/16(月) 13:25:13.08
自分の頭で関数化するか
シナリオの情報かな
112名無しさん@そうだ選挙にいこう:2011/05/16(月) 19:48:15.49
>>109
早速どうもです、
知人がpc教室でサンプル作成中に自分だけ落ちるので聞いてきました。
配列数式調べてわかりました、office2003では落ちません。
excel97でも下方にコピーする際、一行ずつなら最後までできます。
そのファイルです、sheet3のB4を右11コピー後、下11コピーで落ちます。
http://www4.plala.or.jp/overwhelm2011/sample.lzh
excel97なんて使ってる人いないから再現できないでしょうね。

昔作ったvbでは3次元配列で引数にも配列が入って
フォームも入れると10万行超えました。それでもエラーなくサクサク動いて感動したんですが。
その画面です。
http://www4.plala.or.jp/overwhelm2011/Image1.jpg
http://www4.plala.or.jp/overwhelm2011/Image3.jpg
113名無しさん@そうだ選挙にいこう:2011/05/16(月) 23:26:33.93
シートを別々のウィンドウに分けて表示したいのですが
どうやったらできるんでしょうか?
2003を使っています。2000を使っていたころは最初っからできていたと思うのですが・・
114複乳:2011/05/17(火) 01:35:05.66
>>113
ウィンドウ→新しいウィンドウを開く
115名無しさん@そうだ選挙にいこう:2011/05/17(火) 03:08:03.91
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2010
【3 VBAが使えるか    .】 はい
【4 VBAでの回答の可否】 可
【5 検索キーワード     】フック
ユーザーフォーム上のオブジェクトを動かす度にユーザーフォームが再描画されるのを防ぐため
フックしてosからの15番メッセージを止めてみたのですがうまくいきません。
デバックもうまくできません。
福乳さんどうしたらいいですか!
116複乳:2011/05/17(火) 07:36:45.62
>>115
仮想PostMessage()だかSendMessage()を投げればいいんじゃないっすか
じゃなきゃhookしない
嘘ですhookの知識なんてありません
117名無しさん@そうだ選挙にいこう:2011/05/17(火) 21:37:15.01
>>112
97は画面右下のセルに入力すると落ちる。
回避策は事前にスクロールして、
とにかく右下セルを触らない。

>>108がこのバグのせいかどうかはわからんが
118名無しさん@そうだ選挙にいこう:2011/05/17(火) 23:10:23.11
Windows7 Excel2010、Access2010

Access2010からVBAのDoCmd.TransferSpreadsheet acExport コマンド 、またはAccessのマクロ(VBAではなくてAccessのマクロ機能)で
Excelにクエリの結果やテーブルのデータをエクスポートする処理があります。
ExcelにはAシート Bシート(こちらにクエリやテーブルのデータを出力) があり、AシートからBシートのセル参照を行っています。

規制がきつい・・・
119118:2011/05/17(火) 23:12:56.43
このような構成の時、AccessからExcelへエクスポート後、Excelファイルを開いても Aシートでセル参照していてもAシートの値が更新されないものがあります。
(エクセルファイルによって更新されたり・されなかったりします)

Accessの出力方法の違いによって発生している訳でもありませんし、更新されるエクセルファイル・されないファイルの違いも特にありませんでした。

続きます
120名無しさん@そうだ選挙にいこう:2011/05/17(火) 23:13:14.70
質問じゃなくて愚痴?
121118:2011/05/17(火) 23:14:59.25
エクセルの自動計算はONにしています。また、更新されないエクセルファイルでF9を押しても再計算されません。
ただし、ctrl+Alt+F9による強制再計算を行えば値が更新されます。

これを見ていると、Accessからのエクスポートでセルの値が更新されてもエクセルでは値の更新を検知?していないように見えるのですが、
対処方法をご存知の方はいませんでしょうか?
122名無しさん@そうだ選挙にいこう:2011/05/17(火) 23:32:22.85
XP Excel2007

googleスプレッドシートのリスト表示が便利で重宝してますが、
同じことがエクセルでもできますか?
123名無しさん@そうだ選挙にいこう:2011/05/17(火) 23:56:56.66
>>121
最小の再現ケースをうp

>>122
出来る
124名無しさん@そうだ選挙にいこう:2011/05/18(水) 06:03:47.24
>>114
できません、重なります

125名無しさん@そうだ選挙にいこう:2011/05/18(水) 06:20:37.39
>>124
重ねることも重ねないことも出来るからお好きなように使いましょう
126122:2011/05/18(水) 08:46:55.70
>123
ありがとうございます!
127名無しさん@そうだ選挙にいこう:2011/05/19(木) 15:11:58.06
見せたくないシートを非表示にしてブックの保護。
それと同時に見えてるシートの削除とか
複製は許したい。
そんなのできますか?
128名無しさん@そうだ選挙にいこう:2011/05/19(木) 17:21:27.46
A1 Aグループ
A3 Bグループ
A5 Bグループ
A7 Aグループ
A9 Aグループ
A11 Cグループ
A13 Bグループ
A15 Cグループ

という感じにあり
それぞれの箇所に入金があれば
入金のあったグループの件数がそれぞれ表示されるようにしたいのですが
どうしたらいいですか?

例えば、A3とA13に入金あれば
A20(Bグループ)に2件と表示させたいんです。
129名無しさん@そうだ選挙にいこう:2011/05/19(木) 17:40:02.73
>>127
VBAで出来る

>>128
COUNTIF
130名無しさん@そうだ選挙にいこう:2011/05/19(木) 20:01:40.92
画面にエクセルの窓が1つしか表示できません。
新しいウィンドウで開いてファイルを切り替えても、同じ窓内で表示が
切り替わるだけです。
2003を使っています。どうすれば別々の窓に分けて表示できるのでしょうか?
131名無しさん@そうだ選挙にいこう:2011/05/19(木) 20:11:14.80
132名無しさん@そうだ選挙にいこう:2011/05/19(木) 20:29:47.68
すみません 教えてください

年が入ってるC列D列で2009年04月から2010年03月までを判断("2009" & "04"と処理します)して
K列の数字をN列に出したいです。他の年月だと0を入れたいです。

関数でもVBA配列でもよく出来ません コードも書いたのに改行多すぎで書き込めないです。。。
133名無しさん@そうだ選挙にいこう:2011/05/19(木) 20:49:34.21
>>132
C1に2009,D1に04 って入ってるってこと?
普通にN1に 
=IF(AND((C1&D1)*1>=200904,(C1&D1)*1<=201003),K1,0)

ってことかいな?なんか違うか
134名無しさん@そうだ選挙にいこう:2011/05/19(木) 21:25:31.53
>>132
=IF(YEAR(DATE(C1,D1-3,1))=2009,K1,0)

とかもアリじゃない かな?
135132:2011/05/19(木) 21:28:14.40
>>133さん
>>134さん

どうもありがとうございました。たぶん出来るとおもいますがちょっとてんぱってしまって
またのちほどきます。
136132:2011/05/20(金) 06:54:56.17
>>133さん

今やってみました。まさに出来ました。
すごく助かりました。ありがとうございます!!!
!
泣きそう!
137名無しさん@そうだ選挙にいこう:2011/05/20(金) 13:57:06.40
解らないので教えて下さい。例えば、一致条件で
A1〜A6に1〜6までの値。
B1に2 C1に4 D1に6 E1に8 F1に10 G1に12 の値で、
B1の値が、A1〜A6に入力された値、どれかと一致すれば、
B2が○ C2が○ D2が○ E2が× F2が× G2が× となって、
B2に入れる式が =IF(ISERROR(VLOOKUP(B1,A1:A6,1,0)),"×","○") これだと出来るんですが、
138名無しさん@そうだ選挙にいこう:2011/05/20(金) 13:59:07.42
B1 C1 D1 E1 F1 G1
 1  2  3  4  5  6
B2 C2 D2 E2 F2 G2
 2  4  6  8 10 12
B3 C3 D3 E3 F3 G3
 ○ ○  ○  × × ×
この場合でやる、一致条件の式を教えて下さい。
139名無しさん@そうだ選挙にいこう:2011/05/20(金) 14:32:10.29
=IF(ISERROR(VLOOKUP(B1,A1:A6,1,0)),"×","○")
のアドレスと検索関数を無駄のない物に変えただけだが
=IF(ISERROR(MATCH(B2,$B$1:$G$1,FALSE)),"×","○")
じゃだめなの?
140138:2011/05/20(金) 14:53:53.40
>>139
出来ました、ありがとうございます。おかげでスッキリしました。
141名無しさん@そうだ選挙にいこう:2011/05/20(金) 18:52:36.92
>>131
シートを分けて表示するのではなく、ファイルを分けて表示したいのです
エクセルの窓が1つしか表示できません。
7で2003を使っています。XPで2000を使っているときは
ファイル切り換える度に窓も分けて表示されていたのですが・・








142名無しさん@そうだ選挙にいこう:2011/05/20(金) 18:57:26.35
すみません、自己解決しました
143名無しさん@そうだ選挙にいこう:2011/05/20(金) 19:00:09.16
autosumしてあるのにいつの間にかセルの数値を変更してもautosumの値が
変わらなくなってしまいました。
試しにもう一度autosumの設定をしてみたらその時は正しい値が出ますが
数値を変更しても変わりません。
どうしたら直るか教えて下さいm(__)m

144名無しさん@そうだ選挙にいこう:2011/05/20(金) 19:40:14.55
>>143
バージョン示せよ。
145143:2011/05/20(金) 19:50:21.41
2007です。
146名無しさん@そうだ選挙にいこう:2011/05/21(土) 01:32:14.74
excelで減衰振動の片対数グラフを作りその数式を表示させたんですが
54.7e^-0.08xとかになって
eの片にある、直線の傾きを表示させる方法を教えてください。
147名無しさん@そうだ選挙にいこう:2011/05/21(土) 02:24:51.26
約100個のCSVファイルを1つのエクセルブック(100シート)にまとめて保存したいのですが
どのようにすれば良いでしょうか?
148名無しさん@そうだ選挙にいこう:2011/05/21(土) 03:22:53.16
>>147
マクロ
149名無しさん@そうだ選挙にいこう:2011/05/21(土) 03:24:15.33
>>145
Excleのオプション→数式→計算方法の設定→ブックの計算→自動
150145:2011/05/21(土) 05:27:26.69
>>149
ありがとう。直りました。
でも何で手動になっちゃったんだろ?
151複乳:2011/05/21(土) 05:31:33.83
>>150
バグです
ttp://www.windowsstyle.net/trouble/54.html
2007でもまだあったのね
152150:2011/05/21(土) 11:19:21.98
>>151
バグだったのか。
何か変な事したかと悩んだ。
153名無しさん@そうだ選挙にいこう:2011/05/21(土) 12:40:57.50
>>148
マクロ使わないと無理ですか・・・
マクロさっぱりわからないんです。。。
154名無しさん@そうだ選挙にいこう:2011/05/21(土) 13:35:47.55
>>153
うん、俺も昔はマクロわからなかった。

でもやりたいことがあって、それがマクロじゃないと出来ないと分かって
「マクロの勉強する手間」と「マクロ使わずに実現する手間」と「諦めることによる損失」
を天秤に掛けて、マクロ勉強することにした。

君も勉強してでも実現したいか、勉強するくらいなら諦めるか、自分の天秤に掛けて決めれば良い。



なんてもっともらしいことを言ってみるが、>>147を実現できるアドイン(マクロをまとめたもの)あるから
それ入れれば解決なんだけどね。まぁ使ってるExcelのバージョンすら書いてないから、
俺もアドイン名までは書かないが。
155名無しさん@そうだ選挙にいこう:2011/05/21(土) 14:07:11.72
>>154
すいません。。。エクセルは2007です
VBAは以前からやりたいと思っていたのでこれをきっかけに勉強しようと思います。
かんたんプログラミングシリーズが評判良さそうなのでとりあえずそれを買ってみます。
ありがとうございました。
156名無しさん@そうだ選挙にいこう:2011/05/21(土) 14:08:05.87
>>155
ま手
157名無しさん@そうだ選挙にいこう:2011/05/22(日) 03:15:23.50
【1 OSの種類】 WindowsXP【2 Excelのバージョン】 Excel2002【3 VBAが使えるか】 はい(勉強中)【4 VBAでの回答の可否】 可【5 検索キーワード】 マクロ 文字列 結合など。
シート1の『〔○曜日〕』から『 /他』まで、といった感じで各曜日の文章を1セルにまとめ、シート2に出力したいですが、各週文章数はランダムのためそれに対応できるのが良いです。あと、A1の文字列から日付を抽出してシート2に出力したいです。
-----シート1-----
  A
1 5月9日(月)〜5月13日(金)
2 "〔月曜日〕"
3 "●文章1"
4 " /他"
シート1の情報をシート2に以下のように出力したいです。だれか教えてください。
-----シート2(別シート)-----
  A    B
1 5/9   "〔月曜日〕●文章1 /他"
2 5/10  "〔火曜日〕●文章1●文章2 /他"
・・・
5 5/13  "〔金曜日〕●文章1●文章2●文章3 /他"
158名無しさん@そうだ選挙にいこう:2011/05/22(日) 03:33:55.76
マルチか
せめて向こうの質問を取り下げてから来れば
こっちは丸投げOKだから答えて貰えたのになぁ
159名無しさん@そうだ選挙にいこう:2011/05/22(日) 16:23:50.14
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2007
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 可
【5 検索キーワード     】Excel2007 ファイル 結合 xlsx
シート1に名前 住所 電話番号・・・・というように住所録があります。
同じフォーマットで複数ファイル(50000ファイルくらい・ファイル名はランダム)あります。
これを一つのファイルかつシート1に追加していくようにして結合したいのですが、いいツールはないでしょうか。
コピペだと時間がかかりすぎて・・・2003までのxls形式だと見つかったのですが、xlsx形式の結合ツールが見つけられなくて.....
よろしくお願いします。
160名無しさん@そうだ選挙にいこう:2011/05/23(月) 10:42:45.66
【1 OSの種類         .】 Windows vista home
【2 Excelのバージョン   】 Excel2000
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 microsoft excel for windows は動作を停止しました

こんにちわ、宜しくお願い致します。

昨日から、エクセルのアイコンをクリックして、起動させると即フリーズというか
上の microsoft excel for windows は動作を停止しました のメッセージがでて
キャンセルしかできなくなります。

エクセルで作ったファイルをクリックしても、スタートメニューから立ち上げても同じです。
試しにsafeモードで立ち上げると、普通に使えます。

何が問題でしょうか・・・・ 不具合と直接関係はわかりませんが、グーぐるアースを
インストールし、その後アンインストールしました。
161160:2011/05/23(月) 11:16:05.83
再インストール、windowsの復元、及び
Excel.xlb ファイル
XLStart フォルダ
Excel.pip ファイル
のリネーム等も試しましたが駄目でした・・・
162160:2011/05/23(月) 15:45:33.76
Erasecd2.exe も試みたけど駄目でした
163名無しさん@そうだ選挙にいこう:2011/05/23(月) 15:56:00.09
おそらくExcel2000はVistaに非対応なのでしょう。
Excelのアップグレード(バージョンアップ)をお勧めします。
164160:2011/05/23(月) 16:02:51.79
vistaで何年も使ってきたんだけど急に使えなくなりました
165名無しさん@そうだ選挙にいこう:2011/05/23(月) 16:29:06.91
非対応ってのはそういうものさ
絶対に使えないわけじゃないけど、いつ不都合が出てもおかしくない

とりあえず、OSのクリーンインストールからExcel再インストールしてみたら?
それが面倒とか言い出すなら(゚听)シラネ
166名無しさん@そうだ選挙にいこう:2011/05/24(火) 14:34:56.88
>>159
20万円くらいでやってあげたい
167名無しさん@そうだ選挙にいこう:2011/05/24(火) 16:59:46.92

年の列  月の列
1999 Jun
2001 Feb
....

となってるものを
1999年6月
2001年2月
と変換するにはどうすればいいのでしょうか
168名無しさん@そうだ選挙にいこう:2011/05/24(火) 17:50:36.20
>>167
A列に年、B列に月名が入ってるとして
=TEXT(DATEVALUE(A1&"-"&B1),"yyyy年m月")
169複乳:2011/05/24(火) 17:53:35.38
>>167
C1=A1&"年"&IF(ISERROR(FIND("Feb",B1)),"","2月")&IF(ISERROR(FIND("Jun",B1)),"","6月")
2月と6月しかやってないので他の月も
&IF(ISERROR(FIND("Jun",B1)),"","6月")
辺りをテキトーに変えて追加しておいて
170名無しさん@そうだ選挙にいこう:2011/05/24(火) 18:10:08.12
>>168
AとB、逆じゃないの?
英語圏だと「24 May 2011」って風に「日 月 年」の表記になるから
年と月だけの場合でも月が前

=TEXT(DATEVALUE(B1&" "&A1),"yyyy年m月")

これで>>169みたいに無駄に冗長で面倒な式使わなくても、全ての月に対応できる
171複乳:2011/05/24(火) 18:12:59.55
DATEVALUEって"jun"でも通用したのか、知らなかった。すまん
問題は月の列が"jun"なのか書式設定でjunと表示してるかだね
172名無しさん@そうだ選挙にいこう:2011/05/24(火) 18:37:25.50
> 書式設定でjunと表示してる
そんなのは問題にならないし、そうだとしたらこんな質問してこねーだろ
書式設定でってことはシリアル値があり、それを表示形式使って
Jun(mmm)という特殊な表示にするってことをやってるわけだから、それが出来て
1999年6月(yyyy月m年)という基本的な表示にするってことが出来ないわけがない

TEXT関数でやるなら
=TEXT(B1,"yyyy年m月")
こんだけ
なんの問題にもならんw
173複乳:2011/05/24(火) 18:43:06.27
>そうだとしたらこんな質問してこねーだろ
長年エスパーやってきたけどこういう思い込みは良くないよ
174複乳:2011/05/24(火) 18:44:21.70
後は回答者の結果待ちだの
175名無しさん@そうだ選挙にいこう:2011/05/24(火) 18:46:04.56
質問者じゃなくて?
176複乳:2011/05/24(火) 18:51:31.57
そうだ
もうだめだ
177名無しさん@そうだ選挙にいこう:2011/05/24(火) 18:58:14.22
>>173
思いこみは良くないけど、その後の理由まで読むと172の言うことには納得せざるを得ない。
だってSUMIF知ってる奴がSUM知らないとか、ReDim Preserve知ってる奴がReDim知らないとか、
整数商\演算子と除余Mod演算子知ってる奴が除算/演算子知らないとか、そういうレベルだもん。
これは無いと見るのが普通じゃね?
178名無しさん@そうだ選挙にいこう:2011/05/24(火) 19:03:25.13
> もうだめだ
そんなことないよ















「もう」じゃなくてダメなのは以前からずっとじゃんw
179名無しさん@そうだ選挙にいこう:2011/05/24(火) 19:17:11.85
ひでぇ、けど当たってる
180複乳:2011/05/24(火) 19:48:37.71
>>177
もちろんある程度、程度を推測した上でならその推測で間違いないと思う
でも初心者は何を勘違いしてるか分からないんだよ

例えばある初心者が光回線導入したんだけど、
これでPCのクロック数があがると思っていた
ネットが早くなる、の早くなるという部分で色々想像していたようだ
んなわけねーだろ、と思っても機械音痴には常識が通用しない

君はSUMIF知ってる奴がSUM知らない奴がいるわけない、と思ってるようだが
俺の中ではいなくも無い
どっちが正しい訳でもないと思うし、一般的にも少ないだろう
でもそういう人ばっかりだと何がわかってないかもわかってない初心者は上に上がれないんだよね
181複乳:2011/05/24(火) 23:25:38.91
等と意味不明な供述をしており
182名無しさん@そうだ選挙にいこう:2011/05/25(水) 04:20:33.59
>>159
いちどテキストに書き出してからインポートは?
# なんでExcelのままインポートできないのか、不思議だ。
183名無しさん@そうだ選挙にいこう:2011/05/25(水) 10:42:10.31
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2007
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否

A列に[売り切れ] という文字が入っていた場合 C列に[未定] という文字を。
A列にそれ以外の文字が入っていた場合は、C列には何もしない(C列にはすでに他の文が入ってるセルがあるので)

こういう事をしたいのですが、色々ググってもやり方が分かりません;
184名無しさん@そうだ選挙にいこう:2011/05/25(水) 11:01:42.67
>>183
C列に数式入れて良いなら簡単だけど
> C列にはすでに他の文が入ってるセルがあるので
を保持したまま実現するなら、VBA使わないと不可能

まぁ、A列に[売り切れ] という文字が入っていた場合 D列に[未定] という文字を。
A列にそれ以外の文字が入っていた場合は、C列の内容を表示するってならVBA無しでも可能だけどな
185名無しさん@そうだ選挙にいこう:2011/05/25(水) 12:00:54.37
【1 OSの種類         .】 Windows7
【2 Excelのバージョン   】 Excel2010
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 エクセル 各都道府県 上位 抜き出す

http://www.efcit.co.jp/cgi-bin2/exqalounge.cgi?print+200605/06050109.txt
検索で出てきたこの方と同じ悩みを抱えております
返答に出ているやり方だとあまりに非効率なもので・・・
ピボットテーブルを使ってうまくやる方法はないものでしょうか?
186名無しさん@そうだ選挙にいこう:2011/05/25(水) 13:28:15.77
>>185
ピボットならレポートのレイアウトを表形式にして人口を降順にすりゃ、市町村でトップ50にすればよい。
187名無しさん@そうだ選挙にいこう:2011/05/25(水) 13:30:13.71
>>185
並べ替えてトップテンを表示か
188名無しさん@そうだ選挙にいこう:2011/05/25(水) 15:14:17.04
>>185
検索で出てきたこの方って自分じゃないの?
どうせ否定するだろうが、ピボットテーブル以外じゃ並べ替えと作業列とフィルタオプションでもできるな。
都道府県を最優先するキー、人口を次に優先するキーで降順に並べ替え
D2に=IF(A2<>A1,1,D1+1)としてD列が50以下を抽出すりゃよいが、もし50番目が同じ人口で複数あると具合が悪いから
作業列をもう一つ用意してE2に=IF(C2<>C1,D2,E1)としてE列が50以下を抽出。
189185:2011/05/25(水) 15:18:35.07
5年越しの自演って凄く壮大ですね…
当然ながら本人じゃないですけど、まぁ証明する手立てもないので
どっちでもいいですw

無事に>>185はできました。
値フィルタという便利な機能があるんですね…
皆さんありがとうございました。
190名無しさん@そうだ選挙にいこう:2011/05/25(水) 15:30:44.61
>>188
なぜそこで自演を疑ったのか
191名無しさん@そうだ選挙にいこう:2011/05/25(水) 15:33:30.05
2006年の記事に対して自演を疑う>>188ワロタ
今頃顔真っ赤にしてそうw
192名無しさん@そうだ選挙にいこう:2011/05/25(水) 19:45:21.78

winXP Excel2007です。

4000kbぐらいのエクセルブック内に15ぐらいのシートがある。
で、それらのシート間にVLOOKUPやSUMIFSやSUMPRODUCTが張り巡らされていて、構成としてはデータベースシート×4・集計シート×10・総集計シート×1となってる。
そんで定期的にデータベースシートを書き換える必要があり、その書き換えによる再計算が非常に時間がかかる(タスマネ見るとCPUが振り切れてる)。

↑このファイルはネットワーク上のサーバに保存していて、そこにアクセスして作業してんだけど、
これをCドライブに移して端末内で作業したら再計算速くなるか?


193名無しさん@そうだ選挙にいこう:2011/05/25(水) 19:54:33.45
計算は速くならない
開いたり保存したりは速くなるが
194名無しさん@そうだ選挙にいこう:2011/05/25(水) 21:22:39.36
Excel2003でXPです。

グループ化やリストや年度フィールド一列追加等を使わずピボットテーブルの4月からの年度ごとで
データを並べたいです。
1月開始のデータで1月から3月のセルを後ろにドラッグしても同じ年の中で並びが変わるだけです。
なんか、簡単に出来ないものでしょうか。

ちなみに私のExcelバージョンだとグループ化しようとすると
先頭の値と末尾の値までは出ますが
単位(B)というのが一つしか出ず、デフォルトが『0.1』です。
月・年や四半期とか出ません。頭にきます。
195名無しさん@そうだ選挙にいこう:2011/05/25(水) 21:34:13.88
>>189-191
解決してないし、5/13しか目に入らなかったよ
メガネ買わなきゃだめだな
196名無しさん@そうだ選挙にいこう:2011/05/26(木) 09:45:17.63
>194
そもそもの話、4月が年度始まりって日本とか一部の国でしょ?
日本国内の企業でも外資の子会社だと外国と同じ9月とか10月始まりだろうし。

>グループ化やリストや年度フィールド一列追加等を使わず
なんで自分の手足をしばりたいの?
こういう↓手間がいやなの?
http://www.ne.jp/asahi/juku/excel/090310.htm
197194:2011/05/26(木) 18:52:51.06
>>196さん

レス&リンクありがとうございます。
リンク先も以前見ています。
ただ、実際4月始まりでグループ化、列追加等の処理をしないで作成したと思われる
前任者のエクセルファイルがありまして、え!簡単に出来るんだ?って思ったのです。

そのファイルをいろいろイジってみて、やはり自分ではわからなかったので
こちらに書き込みました。
もしかしたら上の方法以外の処理をしているのかもしれませんね。
もうしばらく調べてみます。
どうもありがとうございました。
198196:2011/05/26(木) 20:09:20.16
>197
ひょっとして、ユーザー設定リストを利用しているのかも。
http://www.atmarkit.co.jp/fwin2k/win2ktips/440excelsort/excelsort.html
199194:2011/05/26(木) 21:22:43.81
>>198さん

いや、それも確認しましたがリストには無かったです。
ユーザー設定リストに新規インポートでもすると、そのデータがリストに残りますよね?
そして、そもそも並び方を変えただけでは、例えば2010年1月のデータは2009年度のほうにいかないですよね。。
2009年1月、2009年2月、というリストを作るのかな?


     4月 5月 6月 。。。1月 2月 3月
2010年
2009年

という感じで2年間のデータになっているんですが
たぶんネットで出てるどれかの処理をしているんだと思います。
ここを覗いている人達より高度な技をもってるとは思えないし。。
何度もありがとうございました。
200複乳:2011/05/26(木) 22:57:15.43
>>194
http://www11.plala.or.jp/koma_Excel/faq.html#faq8
とか
2002で四半期とか選択できたけど今度は選択肢自体がなくなった
訳がわからん
201名無しさん@そうだ選挙にいこう:2011/05/26(木) 23:31:43.16
その4月の表示形式はどうなってるんだろう
202194:2011/05/27(金) 07:43:35.67
>>200 複乳さん
そうです 2003だと選択肢出ないんです。。。
そのリンク先も見てはいましたが。。

>>201さん
表示形式は数値とか文字列ではなく標準になってます。
見た目だと04 05 06。。。 10 11 12です。
203名無しさん@そうだ選挙にいこう:2011/05/27(金) 09:39:29.50
>194,202
その前任者、まさかのVBA使いだったりして
データのあるブックと、マクロブックが別だと「痕跡」は残りませんね
204名無しさん@そうだ選挙にいこう:2011/05/27(金) 15:42:58.00
今現在全て手書きで日々の売上をコクヨの金銭出納帳に記入してます
Excelでこれらの会計管理を入力から上記用紙に出力、DB化による検索まで一括で管理したいんですが
可能でしょうか
205複乳:2011/05/27(金) 16:16:29.39
>>204
可能
「テンプレート エクセル 売上」
なんかで検索すれば色々テンプレートも見つかるよ

もし作るなら正規化って概念はちょっとだけ勉強しておいたほうがいいかも
206194:2011/05/27(金) 18:37:46.38
すみません、今日やっと判明しました。

そのデータはアクセスクエリから抽出してるんですが
そこでカレンダーマスタを作ってデータにかませてました。。。
アクセスは初歩もいいところなんでそこまで気がつきませんでした。

皆様本当にお騒がせいたしましたm(。_。;))m
207194:2011/05/27(金) 18:39:09.81
補足:アクセスから外部データとして引っ張ってきてるということです。

重ね重ねすみませんでした。
208名無しさん@そうだ選挙にいこう:2011/05/27(金) 19:43:54.34
共産党都議団 都内各地の放射線量測定結果 (資料B)

江東区から練馬区を結ぶ線以東の地域は年間1mSv以上の
放射線量となっている可能性がある。

http://www.jcptogidan.gr.jp/html/menu5/2011/20110525195904_3.pdf

SPEEDI予測 (Googleマップと合成)
http://www.puyan.net/boyaki/atomic/SPEEDI_110316-2.jpg
209名無しさん@そうだ選挙にいこう:2011/05/28(土) 09:10:21.32
win7 office2010

COUNTIFの使い方で判らないとこがあります。
例えばA1〜A5まで指定する方法というのは判るのですが
A1+A2+A4といったように一部のセルだけを選んで指定するには
どうしたらいいですか?
210名無しさん@そうだ選挙にいこう:2011/05/28(土) 09:31:21.38
セルの参照で質問です。

shieet2にsheet1のデータを表示したいです。

表示の仕方は下記です。
sheet1 sheet2
A1セル → B1セル
A6セル → B2セル
A11セル→ B3セル
A16セル→ B4セル



※バラバラの(間隔の開いた)データを別シートで集約したいのです。
調べてINDIRECTを使うのかなと思いましたがうまくできませんでした。
よろしくお願いします。
211 忍法帖【Lv=15,xxxPT】 【東電 70.3 %】 :2011/05/28(土) 09:43:49.96
>>209
なぜA3を省くのか、その理由を条件として記述してみましょう。
212名無しさん@そうだ選挙にいこう:2011/05/28(土) 10:18:25.69
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2007
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 Vlookup 逆

相手先 日付 売上金額
A商店 2/1 300
B商店 2/20 500
B商店 2/25 390
A商店 3/5 150
C商店 4/3 120

というような表からA1に相手先名を指定したらB1に直近の売上金額が表示されるようにするにはどうすればいいでしょうか?
日付が降順になっていればVlookupで出来ると思うんですが昇順に並んでいます。
213名無しさん@そうだ選挙にいこう:2011/05/28(土) 12:39:42.72
>>209
離れたセルを指定する方法はありません

=COUNTIF(A1:A2, 条件 )+COUNTIF(A4, 条件 )

みたいに別々に調べて足すのが基本です
配列などを使う方法もありますが、あとで式を修正するのがちょっと面倒になります
214名無しさん@そうだ選挙にいこう:2011/05/28(土) 12:44:01.28
>>210
セル名の前にシート名を書けば、別のシートからデータを持ってくることが出来ます

=Sheet1!A5

一度に入力する方法としては、最初の2セルに数式ではなく「A1、A6」とだけ入力し、オートフィルで増やしてから
「A」を「=Sheet1!A」に置換します

INDIRECTを使う方法だと、

=INDIRECT("Sheet1!A"&ROW()*5-4)

となります
215複乳:2011/05/28(土) 15:42:51.83
>>212
相手先〜売上がC列-E列
B1=INDEX(E2:E6,MATCH(SUMPRODUCT(MAX((C2:C6=$A$1)*(D2:D6))),D2:D6,0),1)
216212:2011/05/28(土) 16:58:05.77
>>215
ありがとうございます!
217名無しさん@そうだ選挙にいこう:2011/05/28(土) 20:46:59.19
質問です。xp 2003 です。
A1に13.000ってあるとします。
B2に 合計  \13.000−  ってやりたいのですが
    合計  \13000    ってなってしまいます。
13.000って三ケタに区切りを入れて見やすくしたいのですがどうすればいいですか?

B2に  合計  \13.000−  が理想です。 お願いします。
218複乳:2011/05/28(土) 20:52:00.11
>>217
http://www1.axfc.net/uploader/Img/so/116686.jpg
こんな感じで書式設定のユーザー定義
"合""計"\#,##0-;"合""計"\-#,##0-
219217:2011/05/28(土) 20:57:02.92
>>218サンクス
ユーザー定義って自分で出来るの知らなかった。とにかくありがとう。
220名無しさん@そうだ選挙にいこう:2011/05/28(土) 21:01:43.33
"合計  "\#,##0-;"合計  "\-#,##0-
221217:2011/05/28(土) 21:12:32.76
>>220ありがとう  その合計の後の空白がどうやるか迷っていましたw
"合""計""   "これだと出来なくてくっついていて質問しようと思っていました。
ありがとうございます。
222名無しさん@そうだ選挙にいこう:2011/05/28(土) 21:32:30.56
3桁の区切りはピリオドじゃなくていいの?
223名無しさん@そうだ選挙にいこう:2011/05/28(土) 21:46:16.43
ピリオドじゃ小数点に見えるからまずいだろよ
224名無しさん@そうだ選挙にいこう:2011/05/28(土) 22:23:12.89
vista 2007 です。
横幅のコピーは列幅を選んで貼り付けで出来ますが、
縦の幅はどうやればいいんでしょうか?
225名無しさん@そうだ選挙にいこう:2011/05/29(日) 07:23:16.09
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2007
【3 VBAが使えるか    .】 はい
【4 VBAでの回答の可否】 可
【5 検索キーワード     】エクセル 特定のシート ファイル出力

複数のシートがあるエクセルブックの中で、特定のシートを
指定してcsvファイル出力する方法を探しています。
なお、特定のシートを新規ブックにコピーして、csv出力した後に
新規ブックを閉じるコードで、目的は実現できるのですが、
目的のシートがたくさんあった場合、処理が遅く感じてしまい、
新規ブックを作成することなくできれば早くなるのかな?と思い
探っているところです。
226名無しさん@そうだ選挙にいこう:2011/05/29(日) 09:58:12.18
>>225
どなたかの公開ページにいいものがありました。
やってみたらGoodですね。
http://takashixxx.blog88.fc2.com/blog-entry-24.html
227名無しさん@そうだ選挙にいこう:2011/05/29(日) 10:01:12.56
>>225
すみません。
質問にある大切な特定シートの選択(質問を見落としました)の部分は
入ってませんでいた。
228名無しさん@そうだ選挙にいこう:2011/05/29(日) 12:46:00.81
境界ダブルクリックでシート全体を自動で列幅を最適させると縮まらない空白の列があります。なぜなのですか?

229名無しさん@そうだ選挙にいこう:2011/05/29(日) 12:55:56.26
>>228
列全体が空白だと列幅は変化しません
230名無しさん@そうだ選挙にいこう:2011/05/29(日) 13:02:19.66
>>225
質問の意図がよくわかりません
もともとcsvファイルはシート単位でしか作れません

その「特定のシート」をアクティブにしてから普通にcsv形式で保存するのと、
あなたのやりたいこととの違いはなんでしょうか
231名無しさん@そうだ選挙にいこう:2011/05/29(日) 15:14:40.89
>>226
ありがとうございます。
ws.SaveAsという部分は参考になりました。

>>230
例えば、1,2,3という3シートを持つブックで、下記のコードを走らせると、
元のブックはそのままで、3シートのcsvファイルを作成することができ、
結果としては問題ないのですが、処理中に新規ブックがチラチラし、
もしかしたらこのせいで遅いのかな?新規ブックを作成しないで実現できる
方法があったらそっちの方が早いのでは?と思ったのです。

Application.DisplayAlerts = False
Dim i As Integer
For i = 1 To 3

Sheets(i).Copy
ActiveWorkbook.SaveAs Filename:= _
Application.ThisWorkbook.Path & "\" & ActiveSheet.Name & ".csv", FileFormat:=xlCSV, _
CreateBackup:=False
ActiveWorkbook.Close

Next i
Application.DisplayAlerts = True
232名無しさん@そうだ選挙にいこう:2011/05/29(日) 15:27:38.77
>>231
ファイルの保存機能を使わずに、VBAだけでCSVファイルを作ってしまうという手もある
データの内容によってはちょっと処理が面倒になるけど、セル内改行や、文字列と数値が紛らわしいデータ、
例えば郵便番号や電話番号などがなければすぐにできる
233三橋:2011/05/30(月) 04:55:29.19
仕事で使用するデータをエクセルでデータベース化して、その後サーバにアップして
携帯で参照できるようにしたいです。
データ自体は、たいしたものではないのでそれほどセキュリティーに大してはきにしていません。
手軽に実現するには、どういった方法があるでしょうか?
234三橋:2011/05/30(月) 04:57:30.89
データベースといっても、計測値と加工設定値20項目を入力して、
品種ごとにそれらの計測値と加工設定値が検索できればよい、簡素なものを求めています。
そもそも、このご時世に加工データをノートに記録しているような労働環境なので
手軽にノートで検索できればと思ったのです。

環境は、ウィンドウズ7、office2010、サーバは無料レンタルでもと考えております。
235名無しさん@そうだ選挙にいこう:2011/05/30(月) 08:12:15.00
>>233-234
Microsoft Office Live Workspace使えば可能かも。
236問題君 :2011/05/30(月) 08:13:32.84
>三橋さん
以前バイトしていた倉庫で似たようなことをやっていましたが
ある日やって来たお偉いさんが
「フォークマンが端末ばっかいじってる」
と文句を言ったため廃止になりました。
また実際サボらせる原因にもなります。
237名無しさん@そうだ選挙にいこう:2011/05/30(月) 08:13:49.21
>>233-234
エクセルでデータベース作るところまではスレの範疇だが
携帯キャリアから参照出来るようにする部分はスレ違い

通信や、リクエスト、レスポンス等に関しては
そっち系の板で聞くように
238名無しさん@そうだ選挙にいこう:2011/05/30(月) 08:35:51.11
>>234
php エクセル で検索すればそれっぽいのがでてくる
239名無しさん@そうだ選挙にいこう:2011/05/30(月) 22:03:00.57
>>235
検索してみます。

>>236
大丈夫です

>>238
phpですね
ありがとうござ字ます
240名無しさん@そうだ選挙にいこう:2011/05/31(火) 14:31:20.71
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2007
【3 VBAが使えるか    .】 はい
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 SelectedItems

フォルダ名の取得の仕方がわかりません。
下のマクロで一応取得出来たんですが、ダイアログのところでキャンセルを押すとエラーになってしまいます。
どうやるのが一般的なんでしょうか?またエラーが出なくするにはどうすれば?

Sub test()
 With Application.FileDialog(msoFileDialogFolderPicker)
   Show
   Range("a1") = .SelectedItems(1)
 End With
End Sub
241名無しさん@そうだ選挙にいこう:2011/05/31(火) 15:12:11.27
.Showの返り値を使う
242名無しさん@そうだ選挙にいこう:2011/05/31(火) 17:03:50.14
>>241
if .show=ture then〜でエラー回避できました
ありがとうございました
243名無しさん@そうだ選挙にいこう:2011/05/31(火) 20:13:42.51
毎日ブックコピーして作って、
それぞれのデータをひとつのブックで管理したいので
1日のデータはまとめの1日のシート、2日のデータはまとめの2日のシート
にVBAで貼りつけたいのでやり方を教えてください。
よろしくお願いします。
244 忍法帖【Lv=1,xxxP】 :2011/05/31(火) 20:26:09.75
>243
>1-5 を見てください
245名無しさん@そうだ選挙にいこう:2011/05/31(火) 23:34:19.40
質問です。

0.6
1.2
1.6
2.4
3.1

という累計から、例えば、0.6と1.2の間に「1」があるかどうか知りたいのです。
そんなことが出来る関数はありますか。
246名無しさん@そうだ選挙にいこう:2011/05/31(火) 23:50:19.63
>>245
言ってる意味がわからん
247名無しさん@そうだ選挙にいこう:2011/06/01(水) 00:07:08.75
>>245
よくワカランけど、こういうこと?

   A   B
1      1
2  0.6
3  1.2  ○
4  1.6  ×
5  2.4  ×
6  3.1  ×

B3
=IF($B$1="","",IF(AND($B$1>A2,$B$1<A3),"○","×"))

ズレたらスマン
248名無しさん@そうだ選挙にいこう:2011/06/01(水) 00:08:16.11
>>246
すみません。作業の予定表です。
1日に出来ることを1とみて、累計にした数字が作業事の時間量です。

作業 作業時間 1日目予定 2日目予定…
    累計
A   0.6    ○
B   1.2    △    ○
C   1.6         ○
D   2.4         △
E   3.1

といった表を作りたいのですが、出来ますかね
249複乳:2011/06/01(水) 00:08:52.48
>>245
rounddownが切り捨て、roundupが切り上げ
これをifの条件にするかな
あとは色々ありすぎてわからん
整数を知りたいのか、1だけでいいのか、2以上離れた場合はどうなのか
250複乳:2011/06/01(水) 00:16:55.47
名無しが一斉に逃げる気配がした
251複乳:2011/06/01(水) 00:27:16.58
>>248
結論から言うと、出来る
が、かなり面倒な上に
妙に神経も使うから作らないけど、だいたいこんな感じ。
式は全然足りないけど、式もイメージ
ttp://www1.axfc.net/uploader/Img/so/117052.jpg
○と△は見た目でわかるだろ、と思うけど
どうしてもほしいなら数値データと別に見た目だけの表を作ったほうがいいと思う

で画像にも書いてあるけど
仕事のある時、無いとき、昨日の続き、明日への持ち越し、
そしてそれぞれの最終段の時の条件分岐をifか何かで用意すれば完成

多分やらないほうがいいんじゃないかなぁ、という感じはする
252名無しさん@そうだ選挙にいこう:2011/06/01(水) 00:30:32.83
複乳はもうちょっと画像が簡単に見られる場所に上げてくれ
253245:2011/06/01(水) 00:34:33.97
>>247ので、出来ました。
お騒がせしました。ありがとうございました。
254複乳:2011/06/01(水) 01:05:26.30
ええんかいっ
>>252
俺も同感だけど、アップローダーすぐ潰れるからなぁ
長期で安定してるとこないかな。dotupもそろそろ限界っぽいし
255問題マン:2011/06/01(水) 01:35:17.24
福乳さんどっかでVBで伺かみたいなの作るとか言ってなかった?
256問題マン:2011/06/01(水) 01:35:45.11
もっと香ばしいキャラにしとくべきだったぜ
>>237
ちょwww完全に人違いだぜ!
俺はお子様言語しかできねwww

>>239
みんなからの心の籠ったレスがうれしいからだぜー☆
257名無しさん@そうだ選挙にいこう:2011/06/01(水) 02:12:31.14
盛大に誤爆したんで>>255-256は無視してください・・
258複乳:2011/06/01(水) 02:50:46.82
な、なんだって・・・
折角だし答えておくと>>255つくろうと思ったら既にあったので
基本機能ちょこちょこ触ってみて飽きました
259名無しさん@そうだ選挙にいこう:2011/06/01(水) 11:42:08.30
複乳
問題マン
260233:2011/06/02(木) 07:05:28.48
以下はフォルダ内のデータを転記するためのマクロの一部なのですが、wbには開くためのパスワード"password"が設定されています。
ブックの"password"をマクロで入力し開くにはどうしたらよいか教えてください。

Dim fn, wb, myPath
myPath = ThisWorkbook.Path & "\"
fn = Dir(myPath & "*.xls")
Set wb = Workbooks.Open(myPath & fn)

' ↓こんな感じかと考えながらもうまく動作しないです。。
Workbooks.Open Filename:=wb, Password:="password"

プログラマー板から来ました
お願いします
261名無しさん@そうだ選挙にいこう:2011/06/02(木) 11:11:38.08
262名無しさん@そうだ選挙にいこう:2011/06/02(木) 13:33:13.01
【ソフト名】
エクセル2003
【使用しているOS】
xp
【質問内容】
複数シートの同一セルの値を、集計シートに並べたいのですがやり方が分かりません。
くし刺しで和を出すことは検索したらやり方が沢山見つかるのですが。。。

具体的には1日1シートで日計表をつくっています。
その中に本日在庫を表すセルがあります。
それを集計シートに並べ、日毎の在庫額の変動状況を把握したいのです。
宜しくお願いします。
263名無しさん@そうだ選挙にいこう:2011/06/02(木) 13:36:40.22
【1 OSの種類         .】 Windows XP
【2 Excelのバージョン   】 Excel 2007
【3 VBAが使えるか    .】 初心者なのでわかりません
【4 VBAでの回答の可否】 同上

エクセル初心者です。

アクティブセルというのでしょうか。

+カーソルは表示されていいます。
入力する際にクリックしても、いつも表示されていた枠の囲いが表示されなくなりました。
入力やコピーなどをするのに大変不便な状況です。
どなたか、表示させる方法を教えて下さい。

宜しくお願い致します。
264名無しさん@そうだ選挙にいこう:2011/06/02(木) 13:44:20.54
>>262

http://hibari.2ch.net/test/read.cgi/software/1269177792/879
【ソフト名】
エクセル2003
【使用しているOS】
xp
【質問内容】
複数シートの同一セルの値を、集計シートに並べたいのですがやり方が分かりません。
くし刺しで和を出すことは検索したらやり方が沢山見つかるのですが。。。

具体的には1日1シートで日計表をつくっています。
その中に本日在庫を表すセルがあります。
それを集計シートに並べ、日毎の在庫額の変動状況を把握したいのです。
よろしくおねがいしまんこ
265名無しさん@そうだ選挙にいこう:2011/06/02(木) 14:09:20.48
>>263
ツール→オプション→表示
にないかな
266名無しさん@そうだ選挙にいこう:2011/06/02(木) 14:21:19.54
あげ
267名無しさん@そうだ選挙にいこう:2011/06/02(木) 15:18:38.49
>>265
左上エクセルのマークからオプションにいきましたが、表示の項目が見当たらなかったです・・・。

困った。
268名無しさん@そうだ選挙にいこう:2011/06/02(木) 15:33:10.64
>>264
そうです私です
この板の存在をしらず、あちらで聞いていました。
269262:2011/06/02(木) 15:37:29.18
もう一度投稿しなおします。
お願いします。

【1 OSの種類         .】 Windows XP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 エクセル くし刺し 集計 シート 並べる

複数シートの同一セルの値を、集計シートに並べたいのですがやり方が分かりません。
くし刺しで和を出すことは検索したらやり方が沢山見つかるのですが。。。

具体的には1日1シートで日計表をつくっています。
その中に本日在庫を表すセルがあります。
それを集計シートに並べ、日毎の在庫額の変動状況を把握したいのです。
1シートずつ計算式内で指定していかなければならないのでしょうか。
宜しくお願いします。
270名無しさん@そうだ選挙にいこう:2011/06/02(木) 16:32:44.99
こんなことしたいのですが
何で作ればいいのでしょうか

outlookのカレンダー内の特定キーワードを含むもののみを取り出して
excelの既存のフォーマットの空欄に入力していく
excelの表は一カ月でうまるようになってるので、うまったら指定したメールアドレスに自動送信
271名無しさん@そうだ選挙にいこう:2011/06/02(木) 16:40:14.03
>>270
VBかvbaじゃないか
http://okwave.jp/qa/q527476.html
vb outlook 辺りで検索
272名無しさん@そうだ選挙にいこう:2011/06/02(木) 17:50:11.97
>269
合計を出したいシートで次のような作業をすると、計算式を「計算式で作る」ことができます。
前提
A2から下方向に元となる(1日分のデータを記録するシートの)シート名
B1から右方向に集計したい元となるシート上のセル位置

1 B2セルに ="="&$A2&"!"&B$1 と入れて、下方向にフィルコピー(合計31セル分)
2 B2からB32セルを選択した状態で右方向に必要な列までフィルコピー
3 画面上には計算式が見えています。これをコピー、「値貼り付け」します。
4 値貼り付けした範囲をひとつずつ[F2]、「Enter」(または[Tab])としていくと、
  今まで見えていた式が参照値に変わっていきます
273名無しさん@そうだ選挙にいこう:2011/06/02(木) 18:41:03.55
パソコン内のエクセルファイルをあるシートにハイパーリンクを用いて目次のようなものを作っています
lこの目次作成を簡単にしたいです
「あるフォルダの中のエクセルファイルをまとめてハイパーリンクで目次を作成する」方法を教えてください
リンクはエクセルファイル(ブック)に対してだけで構いません
ブック内のシートやシート内のある場所にリンクさせる必要はありません
よろしくお願いします
【1 OSの種類         .】 WindowsXPsp3と7
【2 Excelのバージョン   】 Excel2000と2003と2010 どれでも構いません
【3 VBAが使えるか    .】 はい
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 目次作成 ハイパーリンク 自動
274名無しさん@そうだ選挙にいこう:2011/06/02(木) 18:53:54.90
ピボットテーブルって記号をそのまま値に持って来れないの?
平均だとか合計だとかで数字なっちまう!
275名無しさん@そうだ選挙にいこう:2011/06/02(木) 20:08:06.96
>>274
記号って何のことだ?
276複乳 忍法帖【Lv=4,xxxP】 :2011/06/02(木) 20:18:20.05
>>273
http://www.asahi-net.or.jp/~ef2o-inue/vba_o/sub05_110_080.html
あとは、B列にハイパーリンク関数でも使うか
マクロを書き換えるか
それぐらいは自分で
わからんかったらまた聞いて

1/2

Sub a()
Const cnsTITLE = "フォルダ内のファイル名一覧取得"
Const cnsDIR = "\*.xls"
Dim xlAPP As Application
Dim strPATHNAME As String
Dim strFILENAME As String
Dim GYO As Long

Set xlAPP = Application
' InputBoxでフォルダ指定を受ける
strPATHNAME = xlAPP.InputBox("参照するフォルダ名を入力して下さい。", _
cnsTITLE, "C:\") ' @
If StrConv(strPATHNAME, vbUpperCase) = "FALSE" Then Exit Sub
' フォルダの存在確認
If Dir(strPATHNAME, vbDirectory) = "" Then ' A
277複乳 忍法帖【Lv=4,xxxP】 :2011/06/02(木) 20:19:31.86
2/2 

MsgBox "指定のフォルダは存在しません。", vbExclamation, cnsTITLE
Exit Sub
End If

' 先頭のファイル名の取得
strFILENAME = Dir(strPATHNAME & cnsDIR, vbNormal) ' B
' ファイルが見つからなくなるまで繰り返す
Do While strFILENAME <> "" ' C
' 行を加算
GYO = GYO + 1 ' 先頭は1行目
Cells(GYO, 1).Value = strFILENAME ' D
' 次のファイル名を取得
strFILENAME = Dir() ' E
Loop
End Sub
278名無しさん@そうだ選挙にいこう:2011/06/02(木) 20:36:06.32
>>275
すいません
アルファベットを入れた列があるんです。
列ラベルを日付にして、それに対応するもの並べたいのです
279名無しさん@そうだ選挙にいこう:2011/06/02(木) 22:25:21.86
【1 OSの種類         .】 XP/OSX
【2 Excelのバージョン   】 Excel2003/2008forMac
【3 VBAが使えるか    .】 可
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 エクセル、文字 複数、置換


例えると
シートAのa1に”東京”b6に”都”、c3に”港区”とバラバラに存在して
別のブックに行に東京都港区とまとめているんですが、
B、Cのシートにも同じ文字列があります(一度使用した文字列は今後使用しません)

シートA、B、Cの中にある
同じ文字を一度に削除(空欄として置換)する為には
シート事に抽出→置換をするしかないのでしょうか?
(ブック事できたらもっと嬉しいですが…)
280名無しさん@そうだ選挙にいこう:2011/06/02(木) 22:28:30.02
>>276
ほぼ答えなレスを参考にあとは自力でなんとかします
ありがとうございました
ただいまモニタとにらめっこ中です
281複乳:2011/06/02(木) 22:33:33.38
>>279
なんかよくわからんけど、
シート見出しをctrl押しながら選択していけば複数のシートで同じ作業ができる
その状態で置換
282名無しさん@そうだ選挙にいこう:2011/06/03(金) 01:45:53.16
【1 OSの種類         .】 WindowsXP 【2 Excelのバージョン   】 Excel2007
【3 VBAが使えるか    .】 簡単なものなら・・ 【4 VBAでの回答の可否】 可
【5 検索キーワード     】 ピボットテーブル 絞り込み
--------------------------------------------------------
元データ(同じ人がテストを何回も受けている(10回以上で上限なし)
県名 人名 国語テストの点数 算数テストの点数 ・・・ いつ受けたか
A県 ○さん 60 70 1月
A県 ○さん 90 80 2月
:
:
A県 △さん 50 50 9月
:
:
B県 □さん 80 50 10月
:
:
B県 ●さん 70 90 12月
B県 ●さん 40 80 1月
:
:
実際にはきれいにソートはされていません。
---------------------------------------------------
これをピボットテーブルのレポートフィルタで人ごとに集計をしたい
(人を選んで、各テストの平均点・分散・テストを受けた回数、時系列推移をみたい。)
のですが、人を選ぶときに、入っている莫大な数の人名から選ぶため、探すのが難しいです。
所属=県で絞り込んだ後、人の絞り込みをしたいのですが、レポートフィルタを二つ設定しても連動しないため、
「県」を一つに指定しても、「人」のレポートフィルタの選択肢が狭まりません。。
なにかスマートな解決方法はないでしょうか?
県-人名の所属データは別にはない状態です。
(もし使うとしたら、元データから新たに作らなければなりません。)
よろしくお願いします。
283名無しさん@そうだ選挙にいこう:2011/06/03(金) 02:25:32.05
>>282
まずは県と人名だけでピボットテーブルを作れば所属データは一瞬でできるんじゃない?
284名無しさん@そうだ選挙にいこう:2011/06/03(金) 11:51:05.12

マスコミが隠してきた真実を暴露するまとめサイト
【国民が知らない反日の実態】 http://p.tl/66MV
285名無しさん@そうだ選挙にいこう:2011/06/03(金) 16:14:41.49
【1 OSの種類         .】 Windows7
【2 Excelのバージョン   】 Excel2010
【3 VBAが使えるか    .】 はい
【4 VBAでの回答の可否】 否

関数についてです。1日おきにセルに数字を出すにはどうすればいいのでしょうか?

注文書を作っています。例えば今日は注文するけど、明日はなし。明後日はあり。
という場合の関数を教えてください。今は注文しない日は修正ペンで消しているので不便です。
宜しくお願いします。

286複乳:2011/06/03(金) 17:29:45.65
>>285
一行開けない場合は
A3=開始日付
A4=A3+2
一行開ける場合
A3=開始日付
A4=IF(MOD(ROW(),2)=0,"",A2+2)
287 忍法帖【Lv=3,xxxP】 【東電 76.8 %】 :2011/06/03(金) 19:22:45.60
>>285
数字を出すってどんな数字を出したいのですか?

あと、どんなレイアウトでやってるのですか?
288名無しさん@そうだ選挙にいこう:2011/06/03(金) 21:05:03.58
4/1…1
4/2…
4/3…1
数字って書いてるところみると日付は全部入ってて注文個数を飛ばしでいれたいのかな?
289287 忍法帖【Lv=3,xxxP】 【東電 78.2 %】 :2011/06/03(金) 21:21:08.84
例えば>>288のような感じでA列に日付が入ってて一日おきに”1”という数字を入れたいとかだと
日付のシリアル値を参照して偶数・奇数別に空欄と”1”を割り振る、
=IF(A1=ODD(A1),"1","")
などが考えられるけど。・・・単純に一日おきでいいの?(年中無休?)
290285:2011/06/04(土) 08:06:01.47
説明不足で申し訳ないです。
注文書は業者に送るFAXです。毎日その業者には注文はするのですが、
ある商品だけが1日おきの注文になります。
FAX注文書はexcelで作り、毎日数量を手入力しています。

りんご 1コ
みかん 1コ
 

みたいな感じです。ちなみに年中無休です。宜しくお願いします。
291複乳:2011/06/04(土) 09:21:23.22
>>290
あぁ、そういう意味か・・
注文書は当日に作るってことでいいのかな

偶数の日だけ表示なら
=IF(MOD(TODAY(),2)=0,"りんご","")
奇数の日だけ表示なら
=IF(MOD(TODAY(),2)=1,"りんご","")
292エスパー:2011/06/04(土) 10:29:07.49
日がたつに連れて勝手に表が伸びるってことかも?
293名無しさん@そうだ選挙にいこう:2011/06/04(土) 11:56:05.74
エクセル2003です。マクロで何枚か連続で印刷をする際、「××を印刷しています」という表示がでないようにしたいのですが(画面がチラチラするので)、うまくいきません。次のやり方のどこがおかしいでしょうか?

Sub test()
Application.Screenupdating = false
(印刷処理)
Application.Screenupdating = true
End Sub
294大門さん :2011/06/05(日) 07:57:16.17
>>293
Screenupdating = false はダイアログやユーザーフォームには効かないようです。
イベントを無効にするやつをお試しください。
それでダメだったらウィンドウロック?だかのAPIを使うか
もしくはフック乳って人にサブクラス化について聞いてみるとよいでしょう。
295名無しさん@そうだ選挙にいこう:2011/06/05(日) 17:37:38.35
=IF(A2="あああ","○","×")
みたいには出来るのですが
たとえば
A2に"あああ","いいい","ううう","えええ","おおお"
みたいにいずれかが入っていたら真、いずれもなければ偽ってしたい場合
ネストするしかないのでしょうか?

あと
A2に"あああ"とC2に"いいい"で二つとも真の場合は○としたい場合
IF(A2="あああ",IF(C2="いいい","○","×"),"×")
としているのですが、これが最良の方法なんでしょうか?
296名無しさん@そうだ選挙にいこう:2011/06/05(日) 17:55:59.58
>>295
なにをもって最良の方法というか知らないけれど
論理関数の AND 又は OR を使う手もある
後者だと
=IF(AND(A2="あああ",C2="いいい"),"○","×")
297複乳:2011/06/05(日) 18:07:43.92
>>295
=IF(A2&C2="あああいいい"),"○","×")
とかも
あんまり量が多いなら、表を作ってvlookup辺りで値を引っ張ってくるとか
298名無しさん@そうだ選挙にいこう:2011/06/05(日) 19:24:30.93
それだと
A2に"あああい"とC2に"いい"や
A2に"ああ"とC2に"あいいい"や
A2に"あああいいい"とC2は空セルなどの場合、
条件とは一致してないのに○になっちゃうぞ

相変わらず複乳は抜けてるなぁ
299名無しさん@そうだ選挙にいこう:2011/06/05(日) 19:24:31.82
それだとA2が“ああ”でB2が“あいいい”のときにおかしくなっちうの☆
300複乳:2011/06/05(日) 19:34:57.54
本当だ
みんなすごいね♪
301名無しさん@そうだ選挙にいこう:2011/06/05(日) 20:41:20.81
みんながスゴいんじゃない、おまえがショボいだけ

こんなの、ほぼ同時に同じ内容の指摘が入るくらいで、誰でも気付くことだ


複乳は知識はそこそこあるが、如何せん思考力、応用力、判断力が無さ過ぎる
いわば、学校のテストではそこそこの点数取れるが、社会に出たら使えないタイプ
302名無しさん@そうだ選挙にいこう:2011/06/06(月) 03:51:44.01
ある程度入る文字の制約が予測できる上での発言だと思う
もちろんフック乳も最初から分かってるし
質問者も応用して使ってねって言われてることはわかってるよ

唯一何も分かってないのは右も左も見えずにプギャーしてる人
303名無しさん@そうだ選挙にいこう:2011/06/06(月) 06:57:51.96
だとしたら、本人が
> 本当だ
なんて言うわけが無い

> 唯一何も分かってないのは右も左も見えずにプギャーしてる人 (キリッ!

とか言ってる奴が、一番右も左も見えてない
304名無しさん@そうだ選挙にいこう:2011/06/06(月) 09:03:00.15
【1 OSの種類 .】 WindowsXP
【2 Excelのバージョン 】 Excel2007
【3 VBAが使えるか .】 はい
【4 VBAでの回答の可否】 否

関数で質問です
野球のゲーム差を表示したいのですが勝率で首位を判別してそのチームの勝数と負数を出す関数があれば教えてください。
勝率と勝数、負数は別で表示していますのでそれを使う関数でお願いします。
305 忍法帖【Lv=2,xxxP】 :2011/06/06(月) 10:05:11.11
>304
勝率、勝数、負数の一覧表があるのなら、勝率で並べ替えてみるとわかるけど
同じ勝率で勝数、負数が複数通り該当する場合があるときはどうするの?
例:6勝4敗=12勝8敗=18勝12敗・・・・・
306305:2011/06/06(月) 10:36:42.53
>304
ちょっと勘違いしてた。 同率首位は考慮しないということで簡単に

6球団がならんでいるとして、A列から右にチーム名、済んだ試合数、勝数、負数、
引き分け試合数、勝率が並んでいるとして、勝率で並び替えることなく首位チームの
勝数、負数を出したいということなら、
=INDEX(A2:D7,MATCH(MAX(F2:F7),F2:F7,0),1)   首位のチーム名
=INDEX(A2:D7,MATCH(MAX(F2:F7),F2:F7,0),3)   首位チームの勝数
=INDEX(A2:D7,MATCH(MAX(F2:F7),F2:F7,0),4)   首位チームの負数

307名無しさん@そうだ選挙にいこう:2011/06/06(月) 11:37:53.80
教えてください。
マウスを使わず行選択をするには“Shift+space”ですよね。
その状態で、次の行に行きたい時はどうすれば出来ますか?
Shiftを押したまま複数行にするのではなくて、
一行ずつ行選択の状態のまま上下に移動したいんです。
文で説明すると難しく聞こえますが、中身を移動したいわけではなく、
ただ選択状態を行選択の状態で上下したいということです。
いろいろ検索して調べてみましたが、見つかりません。
出来ないのでしょうか?
(Win7, excel2000)
308 忍法帖【Lv=2,xxxP】 【東電 77.9 %】 :2011/06/06(月) 11:51:13.76
>307
無理みたい ↓はExcel2003用のページです。参考まで。
http://www.microsoft.com/japan/enable/products/keyboard/excel2003/default.mspx

VBA使えばセルの移動の都度、選択セルのある行を選択状態にできるかもしれませんが。
ところで、なんでそういう操作が必要なんでしょうか?
309名無しさん@そうだ選挙にいこう:2011/06/06(月) 12:19:47.30
>>307
shift+spaseそのあとshift+↓

by 2007.
310309:2011/06/06(月) 12:21:51.00
あ、複数行じゃなかったのか。orz
311名無しさん@そうだ選挙にいこう:2011/06/06(月) 12:48:43.53
>308, 309

ありがとうございます。
やっぱり出来ないんですね。
どうしてやりたいかというと、
1行ずつ出力と照らし合わせて目で確認し、確認し終わったところを
マクロで色をつけていくという作業をしているからです。
そして、出力にもペンでチェックを入れるので、ペンとマウスを
両方右手で持たないといけないので。
色をつけるのはマクロでショートカットが出来るのに、次の行に移るのに
いちいちマウスで行番号をクリックしないといけないのが手間なので、
キーボードで出来たらと思ったんです。

なんか他にいい方法があったら、ぜひ教えてほしいです。
312 忍法帖【Lv=2,xxxP】 【東電 78.8 %】 :2011/06/06(月) 13:01:45.35
>311
色を付けるマクロに 当該セルの1行全部選択+次の行のセル(もしくは行全体)を選択
っていうのを組み込むだけでいいのでは?
313名無しさん@そうだ選挙にいこう:2011/06/06(月) 13:07:44.83
>311

なるほど!
そういう方法ができるんですね!
ただ、すべての行に色をつけるわけではなくて、
色をつけずにスルーしていく行もあるんです。
でも、スルーする行のときだけは普通にセルだけで
下に↓で移動すればいいかも。
一度、やってみます!
ありがとうございました。
314名無しさん@そうだ選挙にいこう:2011/06/06(月) 13:21:09.53
>312

間違えて自分にレスしちゃいました。
すみません。
マクロ変更してみました。
バッチリいけそうです!
ありがとうございました。
315名無しさん@そうだ選挙にいこう:2011/06/06(月) 17:05:30.84

エクセルのグラフなのですが、データラベルを動かして
元データとのリンクが切れるということはありますか?
ソースがあれば教えていただきたいです。
316名無しさん@そうだ選挙にいこう:2011/06/06(月) 19:54:43.56
>>306
おかげで解くことが出来ました。
ありがとうございます
317名無しさん@そうだ選挙にいこう:2011/06/06(月) 20:39:01.38
>>314
マクロにショートカット登録すればどんな操作でもキーボードだけでできるようになるけど
318名無しさん@そうだ選挙にいこう:2011/06/06(月) 23:12:37.73
関数でA2に指定の文字列が存在(あいまい一致)した場合"●"、
なければ"×"を表示したいのですが
MATCHとかを駆使しても中々うまくいきません
教えてください
319名無しさん@そうだ選挙にいこう:2011/06/06(月) 23:32:13.34
>>318
=IF(COUNTIF(A2,"*hoge*"),"●","×")
320名無しさん@そうだ選挙にいこう:2011/06/07(火) 08:12:13.23
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2005
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 マインスイーパー
sheet3の同座標に1があったら●、
1が無かったらsheet2の周囲8マスの1の合計を表示するにはどうすればいいですか?
ワークシート関数のみでお願いします。
321名無しさん@そうだ選挙にいこう:2011/06/07(火) 10:13:40.88
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否

顧客リストが2つあります。
Aは全顧客のリストで顧客番号、住所、電話番号などの項目があります。
BはAの中の特定の顧客リストですが、電話番号の項目がありません。
ひとつひとつコピペしていくのは大変なのでいい方法はありませんか?
特定の顧客といっても一発で抽出できるものではなく、
Bを作成するときはAから不要な顧客を手作業で消したようです。
お願いします。
322名無しさん@そうだ選挙にいこう:2011/06/07(火) 10:21:52.63
>>320
まず、正規版のexcelを購入して下さい。
323名無しさん@そうだ選挙にいこう:2011/06/07(火) 10:25:36.81
>321
MATCH、INDEXを組み合わせます。具体的な状況を追加してもらうと
そのままコピペで使える式を書くことができると思います。
具体的な状況とは、
1 顧客リストAとBは別シートですか
2 関係する項目の列名、リストAのデータがある行範囲(2行目から1000行目までとか)
324名無しさん@そうだ選挙にいこう:2011/06/07(火) 10:38:06.58
>>323

ありがとうございます。
AとBは別シートです。
Aは3行目から488行目まで顧客名が並んでいます。
Bは6行目から274行目まで顧客が並んでいます。
共通している項目は、「顧客番号」「顧客名」です。
Aから移したい項目は「電話番号」「FAX番号」です。
よろしくお願いします。
325名無しさん@そうだ選挙にいこう:2011/06/07(火) 11:19:10.16
>>320
B2=IF(Sheet3!B2=1,"●",(Sheet2!A1=1)+(Sheet2!B1=1)+(Sheet2!C1=1)+(Sheet2!A2=1)+(Sheet2!C2=1)+(Sheet2!A3=1)+(Sheet2!B3=1)+(Sheet2!C3=1))
326323 【東電 78.7 %】 :2011/06/07(火) 11:46:02.24
「列名」って項目名じゃなくて、A列、B列のことだったんだけど
とりあえず、シートA側の列の並びがA列から顧客番号、顧客名、電話番号、FAX番号・・
シートB側はA列に顧客番号があるものとして、
電話番号を求めたい列の6行目 =INDEX(A!$A$3:$D$488,MATCH($A6,A!$A$3:$A$488,0),3)
FAX番号を求めたい列の6行目  =INDEX(A!$A$3:$D$488,MATCH($A6,A!$A$3:$A$488,0),4)
A!$A$3:$D$488 の D は実際のデータ範囲(電話、FAX番号までの列で可)の列を
式の一番最後の 3 や 4 は、シートAでの電話番号やFAX番号の列位置を数字で示したものを
それぞれ指定してください
327名無しさん@そうだ選挙にいこう:2011/06/07(火) 13:30:11.62
【1 OSの種類         .】 Windows7
【2 Excelのバージョン   】 Excel 2010
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否

製品番号 製品名 個数
0000001 品物a 1
0000002 品物b 3
0000001 品物a 4
0000002 品物b 2
0000003 品物c 5
・・・・・・・
製品番号が一緒の場合、足し算の合計を出しながら
重複を削除したい
どういうことかというと上記を
0000001 品物a 5
0000002 品物b 5
0000003 品物c 5
という結果にしたいです
どういう方法があるか教えていただけますか
328327:2011/06/07(火) 13:42:49.63
たびたびすみません
重複を削除ではなくて、結果が出せれば問題ないです
329名無しさん@そうだ選挙にいこう:2011/06/07(火) 14:28:35.87
>>236
ありがとうございました。
試してみます。
330 忍法帖【Lv=6,xxxP】 【東電 76.7 %】 :2011/06/07(火) 19:00:16.38
>>327
"ピボットテーブル"という言葉を出させたいが為の質問でつか?
331名無しさん@そうだ選挙にいこう:2011/06/07(火) 20:03:25.22
【1 OSの種類         .】 Windows 7
【2 Excelのバージョン   】 Excel 2010
【3 VBAが使えるか    .】 はい
【4 VBAでの回答の可否】 VBAで
【5 検索キーワード     】 vba シート名 変数

シート名が1〜30のシートあります。
ただ、左から順にあるわけではないので、

for i = 1 to 30
worksheets(i)

ではうまく参照できません。
どうすればいいのですか?
332複乳:2011/06/07(火) 20:23:08.68
>>327
・フィルタオプションの重複データを無視か何かにチェック
・ピボットテーブル
>>331
Dim i As String
i = 1
Sheets(i).Select
333名無しさん@そうだ選挙にいこう:2011/06/07(火) 21:36:26.18
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 可

デジカメで撮った100枚程度の画像を縮小してA4用紙に8枚ずつ並べたいのですが、VBAを使えば可能なのでしょうか?
excel マクロ 画像配置
等でぐぐっていますが、マクロについてそもそもの知識が無いので
どれを使ってみて、改造してみればいいのかよくわかりません。ご教授お願いします
334名無しさん@そうだ選挙にいこう:2011/06/07(火) 23:17:41.72
vba使えばできるけど、なんでその要件でExcel選ぶかが不思議だわw
普通にデジカメ付属のソフトでできんだろそんなもん
335複乳:2011/06/08(水) 00:33:57.32
>>333
画像 アルバム 印刷
とかでソフトウェア探した方が早いと思うの

もし見つけられないなら
気軽に「こんなソフトありませんか?」 Part.138
http://hibari.2ch.net/test/read.cgi/software/1306025346/
こういうスレどうぞ
336327:2011/06/08(水) 08:47:40.07
>>330
>>332
ありがとうございます
ピボットテーブル勉強になりました
337名無しさん@そうだ選挙にいこう:2011/06/08(水) 11:43:20.74
>>333
つか、XPだと写真の印刷ウィザードで何分割配置とか設定できなかったか。
338329:2011/06/08(水) 14:06:02.76
>>326

うまくいきました!
とても助かりました。
ご丁寧にありがとうございました。

339名無しさん@そうだ選挙にいこう:2011/06/08(水) 14:09:11.20
>>332
Dim i As String
じゃ、Forループが回せなくなるぞ

>>331
ループ回せて、シートの並び順ではなく名前順に参照するには
dim i as long
for i = 1 to 30
worksheets(cstr(i))
340名無しさん@そうだ選挙にいこう:2011/06/08(水) 16:01:44.03
【1 OSの種類         .】 Windows7
【2 Excelのバージョン   】 Excel2010
【3 VBAが使えるか    .】 ある程度
【4 VBAでの回答の可否】 可
【5 検索キーワード     】オートフィルタ内検索 フォーム VBA

顧客リストを作成し、自前で作成した検索ボタンから検索フォームを表示させてます
そしてその名前TextBoxに入力した文字列を含む検査結果を呼び出したいと思ってます

ActiveSheet.Range("$A$3:$D$65536").AutoFilter Field:=2, Criteria1:="=*工藤*", _
Operator:=xlAnd
マクロからのコードを参考にしてやると工藤の含む文字列を一覧で表示できたのですが検索フォームからの入力だと検索できません

Dim 検索値1 As String
  検索値1 = TextBox1.Text
ActiveSheet.Range("$A$3:$D$65536").AutoFilter Field:=2, Criteria1:="=*検索値1*", _
Operator:=xlAnd
変数の宣言が間違っているのでしょうか
文末をCriteria1:=検索値1にしても表示されないです
ご教授お願いします
341340:2011/06/08(水) 16:31:10.29
追記
Dim 検索値1 As String
検索値1 = TextBox1.Text
ActiveSheet.Range("$A$3:$D$65536").AutoFilter Field:=2, Criteria1:=検索値1

上記だと工藤の完全一致の検索しかできないので"工藤"を含むデータを表示させたいです

工藤は検索できても
工藤新一は引っかからない

説明下手でごめんなさい
342名無しさん@そうだ選挙にいこう:2011/06/08(水) 17:23:57.55
Criteria1:="=*" & 検索値1 & "*"
じゃないの
343名無しさん@そうだ選挙にいこう:2011/06/09(木) 08:12:27.33
>>342
うまくできました
ありがとうございます
344名無しさん@そうだ選挙にいこう:2011/06/09(木) 17:43:03.82
【1 OSの種類         .】 WindowsVISTA
【2 Excelのバージョン   】 Excel2007
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 excel オートフィル

A B C D
E F G H
I J K L
上の様に並んでいるデータを↓の様に縦一直線に並べたいのですが
どうすればいいのでしょうか?
A
B
C
D
E
F

=A1
=B1
=C1
=D1
=A2
=B2
=C2
=D4
まで手入力して
マウスでドラッグすると
=A3が来てほしいのに=A7が来てしまいます
どうしたらよいのでしょうか?
345名無しさん@そうだ選挙にいこう:2011/06/09(木) 19:18:57.87
>>344
=OFFSET($A$1,INT((ROW(A1)-1)/4),MOD(ROW(A1)-1,4))
と入れて下にコピー
346名無しさん@そうだ選挙にいこう:2011/06/09(木) 19:51:26.45
>>345
手掛かりが無くて困っていたので助かりました!!
有難うございます!!
347名無しさん@そうだ選挙にいこう:2011/06/09(木) 21:30:50.28
質問なんですが。CD読込みが出来ないネットブックPCにExcelを入れる事って出来ますか?
348 忍法帖【Lv=2,xxxP】 【東電 72.8 %】 :2011/06/09(木) 22:50:06.02
>347
ソフトウェアのインストールについての質問はスレ違いです
349 忍法帖【Lv=7,xxxP】 【東電 67.2 %】 :2011/06/10(金) 01:40:18.77
350 忍法帖【Lv=7,xxxP】 【東電 67.2 %】 :2011/06/10(金) 02:25:11.39
>>347
心配しなくてもDVDさえ読み込めればいいから。



ってことじゃないよな。多分。w
351名無しさん@そうだ選挙にいこう:2011/06/10(金) 18:39:59.52
相談させてください

パソコンが壊れたので、PCの修理屋に任せて直してもらったのですが
エクセルのデータを印刷するとき、印刷サイズがおかしくなってしまいました。

パソコンが戻ってきた後に初めて印刷しようとする、エクセルのシートを開いて印刷しようとすると
初期状態のページ設定のサイズが A4ではなく、写真L判になってしまっており、それらをA4になおさないといけなくなっています。
一度A4になおして印刷したファイルは、次からの印刷はA4になっており大丈夫のようです。

1枚・2枚程度ならともかく、昔作ったエクセルデータを何千枚も印刷する必要があるので、何千回もA4に直す設定が手間なのです。
どうしたら直るでしょうか、初期状態から写真L判ではなくA4になるでしょうか?

教えていただけると助かります。よろしくお願いいたします。
352名無しさん@そうだ選挙にいこう:2011/06/10(金) 19:14:07.66
>>351
コントロールパネル>プリンタ
見たら?
353名無しさん@そうだ選挙にいこう:2011/06/10(金) 19:16:14.73
質問です。
     1月  2月  3月
2005年  100  200  300
2006年  400  500  600

を2005年と2006年の1〜3月の各数字を折れ線で、2005年と2006年の各合計を棒グラフで表したいのですが、
棒グラフにする方法がわかりません。
折れ線は作れたのですが、棒グラフが上手く作れません。
真ん中に棒グラフが2本できるようにしたいのですが、教えていただけると助かります。
よろしくお願いいたします。
354名無しさん@そうだ選挙にいこう:2011/06/10(金) 20:59:29.24
よろしくお願いいたします。

【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 ほんの少し
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 countif ワイルドカード等

【例】
 12345
 478
 147
 257

という4つの数字が各行に入ってたとします。
1が使われている数・・・2個
2が使われている数・・・2個
3が使われている数・・・1個
4が使われている数・・・3個

・・・と一つの数字を文字列のワイルドカードのように抽出したいのですが
うまく行きません

どのような関数を入れるとうまく行くでしょうか。
355名無しさん@そうだ選挙にいこう:2011/06/10(金) 21:13:49.38
【1 OSの種類         .】 WindowsVISTA
【2 Excelのバージョン   】 Excel2007
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 含む文字列の数、文字列の抽出

2chのスレから何月何日に何個書き込みがあったか調べたいので
最初↓のレス番号の2001/01/26をFINDで他のセルに抽出して
3 名前:名無し :2001/01/26(金) 21:18

それをCountifで何個あるか数えさせようと思ったんですが
そもそも1つのスレで何月何日に発言があったか
リストアップさせなきゃいけない事に気付きましたOTL
書き込みがあった日にちをリストアップするには
どうしたらいいですか?
356名無しさん@そうだ選挙にいこう:2011/06/10(金) 21:14:36.40
【1 OSの種類         .】 XP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 Excel+「COUNTIF」「FIND」「INDEX」「MATCH」「OFFSET」「個数 カウント」 等

 品目  数量  単価
  A    B    C  
1 パン   1
2 ごはん  2
3 パン   
4 パン   2
5 ごはん  0
      パンの総数 3
      ごはんの総数 2

図のようにB列がnullもしくは0でない場合、その該当品目の個数をカウントしたいのです
検索した関数を入れ子にすればなんとなく出来そうな気はするんですが…
よろしくお願いします。
357 忍法帖【Lv=2,xxxP】 【東電 79.4 %】 :2011/06/10(金) 21:25:08.39
何かの宿題か?いきなり連続で質問が出てきたけど

>354
こういうときは1個と数えるのか、2個と数えるのか教えてください。それによって式が違います。
1232
106   この 3個 の数字の中の 2 の個数(=3個) が必要なのか、
257   それとも、2を含む数字の個数(=2個)が必要なのか、どちらですか?
358名無しさん@そうだ選挙にいこう:2011/06/10(金) 21:28:51.14
>>356ですが、自己解決しました
=SUMIF(A1:A5,"ごはん",B1:B5)
でOKでした

出来ないと思っていたのは条件を勘違いしていただけでした…
スレ汚し失礼しました
359 忍法帖【Lv=2,xxxP】 【東電 76.2 %】 :2011/06/10(金) 21:47:11.91
>355
Excelのシート(セル)にどのようにデータが入っているのかすら情報を
ださないんなら、回答を期待しない方がいいです。
360355:2011/06/10(金) 21:55:48.93
すいませんでした
例えばこんな感になります
A1→1 名前:名無しさん :2001/01/26(金) 20:55
A2→こんばんは
A3→げんき
A4→(空白)
A5→2 名前:名無しさん :2001/01/26(金) 22:34
A6→1おつ〜
A7→(空白)
A8→3 名前:名無しさん :2001/01/26(金) 23:40
361名無しさん@そうだ選挙にいこう:2011/06/10(金) 22:31:09.02
>>360
そういうデータだと確実性は無理だと思う。
ソースとか専ブラのdatとかからなら正確にカウントできると思うが。
362355:2011/06/10(金) 22:35:16.32
>>361
もともとまとめサイトからコピペしただけなので
正確にカウントするにはどういう風にコピペし直せばいいですか?
363名無しさん@そうだ選挙にいこう:2011/06/10(金) 22:47:33.86
360 名前: 355 [sage] 投稿日: 2011/06/10(金) 21:55:48.93
すいませんでした
例えばこんな感になります
A1→1 名前:名無しさん :2001/01/26(金) 20:55
A2→こんばんは
A3→げんき
A4→(空白)
A5→2 名前:名無しさん :2001/01/26(金) 22:34
A6→1おつ〜
A7→(空白)
A8→3 名前:名無しさん :2001/01/26(金) 23:40

>>362
このようにレスコピペがあった段階で現状のデータだとレスかレスコピペかの判断が難しくなる。
ギコナビを使っているんだけど、それだとデータ部と投稿日時の違いがわかるので
Datから正確なカウントができると思う。
まとめサイトを見てみないことにはなんともいえないなぁ。
364355:2011/06/10(金) 22:55:23.74
じゃあ、レス番号のあるところをAの列にして
コメントをBの列かなんかにコピペ出来るようにしてみます。
その場合ならカウントできますか?
365名無しさん@そうだ選挙にいこう:2011/06/10(金) 23:05:30.79
A列をレス番だとすれば「A列が空白でなければB列の何文字は日時ですよ〜」
と、式は作れるだろうね。
ま、結局それもデータの持ち方次第だし、そこまで手間をかけるのなら
日時部分も別にすれば? とは思うけど。
366355:2011/06/10(金) 23:16:44.70
そうですね・・・
えーとまずフィルターでカッコやスラッシュを含むでレス番号が入ってる行をとりだして
あとは前の文字が連番になっているかIFかなんかで確認させて
1 名前:名無しさん :2001/01/26(金) 20:55の部分を
それぞれ分離させていけば良さそうですね・・・

書き込みがあった日にちをリストアップさせるにはどうしたらいいですか?
上記のままだと日にちのリストアップしても
2001/01/06
2001/01/06
2001/01/06
2001/01/07
2001/01/08
2001/01/08

という感じになるだけなんですが
最終的には
2001/01/06 3コ
2001/01/07 1コ
2001/01/08 2コ
という感じにしたいです。
367名無しさん@そうだ選挙にいこう:2011/06/10(金) 23:22:56.27
>>366
前の書き込みをあんまりよく見てないけど、
2007だったらデータの「重複の削除」でcountif

でも、ピボットテーブルが最強。一発でそこの状態まで行く
368355:2011/06/10(金) 23:30:48.30
有難うございます!
ピボットテーブルは調べてわかんなかったら重複の削除します
本当に助かりました!!
369名無しさん@そうだ選挙にいこう:2011/06/11(土) 15:11:26.61
2010を使っています。
値1(+)を値2(-)の上に重ねるような棒グラフの作り方を教えてください。
図解するとこんな感じです
http://www.dotup.org/uploda/www.dotup.org1692014.jpg
370名無しさん@そうだ選挙にいこう:2011/06/11(土) 16:13:26.90
>>369
積み上げ棒グラフあるいは棒グラフにY誤差を付けて表示
371名無しさん@そうだ選挙にいこう:2011/06/11(土) 22:26:44.13
>>367
一度はドロップアウトした清人だからこそおっさんの面白さを見落とさず拾い上げる事ができたし、それを伝える事もできた。
同じ伝えるプロでも、金持ちに生まれてリア充一直線を突っ走ってきたアナウンサーにこの面白さは伝えられないし、
受け手が勉強ばっかりやって来たオタクではやはり理解する事ができない。
必要なのは人生経験という共通の背景。
372名無しさん@そうだ選挙にいこう:2011/06/12(日) 09:45:37.58
>>357
回答が送れて申し訳ございません。


>>354です。
数字の重複はありませんので

1232という可能性は考えなくて良いのです。
なので、2を含む数字の個数(=2個)が必要です。
373名無しさん@そうだ選挙にいこう:2011/06/12(日) 10:05:09.60
>>372
A1〜A4に入っているとして
=SUMPRODUCT((LEN($A$1:$A$4)-LEN(SUBSTITUTE($A$1:$A$4,ROW(A1),""))))
として下にコピー(9まで)
0も入れるなら
=SUMPRODUCT((LEN($A$1:$A$4)-LEN(SUBSTITUTE($A$1:$A$4,ROW(A1)-1,"")))
374 忍法帖【Lv=9,xxxP】 【東電 67.2 %】 :2011/06/12(日) 11:08:18.77
>>372
=CONCATENATE(ROW(A1),"が使われている数・・・",LEN(A$1&A$2&A$3&A$4)-LEN(SUBSTITUTE(A$1&A$2&A$3&A$4,ROW(A1),"")),"個")
375名無しさん@そうだ選挙にいこう:2011/06/12(日) 13:16:06.89
それ普通に第2軸にして軸反転でできなかったっけ?
人口ピラミッドみたいにしたいって事でしょ?
376名無しさん@そうだ選挙にいこう:2011/06/12(日) 14:39:57.62
>>373さんと>>374さんn

ありがとうございました!
これで先へ進めます!
377名無しさん@そうだ選挙にいこう:2011/06/12(日) 20:28:16.57
関数とかバンバン使いまくれる人って、やっぱ一流大学卒の人なんですか?
神奈川大学卒の先輩のExcelファイルには、SUM関数しか知らないんですが。
それも最初までSUM関数すら使ってなくて、
いちいち、=A1+A2+A3+A4みたいに一個一個足していってたんですよ。

それを見た時、この会社、ダメだって思いました。
378複乳:2011/06/12(日) 20:33:57.13
>>377
エクセルの数式程度で会社の優劣を決めるお前のほうが絶望的
379名無しさん@そうだ選挙にいこう:2011/06/12(日) 20:35:14.30
>>377
全く関係ない。
なんとなく算数・数学が不得意でない人に適性がちょっとあるかな、程度。

東大出だろうとなんだろうと、関数を使えない人がいるのは当たり前。
エクセルに興味がなかったら覚えないだろ、そういうもんだ
380名無しさん@そうだ選挙にいこう:2011/06/12(日) 20:37:48.63
>>377
ついでに、お前が新入社員だとしたら、かなり程度の低い新入社員
そうじゃないとしたら、複乳と同じコメントにするわ
381名無しさん@そうだ選挙にいこう:2011/06/12(日) 21:52:02.41
>>378-380
レスありがとうございました。
大変、勉強になりました。
382名無しさん@そうだ選挙にいこう:2011/06/13(月) 06:10:45.19
中央大卒の知り合いなんか=SUM(A1*B1)なんてやってたので=A1*B1でいいと教えてやった。
383名無しさん@そうだ選挙にいこう:2011/06/13(月) 13:37:08.65
コンピューター言語の文法をまったく知らないと、応用するのは難しいよ
変に「こう書かなきゃいけない」って思い込むのは別に珍しいことじゃない
384名無しさん@そうだ選挙にいこう:2011/06/13(月) 23:44:12.42
"たばこ大増税&出荷停止。
でも個人輸入すれば大丈夫。日本語の輸入代行も多数。
「タバコ 輸入代行」とかで検索するとあるある、、、
送料込みで1箱90円とかの激安サイトもある。"
385名無しさん@そうだ選挙にいこう:2011/06/14(火) 10:20:21.47
【1 OSの種類         .】 win7
【2 Excelのバージョン   】 Excel2010
【3 VBAが使えるか    .】 なんとか
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 VBA 展開 階層 ツリー

金銭出納帳入力ソフトを作ろうと構想段階で色々調べているのですが
http://www.joy.hi-ho.ne.jp/hootown/genkin.html
このソフトみたく科目を入力するとその科目項目の登録摘要の階層展開コードが知りたいです。
まったく現時点でのコードが組めてないのでVBAでの回答は否とさせていただきました。
386名無しさん@そうだ選挙にいこう:2011/06/14(火) 10:34:13.91
上記訂正
【4 VBAでの回答の可否】 可
>>1を読み直したんですが、VBAでの回答を希望です
すいません、よろしくお願いします
387名無しさん@そうだ選挙にいこう:2011/06/14(火) 11:00:40.42
>>385
スレ違い
Excelとは関係ないアルゴリズムとかの話は、ここでは取り扱っておりません

つーか、そのファイルのソース見ちゃえば早いんじゃね?
まあ凄まじくクソなソースだけどなw

定数ってものを知らないようで、バラバラにリテラル値使いまくりだし
クラスも使えないようで、冗長なコードになってるし
インデント規則もバラバラだし、変数の連続宣言で型指定忘れてるところ多いし
388名無しさん@そうだ選挙にいこう:2011/06/14(火) 11:42:45.22
>>387
無知ですみませんでしたw
VBAでどうにかしてるものだと思ってたんで質問したんですが
スレ違いでしたか…
ソース見るにもロックかかってみれなかったんでorz

となると科目コード一覧と摘要コード一覧を別シートに記述してそこから読み取るしかないのか
そうするとコードが膨大で探す手間が多くなる気がするんだけど、仕方ないのかな…
389名無しさん@そうだ選挙にいこう:2011/06/14(火) 12:36:15.45
>>387
言い方にとげがあるよ、お前
もう少し丁寧に言えカス
390名無しさん@そうだ選挙にいこう:2011/06/14(火) 13:11:03.48
>>389
フォローありがとう!
いいんだ、できないみたいだし
それがわかっただけでも十分です
391名無しさん@そうだ選挙にいこう:2011/06/14(火) 13:25:30.76
>>387
OpenOfficeOrgで開けば見れる
コード見たが、こんなんでもやっていけるんだと自信が出る
392名無しさん@そうだ選挙にいこう:2011/06/15(水) 05:38:41.78
以前(もう数か月も前ですが)ここの親切な方にかなり複雑なVBAを組んだEXCELを作っていただいたのですが今だにそれをいじれません。どうしたらよいでしょうか?
393名無しさん@そうだ選挙にいこう:2011/06/15(水) 06:13:56.45
そのEXCEL(ブック)をうpして、どう弄りたいのか書けば、別の親切な人が弄ってくれるかもよ。

但しパスワードが掛かってたり、二次配布禁止と言われてるものの場合はそれ出来ないけどな。
EXCELの場合、パスを外すのはリバースエンジニアリングに当たらないから、個人的に外して
中身見るのは問題ないけど、そうやって得たコードを第三者に晒すと問題有りだから。

その場合は、自分で勉強して弄れるようになるか、それ作った人の再降臨を待つかだな。
つーか、それ作った人だって、生まれたときからVBAの知識があったわけではなく、最初は君と同じで
VBAなんて全く組めない弄れないところから初めて、勉強してVBA使えるようになったわけだから
君もせっかくサンプルがあることだし、これを機に、それを基に、勉強初めてみたら?

パス付きの中身の見方は、一つ上にも書いてあるし、ググればExcelでの方法も見つかる。
394名無しさん@そうだ選挙にいこう:2011/06/15(水) 11:17:26.85
パスはかかってないけど二次禁止…
神様、もう一度…
395名無しさん@そうだ選挙にいこう:2011/06/15(水) 12:28:18.58
> せっかくサンプルがあることだし、これを機に、それを基に、勉強初めてみたら?
396名無しさん@そうだ選挙にいこう:2011/06/15(水) 12:36:47.39
クソうぜえな
397名無しさん@そうだ選挙にいこう:2011/06/15(水) 15:41:10.81
作業標準時間が15分だとします。

各作業員(A,B,C)がおのおの作業します。
それぞれ1ヶ月間に作業した結果→12分、8分、11分・・・・・・・・
作業員個々の1ヶ月計の標準時間を求める関数を教えてください。
398名無しさん@そうだ選挙にいこう:2011/06/15(水) 16:38:24.20
>>397
標準時間の求め方は複数有り、どう求めるかは企業の方針とかで変わってくるし、その部分はExcelとは関係ない話
なので、まずは求め方を確立した上で、それをExcelに計算させようとした場合に解らないことがあったらまた来なさい

例えば、「円の面積はどうやって求めたら良いですか?」というのはスレ違いで、円の面積の求め方は解っている上で、
Excelにおいて円周率を関数で返す方法や、2乗の入力方法が解らないと言う場合に
「円周率はPI()関数で、2乗は^2」とか教えるのがこのスレの範疇
399名無しさん@そうだ選挙にいこう:2011/06/15(水) 17:09:26.10
はい。了解
400名無しさん@そうだ選挙にいこう:2011/06/15(水) 17:30:05.78
>>395
数か月勉強して最初よりはるかに分かるようになって、
それによっていただいたものの複雑さがより一層理解できてしまった
401名無しさん@そうだ選挙にいこう:2011/06/15(水) 18:04:07.00
▼━質問テンプレ (出来れば使ってね) ━━━━━━━━━━━━
【1 OSの種類         .】 Windows 7
【2 Excelのバージョン   】 Excel 2010
【3 VBAが使えるか    .】 はい
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 countif 見分け
今はcountif(範囲,"*"&a1&"*")といふうにそれがあればカウントするようにしているのですが、
涼と涼香の二人がいる場合、涼香で両方がカウントされて困っています。

ただ、検索対象セルは「涼、涼香」と入れることもありますので、
そのときは両方に1ずつカウントできるようする方法を教えてください。
402名無しさん@そうだ選挙にいこう:2011/06/15(水) 18:37:20.01
区別したけりゃ"*"外せ

あと
> 検索対象セルは「涼、涼香」と入れることもありますので
その間違った使い方を改めろ

検索対象セルには「涼」あるいは「涼香」のいずれかのみを入れること
両方の結果を出したければ、検索対象セルは「涼、涼香」と入れるのではなく
検索対象セルと数式を複数用意して、それぞれに「涼」と「涼香」を個別に入れろ
403複乳:2011/06/15(水) 18:46:38.69
countif(範囲,"涼香")
で「涼」「涼香」「涼、涼香」の数
そこからcountif(範囲,"香")
を引けば「涼」の数が
countif(範囲,"、")
で「涼、涼香」の数が決まる

「涼」「涼香」「涼、涼香」の数から
「涼」の数をひいて
「涼、涼香」の数がひけば
「涼香」の数が出る

後はテキトーに足し算
404 忍法帖【Lv=10,xxxPT】 【東電 76.9 %】 :2011/06/15(水) 19:12:50.01
>>397
アベレージ関数を使って式を作ってください。
いや、作りなさい。

他に方法が色々とあってもアベレージ関数であなたは作りなさい。
405複乳:2011/06/15(水) 19:16:40.96
アベレージ関数っていつも綴り分からない。つ買わないけど
あとそれエラーになるんじゃね
406名無しさん@そうだ選挙にいこう:2011/06/15(水) 19:17:31.90
>>404
標準時間ってものを理解してから回答した方がいいよ
407 忍法帖【Lv=10,xxxPT】 【東電 76.9 %】 :2011/06/15(水) 19:27:20.17
>>406
あまりにも漠然とした質問だからそんなの今回はどうでもいいの。
408名無しさん@そうだ選挙にいこう:2011/06/15(水) 19:47:09.06
標準時間ってものを知らない人には、
「標準」や「時間」というのが漠然とした概念だから、質問が漠然としているように見えるのかもしれないが
標準時間ってのは漠然とした概念ではなく、厳然たる意味のあるものなのだよ
409名無しさん@そうだ選挙にいこう:2011/06/15(水) 21:27:57.92
標準時間に厳然とした意味があるかどうかにかかわらず、
>>397 の質問は漫然としてるだろ?

漫然としてないなら、答えてやれよ。
410名無しさん@そうだ選挙にいこう:2011/06/15(水) 22:47:27.12
1 Windows XP、2 Excel2003、3 VBAが使えるか:いいえ、
4 VBAでの回答の可否:否 5 検索キーワード:ピボットテーブル

質問)下記のようなピボットテーブルを作りたいのですが、
カラー比率は出せるのでしょうか?

所属,社員コード,印刷枚数,カラーモード(元データ)
経理,111111,10,カラー
経理,111111,20,モノクロ
総務,222222,15,モノクロ
経理,333333,50,カラー

所属|社員コード|印刷枚数|カラー比率 (ピボットテーブル)
-----------------------------------
経理|111111  |30   |33%
経理|333333  |50   |100%
総務|222222  |15   |0%
411名無しさん@そうだ選挙にいこう:2011/06/16(木) 02:09:47.61
>>409
スレ違い(>>398参照)
スレ違いと言われて質問者は了解してるんだから、関係ない奴が駄々こねるな

>>410
ピボットのみじゃ無理っぽい
でもカラー比率自体は数式で簡単に出せるんだから、元データの方で
カラー比率フィールドを追加してやればいいんじゃね?
412名無しさん@そうだ選挙にいこう:2011/06/16(木) 20:21:09.29
エクセル2010を使っています。
グラフ作成で、とびとびのデータを線で繋ぎたいのです。
2003ではツールのオプションで補完して線を繋ぐという設定がありましたが、2010で同じような設定画面を見つけられません・・・
よろしくお願いします。
413名無しさん@そうだ選挙にいこう:2011/06/16(木) 20:30:43.38
414名無しさん@そうだ選挙にいこう:2011/06/16(木) 20:35:49.95
>>413
助かりました
ありがとうございました
415名無しさん@そうだ選挙にいこう:2011/06/16(木) 21:54:06.73
>>411
脊髄反射乙。
ひょっとして回答要求してるとでも思ってるのか?
416名無しさん@そうだ選挙にいこう:2011/06/16(木) 22:06:27.35
マルチプランのデータをExcel5.0で開けることまでは
調べてわかったのですが、Excel5.0をXPにインストールすることは
可能でしょうか?Windows3.1対応らしいのですが
XPにインストール可否に関する回答がうまくみつかりません。

もしくはマルチプランのデータをXPのExcel2000or2003で
開く良い手立てはないものでしょうか?
被災した知人がデータ流されてしまったようなので
昔の船の設計に関するデータをあげようとFD見つけたものの
開けなくて困っております。
417複乳:2011/06/16(木) 22:24:49.75
マルチプラン 変換
でぐぐればイロイロでてくるけど
どれが確実かは分からない
418名無しさん@そうだ選挙にいこう:2011/06/16(木) 23:28:47.46
もうちょっと調べてみます
419名無しさん@そうだ選挙にいこう:2011/06/17(金) 04:47:23.45
>>415
そうムキになりなさんな
420410:2011/06/17(金) 08:36:07.59
>411
回答ありがとうございます。

関数で試してみます!
421名無しさん@そうだ選挙にいこう:2011/06/18(土) 02:59:24.19
>>400
とりあえずメール送ってみたら?
それで返事が来なかったらその人はそれ以上やる気が出ないってことだ
ここまだ見てるならメールの確認くらいはしてくれるだろうし
422名無しさん@そうだ選挙にいこう:2011/06/18(土) 16:35:36.96
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2000
【3 VBAが使えるか    .】 -
【4 VBAでの回答の可否】 -
【5 検索キーワード     】 エクセル 終了できない
頻繁に(一日数度)エクセルが終了できない状態になります
マウスでセルをクリックすると、クリックしたセルからドラッグ選択状態になり
選択を外すことも、他のセルを選択することもできなくなります
こうなるとキー入力も受け付けず、保存も×ボタンで終了することもできません
他のアプリに切り替えるとそちらは正常に動作していますが
背面ではドラッグ選択状態のまますごい勢いでスクロールしています
終了するには強制終了しかありません

うまく説明ができませんがなにか解決法わかる方いませんか
423名無しさん@そうだ選挙にいこう:2011/06/18(土) 16:48:09.48
>>422
とりあえず、OS、Excelのクリーンインストール

面倒だとかは言うなよ
自分でできることすらやろうとしないなら、(゚听)シラネ ってことになるので
424名無しさん@そうだ選挙にいこう:2011/06/18(土) 16:56:29.47
昨日OSクリーンインストールして再発したので途方にくれています

エクセル以外にも必要なソフトを何点か入れているので、完全にきれいな体ではないですが
かなりきれいなはずです
1年ちかく同じ構成(ハード、ソフトとも)で問題はなく、2週間くらい前から突然症状が発生しています
425 忍法帖【Lv=11,xxxPT】 【東電 75.1 %】 :2011/06/18(土) 17:06:24.02
>>422
オプションに反復計算という項目にチェックが入っていたらチェックを外す。
426複乳:2011/06/18(土) 17:19:34.83
>>422
キーボード・マウスになんか詰まってるだけとか・・・
キーボードとマウスを試しに外してみるとか
427422:2011/06/18(土) 17:51:54.50
>>425
入っていませんでした

>>426
外しても(症状発生時に交換しても)変化なしでした
アプリを切り替えればそちらでは問題なく操作できるので、ハードは問題ないと思います
428名無しさん@そうだ選挙にいこう:2011/06/18(土) 18:11:44.55
>>424
なんで OS クリーンインストールしたのに、エクセル以外のソフトが入ってるんだ?

他のソフトが必要だとしても、まずエクセルだけで確認するだろJK
429 忍法帖【Lv=11,xxxPT】 【東電 76.8 %】 :2011/06/18(土) 19:29:25.05
>>424
システムの復元だな。2週間前を復元ポイントで。

あ、クリーンインストールしちゃったんだっけ?
じゃあ無理か。
430名無しさん@そうだ選挙にいこう:2011/06/19(日) 20:00:42.84
Dim s as string
do
s = "test"
Msgbox s
loop

こういうのを実行してしまった時はどうすれば終了できるんでしょうか?
431名無しさん@そうだ選挙にいこう:2011/06/19(日) 20:02:29.32
>>430
ESCを押して中断
432名無しさん@そうだ選挙にいこう:2011/06/19(日) 20:03:42.17
>>430
ctrl+break
>>431だとすぐにメッセージでない?
433名無しさん@そうだ選挙にいこう:2011/06/19(日) 20:05:48.19
>>432
ESCを暫く押しっぱなしだと中断できるよ
434名無しさん@そうだ選挙にいこう:2011/06/19(日) 20:16:16.15
>>433
2003で10秒ぐらい試してみたけどだめだったよ
メッセージボックスが閉じてまたすぐ開くのくり返しになる
435名無しさん@そうだ選挙にいこう:2011/06/19(日) 20:23:01.51
>>434
2010では出来るんだけどなあ。まあでも一発で止まるctrl+breakの方がいいね
436名無しさん@そうだ選挙にいこう:2011/06/19(日) 20:30:37.28
▼━質問テンプレ (出来れば使ってね) ━━━━━━━━━━━━
【1 OSの種類         .】 Windows xp
【2 Excelのバージョン   】 Excel 2003
【3 VBAが使えるか    .】 はい
【4 VBAでの回答の可否】 否

ファイル内の別シートを参照するマクロを組み込んだセルを
異なるファイルA.xlsからB.xlsへコピペした際、
コピペしたマクロが下記のように書き換わってコピペされてしまいます。
マクロ内を変化させることなくコピペする方法はないでしょうか?

○コピぺ元マクロ
=SUMIF(シート名!M11:M22,">0",シート名!M11:M22)

○コピぺ先にコピーされたマクロ
=SUMIF('[参照元file.xls]シート名'!M11:M22,">0",'[参照元file.xls]シート名'!M11:M22)
437名無しさん@そうだ選挙にいこう:2011/06/19(日) 20:38:09.89
>>436
エクセルの仕様だからねえ
自分だったら置換を使うかな
438名無しさん@そうだ選挙にいこう:2011/06/19(日) 20:59:50.19
>>436
ファイルA.xlsをコピー、
B.xlsから逆にシートを移動してくるとか
場合によってはそっちの方が楽。
439名無しさん@そうだ選挙にいこう:2011/06/19(日) 21:26:31.81
>436
コピー元の数式バーをコピーしてコピー先の数式バーに張り付け。
これでもめんどくさいけど。
440名無しさん@そうだ選挙にいこう:2011/06/19(日) 21:31:18.69
>>436
突っ込むの忘れてたけどそれは
「マクロ」ではなく「数式」でございます
441436:2011/06/19(日) 22:22:30.73
>>437
なんと!仕様でしたか。
コピペは諦めて、骨は折れますが置換で訂正していきます。

>>438
その場合にも同じ現象が発生しますね。
異なるファイル間では、コピペだけでなくシート移動も同じと見なされるようです。

>>439
ひとつふたつならやってみるのですが、
セルの数×ファイルの数でみると途方もないッス。

>>440
数式でしたね。
指摘ありがとうございました。
442名無しさん@そうだ選挙にいこう:2011/06/19(日) 23:08:24.15
>>441
>コピペは諦めて、骨は折れますが置換で訂正していきます。
>セルの数×ファイルの数でみると途方もないッス。

それこそ、「マクロ」でやればいいと思うんだが...。
443名無しさん@そうだ選挙にいこう:2011/06/21(火) 01:58:27.22
【1 OSの種類         .】 Windows XP・SP3
【2 Excelのバージョン   】 Excel 2000(自宅)・Excel 2003(職場)
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 マクロ 印刷 excel

エクセルのシートの"$B$1:$O$20"に表があり、
別シートからのデータを持ってきています。
444名無しさん@そうだ選挙にいこう:2011/06/21(火) 02:04:44.77
該当者が1〜300くらいおり、
筆記試験を何回か行い、
その累積データを個別の帳票にして
その300人分を班毎に印刷したいです。
300人は40〜50程度の小班に分かれています。
できれば
某班の10番から14番というように
指定番号の該当者のみを印刷できるようにしたいです。

その印刷は1回で全部終了するのではなく
追加されるデータがいくつかたまったら
また班毎・指定番号毎にに印刷することになると思います。
445名無しさん@そうだ選挙にいこう:2011/06/21(火) 02:07:15.58
下記は私が考えたマクロですが
失敗作で班の先頭の者の帳票が複数枚出るだけです。
何がまずいのか、どうすれば思うように印刷できるか、
アドバイスをいただけますと助かります。
446名無しさん@そうだ選挙にいこう:2011/06/21(火) 02:11:22.01
Sub 個票印刷()
Range("Q4").Select
hajime = InputBox("最初に印刷する該当者の番号を半角で入力してください(1〜300)", "開始該当者番号の入力")
owari = InputBox("最後に印刷する該当者の番号を半角で入力してください(1〜300)", "終了該当者番号の入力")
For I = hajime To owari
Range("q4 ").Select
ActiveCell.FormulaR1C1 = I
Range("B1:O20").Select
ActiveSheet.PageSetup.PrintArea = "$B$1:$O$20"
ActiveWindow.SelectedSheets.PrintOut Copies:=1
Next I
End Sub
447名無しさん@そうだ選挙にいこう:2011/06/21(火) 02:15:59.97
コメント部分は省略しました。
448名無しさん@そうだ選挙にいこう:2011/06/21(火) 05:52:49.99
A1に 「1.23」 と数字入力したものを、セルの書式設定-ユーザ定義を使って
「整数部分1と小数点以下23です」
…と同じA1セルに表示させたい場合なのですが
ユーザ定義で 「"整数部分"0."と小数点以下"00"です"」 とすると
小数点が表示されてしまいうまくいきません
小数点「. 」をユーザ定義書式のみで消す方法はもしかしてないのでしょうか
449名無しさん@そうだ選挙にいこう:2011/06/21(火) 06:11:17.34
はい、ユーザ定義書式というか、表示形式のユーザ定義のみで消す方法はありません。
450名無しさん@そうだ選挙にいこう:2011/06/21(火) 06:27:31.50
早朝だというのに回答ありがとうございます
もうちょっと方法を拡張、限定解除して・・・
「数字を分解して別のセルに再結合(?)する方法を使わずに、
さらにVBAも使わずに、同一セル内で(数字として入力された)数字の小数点「. 」を消す方法は無い」
ということでいいでしょうか
451名無しさん@そうだ選挙にいこう:2011/06/21(火) 06:32:38.62
>>450
ないよ
452名無しさん@そうだ選挙にいこう:2011/06/21(火) 06:39:08.70
ありがとうございました
意外な…自分としてはかなり意外な「出来ないこと」があると知りました
他の方法で対応しようと思います
回答ありがとうございました
453名無しさん@そうだ選挙にいこう:2011/06/21(火) 07:01:03.61
整数部・小数点以下だけをあらわすなら、姑息な手段(2段にする)ができるけど、>>450は無理
454名無しさん@そうだ選挙にいこう:2011/06/21(火) 07:18:03.67
なんで「書式だけ」にこだわるのかわからん
小数点を白にすればいいじゃん
455名無しさん@そうだ選挙にいこう:2011/06/21(火) 10:03:04.28
>443-447
そりゃあ、印刷範囲が固定されているから
>ActiveSheet.PageSetup.PrintArea = "$B$1:$O$20"
>ActiveWindow.SelectedSheets.PrintOut Copies:=1
同じ部分が何度も印刷されるのは当たり前です。
そもそもの話、データ範囲は単独のシートのB1:O20だけですか?
300人分にもならない(14列×20行=280個のセル)けど。
マクロを見る限り、複数シートというわけでもなさそう。
人名や識別番号など個人情報に関する部分を抜いた画面イメージを
示してもらうと、誰か親切な人がつくってくれると思う。
456名無しさん@そうだ選挙にいこう:2011/06/21(火) 17:04:33.22
>>454
> 小数点を白にすればいいじゃん

出来るん?それ
457443:2011/06/21(火) 18:19:27.32
>455
ありがとうございます。

「別シートからのデータを持ってきています。 」
と書いたように別シートからです、
読みにくい変な長文の記入をして申し訳ありません。

「入力」という別シートの$A$3:$BW$310からデータを持ってきています。
印刷するシートは「印刷」というシートで"$B$1:$O$20"が印刷範囲です。
458443:2011/06/21(火) 18:22:22.70
入力シート
A  B    C    D   E  F  G   H
連番|班内番号| 氏名 |date1|date2|date3|‥‥ |date10|
001 | 1   |山本太郎|80 |90 |70  |15  |50  |
002 | 2   |山本次郎|80 |70 |70  |10  |40  |
003 | 3   |山本三郎|40 |90 |50  |20  |20  |
004 | 5   |山本四郎|50 |60 |70  |10  |10  |

300 |40   |山本五郎|80 |90 |70  |10  |100 |

平均点         |50.3 |60 |60  |20.1 |50 |
459名無しさん@そうだ選挙にいこう:2011/06/21(火) 18:26:36.98
印刷シート
( )内は「入力シート」から連番単位で持ってきます。
A  B    C  D   E   F  G   H
   番号   (1)  氏名 (山本太郎)

回数|1  | 2 | 3  |4 |5 |
|(80) |(90) |(70) |(15) |(50) |

回数|30  |31 |32 |33 |平均 |
|(80) |(90)|(70)|(15) |(50) |
460455:2011/06/21(火) 19:55:18.33
>443
印刷シートの Q4 セルに設定した数字によって
印刷シートの B1:O20のエリアの内容が決まるはずなのに、
同一人物の内容のまま複数枚印刷してしまう、ということならば、
マクロの中に 自動再計算をオフにしているところ
〜.EnableCalculation = False
がありませんか? ないのであれば、
ActiveCell.FormulaR1C1 = I と Range("B1:O20").Select
の間にmsgbox("印刷します")
みたいに操作待ちのタイミングを設けたらどうですか?

461名無しさん@そうだ選挙にいこう:2011/06/21(火) 20:21:17.45
質問です。

【1 OSの種類         .】 Windows XP・SP3
【2 Excelのバージョン   】 Excel 2003
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 EXCEL INT エラー

=INT((34.8-34)*10)
この結果が8じゃなく7になってしまうんですが、
なぜなんでしょうか・・。
462複乳:2011/06/21(火) 20:27:14.11
>>461
小数誤差
でぐぐれ
=34.8-34

0.7999999997
になる
463461:2011/06/21(火) 21:09:45.04
>>462
ありがとうございました。
解決策がわかりました。
464名無しさん@そうだ選挙にいこう:2011/06/22(水) 06:24:19.55
こういうのって、予備知識が無くてもバカじゃなきゃ気付くよな

数式でもVBAコードでも同じだけど、意図通りの結果が出なければ
ネスト(入れ子)や連続処理をバして、ひとつひとつの計算や関数処理などの結果を確認するのは
小学生でも出来る簡単かつ初歩的な確認内容

つまり
A1=34.8-34
B1=A1*10
C1=INT(B1)
みたいにな

ここまでやった上で、少数誤差という予備知識が無いが故に、
「=34.8-34が0.8ではなく0.7999・・・になるのは何故なんだ?」って質問なら解らなくもないが
予備知識が無くても出来る確認すらせずに、「なんかおかしい」「何故こんなことになるんだ?」とか
騒ぐ奴は、会社じゃ大抵お荷物扱いだったりする

Excelに限らず、パソコンに限らず、慢性的な問題が起きたときに、原因はともかく、順を追って確認して
何処で問題が発生してるかすら特定できないような奴には、ほんと、勘弁してくれって感じになる


とか愚痴ってみる
465名無しさん@そうだ選挙にいこう:2011/06/22(水) 08:16:11.46
ほんと勘弁してほしいわ意味ないオナニー解説は
466名無しさん@そうだ選挙にいこう:2011/06/22(水) 19:14:03.57
あるセルに入力されている数値分だけ、
行すべてコピーして下に数値分挿入ってどんな構文書けばいいでしょうか。
コピー挿入が終われば、次の行の数値を読んで、また同じ処理を繰り返したいです
467名無しさん@そうだ選挙にいこう:2011/06/22(水) 19:42:17.04
ネタにマジレス・・・
468443:2011/06/22(水) 20:00:17.46
すみません。「Q4」は誤りで「B26」でした。
現在、「B26」に連番を入力すると
459の画面の「氏名」に該当者の氏名が出ます(関数)。
そこでマクロボタンを押すことで、
446のマクロの
「最初に印刷する該当者の番号を半角で入力してください」
という問い合わせが出て入力し(連番A)
「最後に印刷する該当者の番号を半角で入力してください」
という問い合わせが出て入力すれば、(連番B)
連番AからBの連続する該当者の帳票が印刷できる、
となるようにマクロを作りたいと考えています。
どのようなマクロを作ればいいのか、
ご指導をお願いします。
469443:2011/06/22(水) 20:03:10.22
なお460様の書かれた
〜.EnableCalculation = False
はありません。
また「操作待ちのタイミング」を作る意味は何なのでしょう?
無知で申し訳ありません。
また、当方の国語力不足でしたいことが伝え切れていない気がします。
470ExcelVBA質問スレの568:2011/06/22(水) 20:09:31.07
>466 こんなんでいいのかな? rangeって引数や戻り値にできなかったっけ?
Sub test()
Dim myRng As String
 myRng = ActiveSheet.Range("C3").Address ' 最初のセル位置
 Do While (Range(myRng).Row < 50)
  myRng = ex_466(myRng)
  If myRng = "" Then
   Exit Do
  Else
   Range(myRng).Select
  End If
 Loop
End Sub レベル不足で長文貼れず、続く

471470:2011/06/22(水) 20:11:49.06
続き(こっちが実際にやってる部分)
Function ex_466(w_Rng As String) As String
Dim c As Range, r As Variant
 Set c = ActiveSheet.Range(w_Rng)
 r = c.Value
 If IsNumeric(r) And (r > 0) Then
  ActiveSheet.Range((c.Row + 1) & ":" & (c.Row + r)).Insert
  ActiveSheet.Range(c.Row & ":" & c.Row).Copy
  ActiveSheet.Range((c.Row + 1) & ":" & (c.Row + r)).PasteSpecial
  Application.CutCopyMode = False
 Else
  ex_466 = "": MsgBox (c.Address & "で異常終了"): Exit Function
 End If
 ex_466 = c.Offset(r + 1, 0).Address
End Function
472460:2011/06/22(水) 20:28:47.39
>443,469
VBAの実行タイミングと、シートの各セルの再計算結果が反映されるタイミングがずれるんじゃないかな、ということです。
「Q4じゃなくてB26」が何かわかりませんが、hajime に 1、owari に 3 を入れたとして、VBAは
「Q4?B26?」セルに 1 を設定して印刷のコマンドを出します。
次に間髪をいれず「Q4?B26?」セルに 2 を設定して印刷コマンドを出します。
次に間髪をいれず「Q4?B26?」セルに 3 を設定して印刷コマンドを出します。
一方、Excelの方は印刷コマンドを受たら、印刷イメージを展開してプリンタへ送るデータを組み立てます。
印刷データが出来上がるまで、VBAの処理を中断させていればいいんですが、実際のところはどうなんでしょうね。
ここから先はよくわかりません。 詳しい人、いかがですか?

473名無しさん@そうだ選挙にいこう:2011/06/22(水) 21:31:15.13
>>471
マジでありがとう!!
ばっちりす!
474名無しさん@そうだ選挙にいこう:2011/06/22(水) 23:26:19.41
わかりにくい文ですみません。
460(=472)様、ありがとうございます。

>「Q4じゃなくてB26」が何かわかりませんが

「印刷」シートの「B26」セルに連番(例「123」)を入力すると
459の画面の「氏名」に、関数(=VLOOKUP($B$26,入力!A$3:$AG$310,3))により
該当者の氏名123氏のが出るようにしてあります。
また個人の得点データも同様です。

「入力」シートのA$3:$BW$310にデータがあり、
ここからデータを「印刷」シートに持って行き、
差込印刷?をしたいということです。
475460,472:2011/06/22(水) 23:50:25.89
>474
印刷シートのB1:O20の内容は、B26セルの内容が変わるたびに「再計算」機能で変化します。
ところが、VBAで次々と変化させながら同時に印刷の指示も行うので、印刷処理が追いつかないと推測します。

hajime の値をB26セルに設定
B26セルの値によってB1:O20の内容を再計算→印刷指示→印刷データができるまでVBAの実行一時中断
B26セルの値を+1
B26セルの値によってB1:O20の内容を再計算→印刷指示→印刷データができるまでVBAの実行一時中断
・・・B26セルの値が owari の値まで繰り返す
となるようにすればいいと思うので、>460にも書いたように
ActiveCell.FormulaR1C1 = I と Range("B1:O20").Select
の間にmsgbox("印刷します")
みたいに操作待ちのタイミングを設けたらどうですか?    と提案した次第。
476443:2011/06/23(木) 00:21:25.52
ありがとうございます。
その提案を活用させていただきます。

ただ、現実にまだ差込印刷?自体のマクロができてできていないので
引き続きアドバイスをお願います。
477名無しさん@そうだ選挙にいこう:2011/06/23(木) 03:41:32.47
>>476 取りあえず印刷前に再計算を実行するようにしてみた

Sub 個票印刷()
 Dim lStart As Long, lEnd As Long, lX As Long
 lStart = CLng(StrConv(InputBox("最初に印刷する該当者の番号を半角で入力してください(1〜300)", "開始該当者番号の入力"), vbNarrow))
 lEnd = CLng(StrConv(InputBox("最後に印刷する該当者の番号を半角で入力してください(1〜300)", "終了該当者番号の入力"), vbNarrow))
 For lX = lStart To lEnd
  
 
478名無しさん@そうだ選挙にいこう:2011/06/23(木) 03:48:17.81
>>477 の続き

  With ThisWorkbook.Worksheets("印刷シート")
   .Range("B26").Value = lX
   .Calculate
   .PageSetup.PrintArea = "B1:O20"
   .PrintOut Copies:=1
  End With
 Next lX
End Sub
これでダメならPrintOutにブレークポイントを設定して印刷前にシートの値が変更されてるか確認してみ
479名無しさん@そうだ選挙にいこう:2011/06/23(木) 06:56:01.26
詳しい方、以下のマクロについて★部分が間違っていると思うのですが直し方をご教示
ください。
数日悩んだのですが、能力不足でこれ以上進めませんでした。お願いします。
-------------------------------------------------------
Sub 複数のブックを改行を入れつつ一つのシートに転記()

Dim fn, wb, x, i, n, sh, myPath
myPath = ThisWorkbook.Path & "\"
fn = Dir(myPath & "*.xls") '選択したフォルダ内のExcelファイルを検索
Do Until fn = "" '全て検索し終えると、fn = Empty となるので、その間以下を実行

If fn <> ThisWorkbook.Name Then 'ファイルが自分以外なら
Set wb = Workbooks.Open(myPath & fn) '選択したファイルを開く

For Each sh In wb.Worksheets '各シートごとに
If sh.Name = "製品名" Then ?'
x = sh.Cells(Rows.Count, 1).End(xlUp).Row '最終行取得
For i = 1 To x '2行目から最終行まで以下を実行
n = n + 1
480名無しさん@そうだ選挙にいこう:2011/06/23(木) 06:57:09.33

Workbooks(fn).Worksheets("製品名").Activate     ’★★
Rows("1:" & x).Select                ’★★
Selection.Copy                    ’★★
ThisWorkbook.Sheets("Sheet1").Activate        ’★★
Range("A" & x + 1).PasteSpecial Paste:=xlPasteValuesAndNumberFormats    
.HPageBreaks.Add Before:=.Range("A" & x + 1)     ’★★

End With
Next i
End If
Next sh

wb.Close (False)
End If

fn = Dir() '次のファイルを検索
Set wb = Nothing
Loop '繰り返し

ThisWorkbook.Sheets("Sheet1").Copy
Application.Dialogs(xlDialogSaveAs).Show Arg1:="全製品リスト.csv", Arg2:=6

End Sub
481 忍法帖【Lv=2,xxxP】 【東電 71.6 %】 :2011/06/23(木) 09:39:29.09
>479 ぱっと見ただけで指摘できるところ
>For i = 1 To x '2行目から最終行まで以下を実行 の行と
>Next i  の行は不要でしょう
(1行ずつコピペするならともかく、コピー元シートの行範囲を一度にコピペしてるから)
      それと
>Range("A" & x + 1).PasteSpecial Paste:=xlPasteValuesAndNumberFormats  と
>.HPageBreaks.Add Before:=.Range("A" & x + 1)  の
x + 1  は  n + 1  にするとともに、
>n = n + 1 は
n = 0  をマクロのはじめの方に追加するのと
n = n + x  にして .HPageBreaks.Add Before:=.Range("A" & x + 1) の次行に移動してみて。
※出力先行位置を累積してないからうまくいってないんだと思う
※dim文で宣言するのはいいけど、型指定もしましょう

482名無しさん@そうだ選挙にいこう:2011/06/23(木) 10:57:42.53
>>470
すいません。説明不足でした。
今現在実行すると、元の行+と数値分挿入してるのですが、
もとの行合わせた数値分挿入するには
どこの記述を修正すればよいでしょうか?
483470 【東電 81.7 %】 :2011/06/23(木) 12:15:07.01
>482
??? 470の例で、マクロ実行前のC3セルの値が3、C4セルの値が2だったと仮定して
C3セルの値(=3)により、4〜6行目を挿入、3行目の1行分コピー、4〜6行目に貼り付け
元C4セル(行挿入により現在はC7セル)の値(=2)により、
  8〜9行目を挿入、7行目の1行分コピー、8〜9行目に貼り付け

これじゃダメってこと?
484名無しさん@そうだ選挙にいこう:2011/06/23(木) 12:23:27.15
>>483

C3セルの値(=3)により、4〜6行目を挿入を、
C3セルの値(=3)により、3〜5行目を挿入に挿入という形にしたいです。

元の行にも上書きした上での回数分にしたいです。
485483 【東電 87.4 %】 :2011/06/23(木) 17:08:40.84
>484
挿入する行数が同じなら 4〜6行目に挿入 も 3〜5行目に挿入 も、結果は同じになるよ。
挿入する行数をひとつ減らすってことかな? >483を例に修正してみると・・・

マクロ実行前のC3セルの値が3、C4セルの値が2だったと仮定して
C3セルの値(=3)により、4〜5行目を挿入、3行目の1行分コピー、4〜5行目に貼り付け
元C4セル(行挿入により現在はC6セル)の値(=2)により、
  7行目を挿入、6行目の1行分コピー、7行目に貼り付け
ってことですか?
486483,485:2011/06/23(木) 17:16:04.86
>484   例えば、
コピー原稿を渡されて、「10部コピーお願い」と頼まれたらそのまま10部コピーするけど
「10部にして」と頼まれた場合はコピー原稿も含めて10部ということで9部コピーするよね。

元からある行も含めて、結果的に当該セルの値の数だけあればいいのなら、
挿入する行数を 当該セルの値−1 にしたらいいから、変更箇所はわかるはず。
487名無しさん@そうだ選挙にいこう:2011/06/23(木) 19:27:29.00
〉〉481
おお?
動きました(^-^)/
ズバリなアドバイスありがとうございます!
488名無しさん@そうだ選挙にいこう:2011/06/23(木) 19:27:39.72
〉〉481
おお?
動きました(^-^)/
ズバリなアドバイスありがとうございます!
489443:2011/06/23(木) 22:49:42.57
>477様、皆様
思ったように印刷できました。
ご指導ありがとうございました。
490名無しさん@そうだ選挙にいこう:2011/06/23(木) 22:55:51.69
入力用のシートを別に用意しといて、そこから数値を飛ばして、こんな感じの2段ずつ構成の表をしょっちゅう作らされるのが苦痛です。


   |売上高
部署名|-------
   |仕入高
------|-------
〇〇課|500
   |-------
   |100
------|-------
××課|200
   |-------
   |300
------|-------
★★課|150
   |-------
   |240


上手い方法はないでしょうか?
たとえば「=入力用!A2」みたいなストレートな参照式を使って、新しい部署名が1つ増えたらそのたびに見直しが増えるようなことは避けたいです。
作業用の列を作る方法がいいとは思うんですが、それをVLOOKUPとかSUMIFに参照させる式を作ったときに、あまりややこしいと
みんな嫌がるんですよね。
491名無しさん@そうだ選挙にいこう:2011/06/23(木) 22:58:40.46
>>490です。すみません。表のイメージを上手く書けませんでした。
縦の罫線を、全て一直線にそろえて、見てもらえないでしょうか。
492複乳:2011/06/23(木) 23:07:18.30
>>490
indirectとか
出力用
A1=IF(MOD(ROW(),2)=0,"",INDIRECT("入力用!r"&INT(ROW()/2)+1&"c1",0))
B1=INDIRECT("入力用!r"&INT((ROW()-1)/2)+1&IF(MOD((ROW()-1),2)=0,"c2","c3"),0)
ttp://u4.getuploader.com/esukareta/download/1/Book1.xls
493名無しさん@そうだ選挙にいこう:2011/06/23(木) 23:13:02.67
>>492
ありがとうございます。ただ、計算式が難解で・・・。
私はVBAまで使いまくれるんですが、周囲の人達がお世辞にもスキルがあると言えないので・・・。
VLOOKUPとかSUMIFくらいまでが、ギリギリ使える関数と思います。ネストもなるべく2つ以内くらい。
後々のメンテとかまで考えたとき、難しいとみんな敬遠してしまいます。
いろいろ注文すみません。
494名無しさん@そうだ選挙にいこう:2011/06/23(木) 23:16:35.28
>>493
それなら自分用と他人用を分ければいい
自分の仕事は自分用のブックでVBAでさっさと処理して、結果を本番用のブックにコピペ
他人がどんだけ苦労しようが知らん顔、でいいと思う
495複乳:2011/06/23(木) 23:18:53.29
>>493
その調子だとピボットテーブルも無理だろ
ボタンに登録して整形するマクロでもくむしか

ネスト2やら誰が見ても分かりやすい式、は諦めるしか無い

と思ったけど一個閃いた
vbaを使って
>入力用!A2」みたいなストレートな参照式
をセルに入力すればいいじゃないか
これなら君も楽、周りにも分かりやすい
vbaを教える必要もない
496490:2011/06/23(木) 23:35:29.88
>>495

やはり、マクロ抜きで計算式でいくのは無理っぽいですね・・・。
部署が増えたときの再メンテに、VBAが必要ってことですよね?
だとすると、ちょっと私以外の人に使わせるのは難しいかも・・・。
でも、何とかして解りやすくなるようにしてみます。ありがとうございました。

他にも何かご意見がありましたら、アドバイスいただけると嬉しいです。
497複乳:2011/06/23(木) 23:51:43.37
>>496
お前の仕事なんてしらねーよw

1から10までvbaで数式を入れるんだよ
Sub Macro1()
ActiveCell.FormulaR1C1 = "=入力用!RC"
Range("A2").Select
End Sub
こんな感じで部署の数もマクロで調べてdoloop辺りと組み合わせる
出来上がる表にはマクロの痕跡は残らない。これで人に嫌がられることもない
498 忍法帖【Lv=15,xxxPT】 :2011/06/24(金) 02:09:01.85
【1 OSの種類         .】 Windows7 64bit
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】エクセル 小数点 計算 関数

初歩的な質問で恥ずかしいのですが、

0.333333という数を計算で求め 小数点第2位まで表示で0.33と表示させています。(ここではA1とおきます)

でこのA1を0.3として別の計算で使いたいのですが、もともとの数が0.333333....なので異なる計算結果が出てしまいます。
どうにか0.3として計算する方法は無いでしょうか?
499名無しさん@そうだ選挙にいこう:2011/06/24(金) 03:21:23.81
>>498
TRUNC関数
500 忍法帖【Lv=12,xxxPT】 【東電 57.5 %】 :2011/06/24(金) 05:17:25.70
>>498
ROUNDDOWN関数
(この場合ROUND関数でもいけるが。)
501名無しさん@そうだ選挙にいこう:2011/06/25(土) 23:18:47.07
【1 OSの種類         .】 Windows7
【2 Excelのバージョン   】 Excel2002
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 ツールチップ コメント

人が作成したシートなんですが、
セルを選択したときに薄黄色の説明枠(縦一列のどれを選択しても同じもの)がでます
これはなんというものでしょうか?
この枠を非表示にしたいのですが、名称がわからずコメント、ツールチップも違うものでした
(作成者に聞いたら忘れたそうです)
ご教示くださいますようお願いいたします
502名無しさん@そうだ選挙にいこう:2011/06/25(土) 23:29:58.80
>>501
入力規則の入力時メッセージじゃね?
503名無しさん@そうだ選挙にいこう:2011/06/25(土) 23:34:35.93
>>502
それでした
ありがとうございます
504名無しさん@そうだ選挙にいこう:2011/06/26(日) 04:12:09.96
【1 OSの種類         .】 Windows7アルティメイト
【2 Excelのバージョン   】 Excel2002
【3 VBAが使えるか    .】 初心者、少しだけ読めます
【4 VBAでの回答の可否】 可

質問があります。
スポーツの競技成績で一つのエクセルファイルごとに10シートぐらいの量にまとめられたエクセルファイルが数百ファイル以上あるのですが

これを、この数百以上の量のエクセルファイル全てからで、各個人の成績や、細かい種目別や、条件別に 全体を統括し、種目別の順位や成績や勝率を解析できるようになりたいのですが、円滑にするためにはどうすれば

よいでしょうか?VBAやaccesなどを併用するなどのことを勉強すればいいのでしょうか?
ある種の教材で勉強したりやソフトなどを調べればなどの方向性の
ことで 良いので、教えていただけますでしょうか?
505名無しさん@そうだ選挙にいこう:2011/06/26(日) 05:39:35.94
Access使うことも検討しているなら、データを全部Accessに移しちゃえば、あとは簡単でしょ

ソースはExcelブックのままじゃなくちゃならない事情とかがあるなら、Access併用するより
VBAごり押しで、Excelのみで完結させた方が良いと思う
その場合は、まず一つのブック内で集計を出せるようになろう
この手の事をやる奴には、いきなり複数ブックの集計やろうとして煮詰まる奴も多いが
まずは単一ブックでの集計をできるようになれば、あとは親オブジェクトを付けるだけで複数ブックに対応出来る
506名無しさん@そうだ選挙にいこう:2011/06/26(日) 06:05:51.44
>>505
ありがとうございます。つまりaccessを勉強してエクセルからデーターを移すか

VBAを勉強して、集計したエクセルファイルをいくつか作って、そこから見ていく
の2通りでできるわけですね?
ありがとうございます。その方向で勉強してみます。
507名無しさん@そうだ選挙にいこう:2011/06/27(月) 20:24:14.22
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2002
【3 VBAが使えるか    .】 可
【4 VBAでの回答の可否】 不可


11を11 1.1を1.1 0.1を0.1と表示したい。

0.1から99までの数字を、有効ケタ数2ケタで表示させたい。
3ケタの数値及び、小数点以下2ケタの数字は異常値なので通常使わないので考えない。

可能なら表示形式のみで、作業列は使わない方向でお願いします。
508名無しさん@そうだ選挙にいこう:2011/06/27(月) 20:39:12.36
office2000を持ってたんで、アップグレード版のExcel2010を買ってきました。
PCにoffice2000が入っていない状態で、アップグレード版を入れたんで、
途中で古いCDを要求されるもんだと思ってたら、
なぜかインストールもライセンス認証も全部正常に終わりました。

古いCDのチェックが全くされなかったんですけど、一体どういうことですか?

509複乳:2011/06/27(月) 20:44:23.74
>>507
無理じゃねーの
>>508
どういうこともなにもそういうこと
CDチェックするソフトもあればしない奴もあるってこと
510名無しさん@そうだ選挙にいこう:2011/06/27(月) 20:46:39.50
>>507
ユーザー定義で
[>=10]0;0.0
でいいんじゃないかい?
511507:2011/06/27(月) 21:17:55.04
>>510
ありがとうございます。
表示形式でもIF関数のようなことができたんですね。
大変勉強になりました。
512508:2011/06/27(月) 21:18:49.43
>>509
そうですか。ありがとう。
513名無しさん@そうだ選挙にいこう:2011/06/28(火) 05:27:57.40
相変わらず複乳は役に立たないようだなw
514名無しさん@そうだ選挙にいこう:2011/06/28(火) 10:12:10.78
複乳は作業列がないとダメな子だから。
515名無しさん@そうだ選挙にいこう:2011/06/28(火) 13:51:09.23
【1 OSの種類         .】Windows7
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 不可
【4 VBAでの回答の可否】 不可

表示は
9+1
1+2
5+5
の様な数式のまま、その合計をSUMで出すことって出来ますか?
↑の例えで言えば、SUMで23と出るようにしたいわけです。
その上で、画面表示(印刷時)に9+1等の数式が表示されるようにしたいです。
516名無しさん@そうだ選挙にいこう:2011/06/28(火) 18:05:46.04
9+1を3つのセルに1文字ずつ分けて入れれば可能
517複乳:2011/06/28(火) 18:20:48.59
>>515
B1=LEFT(A1,FIND("+",A1)-1)+RIGHT(A1,LEN(A1)-FIND("+",A1))
B2方向にオートフィル、
C1=sum(b:b)
って感じですかねぇ
518名無しさん@そうだ選挙にいこう:2011/06/28(火) 22:07:49.43
>>516-517
回答thxです

思ったより手間かかりますね・・・手動で頑張ることにします。。
519名無しさん@そうだ選挙にいこう:2011/06/28(火) 22:13:01.23
>>518
http://officetanaka.net/excel/function/tips/tips57.htm

これを応用すればできるけれど、結構めんどいよ。
上の馬鹿な答えに比べればマシだけど。
520名無しさん@そうだ選挙にいこう:2011/06/29(水) 06:47:26.32
>>507
有効桁数,有効数字についてちゃんと調べておきましょう。
0.1は有効桁数1です。
0.10は有効桁数2です。
521名無しさん@そうだ選挙にいこう:2011/06/29(水) 20:38:10.78
あ1-1
あ1-2

こんな感じでセルに入っているとして、置換で「あ」を取りたいんだけど、できる?
置換後の文字列を「'」にすれば出来るとは思うんだけど、それ以外の方法で。
522521:2011/06/29(水) 20:39:10.14
追記:すみません、関数の方法は分かります。あくまで置換の方法
523 忍法帖【Lv=14,xxxPT】 【東電 85.2 %】 :2011/06/29(水) 21:18:38.73
>>521
セルの書式設定を文字列にしておけば""の置換でも出来るのでは?
524名無しさん@そうだ選挙にいこう:2011/06/29(水) 21:18:52.40
表示形式がyyyy/mm/ddのセルで
その中から
たとえば2011/06のデータだけをカウントを取りたい場合どうすればいいのでしょうか?
525名無しさん@そうだ選挙にいこう:2011/06/29(水) 21:22:19.59
2011/6/1と2011/6/30のシリアル値の範囲にあるセルを数える
526名無しさん@そうだ選挙にいこう:2011/06/29(水) 21:28:09.35
>>524
カウントを取りたいとは?個数を数えたいとか合計したい、っていうこと?

sumproductを使うのが吉。あとはピボットテーブル

>>523せめて自分でやってから答えてくれ
あぁ、済まない。見当違いだったらしい。
置換を使った他の方法もいくつかやってみたけどダメみたい。
ゴメンな。悪かった。
528521:2011/06/29(水) 22:20:31.96
>>527
こちらこそキツい言い方してすまんかった

たぶん、出来ないんだよなあ。置換後のセルの表示形式を文字列にしても何も変わらんし(´・ω・`)
529名無しさん@そうだ選挙にいこう:2011/06/30(木) 12:47:04.15
あるセルの種別列(仮にA列)を読み取って、
その種別ごとにシートを作成して、元のデータ内容を振り分けるためには、
どういった感じで組めばいいでしょうか。

元のシートは、オリジナルのまま保持した形にしたいです。
530複乳:2011/06/30(木) 13:21:25.17
>>529
マクロの記録を使って、シートを作ってみる
そうすれば何となくマクロのことがわかるとおもう
・fornext辺りでセル内容を転記する
・シートごとコピーして、不要な部分を削る
のどっちかかねぇ
後は「vba やりたいこと(行削除など)」で検索しながら少しずつ組み立てていけばいいんじやないかな
531名無しさん@そうだ選挙にいこう:2011/06/30(木) 15:00:51.17
【1 OSの種類】 Windows7
【2 Excelのバージョン】 Excel2007
【3 VBAが使えるか.】 いいえ
【4 VBAでの回答の可否】否
【5 検索キーワード】 Googleでの検索キーワード
  「excel 2007 ピボットテーブル 数値データなのにエラー」
  「excel 2007 ピボットテーブル DIV/0」

大学のコンピュータ教室でWindows7+Excel2007を使っています。
「30時間でマスター WindowsVista対応 Excel2007」
www.jikkyo.co.jp/contents/75071.html
の実習34のピボットテーブルについて行ったのですが、ダウンロード
したファイルではできるのに、自分でファイルを作りデータを入力
したのでは、数値データが入っているのに平均等の計算ができません。
532名無しさん@そうだ選挙にいこう:2011/06/30(木) 15:01:20.13
以下のようなデータをピボットテーブルで行ラベルに「種類」
値に「カロリー」を入れて平均を選ぶと「#DIV/0」と表示されて
しまいます。
 商品名   メーカー 種類 価格 内容量 カロリー
 銀座カリー 明治製菓 中辛 250  210   240
 ・・・・・

カロリーの列の表示形式を「標準」「数値」にしてもダメでした。
他のPCで知人も同様なエラーがでたのですが、そちらはなぜか表の部分を
コピーして新しいExcelファイルに貼り付けてピボットテーブルを作ると
「#DIV/0」エラーがでませんでした。

いろいろ試したのですが、「カロリー」列の隣に「カロリー2」列を
作り同じデータを入れてピボットテーブルを作ると、「カロリー2」列だけ
でなく、なぜか「カロリー」列でも平均がちゃんと出せてエラーがでません。
それではと、「カロリー2」列を除いて表を選択しピボットテーブルを作ると
また「#DIV/0」のエラーがでます。

原因が何なのか特定てきませんでした。
なにか解決策等ありましたら教えていただけないでしょうか。
よろしくお願いします。
533名無しさん@そうだ選挙にいこう:2011/06/30(木) 15:30:55.71
>>532
数値が文字列をして認識されてるんじゃね
そのデータはどこかからコピーしてきたんじゃ
534名無しさん@そうだ選挙にいこう:2011/06/30(木) 15:37:36.73
× 文字列をして
○ 文字列として
535名無しさん@そうだ選挙にいこう:2011/06/30(木) 18:24:54.78
国・自治体による高さ1m・0.5m計測を中心とした放射線量マップ
http://cdn-ak.f.st-hatena.com/images/fotolife/g/geasszero/20110627/20110627010448.jpg

女性自身に掲載された放射能ホットスポット
http://blog-imgs-36.fc2.com/t/e/k/tekcat/hotspot2.jpg

福島第一原発から漏れた放射能の広がり
http://gunma.zamurai.jp/pub/2011/18juneJD.jpg

共産党都議団 都内各地の放射線量測定結果 (資料B)
江東区から練馬区を結ぶ線以東の地域は年間1mSv以上の
放射線量となっている可能性がある。
http://livedoor.2.blogimg.jp/amosaic/imgs/9/f/9f8f5a60.jpg
536531-532:2011/06/30(木) 18:59:18.90
>>533
コピーはしていなくて、本を見ながら、直接入力したものです。

表示形式を「数値」にしてもダメで、試しにISNUMBER関数で
「カロリー」列の値を調べたら、trueが返ってきたので
ちゃんと数字データになっているはずなんですよね。。。
537 忍法帖【Lv=2,xxxP】 【東電 78.6 %】 :2011/06/30(木) 19:48:34.65
>536
セルの書式−表示形式 で設定しなおしただけではダメかも。
表示形式を設定し直したセル範囲を選択し、
[F2]、[Enter]を繰り返して入力し直してみてください。
538名無しさん@そうだ選挙にいこう:2011/06/30(木) 21:57:01.01
xlsm形式のファイルですが
何回開こうとしても応答なしのまま開いてくれません
おそらくVBAの記述が永久ループが何かして悪さしてると思うのですが
中身を確認して不必要な処理を削除してもそもそも開けないので確認のしようがありません。

こういう場合どうすればいいのでしょうか?
539名無しさん@そうだ選挙にいこう:2011/06/30(木) 22:20:59.57
セキュリティー設定変えて、マクロ実行しないで開いたらだめなの?
540名無しさん@そうだ選挙にいこう:2011/06/30(木) 22:21:14.21
セキュリティを高に設定すればok
541名無しさん@そうだ選挙にいこう:2011/06/30(木) 22:30:23.82
>>538

ネットワークフォルダに保存してあるのを直接開こうとすると、
同じ現象になったことあるわ

応答なしで閉じる事も出来ず強制終了した。

数時間待つか、デスクトップにコピーしたら解決したよ
542名無しさん@そうだ選挙にいこう:2011/07/01(金) 11:33:31.05
 購入者  買った物
山田太郎   肉
山田太郎   魚
山田太郎  野菜
伊藤二郎   肉
鈴木三郎   肉
鈴木三郎  野菜

こういうリストを、

 購入者  買った物
山田太郎   肉
         魚
        野菜
伊藤二郎   肉
鈴木三郎   肉
        野菜

こういう風にしたい(購入者欄の重複部分だけを空白にしたい)のですが、
具体的にはどういう操作をすればいいのでしょうか?
Excel2007を使っています
543名無しさん@そうだ選挙にいこう:2011/07/01(金) 16:19:51.84
ピボットテーブル使えば出来るんじゃね
544名無しさん@そうだ選挙にいこう:2011/07/01(金) 20:29:56.39
http://www.eurus.dti.ne.jp/~yoneyama/Excel/vba/vba_furiwake.html
で使われているページ一番下のプログラムをいじってるのですが、
別の列で判定させたい時は
  myVal = Worksheets("Sheet1").Range(Cells(2, 1), Cells(lastRow, lastCol)).Value
のRangeのCellsの値だけいじればいいんですよね?

変えるとインデックスの有効範囲にないって出てしまうのですが、他にいじる箇所がありますか?
545名無しさん@そうだ選挙にいこう:2011/07/01(金) 20:49:00.33
どういじったのかしらんけど
ざっと見た限りでは
 lastRow = Worksheets("Sheet1").Range("B" & Rows.Count).End(xlUp).Row
 lastCol = Worksheets("Sheet1").Cells(1, Columns.Count).End(xlToLeft).Column
 myVal = Worksheets("Sheet1").Range(Cells(2, 1), Cells(lastRow, lastCol)).Value
この3行をセットで考えないといけないと思うよ
546名無しさん@そうだ選挙にいこう:2011/07/02(土) 01:08:35.93
2010です

ユーザー定義の表示形式を利用して
-1→-π
-0.500→-π/2
といった具合に表示させたいのですがうまくいきません。
どなたかご教示願います。
547名無しさん@そうだ選挙にいこう:2011/07/02(土) 06:28:33.25
表示形式はあくまでも「表示」を定義するものであって、演算は出来ない
勘違いしないように
548名無しさん@そうだ選挙にいこう:2011/07/02(土) 11:26:51.16
【1 OSの種類         .】 Windows7
【2 Excelのバージョン   】 Excel2010
【3 VBAが使えるか    .】 はい
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 VBA コピー 別シート 行を挿入貼り付け

複数人あるデータリストをフォームからオートフィルタをかけて抽出し
別シートに個人別に貼り付けをしたいのですが

'-----抽出データの最終行を求める----------
Worksheets("伝票").Activate
myRow2 = Worksheets("伝票").Range("A3").End(xlDown).Row
Worksheets("伝票").Range("A3:G" & myRow2).Copy '抽出データを範囲選択コピー
Worksheets("個人別シート").Activate
Worksheets("個人別シート").Rows("4:4").Insert Shift:=xlDown '行を挿入し貼り付け
'--------------------------

ペースト時どうしても空白の行1行しか貼り付けされません
上記コードの最終行の記述はどのようにしたらよろしいのでしょうか
よろしくお願いします
549名無しさん@そうだ選挙にいこう:2011/07/02(土) 11:33:22.79
insertはただの挿入。貼りつけならpasteしないと。
550548:2011/07/02(土) 11:45:45.69
説明不足で申し訳ございません
別シートに行を挿入する理由が、貼り付けした内容を集計する関数が一番最終行に記述しているためです

個人別シート

1
2 日付 名前 品名 入庫 出庫
3
4
5
6 累計        0   0   0

Insert部分をPasteにすると
オブジェクトは、このプロパティまたはメソッドをサポートしていません。(Error 438)
が表示されて頓挫している状態です


上記の形にしている理由としてはペースト時最終行を、6行目の累計を表示・自動計算するVBA表記の仕方がわからず、とりあえずの苦肉の策としているためです
551名無しさん@そうだ選挙にいこう:2011/07/02(土) 12:26:55.66
>>548のままでちゃんと動作したよ。
.End(xlDown)がちゃんと判定されてないんだろうから、データが悪いんだろう。
途中に空白セルがあるとか。
552548:2011/07/02(土) 13:43:32.03
上記コードをマクロに組み込み読み込むと動作するんですが
VBAに落とし込むとちゃんと動作しないんですよorz
オートフィルタの抽出結果をコピーするってのがまずいのでしょうか

Private Sub 表示bt_Click()
Dim 検索値1 As String 'リストボックスに変数を宣言
Dim myRow1 As Long '列の変数を宣言
Dim myRow2 As Long '列の変数を宣言
検索値1 = 名前リストボックス.Text '検索値1に名前リストで選択したtextを代入

If 検索値1 <> "" Then '検索値1に何かしらの文字列が代入された場合の処理
ActiveSheet.Unprotect 'シートの保護を解除
'アクティブシートのA2からB最終列をオートフィルタをかけ名前のところを検索値1で検索
ActiveSheet.Range("$A$2:$B$65536").AutoFilter Field:=2, Criteria1:=検索値1
ElseIf 検索値1 = "" Then '検索値1が空欄の場合の処理
MsgBox "名前が選択されていません。" 'エラーメッセージの記述
名前.SetFocus '名前リストにカーソルを戻す
Exit Sub
End If
名前.Value = ""
'-----抽出データの最終行を求める----------
Worksheets("伝票").Activate
myRow2 = Worksheets("伝票").Range("A3").End(xlDown).Row
Worksheets("伝票").Range("A3:G" & myRow2).Copy '抽出データを範囲選択コピー
Worksheets("個人別シート").Activate
Worksheets("個人別シート").Rows("4:4").Insert Shift:=xlDown '行を挿入し貼り付け
'--------------------------

という一連の流れになってます
553546:2011/07/03(日) 00:35:45.50
>>547
返答ありがとうございます。
それを聞いていろいろ試してみたのですが

πを3.14としてではなくπをそのまま数字の後につけるにはどうすればいいのでしょうか?
554名無しさん@そうだ選挙にいこう:2011/07/03(日) 09:44:33.67
>>553
>πを3.14としてではなくπをそのまま数字の後につけるにはどうすれば
> いいのでしょうか?

-1π とか 0.5π でいいなら、セルの表示形式のユーザー定義で @"π"
を指定すればいい。

-1π を -π にしたいとか、0π は 0 にするなら条件付の書式でできる
かも、使ったことないけど。

0.5π を π/2 にするのは俺の頭では不可能とでた。
555名無しさん@そうだ選挙にいこう:2011/07/03(日) 09:47:37.65
参考 URL 書くの忘れた。

文書番号: 883199 - 最終更新日: 2011年1月12日 - リビジョン: 1.8
Excel のセルの表示形式で [ユーザー定義] に使用できる書式記号について

http://support.microsoft.com/kb/883199/ja
556名無しさん@そうだ選挙にいこう:2011/07/03(日) 10:10:47.69
>>546
ところで関数のPI()は知っているよね。

いや、知っているのなら別にいいんだ。
557名無しさん@そうだ選挙にいこう:2011/07/03(日) 18:20:30.99
>>556
=PI()存在はしってますよー

とりあえず分子をπにするのは表示形式のユーザー定義から設定するのは無理みたいです
回答ありがとうございました
558名無しさん@そうだ選挙にいこう:2011/07/03(日) 18:54:20.58
関数の構文でエラーが出たのですがどこに問題があるのか分からず・・・
ちょっと見てもらえないでしょうか

【1 OSの種類         .】 Windows7
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 トラブルシューティング:数式のエラー(エラーメッセージのリンクから)

とある会計処理用の表なのですが、I列に金額の項目があり、
マクロで別表からずらずらずらー、っと該当品目の金額を上から詰めて並べ、
その末尾の行で合計金額を割り出します。
表の大きさがその時々によってまちまちなので、どの行に置かれてもいいように

【=SUM(OFFSET(ADDRESS(ROW(),COLUMN()),-1,0,-ROW()+3,0))】
(合計金額セルのすぐ上のセルから見出しを除いた先頭行までの合計を算出)

と入力したところ、「入力した数式は正しくありません」とエラーを吐かれました。
エラー箇所は「=」の後ろから全部を指定されます。
括弧の数も引数の数・記述にも問題はないのでどこがエラーになってるのか見当がつきません。
金額の入力・計算はは全てI列でのみ行い、列間の処理は一切行いません
どなたかご指摘お願いします。
559558:2011/07/03(日) 19:00:11.35
おっと訂正・・・
数式の最後の0は1に直して解釈してください
幅0の範囲ってなんだorz
560名無しさん@そうだ選挙にいこう:2011/07/03(日) 19:28:40.79
最終行を出して計算しちゃだめなの?
561名無しさん@そうだ選挙にいこう:2011/07/03(日) 20:03:04.13
>>558
OFFSETの 基準セルがセル参照ではなく、
文字列(ADDRESS関数は(参照)を表す*文字列*を返す)だからじゃない?
なので
=SUM(OFFSET(INDIRECT(ADDRESS(ROW(),COLUMN())),-1,0,-ROW()+3,1))
かな?
562名無しさん@そうだ選挙にいこう:2011/07/03(日) 20:30:07.54
>>561
ありがとうございます
OFFSET関数にADDRESS関数を直でかませちゃだめなんですか・・・
INDIRECT関数挟んで試してみます。
563名無しさん@そうだ選挙にいこう:2011/07/03(日) 20:35:28.75
>>558です
INDIRECTを入れて計算させてみたところ、正常に数字が出てきました。
的確なアドバイスをありがとうございました。
564名無しさん@そうだ選挙にいこう:2011/07/03(日) 23:45:38.44
なかなかうまくいきません。どなたかご教授お願いします。

【1 OSの種類         .】 MacOSX
【2 Excelのバージョン   】 Excel2011
【3 VBAが使えるか    .】 はい
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 マクロ 抽出 行

700行あるシートの中から
特定の文字列を含むものを行単位で別シートに移したいのですが、うまくいきません。
特定の文字列とは
シートBのA列に200件ぐらいまとまっています。

マクロで組もうかと思いましたが
シートBのA1をコピー

シートAのB列を選択、完全一致で検索。

該当行をコピー

シートcに貼り付け。該当が無い場合は
シートDに貼り付け。
延々と繰り返していくようなマクロを組みたかったのですがうまくいきません。

これをマクロで記録してVBで編集しようとしたら検索する文字列が文字列として
記録されているので
A1.2.3.4.5....と、繰り返し行ってくれるようなモノになりません。
どうしたらいいでしょうか…。
565564:2011/07/04(月) 00:00:39.83
http://officetanaka.net/excel/vba/cell/cell11.htm
http://okwave.jp/qa/q4730673.html

一応ここら辺は参考にしてみたのですが、、、よろしくお願いします。
566複乳:2011/07/04(月) 00:44:07.08
>>564
ttp://www1.axfc.net/uploader/File/so/65513.xls
こんな感じっすかねー
567名無しさん@そうだ選挙にいこう:2011/07/04(月) 02:22:53.56
自分の入力でなく、他のソフトでエクセル形式のファイルを出力する
場合、スラッシュを含む数字のデータが日付に変換されてしまいます。
そのまま表示する方法を教えてください。
568名無しさん@そうだ選挙にいこう:2011/07/04(月) 04:57:42.70
「他のソフト」の問題なのでスレ違い
「他のソフト」の作者(製作会社)に、スラッシュを含む数字をエクセル形式のファイルを出力する場合は
先頭に ' 入れて出力するようにでも要望出しておけ
569名無しさん@そうだ選挙にいこう:2011/07/04(月) 05:22:42.09
>>567
csvならテキストエディタで加工するかVBAで読み込む
xlsなら「他のソフト」側で対策が必要
570名無しさん@そうだ選挙にいこう:2011/07/04(月) 10:26:43.72
>>545
例えばK列に読み込み先を変更したい場合、
lastRow = Worksheets("Sheet1").Range("K" & Rows.Count).End(xlUp).Row
lastCol = Worksheets("Sheet1").Cells(1, Columns.Count).End(xlToLeft).Column
myVal = Worksheets("Sheet1").Range(Cells(2, 11), Cells(lastRow, lastCol)).Value
のように変更すればOKでしょうか?

インデックスが有効範囲にないって出てしまうので、他にどんな感じに修正すればいいでしょうか?
571名無しさん@そうだ選挙にいこう:2011/07/04(月) 12:29:49.47
>>568-9
エクセルの事前の設定云々でなく仕様みたいですね。
でもヒントになりました。回答有難うございます。
572名無しさん@そうだ選挙にいこう:2011/07/04(月) 13:32:17.45
>>570
色々勘違いしてました
自己解決です
573名無しさん@そうだ選挙にいこう:2011/07/04(月) 18:35:39.62
マクロで書きだした配列の数値が
4.56026E+12
とかなってるのですが、事前にセル書式を固定みたいなのできますか?
574名無しさん@そうだ選挙にいこう:2011/07/05(火) 15:47:32.47
ある列の値別に行の内容をまとめて、
それぞれのシートに新規で挿入したいのですが、
シートのネームは任意の文字列+連番にしたいです。
どうしたらいいでしょうか
575複乳:2011/07/05(火) 16:54:13.08
>>574
vba
576名無しさん@そうだ選挙にいこう:2011/07/05(火) 18:16:11.03
>>575
どんな感じのプログラミングになりますか?
577複乳:2011/07/05(火) 18:23:18.77
>>576
列の値が変わるまで行の内容をまとめて
シートを作成、任意の文字列+連番
値が変わったところから行の内容をまとめて
と繰り返し
ブックごとアップロードしてくれればヒマだしつくるよ
578名無しさん@そうだ選挙にいこう:2011/07/05(火) 19:11:26.92
579複乳:2011/07/05(火) 20:16:47.11
>>578
これは例が悪い
解釈が間違って無ければ、全部が別シートになってしまうぞ
もう少し分布状況とでもいうのかな。実際のシートに似せて作ってくれ
http://www.rupan.net/uploader/download/1309864509.JPG
実際はこんな感じだと思うんだが

あと完成後、どうなるかのブックも欲しい
面倒でも手作業で作ってくれ。その方がこっちも作り易い
580複乳:2011/07/05(火) 20:17:02.77
パスは4321ね
581名無しさん@そうだ選挙にいこう:2011/07/05(火) 22:43:46.63
>>579
ごめんなさい・・・。住所がばらばらになってしまってました。

http://www.rupan.net/uploader/download/1309873375.zip
完成イメージはこんなかんじです
582複乳:2011/07/06(水) 00:16:37.39
>>581
http://www.rupan.net/uploader/download/1309878937.xls
これでいいかな
シート名はsheet1じゃないとダメ、sheet1のコピーは消えてない
とか微妙な弊害はあるけど

眠い。寝る
583複乳:2011/07/06(水) 00:19:17.26
>>581
ttp://www.rupan.net/uploader/download/1309879090.xls
間違えた。こっちだ
macro2を動かしてくれ
一応行っておくとalt+F8でマクロの起動な
寝る・・・
584名無しさん@そうだ選挙にいこう:2011/07/06(水) 01:23:38.73
>>655のダウソ数8
7人も複乳のコードをチェックしてんのかw
585名無しさん@そうだ選挙にいこう:2011/07/06(水) 11:50:10.08
>>583
本当にありがとうございます!
連番は、地域ごとのみで付けることってできますか?
東京都1/東京都2/埼玉県1/埼玉県2/埼玉県3/
な感じです。
シートの並びも、都道府県でまとまってくれると幸いですが・・・
586名無しさん@そうだ選挙にいこう:2011/07/06(水) 12:08:03.78
>>583
バグ?的なところで、住所を昇順などで並び替えしないと、
別の地域を挟むと何度も同じ地域を新規シートでつくってしまうので、
ここだけでもなんとかできればよいのですが・・・
587複乳:2011/07/06(水) 12:31:06.17
>>585
macro2を実行だよ。4じゃない
並べ替えもマクロにいれてあるから、都道府県でまとまるはず

地域ごとに連番を付けるように改良版
ttp://www.dotup.org/uploda/www.dotup.org1763205.xls.html
実行後のファイル
ttp://www.dotup.org/uploda/www.dotup.org1763208.xls.html
588名無しさん@そうだ選挙にいこう:2011/07/06(水) 14:36:35.71
>>587
なにからなにまですいません・・・ありがとうございます!
589 忍法帖【Lv=16,xxxPT】 :2011/07/06(水) 15:07:04.82
>>471
このマクロで、0だった場合はその行をトルツメする場合、
どのように改変すればいいでしょうか?
590名無しさん@そうだ選挙にいこう:2011/07/07(木) 09:45:26.86
何年も前に作成し、定期的にちょこちょこ更新しているExcelファイルがあるんですが、
最近このファイルを開くと

このファイルを開こうとしたときに、Officeファイル検証機能によって問題が検出されました。
このファイルを開くのはセキュリティ上危険である可能性があります。

というメッセージが表示されるようになってしまいました。
最近の自動更新でこの検証機能というのがついたみたいですがこのファイル自体に問題があるのでしょうか。
このメッセージが出ないようにする方法はありますか?

バージョン:Excel2003SP3
OS:XPProSP3
591名無しさん@そうだ選挙にいこう:2011/07/07(木) 22:25:05.91
初めてここにきました。
どなたか教えてください。
何年かぶりでエクセルを使って文書作成しています。
金額を入力していて、ゼロではなく金額が入らない箇所という意味で
斜線ではなくて、横棒を入れたいのですが、どうしてもやりかたが判りません。
どうすればいいのか途方にくれてます。お願いします。たぶんエクセル2003です。
592名無しさん@そうだ選挙にいこう:2011/07/07(木) 22:35:22.02
-
593 忍法帖【Lv=17,xxxPT】 【東電 69.2 %】 :2011/07/07(木) 23:08:42.58
>>591
セルを右クリック→セルの書式設定→フォントタブ→取消し線にチェックを入れる→OK
で、実際にスペースキーを打つと取消し線が入る。

でも、文章作成はword使うのがいいと思う。
594名無しさん@そうだ選挙にいこう:2011/07/07(木) 23:35:52.78
>>593

    で き ま し たああああああ。

 有難うございました。よっぽど定規で横棒入れてやろうかと
 もうグレそうになってました。(涙)
 助かりました。本当に有難うございました。  

  
595名無しさん@そうだ選挙にいこう:2011/07/08(金) 04:22:01.41
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 エクセル 表示形式 ドロップダウン 数値 セル 等を組み合わせて

ドロップダウンメニューの使い方について質問させてください
リストとして使用するセルに実際に入力されている数値と、表示する数値を別にしているとき(例:実数値20,30,40→表示は2,3,4)
ドロップダウンを開いている間は表示数値(2,3,4)通りなのですが
選択すると実数値(20,30,40)が表示されます
これを、選択した後も表示数値(2,3,4)のままにする方法はありますか?
596名無しさん@そうだ選挙にいこう:2011/07/08(金) 18:08:38.70
予め項目が用意されているcsv(Aに名前の列、Bに年齢の列…)に、
外部のxlsやcsvをインポートし、それぞれの項目に対して振り分けを行いたいです。

外部のcsvやxlsはものによって、年齢や名前などの列の箇所がばらばらなので、
インポートした後に「年齢の項目はインポート元のどの範囲にありますか?」のように
ユーザが範囲を入力する形(リストボックスなどでA2:A100のように)にしたいです。

聞かれる回数は、インポート先データに予め用意されている1行目の項目名と数を自動的に読んで、
汎用性を高めたいです。

マクロで対応できますか?
597名無しさん@そうだ選挙にいこう:2011/07/08(金) 18:42:28.88
-220+{22.4/(1+9.23)}+{22.4/(1+9.23)^2}+{22.4/(1+9.23)^3}+
{22.4/(1+9.23)^4}+{22.4/(1+9.23)^5}+
{30+x-7.6x+0.4x/(1+9.23)^6}+{30+x-7.6x+0.4x/(1+9.23)^7}+
{30+x-7.6x+0.4x/(1+9.23)^8}+{30+x-7.6x+0.4x/(1+9.23)^9}+
{30+x-7.6x+0.4x/(1+9.23)^10}+{19.4+x-5.6x+0.4x/(1+9.23)^11}+
{19.4+x-5.6x+0.4x/(1+9.23)^12}+{19.4+x-5.6x+0.4x/(1+9.23)^13}+
{19.4+x-5.6x+0.4x/(1+9.23)^14}+{19.4+x-5.6x+0.4x/(1+9.23)^15}+
{19.4+x-5.6x+0.4x/(1+9.23)^16}+{19.4+x-5.6x+0.4x(1+9.23)^17}+
{19.4+x-5.6x+0.4x/(1+9.23)^18}+{19.4+x-5.6x+0.4x/(1+9.23)^19}+
{19.4+x-5.6x+0.4x/(1+9.23)^20}+60=0

のxをエクセルで出す方法はないでしょうか?
598名無しさん@そうだ選挙にいこう:2011/07/08(金) 21:18:59.34
>>597
良く解らんが、A1に1でも入れとく。
C1〜C20に 1〜20をいれとく。
D1に、 共通の分母 (1+9.23)^C1 を入れ、D20までコピー。
E1〜E20に、あなたの言うxを「$A$1」に置き換えた、{}で囲んだ計算式を個別に入れる。もちろん分母はD列から持ってくる。

F1に、単純なSUM式で、方程式の左辺をそのまま書く。
後はゴールシーク機能で、F1=0となるように$A$1の値を変化させればよいのでは?
599名無しさん@そうだ選挙にいこう:2011/07/08(金) 21:24:56.71
>>598だけど、もちろんF1には「=SUM(E1:E20)-220」とだけ書けばいいように、
ちゃんと他の列を仕上げるんだよ?俺は面倒だから実際の検算までしてないけど。
600複乳:2011/07/08(金) 23:47:51.39
>>596
インポートがどうとかよりも手動で並び替えたほうが早いんじゃないの
その例はもちろん対応できるし、マクロは人の気分で変わるようなものじゃない限り、ほぼ100%対応できるよ
601名無しさん@そうだ選挙にいこう:2011/07/09(土) 00:39:46.95
▼━質問テンプレ (出来れば使ってね) ━━━━━━━━━━━━
【1 OSの種類         .】 Windows XP
【2 Excelのバージョン   】 Excel 2002
【3 VBAが使えるか    .】 少しだけ
【4 VBAでの回答の可否】 可

ややこしい内容ですみません。

A4の用紙を縦横に切って4分割して使う用途のフォーマットが
有ったとして、分割したそれぞれに1〜番号を振りたい。
プリントアウトが1枚の場合、左上が1、右上が2、左下が3、右下が4といった感じで。

でもそれが10枚とした場合、番号が1-40番まで振られるが
それぞれをプリントアウト出力した場合、1枚目1-4、2枚目5-8と
いった感じで出力され、重なった出力物をまとめて4分割カットした場合、
1枚目1の次の紙が2枚目の5、次が3枚目の9となる。

最終的に4分割されたものを1〜の連番にしようと思うと
いちいち入れ替えを行う必要がある。
出力枚数は変動で1枚〜20枚程度となる。

どの出力枚数化においても4分割した
左上ブロック→右上ブロック→左下ブロック→右下ブロックを
重ねると1〜の連番になるようにするにはどうすれば良いでしょうか?

取り合えずセルのA1=左上、B1=右上、A2=左下、B2=右下として
ご教示いただきたくよろしくお願いします。

602複乳:2011/07/09(土) 00:53:33.16
>>601
大体やりたいことは分かるけど

番号を振るってどこにどうやってフルの
あとページが下に進むのか右に進むのかも不明
1ページで使うセル範囲もどこからどこまでかも良く分からない
603601:2011/07/09(土) 00:54:51.22
スレ汚しすみません

1  2
3  4      1枚出力

12  34
56  78      2枚出力

123  456
789  101112      3枚出力

1234  5678
9101112  13141516    4枚出力

m = 出力したい枚数
n = 出力ごとにn+1(n = 1 to m)

m*0+n  m*1+n
m*2+n  m*3+n


睡魔の狭間で何となくひらめきました。
事故解決しました。mm
604複乳:2011/07/09(土) 01:05:13.38
オメデトウ
605名無しさん@そうだ選挙にいこう:2011/07/10(日) 14:48:10.68
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 はい
【4 VBAでの回答の可否】 可

テキストデータを、Sheet("テキストデータ")のセルA1に貼り付け、
マクロでSheet("明細")のセルB5を先頭に各セルへデータを書きたいです。

-------------------------------------------
テキストデータ
2011/06/28s●ss◆◆S◆◆◆ss3,700sss▲▲s
2011/07/03s●ss◆◆◆ss5,500sss▲▲▲s
2011/07/10s●ss◆◆S◆◆◆ss2,800sss▲▲s
-------------------------------------------
s:半角スペース
S:全角スペース
●:文字列(全角で1〜3文字)
◆:文字列(全角で2〜17文字)
▲:文字列(全角で0〜20文字)

このとき、◆の文字列が全角スペースで区切られているときは、同じセルの
中に入れて、下記のようにしたいです。

------------------------------------------------------
     A         B      C       D    E
1
2
3
4
5  2011/06/28  ●  ◆◆S◆◆◆  3,700  ▲▲
6  2011/07/03  ●  ◆◆◆      5,500  ▲▲▲
7  2011/07/10  ●  ◆◆S◆◆◆  2,800  ▲▲
606名無しさん@そうだ選挙にいこう:2011/07/10(日) 14:57:35.21
明細がどう絡むのかよくわからないけれど、エディタで半角スペースをタブかカンマあたりに
置換してみてはどうか?
607名無しさん@そうだ選挙にいこう:2011/07/10(日) 16:48:58.24
> エディタで半角スペースをタブかカンマあたりに置換
じゃダメだな
「"1個以上の"半角スペースを"1個の"タブかカンマあたりに置換」しないと

     A         B      C       D    E
  2011/06/28  ●  ◆◆S◆◆◆  3,700  ▲▲

ではなく

     A        B    C       D        E    F     G     H     I
  2011/06/28  ●  空セル  ◆◆S◆◆◆  空セル  3,700  空セル  空セル  ▲▲

になってしまう

つまり、「s/ +/\t/g」ってこった
まぁエディタでやるかVBAでやるかは好きにすれば良いが
608名無しさん@そうだ選挙にいこう:2011/07/10(日) 21:07:21.91
Excel2003、2010などを使っています
カーソルキーでアクティブセルを移動させる時に
画面端まで移動しないと画面がスクロールしませんが
これを一番端ではなく画面の端から4セルぐらいのところで
画面をスクロールさせることは出来ないでしょうか
…出来ないような気がしていますが出来たら嬉しいなぁと
609名無しさん@そうだ選挙にいこう:2011/07/10(日) 21:21:26.62
イベントマクロでいけんじゃね?
610複乳:2011/07/10(日) 21:33:21.54
>>605
ttp://www.dotup.org/uploda/www.dotup.org1776956.xls.html
split使うかなぁ
A列を2011/06/28と表記させたい場合は、
明細シートの書式を文字列にしておいてね

後、●や▲の文字列の中に半角スペースがあると処理できない。多分ないと思うけど

つーか区切り位置で半角スペース指定して列削除したほうが100億倍早かった
611複乳:2011/07/10(日) 21:42:27.68
>>608
・スクロールロックキー(ScrLk)を使う。
・マウスホイールを使う。横向きにスクロールできるものもある
・イベントマクロでウィンドウサイズとセルの行列のサイズを考えて手動で計算する

表示されてるセル範囲の取得ができれば一発なんだろうけど
どれもパッとせんなぁ
回答がなければプログラム板のvbaスレにいってはどうかな
612名無しさん@そうだ選挙にいこう:2011/07/10(日) 22:09:03.66
WindowsXP Pro
Excel 2003
VBA…いいえ
VBA回答…否
検索…集計 抽出 関数

月火には毎週10個、水〜日には0〜5個といった感じで
『特定の曜日には確実に払い出しがあり、他の曜日にはたまに払い出しがある』
商品があります。
毎月シートを分けて日付を横一列に並べ、その下に払い出し数(ない日は0)
を入力しているのですが、先日上司に、
『払い出しがあった日のデータだけを抽出して、いつもの表のように並べてくれ』と言われました。

関数とかでなんとかならないかな?と思ってこちらに質問させていただきました。
よろしくお願いいたします
613名無しさん@そうだ選挙にいこう:2011/07/10(日) 22:25:52.53
>いつもの表のように並べ

いつもどう並べているのか言わないとどうしようもないけれど、
とりあえず曜日の下の払い出し個数が0の場合は、曜日を表示しないようにするとか?

if払出=0,"",曜日
614名無しさん@そうだ選挙にいこう:2011/07/10(日) 22:30:00.59
>>612
関数では出来なくはないけど、かなりややこしくなるので、止めておいたほうが。
配列数式になって、応用するのに辛いと思う。

日付が縦に並んでいるなら、オートフィルタで抽出してコピーできるけど、横だし、どうするのが一番手っ取り早いか・・・
615複乳:2011/07/10(日) 22:33:30.42
>>614
コピーペーストの行列を入れ替えとか
616名無しさん@そうだ選挙にいこう:2011/07/10(日) 22:46:29.62
>>615
うん、それしかないかなあ。入れ替えて抽出して、また入れ替えてコピー

基本、出来れば日付は縦にとってほしい・・・・エクセルがそういう作りだから。
617612:2011/07/11(月) 00:45:31.78
レスありがとうございます。

>>613
いつもの=日付を横一列〜(上記)です。説明不足でごめんなさい。

>>614,615,616
最初にオートフィルタの横列版はないかと検索してましたw
作りの問題なんですね。元ファイル直したいけど上司の意向が・・・

別シートか何かでコピペをシコシコしていくことにします。ありがとうございました。
618名無しさん@そうだ選挙にいこう:2011/07/11(月) 01:17:46.57
VBA可なら、横のフィルタマクロもあるけどね
俺なんか縦のフィルタも、ほとんどExcelのオートフィルタ使わずフィルタマクロ使ってる
オートフィルタは痒いところに手が届かないからな
619名無しさん@そうだ選挙にいこう:2011/07/11(月) 11:37:53.27
>>600
サンプルのマクロとかないでしょうか?
620名無しさん@そうだ選挙にいこう:2011/07/11(月) 15:39:18.01
行列入れ替えて貼り付けを自動記録すりゃいいじゃん
621名無しさん@そうだ選挙にいこう:2011/07/11(月) 15:51:36.43
>>620
そのレベルができない人用に作らないといけないので・・・
622名無しさん@そうだ選挙にいこう:2011/07/11(月) 17:05:47.54
だからあんたが自動記録してマクロにすればいいじゃん。馬鹿?
623613:2011/07/11(月) 20:11:15.29
こうやって後だしが出ないようにテンプレつかってんじゃね?
VBAでも回答欲しいなら質問者は最初からそう書けよ。


一応回答な。
>>617
>613の関数でとりあえず表を作る。
A1=IF(A2=0,"",1) B1=IF(B2=0,"",2) ・・・
A2=払い出し数 B2=払い出し数

次に以下操作する。
表の範囲を選択する→編集→ジャンプ→セルの選択
→空白セルにチェック→編集→削除→列全体

これが関数でできるやりかたかな。

624名無しさん@そうだ選挙にいこう:2011/07/12(火) 12:15:38.55
別のデータから連続してセルに色々貼り付ける自動マクロ作ってるんですが、
コピペ開始する位置を自動的に取得したいので、A列の最終行の次(空白行)から始めたいので、
それを取得できるマクロプログラムだけ教えていただけますでしょうか?
開始位置座標の変数はなんでもOKです。
625複乳:2011/07/12(火) 12:56:12.56
>>624
Range("A65535").End(xlUp).Row
rowは最終行になるから、次の空白行は+1するの忘れずにな
マクロの記録だとA65535洗濯して、ctrl+↑
626 忍法帖【Lv=2,xxxP】 【東電 84.7 %】 :2011/07/12(火) 13:05:56.04
>624 複乳さんに先こされてしまいましたが
質問者のExcelのバージョンが書いていないので、2007以降でも兼用できる方法を
dim tate_end as long

tate_end = Cells(Rows.Count, "A")End(xlUp).Row + 1


627名無しさん@そうだ選挙にいこう:2011/07/12(火) 15:20:50.64
>>625-626
どもです!
628名無しさん@そうだ選挙にいこう:2011/07/13(水) 06:24:37.46

× , "A"
○ , 1

× + 1
○ Offset(1)

var = Cells(Rows.Count, 1).End(xlUp).Offset(1).Row
629名無しさん@そうだ選挙にいこう:2011/07/13(水) 19:08:38.95
▼━質問テンプレ (出来れば使ってね) ━━━━━━━━━━━━
【1 OSの種類         .】 Windows 7 Professional
【2 Excelのバージョン   】 Excel 2010
【3 VBAが使えるか    .】いいえ
【4 VBAでの回答の可否】 可
【5 検索キーワード     】VLOOKUP 複数 / エクセル 名簿 
スレ汚し失礼いたします。
初心者ですので、拙い文章・理解だと思います。
みなさんの知恵貸してください。宜しくお願いします。
今、エクセルで名簿を作成しております。
表Aと表Bがあります。

続きます。
630名無しさん@そうだ選挙にいこう:2011/07/13(水) 19:11:30.48
上記の表Aと表Bはこのようになっています。
表AのB列のセルには何も入っていません。
表Aと表Bでは、北川という名前が一致していますので、表BのB3を表AのB2に自動で入れるという風にはできないのでしょうか?
これが3000行ほどあるので、一度に複数に対して設定はできないのでしょうか?
重ねて宜しくお願いします。
631名無しさん@そうだ選挙にいこう:2011/07/13(水) 19:13:54.68
表A

A B
1| 相山 | (空白)
2| 北川 | (空白)
3| 岡田 | (空白)

表B


A B
1| 山口 | (海)
2| 武田 | (空)
3| 北川 | (陸)
632 忍法帖【Lv=18,xxxPT】 【東電 79.7 %】 :2011/07/13(水) 19:15:35.97
>>630
表→シートと理解していい?
633名無しさん@そうだ選挙にいこう:2011/07/13(水) 19:21:15.40
>> 629 >>630 >>631 です。
複数にわたってしまい、申し訳ありません。

>>632さん
はい。シートAとシートBです。宜しくお願いします!
634名無しさん@そうだ選挙にいこう:2011/07/13(水) 20:43:59.96
>>633
vlookupのもっとも基本的な部分でクリアできそうだけれど、
グーグルでのvlookup検索で得られた結果は?
どのサイトのvlookupを読んでもその内容のまんまだよ。

一度に複数の場合はオートフィルでやるもよし。
635名無しさん@そうだ選挙にいこう:2011/07/13(水) 20:59:08.84
>>634さん
vlookupで得られた結果はこうでした。
http://kokoro.kir.jp/excel/vlookup-false.html
vlookup開始セル:表A B列(複数セルにまたいで選択)
検索値:表B A列(複数セルにまたいで選択)
範囲:表B A列 B列
列番号:2
検索方法:0 FALSE
でしたのですが…上手くいきませんでした。
理想は
表A
   A B
1| 相山 | (空白)
2| 北川 | (陸)
3| 岡田 | (空白)
になってほしいのです。
636名無しさん@そうだ選挙にいこう:2011/07/13(水) 21:11:20.21
>>635
言い分けスンナ
637複乳:2011/07/13(水) 21:17:07.57
>>635
=IF(ISERROR(VLOOKUP(A1,表B!A:B,2,0)),"",VLOOKUP(A1,表B!A:B,2,0))
こんな感じ
=VLOOKUP(A1,表B!A:B,2,0)
だけでもいいけどエラー値がうっとうしい
638名無しさん@そうだ選挙にいこう:2011/07/13(水) 21:24:08.04
>>634さん
最初に質問してから、ご指摘通りのオートフィルタにたどり着きました。
リスト範囲:表A$A$1:$A$3
検索条件範囲:表B$A$1:$A$3
にしましたが、一番上の所だけ表示されて他のセルは、細かくたたまれてしまいました。
639名無しさん@そうだ選挙にいこう:2011/07/13(水) 22:25:27.28
>>636さん
言い訳のつもりで書き込んだのではありませんでしたが、お気に障ったのでしたら申し訳がございません。

>>複乳
ありがとうございます。
範囲や検索値の指定が悪かったのですね。ありがとうございます。
これで娘の誕生日に帰れそうです。
スレの住人の皆さん本当にありがとうございました。失礼いたします。
640名無しさん@そうだ選挙にいこう:2011/07/14(木) 14:29:09.67
【1 OSの種類         .】 Windows XP
【2 Excelのバージョン   】 Excel2002
【3 VBAが使えるか    .】 自動記録を少し弄る程度です
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 マクロ 関数 計算結果のみ表示
Dim last
Range("A65536").Select
Selection.End(xlUp).Select
last = ActiveCell.Row
Range("D5").Select
ActiveCell.FormulaR1C1 = "=IF(R[-1]C[-3]=RC[-3],""  〃"",MATCH(RC[-3],Sheet2!C1,0))"
Range("B5").Select
ActiveCell.FormulaR1C1 = "=IF(RC[2]=""  〃"",""   〃"",INDEX(Sheet2!C2,RC[2],0))"
Range("C5").Select
ActiveCell.FormulaR1C1 = "=IF(RC[1]=""  〃"",""   〃"",INDEX(Sheet2!C3,RC[1],0))"
Range("B5:D5").Select
Selection.AutoFill Destination:=Range("B5", Cells(last, 4))
Range("B5", Cells(last, 4)).Select
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValuesAndNumberFormats, Operation:= _
xlNone, SkipBlanks:=False, Transpose:=False
関数のMATCH INDEXを使ってSheet2からデータを呼出後に
コピー→貼付(値と数値の書式)として関数を数値データにしてるのですが
最初から数値データとして呼出をする方法はないでしょうか?
641複乳:2011/07/14(木) 14:34:37.92
>>640
あんまり見てないけど
WorksheetFunctionを使うといいかも
http://www.eurus.dti.ne.jp/~yoneyama/Excel/vba/vba_ws_kansu.html#WorksheetFunction

あと
Range("A65536").Select
Selection.End(xlUp).Select
last = ActiveCell.Row

last = Range("A65536").Selection.End(xlUp).row
までまとめられるから、スレに貼るときなんかはまとめたほうが良いとは思う
見にくいです
642名無しさん@そうだ選挙にいこう:2011/07/14(木) 14:45:03.80
>>640
質問のポイントが良く分からんのだが、
関数で計算した結果を、数値として入れなおしてる(関数を消してる)ってこと?
だったら、最初から関数使わずに、VBAで算術処理してもいいんじゃないの?
セル範囲の数字を、数値の配列に貯め込んで、まるっと代入してもいいし。
643640:2011/07/14(木) 17:09:50.11
>>641
>>642
判りにくくて申し訳ないです。
簡単に・・・
Range("D5").Select
ActiveCell.FormulaR1C1 = "=MATCH(RC[-3],Sheet2!C1,0)"
だと
セルD5に数式=MATCH(A5,Sheet2!C1,0)が入ってしまいます。
数式は必要なく、結果だけを出したい場合は、どうすれば良いでしょうか?
644名無しさん@そうだ選挙にいこう:2011/07/14(木) 17:25:09.55
range クラスの select メソッドが失敗しました。
と出て、以下の最終行のところでエラーが出てしまいます。
エラーの名前で出てきてぐぐった対策方法は試してみたつもりですが・・・

Public OpenFileName As String
Private Sub CommandButton1_Click()
OpenFileName = Application.GetOpenFilename("Microsoft Excelブック,*.xls")
Workbooks.Open OpenFileName
RunYN = MsgBox(OpenFileName & "を開きます。並び替えを実行しますか?", vbYesNo)
Select Case RunYN
Case vbYes
Call Run
Case vbNo
myMsg = "キャンセルしました"
Case Else
myMsg = "キャンセルしました"
End Select
' Narabikae Macro
'End Sub

Sub Run()
Dim myMsg As String
Dim Fname As String
Fname = Dir(OpenFileName)
Windows(Fname).Activate
Worksheets("Sheet1").Select
Columns("J:J").Select
645644:2011/07/14(木) 17:27:06.06
>>644
長文なので途中で切りました。

【1 OSの種類         .】 Windows 7 Professional
【2 Excelのバージョン   】 Excel 2010

です。
エラーの意味はなんとなくわかったのですが・・・対処法をご教授頂ければと・・・
646複乳:2011/07/14(木) 17:44:34.16
>>644
↓を参考にしてくれ。
http://park7.wakwak.com/~efc21/cgi-bin/exqalounge.cgi?print+200903/09030088.txt

先に解決策を書くと、
・sub run()は標準モジュールに記述。
・CommandButton1はシートモジュールに記述するが、内容はCall Runだけ。
・コードは全てSub Run() にまとめる。

Sub Run()
Public OpenFileName As String
OpenFileName = Application.GetOpenFilename("Microsoft Excelブック,*.xls")
(中略)
Worksheets("Sheet1").Select
Worksheets("Sheet1").Columns("J:J").Select
End Sub

コマンドボタンの置いてあるシートには
Private Sub CommandButton1_Click()
Call Run
End Sub
647複乳:2011/07/14(木) 17:47:29.04
>>644
もう一つは
Worksheets("Sheet1").Select
Columns("J:J").Select

Worksheets("Sheet1").Columns("J:J").Select
とするだけ
activesheetとselectするsheetが違うとうまく動かない、らしい
よく分からないんだが仕様って奴かねぇ
648642:2011/07/14(木) 17:52:48.38
それなら、>>641さんの方法で良いんじゃね?
649複乳:2011/07/14(木) 17:58:34.10
>>643
WorksheetFunctionはこんな感じで使う

Sub a()
With Worksheets("Sheet1")
.Range("D5").Value = Application.WorksheetFunction.Match(.Range("a5"), Sheets("sheet2").Range("$a:$a"), 0)
End With
End Sub
650名無しさん@そうだ選挙にいこう:2011/07/14(木) 18:03:40.39
>>646
アラート後だとフォーカスを見失う?ようわからない仕様なんすかね・・・
とりあえず解決しそうです。どもでした。
651名無しさん@そうだ選挙にいこう:2011/07/15(金) 10:59:51.95
【1 OSの種類         .】 Windows7 home oem
【2 Excelのバージョン   】 Excel 2010 oem
【3 VBAが使えるか    .】いいえ
【4 VBAでの回答の可否】 否

ふりがな機能が使えません。
右クリックメニューにもありません。
ホームタブ フォントにもアイコンなし 
リボンのユーザー設定でも復活しません。
PHONETIC関数でもエラー表示
Web AppでPHONETIC関数を使うと漢字のまま表示されます。
解決方法お願いします。
652名無しさん@そうだ選挙にいこう:2011/07/15(金) 12:15:42.80
>>651
自己解決しました
653643:2011/07/15(金) 17:47:16.98
>>648
>>649
リンク先のHP等、大変参考になりました。
早速、少しづつ書換えていこうと思います。
ありがとうございました。
654名無しさん@そうだ選挙にいこう:2011/07/15(金) 22:38:44.02
【1 OSの種類         .】 Windows 7
【2 Excelのバージョン   】 Excel2010(2007)
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 関数

   A   B   C
  平均 合計 評価
1| 5   16  
2| 1    8  
3| 3   12  
4| 2   11  
5| 4   11  
6| 4    9  

評価のところに平均が3以上だったらS、←以外の場合で合計が10よりも大きかったらA、どっちにも当てはまらなければBと入れたくて
C1に=IF(A1>=3,IF(B1>10,"S","A"),"B")と関数を入れてオートフィルをしたのですがC4がAになりません。
対処法をご教授お願いします。
655名無しさん@そうだ選挙にいこう:2011/07/15(金) 22:42:27.86
>>654
=IF(A1>=3,"S",IF(B1>10,"A","B"))
656 忍法帖【Lv=20,xxxPT】 【東電 75.0 %】 :2011/07/15(金) 22:50:59.40
>>654
式が間違っているのでしょう。
=IF(A1>=3,"S",IF(B1>10,"A","B"))
657名無しさん@そうだ選挙にいこう:2011/07/15(金) 22:53:29.37
>>655-656
なるほどSの方を先にまとめてから残りもやるのか…ネスト難しいorz
覚えておきます。ありがとうございました
658名無しさん@そうだ選挙にいこう:2011/07/16(土) 14:29:28.73
二つの項目の片方を縦軸、もう片方を横軸として1つの折れ線グラフを作りたいのに、
作ろうとすると、エクセルの通し番号が横軸、二つの項目が両方縦軸になって、
二つの折れ線グラフになってしまいます・・・二つの項目のデータの関係を調べたい
んです。
どうしたらいいですか?
659 忍法帖【Lv=2,xxxP】 【東電 85.0 %】 :2011/07/16(土) 14:49:21.12
>658
そういうグラフは散布図では? こういうもの↓です。
http://www.geocities.jp/kotopara_g/oshiete01/e_sanpuzu.htm
660名無しさん@そうだ選挙にいこう:2011/07/16(土) 15:00:49.98
>>659
ありがとうございます。一応データに関連性があるので
散布図も特徴的な形になりました。

661名無しさん@そうだ選挙にいこう:2011/07/16(土) 20:39:57.84
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2000
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 条件付書式 COUNTA COUNTIF

   A   B    C    D
1| 3   太   太   太
2|     細   細   細
3| a   太   太   太
4|     細   細   細
5|     細   細   細
6| 4   太   太   太
7|     細   細   細

Aの行に何か値が存在したらその行は太字、存在しなかったら標準(細字)
という書式にしたいのですが、条件付書式の数式にどのような数式を書いたらうまくいくのか
よく分かりませんでした
よろしくお願いします
662名無しさん@そうだ選挙にいこう:2011/07/16(土) 21:00:37.36
>>661
=$A1<>""
とすればよいんじゃね?
663名無しさん@そうだ選挙にいこう:2011/07/16(土) 21:23:25.56
>>662
即レス、感謝です
うまくいきました
簡潔なお答えありがとうございました

まさか、こんなシンプルな式でうまくいくとは><
664名無しさん@そうだ選挙にいこう:2011/07/17(日) 10:04:27.41
エクセル2003で質問です。
エクセルではない所からコピーしたものをエクセルに貼付しようとするとエラー?(形式が合わない、サイズがあわないとかで)になります。
ダブルクリックして入力はうまくいくのですが…。マクロでやりたいと思っているので入力操作を簡略化したいのです。
なにか対策方などはないでしょうか?
御教示願います。
665名無しさん@そうだ選挙にいこう:2011/07/17(日) 10:08:46.78
>エクセルではない所
詳しく。
666複乳:2011/07/17(日) 10:17:05.38
>>664
エラーの時はエラーメッセージをそのまま書いて欲しい
667名無しさん@そうだ選挙にいこう:2011/07/17(日) 15:09:34.61
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2002
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否

A1=1のとき、セルの書式設定を「"番号"#」とすると「番号1」といった形で
表示されますが、たとえば上記例の"番号"という文字列を、他のセル値参照に
切り替えたいのですが可能ですか?

A1=1、B1=テストとしたとき、
A1の表示がテスト1とされるような感じで。

これはC1=1としてA1=B1&C1としても似た内容が得られますが、
セルの書式設定にて可能であればご教示ください。
668名無しさん@そうだ選挙にいこう:2011/07/17(日) 15:14:56.53
>>667
vbaじゃなければ無理ぽ
669名無しさん@そうだ選挙にいこう:2011/07/17(日) 15:58:53.61
>>668
そうですか、仕方ないですね。
ありがとうございました。
シートイベントマクロで何とかします。
670名無しさん@そうだ選挙にいこう:2011/07/18(月) 10:03:53.77
【1 OSの種類         .】 Windows7
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否

どんどこ増える帳簿に自動で整理番号を割り振るマクロを作ろうと思い、
番号を割り振る関数を行頭に作成
 ↓
絶対に書き込みをしない空きセルにハイパーリンク作成
 ↓
「関数コピー>ハイパーリンク選択>リンク先にコピー」の操作を記録

とやろうとしたのですが、ハイパーリンクを作ったところで#VALUE!エラーを吐かれました・・・
リンクの書式は
「=HYPERLINK(OFFSET(L2,0,0,COUNTIF(A:A,">1000"),1),"作業番号")」 ※Aの列は年度の数字が必ず入る
見ての通り、オフセット関数で『”年度”の記入されているL列のセル』を自動で選択しようと言う目論み
この関数の間違いの分かる方、もしくは別の手順で目的達成できるよ!という方はおりませんでしょうか
VBAが扱えればかゆいところに手が届くんでしょうがVBA関数の知識が全くなくてorz
671名無しさん@そうだ選挙にいこう:2011/07/18(月) 10:59:21.22
>>670
=HYPERLINK("[ブック名.xls]シート名!セル",〜
というように指定しないといけないと思います
672名無しさん@そうだ選挙にいこう:2011/07/18(月) 11:09:10.92
HYPERLINKの第一引数は「参照」ではなく「文字列」で指定しなきゃダメだよ
参照ってのは「=A1」で、文字列ってのは「="A1"」ね
あと、セルへのリンクの場合、同シート内でもブック名とシート名も必要

OFFSET関数はセルへの参照を返す関数なので、こういう場合はセルのアドレス文字を返す
ADDRESS関数を使用する

=HYPERLINK(ADDRESS(COUNTIF(A:A,">1000")+2,12,1,TRUE,"[ブック名.xls]シート名"))

COUNTIFの後の+2は、君がOFFSETの基準セルにしたL2の「2」を補完したもの
次の12は、12列目、つまりL列を数字で表したもの
673名無しさん@そうだ選挙にいこう:2011/07/18(月) 11:54:55.09
>>671
ありがとうございます
ブック名、シート名を入れて#VALUE!エラーはなくなったのですが、
今度は「指定されたファイルを開くことができません」と言って怒られます
ブック名をファイルのあるディレクトリのフルパスに変えてみてもだめでした
なにかオフセットの前後に足りない関数とかがあるのでしょうか・・・?
674673:2011/07/18(月) 12:10:45.50
ぉぉぅ書き込んでる間にレスが・・・
>>672
やっぱり返値の形式があってませんでしたかorz
ADRRESS関数で組みなおしてみようと思います
複数セルの範囲を指定するのは「ADRRESS(OFFSET(〜」で大丈夫ですよね?
675673:2011/07/18(月) 17:02:25.65
もう一度すみません・・・
ADDRESS関数を使ってリンクを設定しなおしたのですが、
やはり「指定されたファイルを開くことができません」といわれ、
正しくジャンプすることができません。
リンク元とリンク先が同じファイル・同じシートなので新しくファイルを開くことなくリンクさせたいのですが、
どのように記述すればよいのでしょう
シート名の部分を
=HYPERLINK(ADDRESS(COUNTIF(A:A,">1000")+1,12,1,TRUE,"#sheet1"),"作業番号")
としてみてもダメなようです

それと、ADDRESS関数ですと、行番号・列番号に一つの値しか設定できない(一つのセルにしか飛べない)ようですが、
複数のセル範囲を参照させるにはどの関数をかませてやればいいのでしょう?
適当な関数がないのであればマクロで何とかしますが・・・
676複乳:2011/07/18(月) 18:05:30.66
>>675
正直何したいのかよく分からないけど、
同じシートのL列を選択ってことでいいのか
=HYPERLINK("#L"&1,"unko")
これで同シートのL1が洗濯できる
=HYPERLINK("#L"&2,"unko")
これでL2だな
後は
=HYPERLINK("#L"&countif( 中略 ),"unko")
とかやれば何とかできるんじゃないか。
後複数セルを洗濯する方法は関数では無理だと思う
>>671
http://www.eurus.dti.ne.jp/~yoneyama/Excel/kansu/hyperlink.htm
>同一ファイル(ブック)の場合には "#Sheet2!A2" のようにシート名の前に「#」を入れます。
俺も今まで知らなかった。多分二度と使うことはない知識だな
677名無しさん@そうだ選挙にいこう:2011/07/18(月) 18:52:38.73
A列にタイトル、
B列にタイトルに紐づく説明文のデータがあって
B列の説明文は一行ではなく複数行にまたがっています

それをA1から下に順番に読み込んで
タイトルに紐づく説明文のカウントを取りたいのですが

やり方としては
A1からA2A3と下に行って空白の場合B列の文字数のカウントを足していき
空白じゃなかったら0に戻してカウントをし直すやり方なのですが
これだと最後のデータがうまく読み込めません

うまいやり方があれば教授ください
678複乳:2011/07/18(月) 19:40:47.93
>>677
こんな感じ?
http://www.dotup.org/uploda/www.dotup.org1803280.jpg

>A1からA2A3と下に行って空白の場合B列の文字数のカウントを足していき
>空白じゃなかったら0に戻してカウントをし直す
要するに常に累計をだしておき、タイトルが変わったらそれだけ引けばいい
C1=LEN(B1)
C2=LEN(B2)+C1-IF(A2<>"",C1,0)

DとE列はタイトル出すための物だからどうでもいいっちゃどうでもいもいけどついでに
D1=IF(E1<>E2,E1,"")
E1=A1
E2=IF(A2<>"",A2,E1)
679673:2011/07/18(月) 20:15:25.78
自己解決しました
「ADDRESS(〜」の前に"#"と入れることで
同一シート内の指定セルへジャンプすることができるようです
どうもお騒がせしました

>>676
ありがとうございます
やはり関数のみでは限度がありますか・・・
ジャンプの問題は解決したので
「番号行の入力範囲末尾へリンク>CTRL+↑で行頭まで選択」
という手順でマクロに吐こうと思います。
お答えくださったみなさん、どうもありがとうございました。
680605:2011/07/18(月) 22:01:55.43
>>610
返事が遅れてすみません。
ありがとうございました。
681名無しさん@そうだ選挙にいこう:2011/07/19(火) 12:10:59.71
長文の文章の中から句読点の「。」がある度、別のセルに横へずれてコピペするマクロはどんな感じで組めばいいでしょうか。

A1(元文章のセル):あああ。いいい。ううう。えええ。おおお。

A2:あああ。 B2:いいい。 C2:ううう。 D2:えええ。 E:おおお。
682名無しさん@そうだ選挙にいこう:2011/07/19(火) 12:46:06.34
データの区切り位置でいけんじゃねそれ
683名無しさん@そうだ選挙にいこう:2011/07/19(火) 12:46:13.68
>>681
区切り位置の機能を使えば「。」を区切り位置に設定して同様の効果があります。
ただし、「。」が消えてしまいますが。
684名無しさん@そうだ選挙にいこう:2011/07/19(火) 13:01:07.35
データの区切り位置だと、
A1→A1:E1になるし、元テキストが残らないし、"。"も残らないので要望に適してない
A1→A2:E2のように出力先を別行にしたり、元テキストも消さず、区切り文字も残したいなら
こんな感じとか

buf = Split(Replace([A1].Value, "。", "。" & vbNull), vbNull)
[A2].Resize(, UBound(buf)).Value = buf

まあVBA使えば、区切り位置(TextToColumns)を使っても要望通りの結果は出せなくもないけど
素では「同様の効果」じゃないから、事前処理と事後処理が必要になって無駄が多いからな
685名無しさん@そうだ選挙にいこう:2011/07/19(火) 14:49:47.72
>>684
どもでした。まさにこんな感じです。
ただ、最後の文字列に"。"がない場合、コピペされないみたいですが、
解決手段はありますか?
686名無しさん@そうだ選挙にいこう:2011/07/19(火) 18:08:23.85
【1 OSの種類         .】 WindowsXP SP3
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 図が大きすぎます 入りきらない部分は切り捨てられます コピー 行 図はない

エクセル2003ですが、ある日突然(WindowsUpdateをかけてからかもしれない)
表や列単位でコピーすると100%「図が大きすぎます。入りきらない部分は切り捨てられます」
というメッセージが出るようになりました。
実際、コピーペーストは出来るのですが、このMesが出る度に、実際巨大な画像をコピーしたかのように
プチフリーズして動作が重くなるので困っています。

検索すると巨大なメタファイル関連で出るようで、MSのページにも対策が書いてあるのですが
私の場合は、図など何も使っていない開いたばかりの何も入力していないシートでも同問題が出ます。
再現率は100%で、Windowsを再起動した状態でエクセルをセーフモードで立ち上げても解決しません。

このような状態になっている方はおりますでしょうか?


余談ですが、こないだアップデートしてOFV アドインのバグとしか思えない不具合でも嵌りましたし
こんな事ならアップデートするんじゃなかったと・・・・
687複乳:2011/07/19(火) 19:11:02.94
>>685
最後の文字列に"。"がない場合、
最後の文字列に"。" を付け加えるマクロを
加えればいいんじゃないかな
688名無しさん@そうだ選挙にいこう:2011/07/19(火) 20:18:36.41
テーブルを作成して交互色にしてますが、以下の事で困っています。

1.. テーブル以外のセルの背景色を塗りつぶし
2. VBAのフォームでの入力などによりテーブルの範囲を拡張される
3. 背景色がテーブルの上にきてしまい、交互色が台なし

なにか対処法ありますか?
689名無しさん@そうだ選挙にいこう:2011/07/19(火) 20:26:01.42
>>686
Glary Utilitiesとか使い始めて無いか?
690複乳:2011/07/19(火) 20:27:46.94
>>686
図が大きすぎます。入りきらない部分は切り捨てられます
でgoogle検索して片っ端から試すしかなさげ
691名無しさん@そうだ選挙にいこう:2011/07/19(火) 21:07:26.81
>>685
[A2].Resize(, UBound(buf)).Value = buf

[A2].Resize(, UBound(buf) + 1).Value = buf
692 忍法帖【Lv=21,xxxPT】 【東電 65.1 %】 :2011/07/20(水) 00:26:15.58
>>686
ウインドウズにはシステムの復元というのがありますのでアップデートする前に復元できるのでは?
693名無しさん@そうだ選挙にいこう:2011/07/20(水) 03:32:23.55
【1 OSの種類         .】 Windows XP
【2 Excelのバージョン   】 今会社にいないので確認できません
【3 VBAが使えるか    .】 簡単なC、読むだけならC
【4 VBAでの回答の可否】 可
こういうハイレベルなところでする質問なのかわかりませんが
@Aというワークシート、Bというワークシートがあります。
 Aのワークシートのある一列をコピーして形式を選択して貼り付けでBに貼り付けると数式だけでなく
(Aというワークシート名+数式)が貼り付けられてしまいます。
これの数式だけ貼り付ける方法はありませんか。
AAとBはシート名は違いますが内容は同じもの但し壊れているので数式だけ貼り付けたい。
 数式の中にシート1で入力された数字を参照するものが入っている。
Bシート1で50と入力しシート2で50を表示シート2で54を入力54-50を行い差の4を表示
 シートBは壊れたまま使っており数字を全部入力していたが100行ほどあるので数式だけ移したい

(ワークシートA)シート1・シート2・シート3
         50   50 54 式 4
               ↓一列の数式だけコピーしたい
(ワークシートB)シート1・シート2・シート3
         70   70 78 式 8
             50 78 式 20←このようになってしまう   
694名無しさん@そうだ選挙にいこう:2011/07/20(水) 11:31:58.55
>>691
どもです!
これを配列処理する場合、どんな感じのプログラムになりますか?

シート1のA列を、シート2のB列に書きだす場合でお願いします。
695:2011/07/20(水) 11:44:41.09
すいません自己解決です
696名無しさん@そうだ選挙にいこう:2011/07/20(水) 12:33:38.10
>>684
度々すいません。
この構文で実行すると、半角数字がある文章がくると空白になってしまう理由はなんでしょうか?
697名無しさん@そうだ選挙にいこう:2011/07/20(水) 12:41:14.82
>>696
厳密には、数字の1が入るとおかしくなるようです。
698686:2011/07/20(水) 14:16:42.42
>>689-690,692

すいません、解決しました。
結論を言うと、MSアップデートやエクセルは全く関係が無く
クリップボード拡張ソフトCLCLの設定がいつの間にか変わっていたのが原因でした。

具体的には、クリップボードの履歴として保存するデータを選択したり、フィルタしたりする
設定があるのですが、これが
デフォルト全拒否(保存しない) → 許可した物だけ保存
から
デフォルト全許可(保存する)
になっていたのが原因でした。
ご存じの通り、エクセルはセルコピーで大量の項目をクリップボードに送るので、せいぜいテキストと
ビットマップぐらいにしておかないと、保存に時間がかかるのは当然でした。
(エクセル側でエラーを吐くと言うのは謎でしたが)

CLCLは凄く良いソフトで、絶対に手放せないツールの一つなんですが、なんかの拍子で
定型文のデータが消えたり、設定が変わったりすることが多いんですよね。私の環境だけかも知れ無いのですが。

どうもお騒がせしました。
前回のMSアップデートにケチを付けたのは撤回したいと思います。
(OFV アドイン除く)
699名無しさん@そうだ選挙にいこう:2011/07/20(水) 16:04:59.76
あの、あまりにビギナーな質問で恐縮なのですが、どなたか教えてください。
Word2003を使って数年ぶりに文書を作成しました。
複数あるページの特定のページだけ印刷したいのですが、どうにもこうにも
説明書をいくら読んでも、やり方が判りません。お願いします。教えてください。
Word総合相談所の方に先に書き込んでおりますが、
あちらはちょっと過疎ってるようなのでもちろんスレチなのは承知しておりますが
こちらに来ました。急いでいます。お願いします。
700名無しさん@そうだ選挙にいこう:2011/07/20(水) 16:24:29.41
>>699
大変ですね・・・
701名無しさん@そうだ選挙にいこう:2011/07/20(水) 16:54:22.89
>>699
wordスレに回答されています。
702名無しさん@そうだ選挙にいこう:2011/07/20(水) 22:02:37.59
699です。解決しました。wordスレの回答にもそこへさえたどりつけ
なくて右往左往してました。
ファイルの中に印刷というのがあるのは知っていたんですが、そこクリック
したらいきなり印刷が始まってしまうと思い込んでて触れませんでした。
開いてみたら・・・いろんな設定ができたんですね・・・
      お騒がせしました。
703 忍法帖【Lv=21,xxxPT】 【東電 64.7 %】 :2011/07/20(水) 22:05:05.02
>>702
先に向こうのスレにお礼を言うのがエチケットですよ。
704名無しさん@そうだ選挙にいこう:2011/07/21(木) 00:24:06.62
>>693
ブックと思われるところをシートと書いてたりして、イマイチはっきりとイメージできないんだが
もしかして「形式を選択して貼り付け」で「リンク貼り付け」をクリックしてる?
数式を貼り付けたいなら、そこはずばり「数式」を選択して「OK」をクリックするのでは?
705名無しさん@そうだ選挙にいこう:2011/07/21(木) 06:58:15.14
>>704
ご指摘ありがとうございます。
ご指摘の通りシートとなっているところはブックです。
ですが形式を選択して貼り付けで数式を選択しても
ワークシート同士だとその数式の前にコピー元のワークシート名
がつくのです。ブック同士では素直に数式だけ行ってくれます。
706名無しさん@そうだ選挙にいこう:2011/07/21(木) 19:48:48.18
選択したフォルダのファイルたちのファイル名の中に、
A列に書かれているファイル名があった場合は、書かれている隣のB列の内容のものに
ファイル名を変更するVBAを教えて欲しいのですが、どうしてもわかりません。何卒作成していただけませんでしょうか?
Officeは2003です。
707複乳:2011/07/21(木) 20:25:52.37
>>706
ttp://www.dotup.org/uploda/www.dotup.org1812956.jpg.html
oh、突如VBAが使えなくなった
使えたらつくってあげるんだがなー
残念だな

ここでファイル一覧の取得
ttp://www.asahi-net.or.jp/~ef2o-inue/vba_o/sub05_110_080.html
後はB列とA列をfindなりで見つけて同じのがあれば書き換える
ttp://www.asahi-net.or.jp/~ef2o-inue/vba_o/sub05_110_100.html
このページが参考になるな
まー頑張れ
708名無しさん@そうだ選挙にいこう:2011/07/21(木) 23:07:40.06
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 はい
【4 VBAでの回答の可否】 可

マクロで、最下行にある値と、最右列にある値を
それぞれ得るにはどう書けばいいですか?
(下記の例では、B列の1850と、2行目の3200を取得したい)
途中に空白のセルはありません。

    A    B    C    D    E
1  1200  2500  1850
2  2450  1680  2000  1780  3200
3  1550  1225  1760
4  2100  2340  2500  2480
5       1850
709名無しさん@そうだ選挙にいこう:2011/07/21(木) 23:11:18.37
0.1+0.1=0.2ですが、合計を自動で1.0にする関数ってありますか?IF関数でいけますか?
箱2つを紐で括って1つにする場合、
0.1の0が括ってある数で、1が括ってない数ということです。簡単に表したいんですが・・
参考にしたいのでお願い致します
710708:2011/07/21(木) 23:12:55.86
すみません、漏れてました。

マクロで、最下行にある値とセルの番地、最右列にある値とセルの番地を
それぞれ得るにはどう書けばいいですか?
(下記の例では、B列の1850とCells(5, 2)、2行目の3200とCells(2, 5)を取得したい)

よろしくお願いします。
711名無しさん@そうだ選挙にいこう:2011/07/21(木) 23:25:04.49
>>709
???
712名無しさん@そうだ選挙にいこう:2011/07/22(金) 00:00:48.72
>>709
なぜ、くくった箱1セットを1、バラの箱を0.5だとダメなのか説明してもらおうか。
713複乳:2011/07/22(金) 00:09:32.60
>>710
マクロの記録で
ctrl+end、ctrl+←
とか
714名無しさん@そうだ選挙にいこう:2011/07/22(金) 00:10:14.41
>708
ちょっと面白そうな問題だったのでやってみた
こんなんどう?

Sub TEST708()
Dim R1 As Range
Dim R2 As Range
Dim R3 As Range
Dim Ans1 As Range
Dim Ans2 As Range

Set R1 = Range("A1")
Set R2 = R1.CurrentRegion
Set R3 = R1.Offset(R2.Rows.Count - 1, R2.Columns.Count - 1)

Set Ans1 = R3.Offset(1, 0).End(xlUp)
Set Ans2 = R3.Offset(0, 1).End(xlToLeft)

Debug.Print Ans1.Address, Ans1.Value
Debug.Print Ans2.Address, Ans2.Value
End Sub
715複乳:2011/07/22(金) 00:10:58.28
>>709
足し算の最後に5をかければいいだけじゃないのか
716名無しさん@そうだ選挙にいこう:2011/07/22(金) 00:53:27.81
>>705
とりあえず、ブックとシートの関係と
実際にどのセルにどんな数式が入ってるのか、
それをどうしたくてどうなるのかをもうちょっと整理して書いてほしい
ある程度こっちで再現できないことには検証もできないので
717名無しさん@そうだ選挙にいこう:2011/07/22(金) 01:48:00.21
(seatA) Book1 Book2 Book3 Book4 
50 50 54 4 54 59 5 59 67 8


(seatB) Book1 Book2 Book3 Book4
40 40 45 5 45 52 7 52 59 7
*1    40 40 45 5 54 52 -2
sestAとBは入力する数字以外は計算式などは同じ。
seatBは壊れているが全部暗算と入力してあるので数字は変えず数式だね移動したい
カウンターの1日目の数字をBook1に入力(50)
カウンターの二日目に一日目の数字をリンクさせ(50)を表示
      二日目のカウンターの数字(54)を入力
      そのセルを指定して(54-50)を計算させ結果(4)を表示

seatBはそのリンクと計算の式がこわれているのでseatAのBook3の
計算式をコピーしてseatBのBook3に形式を選択して数式で貼り付けると
*1のようになるのでseatB・Book3の数式を確認すると
本来fx=(今回の数字-前回の数字)のところがfx=seatA名(今回の数字-前回の数字)
となりseatBの前回の数字を参照させて計算したいのにSeatAの前回の数字
で計算してしまう。
コピペでどうしても参照してしまうのならseatAbook3の先頭の数式を
直接seatBのBook3の先頭に入力してそれを100列ほど展開させれば良いのでしょうが
それを説明している場所をみつけられない。
718名無しさん@そうだ選挙にいこう:2011/07/22(金) 01:49:32.79
おう;;数字がずれてるこれでわかりにくければおとなしく連休あけて会社
でもう一度内容を確認してきます。ありがとうございます
719名無しさん@そうだ選挙にいこう:2011/07/22(金) 07:54:19.69
【1 OSの種類         .】 Windows7
【2 Excelのバージョン   】 Excel2010
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否

excel2010で横棒グラフの横軸の数値に
桁区切りスタイルを付けないようにしたいのですがどうすればいいですか?
720名無しさん@そうだ選挙にいこう:2011/07/22(金) 08:53:35.82
>>717
普通にコピペしてから置換でワークブック名を””に置き換えるか
データ>リンクの編集(編集>リンクの編集)でコピペ先のブックを選択すればいいんじゃないかな
721名無しさん@そうだ選挙にいこう:2011/07/22(金) 11:01:34.92
>>707
VBAは初心者同然なので、できれば細かく教えて欲しいです
722 忍法帖【Lv=23,xxxPT】 【東電 62.0 %】 :2011/07/22(金) 15:14:15.09
>>719
横軸のところで右クリック→軸の書式設定→表示形式→数値→桁区切り(、)を使用する(U)
のチェックを外す。また、場合によっては表示形式を数値から標準など他の形式へ変更する。
723名無しさん@そうだ選挙にいこう:2011/07/22(金) 16:11:31.41
>>722
桁区切りがなくなりました
ありがとうごうざいました
724名無しさん@そうだ選挙にいこう:2011/07/23(土) 11:25:23.52
【1 OSの種類         .】 Win7 x64
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 Excel 週 平均 グラフ

ttp://petite-soeur.dyndns.org/cgi-bin/up2/src/ps210422.png
↑の様な感じで毎日 体重・体脂肪を記録しているのですが、
これを各週毎に平均値を取ってグラフ化したいと思っています。
7日毎に範囲選択で合計して/7すればいけるのは分かっているのですけど、
過去分が膨大にあるため、一つ一つ手動でやるのは大変な手間です。
関数等を使ってスマートに行うには、どうすればいいでしょうか?
725名無しさん@そうだ選挙にいこう:2011/07/23(土) 11:32:13.46
D列に週番号をつける。1週目、2週目というかんじに。
別シートに週番号の連番をつくって、週番号をキーにSUMIFで集計し7で割る。
726複乳:2011/07/23(土) 12:02:30.92
>>724
=SUM(INDIRECT("b"&(ROW()-1)*7+1&":b"&(ROW()*7)))/7
=SUM(INDIRECT("c"&(ROW()-1)*7+1&":c"&(ROW()*7)))/7
下にオートフィル
727名無しさん@そうだ選挙にいこう:2011/07/23(土) 12:33:50.96
Excel2007でワークシート内のデータを左右入れ替える方法を教えてください

A列  B列  C列
りんご みかん いちご
すいか めろん

このように、行ごとにデータの個数が違います。これを

A列  B列  C列
いちご みかん りんご
めろん すいか

のようにも左詰めで入れ替えたいのです
728名無しさん@そうだ選挙にいこう:2011/07/23(土) 12:46:25.69
>>725-726
レスありがとうございます。
どちらでも望んだ処理が出来ました!
729名無しさん@そうだ選挙にいこう:2011/07/23(土) 13:16:01.10
>>727
単純に手作業で列ごとコピーして削除っちゅうのはだめなのか?
730名無しさん@そうだ選挙にいこう:2011/07/23(土) 18:06:12.19
作業用の行に3・2・1みたいに逆順になるような連番入れて
その行使って列方向で並べ替えて
ジャンプ選択で空白セル選択してセル削除で左詰めかな
731名無しさん@そうだ選挙にいこう:2011/07/23(土) 21:30:41.59
エクセル2010買おうと思ってるんですが

単体じゃないOfficeだと2台(デスクトップとモバイル)入れれるみたいなんですが
エクセル単体の場合も1ソフトで2台いれれるのでしょうか?

よろしくお願いします
732 忍法帖【Lv=24,xxxPT】 【東電 60.3 %】 :2011/07/23(土) 23:08:59.74
>>731
1台のみ使用可と言われているものはOEM(DSP)版と言われるものですので、
通常版・アップグレード版・アカデミック版はご自身のパソコンであれば2台可能です。
733708:2011/07/24(日) 01:16:25.78
>>714
ありがとうございます。
Ans1.Addressが $E$2 になりますが、Cells(a, b)形式で
a=2, b=5を得るにはどう書けばいいですか?
734名無しさん@そうだ選挙にいこう:2011/07/24(日) 01:23:28.18
>>733
横レス失礼
ans1.row
ans1.column
で取得可能です
735名無しさん@そうだ選挙にいこう:2011/07/24(日) 01:24:18.10
>>733
a = Ans1.Row
b = Ans1.Column
736名無しさん@そうだ選挙にいこう:2011/07/24(日) 08:21:36.06
IT系の職に就いて5年目なのですが、
VBAは使えません。。
今後、必要になってくるものでしょうか?
737名無しさん@そうだ選挙にいこう:2011/07/24(日) 09:23:09.91
>736
雑談は雑談スレでどうぞ
【質問不可】Excel総合相談所スレの雑談・議論スレ2
http://hibari.2ch.net/test/read.cgi/bsoft/1151651536/l50
738名無しさん@そうだ選挙にいこう:2011/07/24(日) 11:48:19.10
>>736
>今後、必要になってくるものでしょうか?

VBAの必要性に疑問を感じているということ?
触ってもみないうちからそんなことを考えても
意味が無いんじゃないかな。
とりあえず、やってみることをお勧めするよ。
739名無しさん@そうだ選挙にいこう:2011/07/24(日) 12:15:22.90
>>736
IT系って言っても、文字入力さえ出来れば問題ないものから、
高度なプログラミング能力を要するものまでピンキリだし、
逆に高度になればVBAの出番なんて無い可能性も高い。
またVBAが使えないと言っても、VBAだけが使えなくてC++などは使えるのか、
VBAを含むプログラム・マクロ・スクリプト言語一切が使えないのかで話は変わる。

故に、ここで聞いても無意味。
740731:2011/07/24(日) 14:51:48.20
>>732
購入してみますね
教えてくださってどうもありがとうございました



741708:2011/07/24(日) 19:23:55.65
>>734-735
ありがとうございます。
まさか即レスが付くとは思わなかったので
書き込んですぐに寝てしまいました・・・
742名無しさん@そうだ選挙にいこう:2011/07/25(月) 02:29:44.23
【1 OSの種類         .】 WindowsXP pro
【2 Excelのバージョン   】 Excel2007
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 可

会社の方針変更(機密保持の兼ね合いです)により、データは原則PC管理になってしまいました
ここで一つ問題があって現場で使っている各種記入用紙もPC管理になてしまい、
今までは原紙をコピーするだけなのに、これからはPCにログイン(権限上、個人アカウントが必要)→
社内サーバーにアクセス→各種記入用紙の階層にアクセス(動作が重いアプリみたいなのが必須)→
プリントするプリンタ&トレイを選択→プリント・・・という非常に面倒くさい仕様になりました
これでは現場の作業者に負荷がかかるので、各種記入用紙(70種類程度です)をサーバーから落として
PCのHDD内に保存しておいて少しでも負担を減らそうとしていますが、もう少し楽にしたいと思っています

やっと本題に入りますが、PC内のHDDに保存してある各種記入用紙のフォーマットの脇に
プリントするプリンタ、トレイ、枚数、両面プリントの有無をドロップダウンリストから選択する項目を
作って実際にプリントさせることはできるでしょうか?
記入用紙によって用紙サイズや両面コピーの有無が違うので、設定をデフォルト化させるのは無理っぽいので・・・

743名無しさん@そうだ選挙にいこう:2011/07/25(月) 02:40:15.05
説明が下手糞だったかも・・・

PCのHDD内に落としてある各種記入用紙も多少手を加えてて、目次(各種記入用紙の名称)があって
そこをクリックするとフォーマットに飛ぶようにしてあります
出来れば目次の脇にチェック欄を設けて、チェックした記入用紙をドロップダウンリストから選択した設定で
プリント出来るようにしたいです
744名無しさん@そうだ選挙にいこう:2011/07/25(月) 03:21:39.65
>>742
うーーーーん
予想だけど、それ結構大企業じゃない?
特に銀行や証券辺りと思う
多分法律にキツイところと思うんだけど、システム部が
「古いフォーマットを使わないように」わざわざ作ったシステムなんじゃないかと思う
大企業病に掛かってる大企業の場合は、知らんw

>動作が重いアプリみたいなの
このソフトが社内のシステム部が作ったものなら、
上記の事をメールで訴えればいい
外部発注のシステムなら、総務部に言うのがよいと思う
短時間でなおしてくれる可能性もある

>PC内のHDDに保存してある各種記入用紙のフォーマット
これはマズイと思うが・・・

まぁ、それらは全て問題ないとする上で回答する
>>743
何はともあれ
マクロの記録でぐぐって、vbaを少しだけでいいから使えるようになるほうが早いと思う

>目次、そこをクリック
どこをクリック?ハイパーリンク?ボタン?セル?
仮にハイパーリンクとしても設定してるのか、関数なのか?
>フォーマット
どんな?裏表にしても、複数シート、2ページ、マクロ?と色いろある。
745名無しさん@そうだ選挙にいこう:2011/07/25(月) 04:58:29.53
一つ訂正があってExcelのバージョンは2003でした
(事務所のPCは2007ですが、主につかうであろう現場のPCは2003)

>>744
外資系製造業です
現場レベルだとリース上がりのショボいスペックのPC(Pen4の2.4Gでメモリが512M)なのとLANケーブル這わせすぎて
回線速度が1Mちょいしか出ないので重くなっているのが実情かとorz
因みにコストリダクションの兼ね合いでPC新たに現場で購入する予定は無いのと(同スペックの予備品が数十台はあるとの事)
システムの全ては本国のを使っている感じで動作を軽くする対応依頼は無理だと思います
まぁ、PC内のHDDに勝手に落としているのは細かいツッコミは無しってことでw

マクロの記憶なら目次をクリックで各種記入用紙(フォーマット)へ飛ぶようにしているので何とか出来ます
フォーマットに関しては、単純な罫線と数字だけの記入用紙を両面に印刷して使っています
面倒なところは現場のPCによってプリンタの登録内容(順番)が違っててマクロの記憶では対処しきれない点です
(PC1号機ならUSB接続のインクジェットプリンタがあるので選択出来るプリンタが1台多く、
PC2号機ならラベルプリンタも印刷できるので選択肢の順番が違ってたり)

何だか、素直に私が記入用紙を管理してプリントするか、現場にレーザープリンタの印刷方法を教えた方が早いかも・・・




746名無しさん@そうだ選挙にいこう:2011/07/25(月) 09:24:07.21
>>745
プリンタ設定の変更は可能だけどVBAが必要
VBAが使用可能なら、人間がいちいち選ばなくても全自動にもできる
747名無しさん@そうだ選挙にいこう:2011/07/25(月) 09:26:16.54
>>745
話が横にそれるけど

> LANケーブル這わせすぎて回線速度が1Mちょいしか出ない

これはたぶん何か勘違いしてるか、配線か設定か何かが間違ってる
748名無しさん@そうだ選挙にいこう:2011/07/25(月) 09:53:16.93
すいません、完全VBAの話になってしまいますが、
Public ListInt As String

Private Sub ListBox1_Click()
ListInt = UserForm1.ListBox1.Value
End Sub

で、リストの値が変数に代入されないのですが、なぜでしょうか。
ウォッチでみると、リストValの値は入っています。

Excelは2010です。
749名無しさん@そうだ選挙にいこう:2011/07/25(月) 10:41:01.77
すいません 解決しました
750名無しさん@そうだ選挙にいこう:2011/07/25(月) 10:45:54.50
セルの日付などを変数に放り込んだ時、
01 (1月)や 07 (7日)のように先頭にゼロがつかないように代入したいのですが、
変数定義で処理するものですか?
751名無しさん@そうだ選挙にいこう:2011/07/25(月) 11:14:50.01
セルにはどういう表示形式でどういう値が入力されてるんですか?
日付が入力されてるんなら01や07にはならないと思うんですが
752名無しさん@そうだ選挙にいこう:2011/07/25(月) 11:34:28.60
>>751
すんません、セルではなくリストボックスの値でした。
Replaceで無理やりゼロがあったら除去とかアホやってたんですが、10月とかありますからね・・・
一文字目にゼロがあった場合ってどう書けばOKでしょうか?
753名無しさん@そうだ選挙にいこう:2011/07/25(月) 11:43:23.78
>>752
01とか07とか数字だけならformat(数字,"#")
754名無しさん@そうだ選挙にいこう:2011/07/25(月) 12:03:19.34
>>753
ども(>_<)
755名無しさん@そうだ選挙にいこう:2011/07/25(月) 12:14:35.27
オートフィルターかけた後の、見えている分だけの行を
1行、2行って変数でカウントする方法ってありますか(? _ ?)
756名無しさん@そうだ選挙にいこう:2011/07/25(月) 14:31:43.87
Excel総合相談所 97
http://hibari.2ch.net/test/read.cgi/bsoft/1304307841


【1 OSの種類 .】 Mac OSX Lion
【2 Excelのバージョン 】 Excel mac 2011
【3 VBAが使えるか .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード 】 乗数

桁数が多くなると、「E~」となりますが、これを「10^n」という表示に直せませんか?
757複乳:2011/07/25(月) 15:08:10.74
>>756
Sub Macro3()
Dim a, b
'最終行判定
For k = 65536 To 1 Step -1
If Cells(k, 1) <> "" Then
a = k
Exit For
End If
Next
'hiddenでカウント
For i = 1 To a
If Not (Rows(i).Hidden) Then
b = b + 1
End If
Next
MsgBox b
End Sub
一行目がタイトルなら、b=b-1とかサイコ゜につける
758複乳:2011/07/25(月) 15:08:25.87
間違えた>>757>>755宛てね
759名無しさん@そうだ選挙にいこう:2011/07/25(月) 16:20:17.81
>>756
そういうオプションは無いので、VBA以外では無理
まあ別セルにで良いなら、数式でやることは可能だが
760名無しさん@そうだ選挙にいこう:2011/07/25(月) 18:09:50.60
>>757
どうもー
こちらでも色々調べて、SUBTOTAL関数でいけるかなーと思ったんですが、
どうもフィルタと相性悪いみたいなんですよねー ※特に2003以下?
酷いわ><
761複乳:2011/07/25(月) 18:52:03.31
確かSUBTOTALの可視セルの集計は、行の非表示と対応してるけど
オートフィルタの非表示は経別扱いなんだよな
めんどい
762名無しさん@そうだ選挙にいこう:2011/07/25(月) 19:05:21.13
2007ではそのへんが改良されて オートフィルタの非表示は合計から除外するオプションが増えた
763名無しさん@そうだ選挙にいこう:2011/07/25(月) 20:04:04.49
なるべく短いアクションで、今アクティブのセルの、行と列全体を選択するのは
どうすればよいのでしょうか?

今自分がやってるのは全部手動で、例えばC3セルがアクティブの時
・Shift+Spaceで行全体選択→Ctrlを押しながらC3をクリック→Ctrl+Spaceで列全体を選択
・または、全部マウス操作でC列を選択した後にCtrlを押しながら3行目を選択
のどちらかでやっています。C3を交差点に行列全体を選択したいのです。

マクロで記録すると、マクロだと再現すると記録した場所の行列だけが
アクティブになってしまい、思ってるようにいきません・・・。
どうかアドバイスお願いできないでしょうか?
764名無しさん@そうだ選挙にいこう:2011/07/25(月) 20:13:15.55
>>763
マウスで左端の「3」をクリック
Ctrl押しながら上の「C」をクリック
765名無しさん@そうだ選挙にいこう:2011/07/25(月) 20:37:28.54
>>759
そうですか。
今作成している文書の話なので今回は諦めます。
766名無しさん@そうだ選挙にいこう:2011/07/25(月) 20:47:52.62
>>763
マクロ(VBA)だとこうかな?

Sub TEST763()
Union(ActiveCell.EntireColumn, ActiveCell.EntireRow).Select
End Sub
767名無しさん@そうだ選挙にいこう:2011/07/25(月) 21:04:07.72
追記
なるべく短いアクションつー事だったね
ショートカットキーを登録するといいんじゃないかな

たとえば
Shift + Ctrl + →
>>766のマクロを実行するとしたら

Sub Touroku_TEST763()
Application.OnKey "+^{RIGHT}", "TEST763"
End Sub

を実行しておく
768名無しさん@そうだ選挙にいこう:2011/07/25(月) 22:35:00.57
【1 OSの種類 .】 WindowsXP Home
【2 Excelのバージョン 】 Excel 2002

A列のデータが歯抜け(空白セルがある)のとき、オートフィルタで抽出しようとしても
歯抜け以下を拾ってくれません。

A列を挿入してダミーデータを入れれば抽出できますが、列の挿入をせずに
やる方法があれば教えてください。
769名無しさん@そうだ選挙にいこう:2011/07/26(火) 06:09:28.21
先頭行から一番下の行までを選択してオートフィルタ。
これで全部拾えるよ
770名無しさん@そうだ選挙にいこう:2011/07/26(火) 06:09:45.61
>>768宛のレスでした
771名無しさん@そうだ選挙にいこう:2011/07/26(火) 07:10:08.55
tp://members.jcom.home.ne.jp/sss-3/shin3/shin3_gattai2.html

この様な表をエクセルで作ったのですが、特定の列・行だけを表示するようにするにはどうすればよいですか?

例えばこの表の場合、B3・B4・B5の範囲に「鬼神・天使・魔王」入力すると
データのX行の「鬼神・天使・魔王」だけが表示され、他は非表示になるようにしたいのです。
そして、C3・C4・C5の範囲にも例えば「龍王・地霊・妖鬼」と入力すると
データのY列の「龍王・地霊・妖鬼」だけが表示されるようにしたいのです。

Y列だけの表示なら、オートフィルタを使えば思うようにできたのですが
同時にX行の表示も絡めるとどうすればいいのか教えてください。
772名無しさん@そうだ選挙にいこう:2011/07/26(火) 10:35:43.22
【1 OSの種類         .】 Windows7
【2 Excelのバージョン   】 Excel2010
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 代入、計算結果、行を追加

A=150 B=350 C=100 と3つの数字を入力した場合に、

X150  (B/Y回、Xのプラスマイナスを入れ替えて繰り返す、端数はカット)
Y100  (Xの間には必ずY(B)が入る)
X-150
Y100
X150
Y100
X-150
Y-300(繰り返した数*B*-1)が最後に入る)
のように自動で行を追加してくれるようにExcelでする事は可能でしょうか?
よろしくお願いいたします。
773名無しさん@そうだ選挙にいこう:2011/07/26(火) 10:38:11.66
↑訂正です。
(B/C回、Xのプラスマイナスを入れ替えて繰り返し、Xは偶数で終える、上記の場合350/100=3.5なので4回、仮に520/100の場合は6回)
774名無しさん@そうだ選挙にいこう:2011/07/26(火) 11:34:17.08
↑難解すぎる
775名無しさん@そうだ選挙にいこう:2011/07/26(火) 11:47:21.83
A1=150、B1=350、C1=100と入力したときに
D1に150
D2に100
D3に-150
(中略)
D8に-300
みたいなことでいいんかい?

あと、>>772の例だと(繰り返した数*B*-1)は4*350*-1=-1400になると思うんだけど
776名無しさん@そうだ選挙にいこう:2011/07/26(火) 13:06:56.02
>>772
全くやりたい事が伝わらない
777名無しさん@そうだ選挙にいこう:2011/07/26(火) 13:07:09.66
>>774
説明がヘタクソでもうしわけないです。
>>775
はい、その通りです。
778名無しさん@そうだ選挙にいこう:2011/07/26(火) 13:12:26.99
>>776
それについても説明不足でした。
横に一定間隔で移動しながら往復するデータを作りたくてExcelで何とかできないものかと考えておりました。
4角形に雑巾がけするイメージです。
上に150(部屋の縦方向)動いたら、横(雑巾の幅)に100動いて、次は下に150動き、また横に100・・・と部屋の横幅まで行き(はみ出す前提ですが)、
最後に元の位置に戻るといった具合です。
779名無しさん@そうだ選挙にいこう:2011/07/26(火) 13:12:48.37
Excel2003のオートフィルなんですけど、デフォルトでセルのコピーではなく
1,2,3,4〜というふうになるように設定する方法はありますか?
Ctrlを押しながらやればいいのはわかるのですがめんどくさいので。
780名無しさん@そうだ選挙にいこう:2011/07/26(火) 14:35:21.23
マクロの練習として>>772をやってみました
だれか採点してくだちい

Sub zoukin()
 Dim A As Long, B As Long, C As Long
 Dim i As Integer
 Dim rngStart

 A = Range("a1") '部屋の長さ
 B = Range("b1") '部屋の幅
 C = Range("c1") '雑巾の幅
 Set rngStart = Range("d1") 'スタート位置
 rngStart.EntireColumn.ClearContents

   i = 1
     Do Until i > B / (C * 2) + 1
       With rngStart
          .Offset(i * 4 - 4, 0) = A
          .Offset(i * 4 - 3, 0) = C
          .Offset(i * 4 - 2, 0) = -A
          .Offset(i * 4 - 1, 0) = C
       End With
     i = i + 1
   Loop

   rngStart.Offset((i - 1) * 4 - 1, 0) = -(C * (i - 1) * 2 - C)

End Sub
781名無しさん@そうだ選挙にいこう:2011/07/26(火) 19:30:49.27
A1=150、B1=600、C1=100 NG
782名無しさん@そうだ選挙にいこう:2011/07/26(火) 20:18:34.54
>>779
ない。ただし文字列ならデフォルトが連続データ
783名無しさん@そうだ選挙にいこう:2011/07/26(火) 20:31:35.66
2130→21.5
800→8
という風に
六十進法しかも真ん中に:なしのデータを
矢印右の十進法小数点以下に変換するにはどうすればいいのでしょうか?
784名無しさん@そうだ選挙にいこう:2011/07/26(火) 20:57:47.24
>>783
=TEXT(A1,"0!:00")*24

こういう質問ってよく見るけど、なんでこういう状態になるんだ?
785名無しさん@そうだ選挙にいこう:2011/07/26(火) 20:59:54.92
>>784
トン
あるシステムからデータ取り出すとこうなる
786名無しさん@そうだ選挙にいこう:2011/07/26(火) 21:21:32.75
>>782
ありがとう。
Excel97とかはどっちか選べたような気がするんですけど。
787名無しさん@そうだ選挙にいこう:2011/07/26(火) 21:58:03.17
>>780
おまけして15点くらいはあげてもいいかな
788名無しさん@そうだ選挙にいこう:2011/07/26(火) 21:58:23.27
>>784
これって*24でなんで十進法になんの?
理屈がわからん
789名無しさん@そうだ選挙にいこう:2011/07/26(火) 22:05:28.26
>>788
シリアル値なんですもの(`・ω・´)

例えば、24:00を入力して、せるの表示形式を標準にしてみる、
12:00を入力して表示形式を標準にしてみる。

とすれば分かるかも
790名無しさん@そうだ選挙にいこう:2011/07/26(火) 22:10:45.53
>>769,770
できますた。dクス!!
791名無しさん@そうだ選挙にいこう:2011/07/26(火) 22:49:46.24
>>789
優しさが肌身にしみます
792名無しさん@そうだ選挙にいこう:2011/07/26(火) 23:32:48.56
>>779
右ドラッグ→連続データは?
793名無しさん@そうだ選挙にいこう:2011/07/27(水) 15:34:28.60
【1 OSの種類         .】 WindowsXP pro Windows 7
【2 Excelのバージョン   】 Excel2003 2010
【3 VBAが使えるか    .】 はい
【4 VBAでの回答の可否】 できれば否
【5 検索キーワード     】 excel csv テキストファイルウィザード 改行コード LF フィールド内改行 http://okwave.jp/qa/q1782826.htmlが近いけど
794793:2011/07/27(水) 15:35:30.12
(本文長過ぎとかいわれたので分けました)

にっちもさっちもいかなくなったので、どなたか助けてください。

CSVファイルがあります。フィールド内改行はLFで、レコードの区切りはCRLFです。
これを外部データの取り込みからテキストファイルウィザードを使用するとLFで別行に行ってしまいます。
CSVファイルをダブルクリックで開くとLFはセル内改行になるんだけど、データとして"2-5"ってのがあったら日付として読み込まれてしまう。

解決策があれば教えていただきたいのと、なぜ両者で挙動が違うのかわかれば、なにか教えてくださいませ。(´・ω・`)
795複乳:2011/07/27(水) 16:22:55.10
>>794
改行は多分仕様じやないか。csvの読み込みと外部データの取り込みの挙動が違うんだろう

で、結局何がしたいのかわからないんだけど
LFでセル内改行を維持しつつ、2-5をテキストデータとして読み込みたいなら
OOo使えばできる
http://ja.openoffice.org/
で、その後エクセルにコピーすればok
796794:2011/07/27(水) 16:35:57.90
>>795
>>LFでセル内改行を維持しつつ、2-5をテキストデータとして読み込みたいなら

説明不足ですんません。そういうことっす。
やっぱExcel単体じゃ無理ッスかねぇ。
相手には「EXCELの仕様です」で押し通すかw
797名無しさん@そうだ選挙にいこう:2011/07/27(水) 16:53:28.87
LFとマイナスを何か別の記号に置換してから読み込んでもう一度Excelの中で置換とか
798複乳:2011/07/27(水) 16:54:26.52
>>796
VBAでCSV読み込みプログラムを無理やり作れば一発でいけるだろうけど
http://www.asahi-net.or.jp/~ef2o-inue/vba_o/sub05_110_020.html
俺ならOOoを使う
あと2010は持ってないから出来るかもしれないけどそこはしらん
799794:2011/07/27(水) 16:57:24.57
>>797
ですね。
一旦、LFを別の記号なり言葉なりに置き換えて、テキストファイルウィザード読み取り後
その記号をCtrl+Jに置換…という手順が最も自然でしょうかねぇ。
ありがとうございます
800794:2011/07/27(水) 16:59:31.58
>>798
レス入れ違いになって、スレ汚しですいません。
2010でも挙動は変わらないみたいですね。
ありがとうございます。

しかし、ぐぐってもあんまりこの問題抱えている人いなさそうなんだけど
みんな困ってないのかな
801名無しさん@そうだ選挙にいこう:2011/07/27(水) 17:26:51.53
>>800
1-2が日付になって困るって質問は何度も見たことあるよ
セル内改行はダブルクォートで囲むのが一般的な解決方法
802794:2011/07/27(水) 17:41:14.20
>>800
「日付で読み込まれるのはテキストファイルウィザード使って文字列に指定しないからだ!」
って偉そうに言ってしまった手前、改行問題で後に引けなくなってしまいw

フィールド内改行はちゃんと、"hogehoge(LF改行)piyopiyo"ってダブルクォートで囲んでるのに
テキストファイルウィザード使っても別行にいってしまうんですよね…
803名無しさん@そうだ選挙にいこう:2011/07/27(水) 22:20:43.25
相変わらず複乳はショボい回答ばかりだけど張り切ってるなぁ
まだ就職できなくて暇なのかな?

まあ会社としても、複乳みたいにそこそこ知識は詰め込まれているが、
根本的に頭の回転の悪い奴より、予備知識なんか無くてもいいから
頭の回転の良い奴が欲しいもんな。
804複乳:2011/07/27(水) 23:29:35.55
転職したよ。相変わらず暇で死にそうだ
なんでもかんでもvbaでやるからどっちでもいいんだよw
805名無しさん@そうだ選挙にいこう:2011/07/28(木) 01:16:58.82
エクセルで顧客管理をしています。

上から順に購入者の名前と金額を打ち込んでいて、2回目以降になると
〇月〇日 ×山〇夫(2) 7000円 

というふうに名前の後に()書きで回数をいちいち打ち込んでいます。
顧客が多いので、いちいち以前に購入された回数を調べなくても
3回目なら、名前を打ち込んだ時点で×山〇夫(3)というふうに
以前購入回数+今回分の回数が自然にでてくるようにする方法は
ないでしょうか?
 
806複乳:2011/07/28(木) 01:38:55.32
>>805
http://www.dotup.org/uploda/www.dotup.org1837148.jpg
B2="("&COUNTIF($C$2:C2,C2) & ")"
こんな漢字がいいんじゃないスカね
名前の右がいいなら右でもいいけど、見にくい気がする

それだけだと漢字の間違いで見落とす可能性があるから
ttp://www.dotup.org/uploda/www.dotup.org1837172.jpg
こんな感じで事前に客のリスト、顧客コードみたいな物を作って
入力は数字だけにしておけば間違いが少なくなるかもねぇ
807名無しさん@そうだ選挙にいこう:2011/07/28(木) 01:47:41.47
ありがとうございます。試してみます。
808 忍法帖【Lv=25,xxxPT】 【東電 59.3 %】 :2011/07/28(木) 02:06:20.70
>>805
A列→日付、B列→購入者名、C列→購入回数、D列→金額ということでよければ、
C1 =IF(COUNTIF(B$1:B1,B1)<=1,"",CONCATENATE("(",COUNTIF(B$1:B1,B1),")"))
という式を入れることができます。
809名無しさん@そうだ選挙にいこう:2011/07/28(木) 22:51:22.74
A列に文字が書かれていて、B列に整列させるには?
たとえば
A1からA10に"A",A11からA15に"B"A16からA18に"C"と書かれていて
B1="A" B2="B" B3="C"
というふうに複数のものも1つにして表示させたいです

できるだけスマートな方法お願いします
810 忍法帖【Lv=25,xxxPT】 【東電 67.6 %】 :2011/07/28(木) 23:13:15.42
>>809
Excel2011の場合ですが、
B列へコピペしデータタブの重複の削除を行えばおk。
811名無しさん@そうだ選挙にいこう:2011/07/28(木) 23:14:09.78
>>809
関数だと、ものすご〜く面倒な数式になるよ。

ちょっと弄んでたけど、久しぶりだと式が立てられないw
812 忍法帖【Lv=25,xxxPT】 【東電 67.6 %】 :2011/07/28(木) 23:19:41.17
×Excel2011→○Excel2010でしたね。スイマセン
813名無しさん@そうだ選挙にいこう:2011/07/29(金) 00:05:50.02
税込み金額で作成された売上げ集計表があります。
税抜き金額に一気に変更するにはどうしたらよいか、教えて下さい。

この表を
りんご 1,050
みかん 945
いちご 315
合計 2,310
このようにしたい
りんご 1,000
みかん 900
いちご 300
合計 2,200

1.05をコピーバッファに入れて、金額の範囲を選択して
形式を選択して貼り付けで除算演算すればできますが、
他にあればと思いまして質問させていただきました。
814名無しさん@そうだ選挙にいこう:2011/07/29(金) 00:27:15.10
>>813
たぶんそれが最速かつ一番簡単な方法かと思われ
よく使うならマクロ登録しとけばいいかもね、ってくらい
815名無しさん@そうだ選挙にいこう:2011/07/29(金) 18:06:49.34
セルから参照させたリストボックスで選択中の値を、
スピンボタンで上下に移動させ、設定保存みたいなボタンを押すと参照元のセルもその順序に置き換える、
のようなVBAを組みたいのですが、どのように組めばよいでしょうか。
816名無しさん@そうだ選挙にいこう:2011/07/29(金) 18:37:00.39
そのくらいならVBAいらないんじゃないかな 単にコントロール置くだけでいいかも
817名無しさん@そうだ選挙にいこう:2011/07/29(金) 18:38:16.32
>>816
まじっすか!?
818名無しさん@そうだ選挙にいこう:2011/07/29(金) 18:57:00.18
>>784
すいません。
-1630とかマイナスがついてる場合も十進法に変換する方法っないですか?
819名無しさん@そうだ選挙にいこう:2011/07/29(金) 19:31:26.72
横レスだけど
=TEXT(ABS(A1),"0!:00")*24*SIGN(A1)
とか
820名無しさん@そうだ選挙にいこう:2011/07/30(土) 01:03:32.51
複乳の中の人に質問なのじゃが
VBAでpersonal.xlsbを作る方法は、マクロの記録でダミーのを作ってから、以外にありますか?
821複乳:2011/07/30(土) 01:15:33.84
>>820
わかりませぬ。すみませぬ。
↓のスレの方が詳しいと思う
Excel VBA 質問スレ Part19
ttp://hibari.2ch.net/test/read.cgi/tech/1305754555/
822名無しさん@そうだ選挙にいこう:2011/07/30(土) 03:05:39.59
A1セルの数値が1以下であれば, B1セルに "1以下です" という文字を表示
A1セルの数値が1以上であれば, B1セルは空白のまま。

という事をしたいのですが、どうすればできますか?
823名無しさん@そうだ選挙にいこう:2011/07/30(土) 03:11:58.96
また、B1セル "1以下です" という文字は印刷されないようにしたいです。

宜しくお願いします
824 忍法帖【Lv=26,xxxPT】 【東電 55.2 %】 :2011/07/30(土) 03:42:46.81
>>822
=IF(A1<=1,"1以下です","")
>>823
マクロ使って印刷時にB1セルのフォントカラーを背景色と同一に変え印刷し元のフォントカラー
へ戻すというマクロを組む。
825 忍法帖【Lv=26,xxxPT】 【東電 55.2 %】 :2011/07/30(土) 04:29:10.07
>>823
他のワークシートへB1以外のセルをリンク表示させてそのシート
を印刷専用シートとして使う方法もあります。
826名無しさん@そうだ選挙にいこう:2011/07/30(土) 09:11:17.44
>823,824
B1セルの文字色は背景色としたまま、テキストボックスをB1セルに重ねて配置し、
テキストボックスのプロパティで「印刷しない」にしておくとVBA使わずにすむと思う。
テキストボックスはB1セルを参照する計算式を入れればいいです。
ただし、テキストボックスがズレないようにするにはシートの保護が必要。
827名無しさん@そうだ選挙にいこう:2011/07/30(土) 11:30:37.98
セルの表示形 ユーザー定義に "1以下です"を追加して
上手にできないだろうか?偉い人考えてみて
828名無しさん@そうだ選挙にいこう:2011/07/30(土) 11:36:58.71
>827
セルの書式設定では「表示はするけど、印刷には出さない」の指定ができない
829名無しさん@そうだ選挙にいこう:2011/07/30(土) 11:40:19.78
ですよねー
830名無しさん@そうだ選挙にいこう:2011/07/30(土) 12:10:10.10

エクセル初心者の私でもIFとテキストボックスの合わせ技でできそうです!
皆さん、どうもありがとうございました
831名無しさん@そうだ選挙にいこう:2011/07/30(土) 16:46:55.43
普段、エクセルを起動し、もう1つ起動させたいので
普通にエクセルを新規で起動して、読み込みます。

この手順をしないと、1つのエクセルの中に、2つのエクセルファイルが
できてしまいます。

デュアルモニタで、左右に別途エクセルを起動させています。

【質問】
エクセルを起動させた後に、xlsファイルをダブルクリック
すると、別途エクセルを起動するようにしたいのですが
どうすれば良いでしょうか?

簡単に言うと、xlsファイルをダブルクリックする度に
複数起動として起動させたいです。 よろしくお願いいたします m(_ _)m

【1 OSの種類         .】 Windows XP SP3 32bit
【2 Excelのバージョン   】 Excel2002
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 エクセル 複数 起動
http://efcit.co.jp/cgi-bin5/exqalounge.cgi?print+201004/10040006.txt
この方法を試しましたが、ダメでした。
832複乳:2011/07/30(土) 18:04:04.39
>>831
ツール オプション ゼンパン ホカノアプリケーションヲムシスル
833名無しさん@そうだ選挙にいこう:2011/07/30(土) 20:18:07.55
初歩的な質問ですが、同一シート内の別ブックのセルに、元のブックの
数値を反映させたいのですが、=から反映させたい数値のセルをクリックしても、
もvalueとでてきてしまいます。原因としてはどのようなことが考えられます
でしょうか?解決策おわかりの方お教えいただけますか?
初歩的なことで恐縮ですが、何卒お願いいたします。
834名無しさん@そうだ選挙にいこう:2011/07/30(土) 20:24:09.41
833の補足です。
【1 OSの種類         .】 Windows vista home premium
【2 Excelのバージョン   】 Excel2007
【3 VBAが使えるか    .】 わかりません
【4 VBAでの回答の可否】 わかりません
【5 検索キーワード     】

元ブックの数値は、簡単な足し算を元に導いた数値です。

835名無しさん@そうだ選挙にいこう:2011/07/30(土) 20:45:07.44
同一シート内の別ブックってどういうことなの世界は循環しているの
836833:2011/07/30(土) 20:48:52.84
すいません。同一ブック内の別シートです。
837名無しさん@そうだ選挙にいこう:2011/07/30(土) 21:11:29.90
>>833
そのvalueが出てきた数式はどうなってる?
838833:2011/07/30(土) 21:22:44.65
837様
レス遅くなりすいません。
先ほど自己解決いたしました。
元のセルを結合していたのが原因だったようです。
お手数おかけして申し訳ありません。
レスいただきありがとうございました。失礼します。
839名無しさん@そうだ選挙にいこう:2011/07/30(土) 22:31:39.51
>>838
??
840名無しさん@そうだ選挙にいこう:2011/07/31(日) 00:00:39.54
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 はい
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 モジュール エクスポート

すみません、よろしくお願いします。

ブックAにSheet1があります。そこにはコマンドボタン1と2が付いています。
まずコマンドボタン1をクリックすると、ブックBが開き、Sheet1はブックBにコピーされます。
Sheet1がコピーされたら、ブックAを閉じるようにVBAで組んであります。

現在うまく行かずに悩んでいるのは2件です。
【1】コマンドボタン1に設定されているプロシージャを解除したい。
現状では、ブックBのボタン1をクリックするとブックAのVBAを読みにいこうとしてしまいますが、
Sheet1がブックBに移動した時点でボタン1はもはや無くてもいいくらいに無用なものなので、
クリックしても無反応なのがありがたいです。

【2】コマンドボタン2をクリックした時、ブックBのプロシージャを読んでほしい。
ボタン2はシートモジュールにプロシージャを設けているので、Sheet1がブックBへコピー
された際にボタン2用に書いたプロシージャもブックBへ移動しています。
にも関わらず、ボタン2をクリックするとブックAのVBAを読みに行こうとします。
そうではなくブックBのVBAを読んでほしいです。

どうにかなりませんでしょうか…
841名無しさん@そうだ選挙にいこう:2011/07/31(日) 01:21:33.55
>>840
下記だとどうでしょうか
多分
"フォーム"のコマンドボタンを使ってると思われるが
"コントロールツールボックス"のコマンドボタンに変更したら?
これで ブックAのVBAを読みにいこうとする問題は解決するはずなんだけど

【2】は解決するとおもう
【1】は
 不要なら"ブックBのボタン1"を削除してしまうのがいいかと思うけど

 他の方法として
 1)ブックAの標準モジュールへ コピー処理本体を作成
2)ブックBの標準モジュールへ 1)と同名のダミープロシージャ(なにもしない)を作成

 ボタン1クリック時のプロシージャからはこれをCALLする形にする
 Private Sub CommandButton1_Click()
 Call HogeHoge
 End Sub
842名無しさん@そうだ選挙にいこう:2011/07/31(日) 03:15:11.72
>>832 うまくいきました! あざ〜す!
843名無しさん@そうだ選挙にいこう:2011/07/31(日) 15:13:12.12
【1 OSの種類         .】 Windows7
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 はい ※但し初心者
【4 VBAでの回答の可否】 可
【5 検索キーワード     】エクセル vba モジュール import

すみません、コードがやたら長くなってしまうので別ファイルにエクスポートして分割したんですが、
メインのコードで呼び出すときにうまくいかず、その先のcallステートで怒られます…
(ないものを参照しに行っているので当然エラー)
呼び出すコードは以下のように記述してます

Application.VBE.ActiveVBProject.VBComponents.Import (ThisWorkbook.Path & "\○○.bas")
(○○の部分はファイル名が入る)
これと同様のコードが数行続きます。

何か間違えてる部分があればご指導願います。
できれば他のエクセルのバージョンでも使える形でお願いします。

後、デバック中のワークブックを見ると、この後にある

Workbooks.Open Filename:=ThisWorkbook.Path & "\△△.xls"
(処理に必要なワークブックを開くコード)

これもきちんと動いていないようです。
こちらも合わせてお願いします。
844843:2011/07/31(日) 15:18:42.28
書き忘れました・・・

コードのコピペではなく、
自分で処理の流れを理解した上で使いたいので、
それが何をしているコードなのか、具体的な解説をいただけると助かります。
お手数かもしれませんがよろしくお願いします。
845名無しさん@そうだ選挙にいこう:2011/07/31(日) 16:16:10.75
うまくいかず?
怒られます?
当然エラー?
きちんと動いていないよう?
etc

他人に具体的な解説を求めているのに自分は曖昧な説明ですか

具体的にどこでどのようなエラー(又は現象なのか)が出たか(エラーならそのエラーメッセージも)
書かないと誰も答えてくれませんよ
846名無しさん@そうだ選挙にいこう:2011/07/31(日) 17:03:29.88
>>843です

エラーが出るまでのコードは

---------------------------------------------
Sub test()

' 変数を定義

Dim RowA As Integer
Dim RowB As Integer
Dim RowC As Integer
Dim RowD As Integer
Dim C As Integer
Dim P As Single
Dim CkSub As Object
Dim mPath As String
847レベルが足りないので分けます:2011/07/31(日) 17:04:13.88


ActiveWorkbook.Application.VBE.ActiveVBProject.VBComponents.Import (ThisWorkbook.Path & "\○○.bas")
ActiveWorkbook.Application.VBE.ActiveVBProject.VBComponents.Import(・・・・・
  ・
  ・

' 必要なファイルを開く

Workbooks.Open Filename:=ThisWorkbook.Path & "\△△.xls"


' 仕訳帳整理

Call 「プロージャ名」

---------------------------------------------
848843:2011/07/31(日) 17:04:56.45
ここで、
「sub またはfunctionが定義されていません」
といわれ
「プロージャ名」の部分を指されます

ブックの状況はと言いますと
マクロを動作させるために開いたブックと、
そのブックに元から書き込まれているマクロがあるだけで、
マクロ実行前と全く変化がありません
(何故かモジュールをインポートする行、ブックを開く行ではエラーになりません)
Callステートで呼んでいるサブプロージャは
先にエクスポートしておいたモジュールの名前ですので、
おそらくエラーの元は指摘された「Call 〜」の行ではなく、
冒頭の「ActiveWorkbook〜」の行でサブプロージャを取り込めていないせいだと思うのです。
いくつかVBAの解説サイトも回りましたが文法的におかしな箇所は思い当たらず・・・


説明不足だったようで申し訳ありません。
849 忍法帖【Lv=2,xxxP】 【東電 65.5 %】 :2011/07/31(日) 17:05:57.31
>843
初心者レベルで「コードがやたら長くなってしまう」処理ってどんなの?
配列を使ったり、同じような処理ならfunctionやsubの副手続きにまとめたり
しても数千行になるの?

850名無しさん@そうだ選挙にいこう:2011/07/31(日) 17:15:25.17
前任者のコード丸ごとコピペしてなんとかしようとしたら動かなくなったんで勉強しなきゃいけないってとこだろ
そんなもん前任者に聞け
まずセキュリティエラー出るわそんなもん
851名無しさん@そうだ選挙にいこう:2011/07/31(日) 19:32:20.18
>>849
数千・・・にはなりませんが数百にはなりますね。

実作業の部分は
Workbooks("仕訳帳日付順").Worksheets("sheet1").Range(Cells(RowB, 1), Cells(RowC, 3)).Copy
Workbooks("元帳_一般会計").Worksheets("会議費").Cells(3, 2).PasteSpecial Paste:=xlPasteValues

これと同様な単純なコピペコードが2、300個ほど続きます。
エラーが出たときに原因を特定しやすくしようと小分けにしたのですが、
やはり内部の同じモジュールにサブプロージャとして書き込むべきでしょうか・・・?

>>850
今回新しく作る整理用の帳簿に並び替えながら転記するためのコードなんですが、
何しろ数が多いので、ミスがないように自動で処理させるとなると
どうしてもVBAを避けて通れません。
おっしゃるとおりループで処理させるようなコードを組めば短く済むのでしょうが、
解説サイトを見ながらコードを書いているようなレベルなので、
いきなり難しい構文に挑戦するよりは、
多少冗長でもなるべく簡単な構文のコードだけで暫定版を組んでおき、
ある程度複雑なコードが組めるようになった時点できれいにまとめた完成版に差し替えようと考えています。
852840:2011/07/31(日) 19:39:18.50
>>841
回答ありがとうございます!
職場のブックなので自宅に持ち帰ることができないため、
明日出勤したら早速修正してみます。

フォームのコマンドボタンとコントロールツールボックスのコマンドボタンで
働きが異なるんですね、恥ずかしながら初めて知りました…
今後気をつけてボタンを設置することにします。
853名無しさん@そうだ選挙にいこう:2011/07/31(日) 22:13:07.93
>>848
VBAでも
コンパイル→プロシージャ実行 の流れになるので
このコンパイル時にそのプロージャがないと
「sub またはfunctionが定義されていません」となる

 ※コンパイル時はプロシージャ"実行前"なので
  当然としてインポートもされていないから「プロージャ名」も存在していない

たしかコンパイルはモジュール単位じゃなかったかと思うので

Sub test() があるモジュールとは ★別の標準モジュール★に書かれた
プロシージャを経由して
インポートされるプロシージャをCALLする形にするといいかも

CALL TEST2 --> SUB TEST2() --> インポートされるプロシージャ

この対策自体ちょっと自信がないんで
もしこれでも「sub またはfunctionが定義されていません」となったり
又は他の不具合でたらゴメンね
854名無しさん@そうだ選挙にいこう:2011/07/31(日) 22:37:41.56
>>851
その程度のさして長くもないコードをエクスポートまでしておく必要あるのか?
そもそも、
> エラーが出たときに原因を特定しやすくしようと小分け
というなら、
> Workbooks("仕訳帳日付順").Worksheets("sheet1").Range(Cells(RowB, 1), Cells(RowC, 3)).Copy
なんて書き方はしちゃいけない。

Set ブック変数 = Workbooks("仕訳帳日付順")
Set シート変数 = ブック変数.Worksheets("sheet1")
Set セル基点1 = シート変数.Cells(RowB, 1)
Set セル基点2 = シート変数.Cells(RowC, 3)
Set セル範囲変数 = シート変数.Range(セル基点1, セル基点2)
セル範囲変数.Copy

にしろ。第一、
> Workbooks("仕訳帳日付順").Worksheets("sheet1").Range(Cells(RowB, 1), Cells(RowC, 3)).Copy
は、正しくは
Workbooks("仕訳帳日付順").Worksheets("sheet1").Range(Workbooks("仕訳帳日付順").Worksheets("sheet1").Cells(RowB, 1), Workbooks("仕訳帳日付順").Worksheets("sheet1").Cells(RowC, 3))).Copy
としなきゃダメなんだぞ

Range(Cells,Cells)の場合、Rangeの親とCellsの親は同一でなければならないが、標準モジュールの場合、
親を略してCellsと書くと、Cellsの親はアクティブシートとなる。つまり、sheet2がアクティブな状態で
Worksheets("sheet1").Range(Cells(RowB, 1), Cells(RowC, 3))
と書くと
sheet1.Range(sheet2.Cells(RowB, 1), sheet2.Cells(RowC, 3))
と同義であり、不整合でエラーになる。しかし
> Workbooks("仕訳帳日付順").Worksheets("sheet1").Range(Cells(RowB, 1), Cells(RowC, 3)).Copy
なんて書いた場合、行全体がオブジェクト定義エラーとされるから、Workbooksオブジェクトのエラーなのか、.
Worksheetsオブジェクトのエラーなのか、Rangeオブジェクトのエラーなのか、Cellsオブジェクトのエラーなのか解りにくい。

君のコードは無駄に冗長なだけで、エラーを特定しやすくしたコードとは呼べない。
855名無しさん@そうだ選挙にいこう:2011/07/31(日) 22:56:20.93
便所の落書きより読みにくいなおい
856名無しさん@そうだ選挙にいこう:2011/07/31(日) 23:13:13.25
しかし重要かつ正しい指摘ではある

つーか、プログラムコードなんておしなべて便所の落書きより読みにくいものだぞw
857名無しさん@そうだ選挙にいこう:2011/08/01(月) 00:45:44.99
最近のゆとりは文章を読む力が衰えてるらしいからね
858名無しさん@そうだ選挙にいこう:2011/08/01(月) 05:26:16.82
しかし読みにくいモノを読むと便意をもよおしてくるよな。
トイレでは逆にそれが良いんだけど。
859名無しさん@そうだ選挙にいこう:2011/08/01(月) 08:41:20.82
別に読みにくくもないけどね
・・・・・まともな読解力があれば
860名無しさん@そうだ選挙にいこう:2011/08/01(月) 13:34:01.28
EXCEL2011(Windows7)です。

リボンのタプの[ファイル]がいつも選択された状態になります。

通常は、リボンのタブ(例えば[ホーム])をクリックすると、
別のタブをクリックしない限り
そのタブ([ホーム])が表示され続けるのですが、
1つのセルの操作を完了するとリボンが[ファイル]タブのリボンになります。

どうすれば正常になるのでしょうか?
861名無しさん@そうだ選挙にいこう:2011/08/01(月) 13:47:32.72
>>860
再起動
マウスとキーボードが故障してないか確認
変なソフトが入ってないか確認

あと、2011じゃなくて2010のはず
862名無しさん@そうだ選挙にいこう:2011/08/01(月) 13:48:52.93
Excel2002です。

質問なのですが、
CONCATENATE関数で一つのセルに複数の数値を送った時に、
それぞれに書式表示を設定するには、どうやったらできるのでしょうか?

例えば、「10,-5」と、CONCATENATEが返した時に、
表示では「+10個/-5個」というような表示になって欲しいのです。

どうかよろしくお願いします
863名無しさん@そうだ選挙にいこう:2011/08/01(月) 14:05:11.14
CONCATENATEは複数の値を返す関数ではなく
文字列を結合する関数だよ

なので表示形式的には文字列を示す「@」しかあり得ない
その上で「+10個/-5個」と表示したければ
=TEXT(A1,"+0個;-0個")&"/"&TEXT(A2,"+0個;-0個")
とかやれば良いだけで、CONCATENATE関数は使わなくても良い
あえてCONCATENATE関数使うなら
=CONCATENATE(TEXT(A1,"+0個;-0個"),"/",TEXT(A2,"+0個;-0個"))
864名無しさん@そうだ選挙にいこう:2011/08/01(月) 14:15:44.54
>>863
申し訳ない、勉強不足でした。
TEXT関数でやりたいことができました。
どうもありがとうございます。
865名無しさん@そうだ選挙にいこう:2011/08/01(月) 14:25:21.12
1〜3列にあるデータを、
4行ずつ4列に移動して振り分けたいのですが、マクロでどうやればいいでしょうか?

http://www1.axfc.net/uploader/Sc/so/260892
シートに実行前・実行後のサンプルをまとめました
866名無しさん@そうだ選挙にいこう:2011/08/01(月) 15:34:03.07
>>865
ほい

Sub Macro999()
'見出しのコピー
    Range("A1:C1").Copy
    Range("D1").PasteSpecial
    Range("G1").PasteSpecial
    Range("J1").PasteSpecial
'データの移動
    全データ数 = Range("A1").End(xlDown).Row - 1
    分割後の行数 = WorksheetFunction.RoundUp(全データ数 / 4, 0)
    コピー開始行 = 分割後の行数 + 2
    For コピー先の列 = 4 To 10 Step 3
        Cells(コピー開始行, 1).Resize(分割後の行数, 3).Cut
        Cells(2, コピー先の列).Select
        ActiveSheet.Paste
        コピー開始行 = コピー開始行 + 分割後の行数
    Next
End Sub
867名無しさん@そうだ選挙にいこう:2011/08/01(月) 16:22:23.68
教えてください

【1 OSの種類 】 Windows7 64bit
【2 Excelのバージョン 】 Excel2003
【3 VBAが使えるか 】 はい
【4 VBAでの回答の可否】 可

Excelのメニュー、例えばツールとかウインドウをクリックしたときに、
「全部表示すると長いから、短く表示していますよ。[これ]をクリックすれば全
部見せますよ」
という動作をするのですが、これを常に全部表示にしたいです。
どこの設定をさわれば良いのでしょうか?

あるいは、[これ]は、何という名前の物なのでしょうか?
名前がわからないので、検索もままならず。
868名無しさん@そうだ選挙にいこう:2011/08/01(月) 16:38:14.86
>>867
ツール>ユーザー設定>オプション>常にすべてのメニューを表示するにチェック
名前・・・はわからない。検索するなら「メニュー すべて表示」とか?
869名無しさん@そうだ選挙にいこう:2011/08/01(月) 16:55:11.20
>>867
そういう時は、表示されたメッセージを正確にそのまま書き写して検索にかければ出てくる
勝手に要約しないこと
870名無しさん@そうだ選挙にいこう:2011/08/01(月) 17:00:35.20
いやメッセージは出ないだろ
871名無しさん@そうだ選挙にいこう:2011/08/01(月) 17:20:05.11
>>868
どうもありがとうございました。思い通りになりました。
Excelのお節介もバージョン毎に強力になり、困っていました。
大変ありがとうございました。

>>869
僕が質問で書いた「全部表示すると長いから、.....全部見せますよ」
というのは、質問の動作説明のために、僕が作成したものであって、
実際にはEXcelからは何もメッセージは出ないです。
何か勘違いされているのでは無いでしょうか?
ありがとうございました。
872名無しさん@そうだ選挙にいこう:2011/08/01(月) 17:29:31.20
>>866
さんくすこおおお!
コピーしたい列が増えた場合は、どこをいじればいいですか?
873名無しさん@そうだ選挙にいこう:2011/08/01(月) 18:17:05.51
>>871
Excelの場合、メニューの一番下にマウスを合わせると「展開」って表示されるでしょ
それで検索するのよ
「Excel メニュー 展開」でぐぐると一番上に答えが出てくる
画面に何か表示されたら、それで検索するってのはWindowsの基本
874872:2011/08/01(月) 18:20:20.91
すんません自己解決っす
875名無しさん@そうだ選挙にいこう:2011/08/01(月) 18:22:41.02
>>872
このプログラムは簡単に増やせるようにはなってない
そういう可能性があるなら

Sub Macro999()
  分ける列数 = 4 ' ←ここの数字を変える
'見出しのコピー
  Range("A1:C1").Copy
  c = 4
  For i = 2 To 分ける列数
    Cells(1, c).PasteSpecial
    c = c + 3
  Next
'データの移動
  全データ数 = Range("A1").End(xlDown).Row - 1
  分割後の行数 = WorksheetFunction.RoundUp(全データ数 / 分ける列数, 0)
  コピー開始行 = 分割後の行数 + 2
  コピー先の列 = 4
  For i = 2 To 分ける列数
    Cells(コピー開始行, 1).Resize(分割後の行数, 3).Cut
    Cells(2, コピー先の列).Select
    ActiveSheet.Paste
    コピー開始行 = コピー開始行 + 分割後の行数
   コピー先の列 = コピー先の列 + 3
  Next
End Sub
876860:2011/08/01(月) 19:29:42.07
>>861
レスありがとうございます。

再起動(EXCEL2010とWindows7)しましたが現象は変わりません。
マウスとキーボードは問題ありません。
[ホーム]タブのクリック→[ホーム]リボンの表示→ツールボタンのクリック等までは
正常に動作します(その後勝手に[ファイル]リボン表示になる)。

変なソフトってウィルスですか?
ウィルス対策ソフトでは検出されていませんが・・・


877名無しさん@そうだ選挙にいこう:2011/08/01(月) 20:12:46.28
すみません質問です。
Excel2003で作成していたマクロ入りファイルAと
Aのマクロの記述を若干変えてアップデートしたファイルBがあります。
配布したのですがAは問題なく使えていたのですがBは開くときに
「非表示モジュールModule17が・・」というエラーがでます。
ためしにModule17を解放(=削除)したところ今度は「非表示モジュールModule5が・・」
というエラーが出ます。
その人が2007で開いたからかと思い知人の2007で開きましたが普通に開けます。
この場合どのような原因が考えられますでしょうか?
マクロの記述のせいではないのではないかと思うのですが・・。
ちなみにModule17の中身はAとBで一緒です。
878877:2011/08/01(月) 20:15:09.48
追記
マイクロソフトのサポート見てみましたが
307410ににた症状ではあるものの、ちょっと違うような気がします・・。
(この場合は AutoExec とかAutoExecNewなので)
879!omikuji:2011/08/01(月) 23:22:22.73
Excel2003で、セルの書式を次の設定にしたとき、図2のように
前後にスペース(というか空白)を設けるにはどうすればいいですか?

 【設定】
 横位置      左詰め
 縦位置      上詰め
 文字の制御  折り返して全体を表示する

 【図1】
|あいうえおかきくけこさし|
|すせそたちつてとなにぬ|
|ねの               |

 【図2】
|  あいうえおかきくけ  |
|  こさしすせそたちつ   |
|  てとなにぬねの    |

文章なので、文の途中には全角スペースを入れたくないです。
よろしくお願いします。
880名無しさん@そうだ選挙にいこう:2011/08/01(月) 23:32:39.36
パワーポイントでやれとしか言いようがねーわなあw
それかテキストボックス置いてセルにリンクさせるとか?
どーせ印刷の時点でコケるだろうけど
881名無しさん@そうだ選挙にいこう:2011/08/01(月) 23:41:27.18
>>879 空白の列でスペースあける
882 忍法帖【Lv=27,xxxPT】 【東電 61.5 %】 :2011/08/01(月) 23:42:37.20
>>879
当方2010なので2003にあるかどうか不明ですが、セルの書式設定→配置→横位置
→均等割付け(インデント)→インデント→1
にするとお望みの【図2】のようなことが出来ます。
883名無しさん@そうだ選挙にいこう:2011/08/02(火) 00:31:28.37
>>882
2003だとこんな感じになるよ
|  あいうえおかきくけ  |
|  こさしすせそたちつ   |
|  て と な に ぬ ね の |
884 忍法帖【Lv=27,xxxPT】 【東電 57.9 %】 :2011/08/02(火) 00:52:42.62
>>883
2010でもそんな感じ。
結局は均等割付けなんで。
885名無しさん@そうだ選挙にいこう:2011/08/02(火) 01:05:56.19
>879
>文の途中には全角スペースを入れたくないです。

途中に入れるんじゃなくて、文末に空白を入れるのであれば、
>882さんの方法でいいんじゃない?
ただし、画面表示と印刷結果はかなり異なる(印刷プレビューと
印刷結果も異なる場合があるらしい)から、試行錯誤する必要は
あると思うけど。  ※試してません
886 忍法帖【Lv=27,xxxPT】 【東電 57.9 %】 :2011/08/02(火) 01:11:58.24
>>882の方法でどうにか【図2】に近づけないものかと思案した結果、文末にスペースいれたらどうか
と考えた。
通常の全角・半角スペースの場合は全く無意味に均等割付けされてしまう結果でした。
ところが記号と特殊文字→特殊文字→改行をしないスペース を文末に挿入してみたところ【図2】
に近づけることが出来ました。
887名無しさん@そうだ選挙にいこう:2011/08/02(火) 13:42:38.00
エクセルのことで質問です。
何もしない、という処理の関数についてです。

例えば、前提としてA1のセルに「3」という数字が入っていたとして、
A1にIF関数を挿入。結果が真ならば処理をする。
偽ならばなにも処理をせずA1セルはもともと入っていた3のままにする。という処理を行いたいです。

お願いします。
888名無しさん@そうだ選挙にいこう:2011/08/02(火) 13:50:46.87
ワークシート関数でやろうとしてるなら無理
VBAでIF文わからないならVBAの本一冊読んだ方が良いよ
889名無しさん@そうだ選挙にいこう:2011/08/02(火) 13:54:00.34
VBA使いたくなきゃB列にIFワークシート関数とかでいいんでないの?
ワークシート関数じゃ自セルの内容書き換えられねーから
890名無しさん@そうだ選挙にいこう:2011/08/02(火) 13:57:49.58
1セルに入る全角文字の最大文字数は?
891名無しさん@そうだ選挙にいこう:2011/08/02(火) 18:17:40.81
Excelのバージョンによって異なる
892名無しさん@そうだ選挙にいこう:2011/08/02(火) 18:54:50.14
【1 OSの種類         .】 WindowsXP Pro
【2 Excelのバージョン   】 Excel2007

A1に=today()
B1に2011/3/11
C1に=DATEDIF(A1,B1,"d")
とするとC1に日数が返ってくるのを期待すると
#NUM!
になってしまうのは何故?
893名無しさん@そうだ選挙にいこう:2011/08/02(火) 19:07:09.26
日付を置く順番が逆 
894892:2011/08/02(火) 19:27:55.72
オーマイガッ
ありがとう w
895名無しさん@そうだ選挙にいこう:2011/08/03(水) 19:51:35.82
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2002(OfficeXP)

A列にタイトル行がない文字列があります。
上段、下段とも行数が一定ではなく、上段には途中に1行の空白セルが
複数あるので、End(xlDown)が使えません。
また、上段と下段の間に空白セルが2行あります。
上段のみを別シートにコピペしようと自動記録を取りましたがうまくいきません。
どこがマズーでしょうか?

うどん       ┐
そば          |
               |
オムライス       | 上段
うんこ           |
かつ丼        ┘


りんご         ┐
バナナ        | 下段
みかん         ┘

Range("A65536").Select
Selection.End(xlUp).Select
Selection.End(xlUp).Select
Selection.End(xlUp).Select
Range("A1", Range("A65536").End(xlUp)).Copy
896名無しさん@そうだ選挙にいこう:2011/08/03(水) 20:06:35.27
順番に書いてみると…
自分の中では分かりやすくしてみたつもりだが無駄に遠回りだったらごめん

Dim 下段の最下行 AS Integer
Dim 下段の最上行 AS Integer
Dim 上段の最下行 AS Integer

下段の最下行 = Cells(Rows.Count, 1).End(xlUp).Row
下段の最上行 = Cells(下段の最下行, 1).End(xlUp).Row
上段の最下行 = Cells(下段の最上行, 1).End(xlUp).Row

Range(Cells(1, 1), Cells(上段の最下行, 1)).Copy
897名無しさん@そうだ選挙にいこう:2011/08/03(水) 20:46:17.94
最初の行から1行ずつ検査して2個目の空白がある行まで洗濯すればいいじゃん
898895:2011/08/03(水) 21:08:10.84
>>896
わかりやすいです。
ありがとうございました。
899名無しさん@そうだ選挙にいこう:2011/08/03(水) 21:18:38.88
hdd.crush.exe
900名無しさん@そうだ選挙にいこう:2011/08/04(木) 19:03:04.65
>>888
多重選択でなければ、IF文ワークシート関数をセル埋込みで、十分対応
できると思うがね。
何故に、無理との答えなの?
901888じゃないけど:2011/08/04(木) 20:45:23.44
>900
そもそもの話からしてムリでしょ。
何かの値が入っているセルに式を入れた時点で元の値は消滅するから。

=if(判定式,なにか別の式(887でいう"処理"),3)
ということなら可能だろうけど、質問の趣旨から外れると思う。
902名無しさん@そうだ選挙にいこう:2011/08/04(木) 21:28:59.04
条件付き書式の処理っていうならできるけどね。
903名無しさん@そうだ選挙にいこう:2011/08/05(金) 11:04:23.57
「怪しいお米セシウムさん」の件はしかたないと思う
だってこれは事故で放送されないという前提だったでしょ。

「そもそも空欄になるのがダメだから適当に何か入力してくれ」と言われれば
そのときとっさに思いついたものを入れるしかない。
このスレで質問するときの常套手段の「うんこ」と同じ。
別に意図はない。
会社ででも初めてメールが使えるようになった新入社員でも
本文に「テストメール。うんこ。」と書いて送ったことあるよ。

米の当選者だって、たまたまこの時期放射能が話題になってたから
「怪しい」とか「セシウムさん」になっただけであって。
904名無しさん@そうだ選挙にいこう:2011/08/05(金) 12:01:46.55
どこの誤爆か知らんけど、内部のみといっても「怪しいお米
セシウムさん」はまずいだろ。

まあ、「うんこ」とかメールに書くような社員がいる会社の
常識は世間とずれてるんだろうけど。
905名無しさん@そうだ選挙にいこう:2011/08/06(土) 09:16:03.00
>>895
マズーなのは明らかに二番目のグループの「うんこ」でしょう。
なぜそこだけ「うんこ」にした?
906名無しさん@そうだ選挙にいこう:2011/08/06(土) 09:18:44.67
>>895
空白を半角スペースにしておけばいいんじゃない?
907名無しさん@そうだ選挙にいこう:2011/08/06(土) 10:17:28.21
食べ物とうんこを並べて書くようなやつはクビでいいよ
マナーや常識のないやつとは仕事したくない
テストメールにうんこも論外
908名無しさん@そうだ選挙にいこう:2011/08/06(土) 10:24:12.56
変なやつだな

つ うんこ
909困った:2011/08/06(土) 13:09:15.71
<シート1>
年 月 日  費用別    概要         支出  合計
23 8  1  学校行事費 学園祭による・・・  XXXXX円 XXXXX円
23 8  2  進路費   某企業の・・・    XXXXX円 XXXXX円
23 8  2  交際費   学校長と・・・    XXXXX円 XXXXX円
23 8  3  学校行事費 体育祭による・・・  XXXXX円 XXXXX円
            ・
            ・
            ・
910名無しさん@そうだ選挙にいこう:2011/08/06(土) 13:11:05.46
みないうちにピボットテーブル と言ってみるw
911困った:2011/08/06(土) 13:11:54.31
>>909
ごめん、間違った・・・。
912困った:2011/08/06(土) 13:14:07.16
909書き込み失敗した者です。
はじめまして。
エクセルでみなさんに教えてもらいたい事があります。
俺、今、高校で臨時職員してるんだけど、
採用してもらって三ヶ月過ぎたけど、なかなか他の先生とかと交流ないのさ。
毎日図書準備室で一人で本の整理とかしてる。
そんな時に俺より2コ位下の若い女の先生がさ
「俺さんってパソコンの仕事してたって聞いたんだけど、出納帳ファイル使いやすく出来ますか?」
って聞いてきたんだ。
仲良くなれるきっかけだと思ってとりあえず詳しく聞いてみると、ざっくりだけど次のような事がしたいらしいんだ。
913困った:2011/08/06(土) 13:17:48.99
最終的には心と体とを通じ合わせる関係を求めてます。
914困った:2011/08/06(土) 13:17:59.74
<シート1>
年 月 日  費用別    概要         支出  合計
23 8  1  学校行事費 学園祭による・・・  XXXXX円 XXXXX円
23 8  2  進路費   某企業の・・・    XXXXX円 XXXXX円
23 8  2  交際費   学校長と・・・    XXXXX円 XXXXX円
23 8  3  学校行事費 体育祭による・・・  XXXXX円 XXXXX円
            ・
            ・
上の一覧データに入力すると費用別の各シートに自動的に割り振りたいっていうことで
915困った:2011/08/06(土) 13:20:03.63
<シート2>
・学校行事費
年 月 日  費用別    概要         支出  合計
23 8  1  学校行事費 学園祭による・・・  XXXXX円 XXXXX円
23 8  3  学校行事費 体育祭による・・・  XXXXX円 XXXXX円
           ・
           ・
<シート3>
・交際費
年 月 日  費用別    概要         支出  合計
23 8  2  交際費   学校長と・・・    XXXXX円 XXXXX円
           ・
           ・
っていうカンジにしたいんだけどさ。
916困った:2011/08/06(土) 13:22:29.81
先に言ったけど俺、パソコンに詳しいっていっても
組み込みソースのプログラマーやってただけで、アセンブラ・C言語しか知らないし。
エクセルもやったことはあるけど、関数とかはifとかsumとかそんなんしか思い浮かばず…。
でググって一生懸命調べたんだけど
VLOOKUPって関数を使ったらいいのかなってとこまでいったんだ。
でもシート1の全範囲から検索値がマッチした最初の一個しか抽出できないみたいだし…。
そこでもう俺の頭の中はショート寸前。
917名無しさん@そうだ選挙にいこう:2011/08/06(土) 13:23:13.84
>>914
自動的に、というのはマクロ以外ない。
いや、めちゃくちゃ素晴らしい関数を使えばできないこともないけど。
簡単なのはアクセスだけど、たぶん敷居が高い。

正直、初心者レベルの人がやるなら、オートフィルタで抽出してコピペが一番安心
メンテナンスも不要だし。

頑張って心と体を通じ合わせてくれ。こっちは暑い
918名無しさん@そうだ選挙にいこう:2011/08/06(土) 13:25:06.64
あ、書き込みあった。
vlookupじゃないよ。
関数だと配列数式を使えば出来なくはない。
ただ、メンテがvbaより大変になるから、趣味のレベルじゃなければオススメできない。というか、実用的じゃない。
919名無しさん@そうだ選挙にいこう:2011/08/06(土) 13:27:54.85
920名無しさん@そうだ選挙にいこう:2011/08/06(土) 13:28:47.43
<シート1>
年 月 日  費用別      概要      支出  合計
23 8  1  怪しい米    セシウムさん   XXXXX円 XXXXX円
23 8  2  汚染された米 ヨウ素さん     XXXXX円 XXXXX円
23 8  2  怪しい米    ストロンチウムさんXXXXX円 XXXXX円
23 8  3  汚染された米 セシウムさん   XXXXX円 XXXXX円
            ・
            ・
921名無しさん@そうだ選挙にいこう:2011/08/06(土) 13:32:22.90
シート1の行毎に費用別キーを設定して連番をふる

キー      年 月 日  費用別    概要         支出  合計
学校行事費1 23 8  1  学校行事費 学園祭による・・・  XXXXX円 XXXXX円
進路費1    23 8  2  進路費   某企業の・・・    XXXXX円 XXXXX円
交際費1    23 8  2  交際費   学校長と・・・    XXXXX円 XXXXX円
学校行事費2 23 8  3  学校行事費 体育祭による・・・  XXXXX円 XXXXX円

あとは費用別シートにキーを並べてVLOOKUP()でひっぱってくるだけ

922名無しさん@そうだ選挙にいこう:2011/08/06(土) 15:08:16.24
ピボット作っておいて更新でいいじゃんなんのための機能だよ
923セシウムさん:2011/08/06(土) 22:42:43.30
シートにチェックボックスを使いたいんですけど、
フォームコントロールとActiveXコントロールの違いは何ですか?

普通の人はどっち使ったほうがいいですか?
924名無しさん@そうだ選挙にいこう:2011/08/06(土) 22:57:10.91
具体的な違いは自分も知らんが、後者の方が何かと便利
ボタンを一旦クリックしたら、処理終了後にボタンを削除して二度と押せないようにするプロシージャ
書いたときも、後者のボタンを削除する記述方法なら検索で出てきたけど
前者のボタンはどうやらVBAで消したり非表示にしたりできないようだったし

なんでそんな違いがあるんだろね。まあとにかく前者を使わなきゃならないのっぴきならない理由が
あるんでなければ、後者のボタンを設置するのが良いと思う
925名無しさん@そうだ選挙にいこう:2011/08/06(土) 23:03:41.38
オートフィルタや並べ替えのとき
勝手に選択範囲を選んでくれるじゃないですか。
気持ち悪くないですか?
実際、希望通りの範囲を選んでくれることが多いけど
自分が選んだ狭い範囲だけでオートフィルタや並べ替えのときをしたいときはどうするの?
926名無しさん@そうだ選挙にいこう:2011/08/06(土) 23:09:26.55
ひとつのシートで複数の部分にオートフィルタをかけることってできないの?
そうならなぜそれをはっきり書いてる入門書がないの。
ィャになっちゃぅゎ。
927名無しさん@そうだ選挙にいこう:2011/08/06(土) 23:11:15.51
できるゎょ
928名無しさん@そうだ選挙にいこう:2011/08/06(土) 23:23:58.88
>>927
ぃゃ、ぁゃιぃ
どぅするか、ぉιぇょ
929名無しさん@そうだ選挙にいこう:2011/08/06(土) 23:31:20.01
ヵッォ ォャッ ョ
930名無しさん@そうだ選挙にいこう:2011/08/06(土) 23:38:24.08
ひとつのシートに複数のオートフィルタ範囲を作成することはできないわ
片方をフィルタするともう片方の範囲にも影響して行が見えなくなったりするもの
そのような使用法は無意味よ ひろみ
931名無しさん@そうだ選挙にいこう:2011/08/06(土) 23:46:06.65
お前ら誰だw
932名無しさん@そうだ選挙にいこう:2011/08/06(土) 23:46:13.58
>>930
洋画の下手な翻訳調のしゃべりかただな
933 ◆unko14464g :2011/08/06(土) 23:50:30.44
>>905>>907
うんこ=カレー
934名無しさん@そうだ選挙にいこう:2011/08/06(土) 23:58:46.84
お蝶夫人かメーテルの声で読んでね
935名無しさん@そうだ選挙にいこう:2011/08/07(日) 00:16:21.38
>>923
フォームコントロールはExcelの機能として開発されてきた機能。
ActiveXはVBA(VB)の機能として開発されてきた機能。
いまはActiveXという仕組み自体の開発が止まっちゃってるので、普通の人は
フォームコントロール使った方がいろいろと安全。

特に2007以降でActiveXコントロール使う奴は馬鹿。
936名無しさん@そうだ選挙にいこう:2011/08/07(日) 00:27:35.35
じゃあ俺はセーフ
日経225企業なのに未だにXPかつ2003だ
937複乳:2011/08/07(日) 00:34:42.14
>>923
・ActiveXの利点
高機能、複雑
アレルギーの人がいる(>>935)
VB勉強中の人にとってはフォームより楽。人によってはVBを覚えることにつながるかも
全くの初心者だと、フォームよりやや使いづらい
・フォームの利点
単純、簡単
フォームはExcelのための機能。親和性は最高
VB上がりにはやや使いづらい

・結論
大して変わらない
両方使って楽と感じたほうでいいと思う
何社か事務やったけど、フォーム使ってる人の方が多いとは思ったな
938複乳:2011/08/07(日) 00:35:54.12
>>936
大企業ってそういうの遅いよね
225でこないだ吸収合併されたとこは数年前までNT4使ってた
起動が死ぬほど遅かったぜ
939困った:2011/08/07(日) 08:09:59.53
913は俺じゃない、誰だw
940名無しさん@そうだ選挙にいこう:2011/08/07(日) 09:02:57.67
お役所が変えないと、ウィンドウズ7なりOFFICE2007、2010に変えにくいと聞いた
うちもXP、2003環境
941名無しさん@そうだ選挙にいこう:2011/08/07(日) 09:18:40.30
アレルギーとかじゃねーよ
止まるんだよ普通に
自分の使いやすい方を使えばいいという話じゃない
942名無しさん@そうだ選挙にいこう:2011/08/07(日) 09:20:08.05
クソ古い環境で自分だけの世界に閉じこもってるバカには関係無いかもしれんけどね
新規に覚えようとする人にそういうもん勧めんな
943名無しさん@そうだ選挙にいこう:2011/08/07(日) 12:35:17.98
WindowsXP
Excel2000
VBAマクロの挙動が安定しません
イレギュラーな値が出てきたり、メモリ不足ですとエラーが出て停止したりします
再現しないので回避も難しいです
解決する方法を教えて下さい

Excel2003では問題ないのですが・・・
944名無しさん@そうだ選挙にいこう:2011/08/07(日) 15:04:24.23
>>943
どこかで大きい桁の数値を扱ってるとか?
945複乳:2011/08/07(日) 15:47:01.90
>>943
メモリ不足ならメモリ不足なんだろう
シートの内容を整理するか、メモリを増設するか、かな
PCを買い換えてもいいかも
実際そのパソコンとマクロを診ないと、正確な事は答えられない
946名無しさん@そうだ選挙にいこう:2011/08/07(日) 17:38:15.62
>>944
特にないです
Excel2003で解除された制限とかがあるんですか?

>>945
2GBあるので物理的にメモリが足りていないということは無いと思います
947名無しさん@そうだ選挙にいこう:2011/08/07(日) 17:56:48.69
>>943
下記のサイトでこんな情報 見つけた  (正しい情報かどうかは知らないよ)
http://www.ikachi.org/mssupport/excel.html

>Excel2000にてメモリ不足エラーがでる場合
>概要
>Excel2000では、公開されていないメモリ制限があります。
>物理的なメモリとは違い、Excel内部で持っている制限のようです。
>例えば、開いているExcelファイルのシート数や、数式が入力されているセルの数などが制限の対象となるようです。
>Excel2002以降では、この制限は解除されたそうです。
948名無しさん@そうだ選挙にいこう:2011/08/07(日) 18:08:54.96
>>947
ありがとうございます
数式をできるだけマクロに置き換えて対応してみます
949名無しさん@そうだ選挙にいこう:2011/08/08(月) 08:43:15.71
>>936
日経255じゃないけど、日経255の親に合わせてるうちもそうだ。

>>338
> 大企業ってそういうの遅いよね
まあ、大企業だと費用も半端じゃないし、社内システムの動作確認も大変だし。
IE8 を解禁するだけで大騒ぎだよ。

> NT4使ってた起動が死ぬほど遅かったぜ

普通に作ってりゃそんなに遅かった記憶はないが。
ディスクとかのデバイスをやたら積んでるとか、メモリー 32MB とかでやってた
のか?
950名無しさん@そうだ選挙にいこう:2011/08/08(月) 08:44:24.05
>>941
>止まるんだよ普通に

単に使い方を間違ってるだけだろ。
そうでないというなら、ソース晒せよ。
951名無しさん@そうだ選挙にいこう:2011/08/08(月) 09:36:15.60
http://support.microsoft.com/kb/944754

一番有名だったのはこれだわなあ。
クソ具合を知ってるちゃんとした技術者はシートに直接ActiveX貼りつけるような馬鹿な真似はしない。
Excelが大好きで不具合言われると自分が傷ついちゃうアホはそれ指摘するとなぜか怒る。
952名無しさん@そうだ選挙にいこう:2011/08/08(月) 09:39:37.13
ActiveX使いたきゃユーザーフォームに張り付けて使えってこった。
シートに張り付けるバカ増やすような布教活動は勘弁してくれマジで。
953名無しさん@そうだ選挙にいこう:2011/08/08(月) 10:40:19.48
なんだ単にバグに引っかかったからアレルギーになったアホか。
954名無しさん@そうだ選挙にいこう:2011/08/08(月) 10:55:25.21
再現性が確立された既知のバグを取り上げてクソだクソだと騒ぐのが
「まともな技術者」ってことですか?

バグなんてActiveXだけでなく、Excel自体にもそのプラットホームとなるWinやMacにも
というかほぼ全てのソフトウェアに存在してるんだから、バグがあるから一切使うなではなく
再現性が確立された既知のバグなんて、それを再現しないように上手く回避しながら
使っていけるのが「まともな技術者」だと思っていたんですが・・・・・

つまり、そのリンク先に書かれているバグを再現するようなことをやろうとしている奴に
「そういう使い方はするな」と指摘するのはいいが、その程度のバグを以て
ActiveXをシートに貼ること自体をバカだとか言ってる奴は、何かを否定しておけば
「俺は解ってる奴」って気分に浸れて満足という、浅はかで愚かしく無能な子にしか見えない
955名無しさん@そうだ選挙にいこう:2011/08/08(月) 11:07:36.82
回避方法があるならそれ使えよw
なんで地雷勧めんだバカって事だよ。つか、これ知らねーで勧めてたんだろバカ共は?
956名無しさん@そうだ選挙にいこう:2011/08/08(月) 11:08:43.72
ユーザフォーム使えば済むのによくわからねー意地張って誰かのせいにしたがるから手におえねーんだバカは
957名無しさん@そうだ選挙にいこう:2011/08/08(月) 11:10:34.49
意固地になっちゃって

こういう子とは仕事したくないけど、傍目に見てる分にはちょっと可愛いかもw
958名無しさん@そうだ選挙にいこう:2011/08/08(月) 11:16:04.34
さすがバカは自分が優位な気分に立てるかどうかでしか物事考えないからバカなんだな。
バカが余裕のポーズ取ってくれれば動くってならいくらでもポーズ取って満足しててくれて構わんけど、普通に動かんからな。
バカにゃ他人事なんだろうな。
959名無しさん@そうだ選挙にいこう:2011/08/08(月) 11:17:30.22
いつまでも脳内Excelくんと仲良くな。
960名無しさん@そうだ選挙にいこう:2011/08/08(月) 11:21:18.38
バカ以外の普通の人にシートにActiveX使わない方が良いってのが伝わりゃいいよ。
バカしか見てねえって事もねーだろうし。
961名無しさん@そうだ選挙にいこう:2011/08/08(月) 11:47:25.07
教えてください。
一見時間に見えるあるアプリケーションから取り出した数字 8:15 を計算できる数字に直したい。
8:15の前に半角空白が入ってるみたいな感じで計算出来ません。
尚且つ8:15を十進数8.25に表示させて合計を計算したい。
どんな計算式を入れれば可能でしょうか?
宜しくお願いします。
962名無しさん@そうだ選挙にいこう:2011/08/08(月) 11:50:50.82
反論できない指摘を受けて嫌ActiveX君大暴れw
963名無しさん@そうだ選挙にいこう:2011/08/08(月) 12:20:37.43
反論もなにもきちんと根拠示してるのになあ
バカすげえなあ
こういうバカの中では原発もメルトダウンしてねーんだろうなあ
俺が可愛すぎるって事以外全部的はずれなこと言ってるのに悦に入れるとか、ある意味すげえ才能だわ。
人生楽しんでくれ。
964名無しさん@そうだ選挙にいこう:2011/08/08(月) 12:30:46.43
>>961
十進数で8.25にしちゃうとたとえば0.45を足したときに結果が無意味なものになるぞ
それでいいの
965名無しさん@そうだ選挙にいこう:2011/08/08(月) 12:32:31.08
時間の計算はふつうに足し算引き算できるよ
文字列のままでは無理なので、時間の表示形式にしておくか、=TIME(h,m,d)で変換しておくこと
966名無しさん@そうだ選挙にいこう:2011/08/08(月) 12:34:45.88
>>961
>8:15の前に半角空白が入ってる
て前提だと
=TIMEVALUE(TRIM(A1))*24

ちなみに以下でもなぜかいい
=TRIM(A1)*24
967名無しさん@そうだ選挙にいこう:2011/08/08(月) 12:51:11.56
>>964
無意味なんかにならないぞ
8:15 --> 8.25なんて形式 普通に使ってるけど

8:15 = 8.25
0:27 = 0.45
だから

8:15+0:27 = 8.25+0.45
8:42   = 8.7
968名無しさん@そうだ選挙にいこう:2011/08/08(月) 12:57:37.54
961です。皆さんありがとうございます。試してみます。とりあえず時間がないのでまた報告します。
969名無しさん@そうだ選挙にいこう:2011/08/08(月) 12:59:03.13
970名無しさん@そうだ選挙にいこう:2011/08/08(月) 13:42:26.94
>>966
*24 なんてしなくても、結果の表示形式をいじればいいと思うぞ。

>>969
ほっといてやれよ。
大暴れしてるの彼だけだし、本人楽しそうだからいいんじゃね。
971963:2011/08/08(月) 13:57:02.02
>>977
へーそうなんだ知らんかった
とはいえどうやるのか 今は分かってないけど あとで調べてみるよ

ありがと
972名無しさん@そうだ選挙にいこう:2011/08/08(月) 13:59:23.27
がんばれ〜 ⇒ >>977
973971:2011/08/08(月) 14:02:00.32
げっ名前欄&アンカ間違えた
名前欄
966=971 です


アンカ
>>977
>>970

大変失礼しました
974名無しさん@そうだ選挙にいこう:2011/08/08(月) 17:38:42.87
哀れだな
975名無しさん@そうだ選挙にいこう:2011/08/08(月) 19:03:30.39
【1 OSの種類         .】 Windows7
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 はい
【4 VBAでの回答の可否】 不可
F列に数値があって、15以上のときはE列のセルを黄色に塗りつ
ぶすにはどーすればいいです?
976名無しさん@そうだ選挙にいこう:2011/08/08(月) 19:20:00.60
条件付き書式をE列に設定する =F1>=15
977 忍法帖【Lv=28,xxxPT】 【東電 79.9 %】 :2011/08/08(月) 19:50:05.02
>>972
おう!がんばるぜよ!
978名無しさん@そうだ選挙にいこう:2011/08/08(月) 20:32:30.22
知り合いのNPOにて、ファイルサーバー(普通のパソコンでファイル共有してるだけ)においてある
Excelファイルを端末側のパソコンから開くとえらく時間がかかるようになって、困ってた。
先月の初め頃の話。
まさか、それが>590さんの障害と「原因が同じ」だったとは・・・。
このスレで「エクセルのファイルが開くのが遅くなって困る」というような書き込みがほとんど見あたらず
今日やっと原因がわかった。
Office File Validation (OFV) アドインがインストールされた Excel 2003 でネットワーク上の
ファイル共有から XLS ファイルを開く時に時間がかかる
http://support.microsoft.com/kb/2575312/ja

excel file validation でググるといろいろ出てくる。対策はレジストリをいじるか、2007以降にバージョンアップだと!
979975:2011/08/08(月) 22:26:30.52
>>976
できた!
ありがd!
980名無しさん@そうだ選挙にいこう:2011/08/09(火) 03:03:02.97
>>978
>今日やっと原因がわかった。

Microsoft Updateしたらageるスレ 66
http://hibari.2ch.net/test/read.cgi/win/1309159884/65
981名無しさん@そうだ選挙にいこう:2011/08/09(火) 13:27:30.65
2つのシートのAB列に、膨大な数のデータが入ってるのですが、
2つのシートは一応同じデータが入っているはずなのですが、
これをチェックしたいので比較がしたいです。

現在確認されているのは、AB列どちらかに誤字や歯抜けがあったりするので、
それをシート間で相互のチェックをかけたいです。

どうしたらいいでしょうか。

Excelは2003、2010両方あります。
982名無しさん@そうだ選挙にいこう:2011/08/09(火) 13:38:12.03
>>981
csv で吐き出して fc.exe
983名無しさん@そうだ選挙にいこう:2011/08/09(火) 14:00:22.12
>>982
fc.exeの意味が分からないのですが・・・
984名無しさん@そうだ選挙にいこう:2011/08/09(火) 14:31:20.58
そのレベルなら、素直に知ってそうな奴に頼んだ方がいい。

# 要するに fc.exe でググルこともしないような奴に教える気はない。
985名無しさん@そうだ選挙にいこう:2011/08/09(火) 14:40:46.84
なんでそんなエラそうなのwwww
986名無しさん@そうだ選挙にいこう:2011/08/09(火) 15:05:43.81
>>985
多分、ホントにエラい人なんでしょ。
987名無しさん@そうだ選挙にいこう:2011/08/09(火) 18:39:09.27
>>981 IF文でどうにでも
988複乳:2011/08/09(火) 22:31:23.82
>>981
C1=(A1=[book2.xls]Sheet1!A1)
として値で検索、FALSEなら書きなおすとか
行がずれてるならcountifとか
989複乳:2011/08/09(火) 22:33:27.09
次スレ
Excel総合相談所 98
http://hibari.2ch.net/test/read.cgi/bsoft/1312896741/
990複乳:2011/08/09(火) 22:34:31.79
うめ
991複乳:2011/08/09(火) 22:34:43.57
うめ
992複乳:2011/08/09(火) 22:42:52.80
うめぇ
993複乳:2011/08/09(火) 22:43:21.71
まず
994名無しさん@そうだ選挙にいこう:2011/08/09(火) 22:45:14.08
2003が至高
995複乳:2011/08/09(火) 23:27:16.04
オナニーが至福の時
996複乳:2011/08/09(火) 23:27:47.33
うんこ!
997複乳:2011/08/09(火) 23:28:15.54
セシウムさん
998名無しさん@そうだ選挙にいこう:2011/08/10(水) 01:02:05.40
IF文エディタ最高便利!
999複乳:2011/08/10(水) 01:22:29.06
ねー
1000名無しさん@そうだ選挙にいこう:2011/08/10(水) 01:35:25.01
1000
10011001
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。