5ちゃんねる ★スマホ版★ ■掲示板に戻る■ 全部 1- 最新50  

■ このスレッドは過去ログ倉庫に格納されています

Excel総合相談所 33

1 :名無しさん@そうだ選挙にいこう:2005/05/02(月) 10:23:39
▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼

Excelに関する質問は、ここで!

     /)_/)    ( ・質問する人は可能な限り具体的に書いてね。
    < ゚ _・゚> .。oO( ・情報は小出しにせず、きちんと書いてね。
  ノ) /   |    ( ・回答がなくてもキレないで。
  \(_,,,_,,,)   ( ・分かる人はできるだけ回答して下さいませ。
            ( ・自己解決したって人はその解決手段を他の人の参考の為に書いてね。

前スレ
http://pc8.2ch.net/test/read.cgi/bsoft/1112190520/

強制ではないがテンプレ推奨>>2
FAQ(よくある質問と答え)は>>3-10くらい。

▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲▲

2 :名無しさん@そうだ選挙にいこう:2005/05/02(月) 10:25:04
★自分で出来ることは自分でやろう(ヘルプ・Googleの検索など)★
【1     O S の 種 類    】 Windows***
【2 E x c e l の バ ー ジ ョ ン .】 Excel***
【3   V B A が 使 え る か  】 はい・いいえ
【4 Googleでの検索キーワード】
【5 ヘルプでの検索キーワード】
【6 スレのFAQとログを読んだ.】 はい・いいえ
〜〜〜質問内容〜〜〜


3 :名無しさん@そうだ選挙にいこう:2005/05/02(月) 10:26:09
= FAQ: 列の表示について =
Q.列名がA,B,C,D,Eではなく、1,2,3,4,5になってしまいました。
 アルファベットに戻すにはどうしたらいいですか?
A.ツールメニュー:「オプション」 -「全般」タグで
 『R1C1 参照形式を使用する(C)』のチェックを外せば直ります。

Q:列を256個(IV列)よりたくさん広げることはできませんか?
A:エクセルのシートは65536行×256列が仕様上の上限です。
 シートを分けるとか、行と列を入れ替えるとか、データの方をまとめるとか、
 列数を増やさない方向で工夫するしかありません。


4 :名無しさん@そうだ選挙にいこう:2005/05/02(月) 10:26:45
= FAQ: 印刷プレビュー =
Q:印刷プレビューではセル内に収まっていた文字が
 実際に印刷してみるとはみ出してしまうのですが、
 何とかなりませんか?
A:「印刷プレビューと印刷結果が一致しない」のは
 昔からのExcelの弱点で、どうにもなりません。
 セルの幅や高さに余裕を持たせるか、
 書式設定で「縮小して全体を表示する」にチェックを入れましょう。


= FAQ: マクロの”””削除””” =
Q.マクロを削除したのに、ファイルを開くたびにセキュリティの確認が出ます。
A.モジュールの解放が必要。
 【モジュールの解放方法】Alt+F11→Ctrl+R→Module1を右クリック→解放


5 :名無しさん@そうだ選挙にいこう:2005/05/02(月) 10:27:56
= FAQ: 計算したい。角度とか =
Q.例えば、一つのセルに1803329と入力すると
 180度33分29秒と表示されるようにするには
 どうすればいいのでしょうか?
 ついでに計算もしたいです。
A.「1803329と入力すると180度33分29秒と表示される」
 というのと、計算できるというのを両立させるのは無理。
 書式を
 [h]:mm:ss や [h]"度"mm"分"ss"秒".00
 などにしておき、入力するときには
 180:33:29.99
 などとすれば、表示も計算もできる。

その他時間とか日付とかの計算について
 勤務時間を計算するには
http://support.microsoft.com/default.aspx?scid=%2Fdirectory%2Fworldwide%2Fja%2Fkblight%2Ft009%2F3%2F46.asp

 日数および日付の表示方法と計算方法 - 基本編
http://support.microsoft.com/default.aspx?scid=%2Fdirectory%2Fworldwide%2Fja%2Fkblight%2Ft009%2F3%2F45.asp


6 :名無しさん@そうだ選挙にいこう:2005/05/02(月) 10:29:06
= FAQ: 合計から元の数を逆算 =
Q:たくさんの数値のリストがあって、
 リスト中のいくつかの数の合計と思われる数値が与えられました。
 リスト中のどれとどれの合計か調べることはできますか?
A:ナップザック問題(knapsack problem)として知られている難問です。
 一般的には総当りで調べるしかありませんが。
 しかし、データに特徴がある場合(桁数が限られているなど)には、
 うまい方法があって、速く解けることもあります。
 下記のページを参照してみてください。
  ナップザック問題をExcelで解く
   http://www.geocities.co.jp/SiliconValley-Oakland/8139/

= FAQ: 条件によって表示を変更するには? =
Q:セルの内容を判断して、表示を変えたい
A: IF関数を使います。
 =if(条件,条件が成立した場合,成立しなかった場合)

例1:基本
 セルA1が1の場合○、それ以外の場合×を表示
 =IF(A1=1,"○","×")
例2:if文の中にif文
 A1が、1の場合○、2の場合△、それ以外×。
 =IF(A1=1,"○",IF(A1=2,"△","×"))
例3:ANDやOR活用
 A1が、4〜6の場合は、普通と表示
 =IF(AND(A1>3,A1<7),"普通","少ないか多い")
例4:計算も出来る
 A1が10までなら、A1を10倍して表示、それ以外なら2を引く。
 =IF(A1<11,A1*10,A1-2)

詳しくはヘルプを参照しましょう。

7 :名無しさん@そうだ選挙にいこう:2005/05/02(月) 10:29:51
= FAQ: グラフについて =
Q1:データの空白部分があって、そこで折れ線が切れてしまいます。
  繋げたいのですが如何したらいいでしょうか?
A1:グラフを選択>ツール>オプション>グラフ>空白セルのプロット「補間してプロットする」にチェック

Q2:棒グラフに重ねて、折れ線グラフを表示するにはどうしたらいいのでしょうか?
A2:最初、すべてのデータを棒グラフで作成。
 次に、折れ線で表わしたいデータ系列のどこかを、グラフ上で右クリック
 サブメニュー>グラフの種類>折れ線>OK

Q3:ある系列だけ、縦軸を別にしたいです。
A3:その系列のどこかを、グラフ上で右クリック
 データ系列の書式設定>軸>使用する軸「第2軸」にチェック>OK


= FAQ: 入力した値が変わる? =
Q.セルに入力した値が勝手に変わってしまうのですが
 入力したままの形で表示させるにはどうしたらいいですか?
A.数字でよくあるケース(先頭のゼロが消えてしまう、日付として解釈されてしまう)
 入力する時、先頭にアポストロフィ(')をつけるか、
 該当するセルで右クリック−「セルの書式設定」−「表示形式」で「文字列」を選択。
 文字列ではなく数値として扱いたいときは
 「セルの書式設定」−「表示形式」で「ユーザー定義」を選択し、工夫する。
A.文字でよくあるケース(i⇒I、teh⇒the、cna→can など)
 ツール→オートコレクト→入力中にオートコレクト
 の該当する箇所を削除。


8 :名無しさん@そうだ選挙にいこう:2005/05/02(月) 10:30:16
= FAQ: 行列の入れ替え =
Q.エクセルで作った表が横方向に多くなってきたので
 行と列を入れ替えたいのですが。

A.コピーして、適当なセルで右クリック。
 形式を選択して貼り付け→行列を入れ替える。


= FAQ: 参照するセルをセルの値で指定する =
Q.A1に「5」とか「6」とか指定する値を変えたら
 B1の関数で「C5」とか「C6」とか参照先が変わるようにできませんか?
A.INDIRECT関数を使ってみましょう。
 詳しくはヘルプで「INDIRECT」を検索


9 :名無しさん@そうだ選挙にいこう:2005/05/02(月) 10:30:50
= FAQ: ブラウザの変更 =
Q.Excelでアドレスをクリックした時に開くブラウザをIEからSleipnirなどに変更したい。
A.スレ違いです。
 開きたいブラウザの設定画面でそのブラウザを通常使うブラウザに指定してください。


= FAQ: セル内での改行 =
Q:セル内で改行したいんですがどうすればいいでしょうか

A:改行したい位置でAltを押しながらEnterを押せばセル内改行できます。


10 :質問にはテンプレ必須です:2005/05/02(月) 10:32:45


★質問するときは下記1〜6のテンプレを全て埋めること★
★自分で出来ることは自分でやろう(ヘルプ・Googleの検索など)★

【1 OSの種類】 Windows***
【2 Excelのバージョン】 Excel***
【3 VBAが使えるか】 はい・いいえ
【4 Googleでの検索キーワード】
【5 ヘルプでの検索キーワード】
【6 スレのFAQとログを読んだ】 はい・いいえ
〜〜〜質問内容〜〜〜

質問内容は、具体例や図などを使って第三者にもわかりやすいように説明しましょう。



11 :名無しさん@そうだ選挙にいこう:2005/05/02(月) 10:52:42
= FAQ: ワイルドカード文字の検索・置換 =
Q:* 、 ? で検索するとワイルドカードとして認識されてしまいますが、
  * 、 ? の文字自体を検索するにはどうすればよいですか?

A: ~* 、 ~? のように、頭に ~ を付けることでエスケープ出来ます。

A:全角で*と入力し「半角と全角を区別する。」のチェックを外して検索する
 (全角なのでワイルドカードとしては使われないが
  全半角を区別しないので文字として"*"にはヒットする。)

12 :1:2005/05/02(月) 10:58:31
>>10
前スレで賛否両論あって溝が埋まらないまま終わったから
折衷案のつもりだったんだが

FAQ埋めてるうちに連続規制にかかって待ってる間だったよ
代わりに >>11書いてからにしてほしかったな
(´д⊂)グッスン

ちなみにおいらもテンプレは必要だと思うけどね
色々意見もあるだろうから、こんな形にしたんだが
ま、次スレまでに結論が出るだろう

13 :名無しさん@そうだ選挙にいこう:2005/05/02(月) 11:28:43
33まできたのか

14 :名無しさん@そうだ選挙にいこう:2005/05/02(月) 21:05:00
オークションで出品した物のデータベースを作っているのですが
今は落札金額や相手の住所などはメールからコピペしています。
メールからエクセルへのデータの移行はできるのでしょうか?
とりあえずメール全文をエクセルに移してそこから必要な箇所を
VBAで抜き出してもいいかのとも思ったのですが・・・

15 :名無しさん@そうだ選挙にいこう:2005/05/02(月) 21:25:50
【1 OSの種類】 Windows XP
【2 Excelのバージョン】 Excel 98
【3 VBAが使えるか】 いいえ
【4 Googleでの検索キーワード】 前の行まで足す
【5 ヘルプでの検索キーワード】
【6 スレのFAQとログを読んだ】 はい

〜〜〜質問内容〜〜〜
A列をたてに足していって、結果がA5にはいってます。
A5 = sum(A1:A4)となってます。

やりたいことは、データが増えていくので、常にA1から一個上のセルまで足す。
つまりA5 = sum(A1:RC[-1])みたいなこと って出来ないんですか?

16 :名無しさん@そうだ選挙にいこう:2005/05/02(月) 22:05:26
>>14 >>10


>>15
=SUM(INDIRECT("A1:A"&ROW()-1))

で、Excel98ってMac版じゃなかったか?
Win版も98あったっけ?
まあ、97も98もINDIRECT関数、ROW関数ともに使えるから問題はないと思うけど。

17 :15:2005/05/03(火) 01:23:25
>>16ごめんなさい。いまバージョン見たらEX2000でした。

INDIRECT関数ですね。
使ったことないので調べて見ます。ありがとうございました。

18 :名無しさん@そうだ選挙にいこう:2005/05/03(火) 04:16:50
前スレで放置されたので、もう一度質問です。
【1 OSの種類】 Windows○Psp2を使ってます
【2 Excelのバージョン】 Excel2○03を使ってます
【3 VBAが使えるか】 使えるかもしれないけど、使えないかもしれないです
【4 Googleでの検索キーワード】 しめじの炒め方
【5 ヘルプでの検索キーワード】 しめじの和え物
【6 スレのFAQとログを読んだ】 半分読みました

あるエクセルのWEBサイトで、下のようにセルに入力すると、勝手にリンクが張られ、
そのリンクをクリックしただけで、自動的にメールが作成できると書かれてました。
しかし、クリックすると日本語部分が文字化けします。
どうすればいいですか?相手への嫌がらせで、文字化けのままメール送っていいですか?

mailto:kato@abc.co.jp;yamada@abc.co.jp?cc=suzuki@abc.co.jp&bcc=sato@xyz.co.jp&
subject=ありがとうございます&body=当メールサービスをご利用いただきありがとうございます

19 :名無しさん@そうだ選挙にいこう:2005/05/03(火) 05:13:39
検索キーワードに「 こ の 質 問 はネ タ で す 」って書いてあるから
これはまじめに回答する必要無いよね

20 :名無しさん@そうだ選挙にいこう:2005/05/03(火) 07:07:31
まったくない。放置で可。

21 :名無しさん@そうだ選挙にいこう:2005/05/03(火) 08:35:32
ふざけてる奴はテンプレ書き直しても回答する必要なし
この内容の質問は永久に放置

22 :名無しさん@そうだ選挙にいこう:2005/05/03(火) 08:38:04
テンプレ厨はずいぶんがんばったんだな
そんなに他人に強要したけりゃ自分で別スレたてればいいのに

「僕が責任もってなんでも答えます、その代わりテンプレ必須です」ってね


23 :名無しさん@そうだ選挙にいこう:2005/05/03(火) 09:13:57
まあ、黄金週には22みたいのも湧いてくるわな

24 :名無しさん@そうだ選挙にいこう:2005/05/03(火) 09:49:36
黄金厨って椰子?
天婦羅大好きと一緒にウザいから早くどっか逝け


25 :名無しさん@そうだ選挙にいこう:2005/05/03(火) 10:37:22
天麩羅があると>>16みたいに
「Excel〜なら〜関数が使える」とか
「Excel〜なら〜の機能使えばいい」とかが判るから
やっぱこのくらいの簡単な天麩羅は有った方がいいよ。
某スレみたいに天麩羅だけで、書き込み制限行数の
約半分が埋まるような物だとさずがにウザいけど。


26 :名無しさん@そうだ選挙にいこう:2005/05/03(火) 10:42:03
項目少し減らしてこのくらいでどうだ?

【1 OSの種類】
【2 Excelのバージョン】
【3 VBAが使えるか】
【4 Googleやヘルプでの検索キーワード】


27 :名無しさん@そうだ選挙にいこう:2005/05/03(火) 10:52:16
OSとExcelのバージョンを合わせて1行にして欲しい。

28 :名無しさん@そうだ選挙にいこう:2005/05/03(火) 11:00:37
んじゃかなり気が早いが次スレテンプレ案ということで

【1 OSの種類 / Excelのバージョン】
【2 Googleやヘルプでの検索キーワード】
【3 VBAが使えるか】はい・いいえ

29 :名無しさん@そうだ選挙にいこう:2005/05/03(火) 11:01:41
【1 OSとExcelのバージョン】 Windows○○、Excel■■
【2 VBAが使えますか】 はい or いいえ
【3 Googleやヘルプでの検索キーワード】(例) Googleで「配列変数」、「使い方」

こんなかんじかな?

30 :名無しさん@そうだ選挙にいこう:2005/05/03(火) 11:02:16
>>28
かぶった ごめん

31 :名無しさん@そうだ選挙にいこう:2005/05/03(火) 11:17:47
ここはテンプレの総合相談所でつか?(フ

32 :名無しさん@そうだ選挙にいこう:2005/05/03(火) 11:18:23
>>22
これぐらいのテンプレも使えないお子ちゃまはExcel使おうなんて思わずにママのおっぱいでも吸って家でネンネでも
してろ

33 :名無しさん@そうだ選挙にいこう:2005/05/03(火) 11:27:11
>>31
いえ、Excelの総合相談所です。

しかし、回答をするために必要な情報をきちんと書かない人が多いので、
それを書かせるためのテンプレを相談してるだけです。

テンプレの総合相談所なら、テンプレが決まったらそこで打ち切りですが、
ここでは必要な情報を提示した(テンプレを使った)うえでの質問に対する
回答がメインですから。

34 :名無しさん@そうだ選挙にいこう:2005/05/03(火) 11:31:30
>>32
邪魔だから寝ててください

35 :名無しさん@そうだ選挙にいこう:2005/05/03(火) 12:01:12
テンプレに関しての話をもう一度前スレからおっかけて気づいたこと
提案者の前スレ>>975のカキコの末尾付近

>最低限このくらいは書かせようぜ。
>「Excelのバージョン、OSのバージョンも書くとレスが付きやすい。」とかじゃ生ぬるいし

…論外、だと感じる

答えたい人が答えればよいのでは?
答えてあげたい人がそのために必要な情報を得る手段としてのテンプレが必要なんじゃ?

>>28に一票

36 :名無しさん@そうだ選挙にいこう:2005/05/03(火) 12:25:54
>>35
>>35
>>35


37 :名無しさん@そうだ選挙にいこう:2005/05/03(火) 12:31:02
>>18
自分宛てにメールを送ってみなさい。

38 :名無しさん@そうだ選挙にいこう:2005/05/03(火) 13:59:02
天婦羅だが、OSが関係あることって滅多にないだろ?
ごくまれにあることは知ってるが。




39 :名無しさん@そうだ選挙にいこう:2005/05/03(火) 18:03:46
>>38
情報の小出しを防ぐ意味で付けておいてもいいでしょ

40 :名無しさん@そうだ選挙にいこう:2005/05/03(火) 19:14:13
Macintosh かも知れないしぃ。

41 :14:2005/05/03(火) 20:33:01
>>14
すみませんでした。
OSはXP、エクセルは2002です。
VBAはそれなりに出来ます。


42 :名無しさん@そうだ選挙にいこう:2005/05/03(火) 21:28:23
>41
VBAできるならとっくにググって知ってるだろうけど
OutlookならExcelにデータを引っ張ってこられる。
が、本文中の住所や金額だけ抽出してくるのは無理かと。
Excelに本文引っ張ってきた後に抽出するのも
書式が決まってるわけでも無いだろうから難しいんじゃ?

43 :14:2005/05/03(火) 21:50:35
OutlookExprssを使っていますがOutlookじゃないと移行できないんでしょうか?
主に落札後の主催者からのメールからデータを移行しようと思っているので
引っ張ってこれれば抽出はなんとかなると思います。
ちなみにOutlookからのデータの移行はエクセル側からするんですか?

44 :名無しさん@そうだ選挙にいこう:2005/05/03(火) 22:05:27
【1 OSの種類】 Windows2000
【2 Excelのバージョン】 Excel2003
【3 VBAが使えるか】 あまり使えない
【4 Googleでの検索キーワード】 ダイアログボックスを表示しない マクロ
【5 ヘルプでの検索キーワード】 ダイアログボックス
【6 スレのFAQとログを読んだ】 半分読みました

csvファイルをシート1に開くマクロを、Google等を参考に
(パクリ同然)書いてみました。
ちゃんと開くようになったのですが、最後にダイアログボックス表示、

<クリップボードに大きな情報があります。[はい] 、[いいえ] >
がでてしまいます。
ダイアログボックスを表示しない マクロコード教えてください。

45 :14:2005/05/03(火) 22:13:40
何度もすみません。
今思いついたのが・・・
1、OutlookExprssのメールをテキストファイルで保存(これは手動、これ移行はVBA)
2、新しいブックでそのファイルを開く
3、必要な文字を抜き取る
4、データのあるブックに移す
こんな感じならなんとか出来そうでしょうか?
もっと簡単(無駄の無い)方法があったら教えて下さい。


46 :名無しさん@そうだ選挙にいこう:2005/05/03(火) 22:46:43
>>23
ほんとに湧いてるのは「厨が増えて困るよ」みたいなことを
言いたがる半端野郎なんだけどな。

お前だってアホ丸だしの初心者だったくせに。

47 :名無しさん@そうだ選挙にいこう:2005/05/03(火) 22:48:27
>>44
DisplayAlerts でヘルプを検索

48 :名無しさん@そうだ選挙にいこう:2005/05/03(火) 23:03:47
【1 OSの種類 / Excelのバージョン】 WindowsXP/Excel2000
【2 Googleやヘルプでの検索キーワード】 データテーブル
【3 VBAが使えるか】いいえ

グラフを作りデータテーブルを付ける、そのテーブルの行数が多いと
全て表示されず、下のほうが切れてしまいます。
これを修正するのにプロットエリアを広げるのですが、当然、上にある
グラフ本体の部分も広がってしまいます。
グラフを縦に広げずに、データテーブルだけを広げる方法はありませんか?

49 :名無しさん@そうだ選挙にいこう:2005/05/03(火) 23:08:13
>>47  ありがとうございます!

Application.DisplayAlerts = False

でいけました!


50 :名無しさん@そうだ選挙にいこう:2005/05/04(水) 00:16:14
【1 OSの種類】 Windows2000
【2 Excelのバージョン】 Excel2003
【3 VBAが使えるか】 あまり使えない
【6 スレのFAQとログを読んだ】 半分読みました

CSVファイル
H1,4,0,0504201
H2,1,,,,,,2,,,,
H3,,,,,,,,,,,,
H4,1,1,1,1,1,1,
1,Aランチ   
1,2,900,2,900,
2,Bランチ    
2,3,1900,3,1900,
3,ラーメン   
2,3,1000,3,100,
HH,29,5710,0,0,
TT,1,0000,,,,,
MM,0,0,0,0,0,0

上記のようなCSVファイルをエクセルで読み込んで、
(1,定食Aから、3,うどんまで)のメニューと売り上げ金等を、
集計表に参照?しているのですが、毎日のことなので売れたメニューの数がかわります。
(4,そば 5,お弁当  6,味噌汁 etc..)
HH,TT,MM,とかがなければ楽なのですが、
こういう指定範囲が毎回変わる場合は、マクロか関数で処理できるのでしょうか?

よろしくお願いします。
説明下手で、すいません。


51 :名無しさん@そうだ選挙にいこう:2005/05/04(水) 00:18:27
(1,Aランチから、3,ラーメンまで)のメニューと売り上げ金でした。
スマソ

52 :名無しさん@そうだ選挙にいこう:2005/05/04(水) 00:20:26
>>46
  >>46
    >>46

53 :名無しさん@そうだ選挙にいこう:2005/05/04(水) 00:23:37
>>50
なんらかの規則があるならなんとでもなるけど
どういう規則なのか説明出来ないなら、何もアドバイスすることは出来ない。

54 :名無しさん@そうだ選挙にいこう:2005/05/04(水) 03:16:12
前スレで放置されたので、もう一度質問です。

【1 OSの種類】 Windowsを使ってます
【2 Excelのバージョン】 Excelを使ってます
【3 VBAが使えるか】 近頃のVBAは使い物にならないです。目を離すとすぐにサボって・・
【4 Googleやヘルプでの検索キーワード】 インターネットプロダイバー(インターネットに潜る人もいるらしいです)
【5 スレのFAQとログを読んだ】 女心ほどは読めませんでした。

あるエクセルのWEBサイトで、下のようにセルに入力すると、勝手にリンクが張られ、
そのリンクをクリックしただけで、自動的にメールが作成できると書かれてました。
しかし、クリックすると日本語部分が文字化けします。
どうすればいいですか?相手への嫌がらせで、文字化けのままメール送っていいですか?

mailto:kato@abc.co.jp;yamada@abc.co.jp?cc=suzuki@abc.co.jp&bcc=sato@xyz.co.jp&
subject=ありがとうございます&body=当メールサービスをご利用いただきありがとうございます


55 :名無しさん@そうだ選挙にいこう:2005/05/04(水) 03:55:08
>>54

>>18 >>21

56 :名無しさん@そうだ選挙にいこう:2005/05/04(水) 04:16:53
ていうか、↓のことでしょ?
ttp://www.still.co.jp/excel/support/077ems.xls

57 :名無しさん@そうだ選挙にいこう:2005/05/04(水) 08:05:06

【1 OSの種類 / Excelのバージョン】WindowsXP/Excel2002,Excel2003
【2 Googleやヘルプでの検索キーワード】画像 サイズ 取得
【3 VBAが使えるか】基本的なものなら

ユーザーフォームのイメージで開いた画像の高さや幅をPicture.Width、Picture.Heightで取得できますが、
これをユーザーフォームを使わずに取得するにはどうすればいいですか?
具体的にやりたいことは、パスを指定した複数の画像の高さと幅の比率を知りたいだけなんです。
画像は全て横長のもので、幅は必ず高さの倍数になります。
ユーザーフォーム内に開いた画像なら
Image1.Picture.Width / Image1.Picture.Height で簡単に出せるのですが、
ワークシートに書いてあるパスの画像の縦横比をワークシートに返すだけなのに
わざわざユーザーフォームを立ち上げるのもウザいし、画像の内容を確認する必要もないのに
全ての画像を開いていくのはかなり無駄だと思います。

For i = 1 To 100 '←実際には100ではなく可変
 Cells(i, 2).value = Cells(i, 1)に書いてあるパスの画像の幅 / 高さ
Next i
そこで、こんな感じで処理したいを思っているのですが
なにか手段をご存じの方、どうかお知恵をお貸しください。
画像はbmpかpngかjpgで最大高は400、最大幅は3200です。
それと、複数のPC(全てOSはXP、Excelは2002と2003がある)で使うので
何らかのソフトを入れなければならない方法は避けたいです。
APIとか使えば出来そうなんですが、そっちの知識は全く無いもので。


58 :名無しさん@そうだ選挙にいこう:2005/05/04(水) 11:56:58
>>57
Sub test()
Dim a
Set a = LoadPicture(Cells(1, 1).Text)
MsgBox (a.Height & " x " & a.Width)
End Sub

A1に画像のパスがあるものとします


59 :名無しさん@そうだ選挙にいこう:2005/05/04(水) 12:06:30
>>58
ちなみにここで取得した数字ってピクセルではないんで、
なんなんでしょうか (ーー゛)
まあ、縦横比を求める分にはどうでもいいですが、、、

60 :57:2005/05/04(水) 12:55:31
>>58
ありがとうございます。
ユーザーフォームで処理するのと同じようなことが出来るんですね。
でも数十ほど処理してみたらいくつか問題点が、、、
・ピクセル単位では「幅/高さ」で割り切れていた物が割り切れなくなることがある。
・png画像が処理できない

確認したらユーザーフォームの方も同じ仕様だったので、1画像でしか確認をしなかった私が悪いのですが
ピクセル単位の値は返らなくても良いけど、「幅/高さ」の計算でピクセル単位で計算した場合と
同じ結果が出ないと困ります。(画像作成ミスを発見できなくなるため、結果を丸めることは出来ません。)

どうかこの問題点を解消できる方法を教えてください。宜しく御願いします。

61 :名無しさん@そうだ選挙にいこう:2005/05/04(水) 16:27:21
>60
何が何でもExcelにやらせるんじゃなく、餅は餅屋ってことで
レポート出力機能を持つ画像ビューワ使ったら?


62 :名無しさん@そうだ選挙にいこう:2005/05/04(水) 16:42:32
それ言い出したら"専用ソフト使え"で済む内容の質問は
いままでも腐るほどあったわけだが
質問者はExcelでやりたい事情があるからここに来るんだろ

63 :名無しさん@そうだ選挙にいこう:2005/05/04(水) 16:53:46
エクセルのセルに書いてあるメアドをコピペしようとしたりすると、
一々メール送信ウィンドがでて邪魔なんですが、
何とかする方法ありませんか?

64 :名無しさん@そうだ選挙にいこう:2005/05/04(水) 16:55:54
>>63
あります。
(知りたければ>>10、知りたくなければさようなら)

65 :名無しさん@そうだ選挙にいこう:2005/05/04(水) 17:06:40
>64
ありがとうございました。
おかげで解決しました。

66 :名無しさん@そうだ選挙にいこう:2005/05/04(水) 17:11:11
>62
今までだってそれがしたければAccessの方がいい云々のレスがあったので、
別ソフトへの誘導は場合によって可なんだと思ってたが…

自分も以前Excelで画像のサイズを求めようとしたけど、pngやpsdの
画像で躓いて、結局苦労しなくてもサイズを出力できる画像ビューワにたどり着いた。
で、ビューワで出力したテキストファイルをExcelで加工して使ってる。

67 :名無しさん@そうだ選挙にいこう:2005/05/04(水) 17:41:31
でも>>57ははっきりと
> 何らかのソフトを入れなければならない方法は避けたいです。
って書いてるんだから、代用策しか思いつかん奴は黙ってればいいんじゃない?
結果さえ出ればなんでもいいって奴になら、代用策を提案してやるのもいいけど
こういう質問内容の時には質問者が"イヤだ"と言ってる方法を押しつけるんじゃなくて
わかる奴が回答すればいい
このスレかなりレベル高い奴も来るから、放っておいてもそのうちベテランが回答付けるだろう

68 :57:2005/05/04(水) 17:49:33
>>61
はい、現在はそのような方法で処理してますが、
事情があってOfficeくらいしか入ってない(入れられない)他のPCでも
同様の処理がしたい為、質問に来た次第です。
どうか宜しく御願いします。

69 :名無しさん@そうだ選挙にいこう:2005/05/04(水) 17:50:01
【1 OSの種類 / Excelのバージョン】Windows2000,Excel2003 です。
Excelのグラフでy軸に平行な直線(x=5など)を引くにはどうすれば
いいのでしょうか?
よろしくお願いします。

70 :名無しさん@そうだ選挙にいこう:2005/05/04(水) 18:06:54
>>65

>>1
( ・自己解決したって人はその解決手段を他の人の参考の為に書いてね。
って書いてあるの読んだ?

71 :名無しさん@そうだ選挙にいこう:2005/05/04(水) 18:27:59
初めまして。初めてエクセルを使用したのですが、表をつくってこれをグラフにしたいと思います。
左の縦軸の数値のスパンを3種類ほど混ぜて見やすく表示したいのですが、こういう事って出来ますか?

具体的には、左は、0〜25(個)まで、30〜40(度)まで、380〜450(円)まで。
下は、日付で、折れ線グラフをつくりたいのです。

まとめてグラフにすると、450が上限値になるので、0〜25が見にくいし、50〜350の数値は使用しないので、
とっぱらいたいのですが。どうか、宜しくお願いします。


72 :名無しさん@そうだ選挙にいこう:2005/05/04(水) 18:45:48
>>60
ざくっと検索しましたが、世界中でloadpictureではPNGが
読めないと大騒ぎしてます。なにやら直接バイナリから
サイズを取得するのが早道のようです。
そのためのActiveXやらDLLやらはあるようですが、
自力でVBAだけでやるのは難しそうです。
自分ではできませんが、画像フォーマットから研究する
以外ない?

73 :名無しさん@そうだ選挙にいこう:2005/05/04(水) 19:37:52
>>69
降下線ではダメですか?

74 :名無しさん@そうだ選挙にいこう:2005/05/04(水) 19:41:41
>>71
数値軸を左右で2軸使用することはできるはずですが…

数値軸の最小値と最大値は任意で指定できますよ

75 :名無しさん@そうだ選挙にいこう:2005/05/04(水) 21:53:45
過去ログどこにあるかわかりません
だれかおしえて…

76 :名無しさん@そうだ選挙にいこう:2005/05/04(水) 21:55:09
テンプレにばかり拘って過去ログを忘れるスレでつね

77 :71:2005/05/04(水) 22:02:48
>>74 レスありがとうございます。
その、任意で数値を変えるやり方というのはどうやるのですか?


78 :69:2005/05/04(水) 22:18:18
>>73
直線を引きたいとき、降下線を利用する手があること、気づきません
でした。教えてくださりありがとうございます。
他のやり方についても、自分でもう少し調べてみますが、もし何かご
存知でしたら、よろしくお願いいたします。


79 :74でないが:2005/05/04(水) 22:18:30
>>77
軸を右クリックして書式設定。
しかし74も言っているように3軸はできない。

80 :名無しさん@そうだ選挙にいこう:2005/05/04(水) 22:25:58
次スレ以降、過去ログのURLがなくなる悪寒。

81 :過去ログその1:2005/05/04(水) 22:26:23
=過去ログ=
http://pc.2ch.net/test/read.cgi/bsoft/986283001/
http://pc.2ch.net/bsoft/kako/1004/10044/1004432306.html
http://pc.2ch.net/bsoft/kako/1012/10124/1012439547.html
http://pc.2ch.net/bsoft/kako/1018/10180/1018055390.html
http://pc.2ch.net/bsoft/kako/1023/10238/1023811906.html
http://pc.2ch.net/bsoft/kako/1028/10287/1028725250.html
http://pc.2ch.net/bsoft/kako/1033/10339/1033983470.html
10 http://pc2.2ch.net/bsoft/kako/1042/10429/1042913355.html
11 http://pc2.2ch.net/bsoft/kako/1045/10459/1045997062.html
12 http://pc2.2ch.net/bsoft/kako/1050/10500/1050069432.html
13 http://pc2.2ch.net/bsoft/kako/1053/10530/1053069026.html
14 http://pc2.2ch.net/bsoft/kako/1055/10553/1055342774.html
15 http://pc2.2ch.net/bsoft/kako/1057/10577/1057720306.html
16 http://pc2.2ch.net/bsoft/kako/1060/10603/1060345528.html


82 :過去ログその2:2005/05/04(水) 22:27:14
17 http://pc2.2ch.net/bsoft/kako/1062/10622/1062260735.html
18 http://pc2.2ch.net/bsoft/kako/1067/10672/1067264540.html
22 http://pc5.2ch.net/test/read.cgi/bsoft/1078930810/ (html化待ち)
23 http://pc5.2ch.net/test/read.cgi/bsoft/1083074470/ (html化待ち)
24 http://pc5.2ch.net/test/read.cgi/bsoft/1085756069/ (html化待ち)
25 http://pc5.2ch.net/test/read.cgi/bsoft/1088690113/ (html化待ち)
26 http://pc5.2ch.net/test/read.cgi/bsoft/1091619391/ (html化待ち)
27 http://pc5.2ch.net/test/read.cgi/bsoft/1096068933/ (html化待ち)
28 http://pc5.2ch.net/test/read.cgi/bsoft/1099232633/ (html化待ち)
29 http://pc5.2ch.net/test/read.cgi/bsoft/1102922371/ (html化待ち)
30 http://pc5.2ch.net/test/read.cgi/bsoft/1106829956/ (html化待ち)
31 http://pc8.2ch.net/test/read.cgi/bsoft/1109340075/ (html化待ち)

以前は「dat落ち」って書いてあったヤツが「html化待ち」になってるけど今もhtml化ってやってるのか?
あと、htmlになってたヤツで今は↑のURLで見られなくなってるのがあるね。
ttp://makimo.toで「Excel総合」あたりで過去ログ検索した方がいいかも。

83 :名無しさん@そうだ選挙にいこう:2005/05/04(水) 22:29:17
=過去ログ=
2 http://pc.2ch.net/test/read.cgi/bsoft/986283001/
3 http://pc.2ch.net/bsoft/kako/1004/10044/1004432306.html
4 http://pc.2ch.net/bsoft/kako/1012/10124/1012439547.html
5 http://pc.2ch.net/bsoft/kako/1018/10180/1018055390.html
6 http://pc.2ch.net/bsoft/kako/1023/10238/1023811906.html
7 http://pc.2ch.net/bsoft/kako/1028/10287/1028725250.html
8 http://pc.2ch.net/bsoft/kako/1033/10339/1033983470.html
10 ttp://pc2.2ch.net/bsoft/kako/1042/10429/1042913355.html
11 ttp://pc2.2ch.net/bsoft/kako/1045/10459/1045997062.html
12 ttp://pc2.2ch.net/bsoft/kako/1050/10500/1050069432.html
13 ttp://pc2.2ch.net/bsoft/kako/1053/10530/1053069026.html
14 ttp://pc2.2ch.net/bsoft/kako/1055/10553/1055342774.html
15 ttp://pc2.2ch.net/bsoft/kako/1057/10577/1057720306.html
16 ttp://pc2.2ch.net/bsoft/kako/1060/10603/1060345528.html
17 ttp://pc2.2ch.net/bsoft/kako/1062/10622/1062260735.html
18 ttp://pc2.2ch.net/bsoft/kako/1067/10672/1067264540.html
22 ttp://pc5.2ch.net/test/read.cgi/bsoft/1078930810/ (html化待ち)
23 ttp://pc5.2ch.net/test/read.cgi/bsoft/1083074470/ (html化待ち)
24 ttp://pc5.2ch.net/test/read.cgi/bsoft/1085756069/ (html化待ち)
25 ttp://pc5.2ch.net/test/read.cgi/bsoft/1088690113/ (html化待ち)
26 ttp://pc5.2ch.net/test/read.cgi/bsoft/1091619391/ (html化待ち)
27 ttp://pc5.2ch.net/test/read.cgi/bsoft/1096068933/ (html化待ち)
28 ttp://pc5.2ch.net/test/read.cgi/bsoft/1099232633/ (html化待ち)
29 ttp://pc5.2ch.net/test/read.cgi/bsoft/1102922371/ (html化待ち)
30 ttp://pc5.2ch.net/test/read.cgi/bsoft/1106829956/ (html化待ち)
31 ttp://pc8.2ch.net/test/read.cgi/bsoft/1109340075/ (html化待ち)
32 ttp://pc8.2ch.net/test/read.cgi/bsoft/1112190520/ (html化待ち)

84 :名無しさん@そうだ選挙にいこう:2005/05/04(水) 22:29:44
かぶった

85 :名無しさん@そうだ選挙にいこう:2005/05/04(水) 22:34:21
>>77
2つ目の軸にしたい系列を選択して書式設定→軸→第2軸ですかね
Excel2000でやってみました
バージョン違いでやり方違うかも

できたら次からは使用環境なども書かれたほうが、質問サイドも回答サイドにも有益かと

86 :名無しさん@そうだ選挙にいこう:2005/05/04(水) 23:00:46
>>83
http://mentai.2ch.net/bsoft/kako/965/965792827.html
2 不明


87 :71:2005/05/04(水) 23:11:07
>>79
>>85
回答ありがとうございます!早速やってみます。
使用環境なども次から書くようにします。助かりました。

88 :名無しさん@そうだ選挙にいこう:2005/05/04(水) 23:27:49
【1 OSとExcelのバージョン】 Windows2000、Excel2003
【2 VBAが使えますか】 いいえ
【3 Googleやヘルプでの検索キーワード】エクセル 列検索 セルの参照

下表があります。B〜E列にある値を,下のようにの縦に並んだ数字と一致させA列の値を返したいのですが…
やってみた関数はこれです
【=INDEX($A$1:$A$3,$A$10,,$B$1:$HM$3)】
これだとVALUE!で返されてしまいます。
何か他の関数でいい方法(VLOOKUPとHLOOKUPの組み合わせorCHOOSE関数?)
お手数おかけしますかよろしくお願いいたします・・・。

┌─────┬───┬───┬───┬───┬───┬
│        │ A  │ B   │ C   │ D   │ E   │
├─────┼───┼───┼───┼───┼───┼
│  1     │ 121  │  1  │ 3    │ 5    │ 7   │…
├─────┼───┼───┼───┼───┼───┼
│  2     │ 521  │  2  │ 4    │ 10   │ 15  │…
├─────┼───┼───┼───┼───┼───┼
│  3     │ 100  │  1  │ 5   │ 7   │ 8  │…
├─────┼───┼───┼───┼───┼───┼

┌─────┬───┬───┬───┬───┬───┬
│        │ A   │ B   │ C   │ D   │ E   │
├─────┼───┼───┼───┼───┼───┼
│  10     │  1   │  121│ 100  │ 144 │     │…
├─────┼───┼───┼───┼───┼───┼
│  11     │ 2    │ 521 │      │     │    │…
├─────┼───┼───┼───┼───┼───┼
│  12     │ 3    │  121│     │     │    │…
├─────┼───┼───┼───┼───┼───┼

89 :88:2005/05/04(水) 23:30:06
【=INDEX($A$1:$A$3,match($A$10,,$B$1:$HM$3)】
でした。

90 :名無しさん@そうだ選挙にいこう:2005/05/05(木) 00:36:51
【1     O S の 種 類    】 Windows xp

|  2|  3|  1|  13|  5|

のようにセルが並んでいるとき
これをそのままにしながら、グラフだけは前の値にそのセルの値を加えて表示させることはできますか?

うーん…上手く説明できないのですが、

セルの表示は

|  2|  3|  1|  13|  5|

のままで、グラフでは

 2| 5| 6| 19| 24|

のように増加させたいんです。
上手い検索ワードも分からないのでググっても分かりませんでした。
よろしくお願いしますm(_ _)m

91 :名無しさん@そうだ選挙にいこう:2005/05/05(木) 00:42:25
>>90
積み上げグラフ

92 :48:2005/05/05(木) 10:32:10
>>48 で質問をした者です
わかりにくい文章で恐縮です。


【1 OSの種類 / Excelのバージョン】 WindowsXP/Excel2000
【2 Googleやヘルプでの検索キーワード】 データテーブル
【3 VBAが使えるか】いいえ

お尋ねしたいのは
棒グラフなどにデータテーブルを表示させた際に
データテーブルと上のグラフ表示の部分の縦方向の比率を
任意で変更する方法はありませんか?ということです。

データテーブルのサイズを大きめに、グラフを小さめにしたいのですが、
データテーブルの大きさだけを調整することができません。
フォントサイズを小さくすればテーブルサイズが小さく、
フォントサイズを大きくすればテーブルサイズが大きくはなるのですが。。。

プロットエリア全体のサイズを変更すると両者が一度にサイズが変わってしまい
なかなか思ったとおりの比率にならず、データテーブルの下が切れたりしてしまいます。



93 :名無しさん@そうだ選挙にいこう:2005/05/05(木) 11:00:49
>>60
ありましたよ画像サイズ取得のコードが。
http://kone.vis.ne.jp/program/#sample32
一番最後のFunctionで Dim l を追加すればそのまま動きました。
Sub test()
Dim h, w, a
h = GetImageSize(Selection.Text, imageUnknown).Height
w = GetImageSize(Selection.Text, imageUnknown).Width
a = GetImageSize(Selection.Text, imageUnknown).Image
MsgBox (a & " : " & h & " x " & w)
End Sub

PNGのSizeもピクセルでばっちり取得できます。
BMP、JPG、GIF、PNGで動いています。
バイナリで画像データから直接取得の方法です。

94 :名無しさん@そうだ選挙にいこう:2005/05/05(木) 11:11:24
>>93
こっちのほうがいいですね。
Sub test()
Dim h As ImageSize
h = GetImageSize(Selection.Text, imageUnknown)
MsgBox (h.Image & "-" & h.BPP & "bit : " & h.Height & " x " & h.Width)
End Sub

ダウンロードしたファイルのGETIMAGE.BASがVBAでそのまま
使えます。(最上行は削除)

95 :名無しさん@そうだ選挙にいこう:2005/05/05(木) 11:13:49
>>69
グラフオプション(グラフエリアで右クリック)の目盛線でどぞ

96 :57:2005/05/05(木) 12:31:33
>>93
ありがとうございます。
とりあえず私が使ってるPCでは正常に動きました。
ただ、一つ気がかりが、、、
> **動作環境**
> VB5のランタイムが必要です。
今、私が使ってるPCにはVB5SP3ランタイムが入ってるからいいのですが、
他のPCには入ってないかも、、、というかたぶん入ってない。
でも、参照設定や外部参照しなくても動いてるところを見ると、
VBA上ではVB5ランタイムの有無に関わらず動くのかな?
(その辺のことよくわかってないです、はい。)

あと、>>58さんから教えていただいた方法を手がかりに
ピクセル単位に変換する方法を見つけました。
Dim buf As StdPicture
Dim x As Integer, y As Integer
Set buf = LoadPicture(Cells(1, 1).Text)
x = CLng(CDbl(buf.Width) * 567 / 15000)
y = CLng(CDbl(buf.Height) * 567 / 15000)
MsgBox x & ":" & y
VBのScreen.TwipsPerPixelX(及びY)という関数があれば、
Width及びHeightプロパティで取得したTwip値から正確なピクセル値を出せるようですが、
VBAでは使えないのでその代用手法のようです。
厳密に言えば正確な値は出ないけど、ピクセル値よりTwip値の方が遙かに大きいので、
計算の段階で丸めてしまえばピクセル単位での整数誤差は0になるようです。
「幅/高さ」の結果は丸められないけど、この方法ならとりあえず問題はなさそうです。
ただ、pngが扱えないという問題は残ったままですが。

>>93さんが探してくれた方法の方が(動くなら)pngも扱え、更に高速かつ正確なようなので
まずこちらを試してみて、ダメならしばらくは>>58さんが紹介してくれた方法の改良版で行こうと思います。
とりあえず今すぐには試せないので、試したら報告に来ます。
(>>93さん紹介の方法がダメなら、また情報提供を御願いすると思います。)

97 :名無しさん@そうだ選挙にいこう:2005/05/05(木) 12:32:45
顧客名簿とか売上データベースってアクセスでやった方がいいのかな?
プロフェッショナル買ってきたばかりでよくわかんない・・・

98 :名無しさん@そうだ選挙にいこう:2005/05/05(木) 12:42:13
>>96
どもども。(56=93です)
ExcelのVBAで使う分にはVB5ランタイムは不要です。
このライブラリはVBAではなくVBのソフト作るときのモジュール
見たいですから、VBAの機能だけでまかなっています。

>93のURLからファイルをダウンロードして、当該モジュールを
module1に転記。dim lだけ追加すればtest()が動きましたから、
大丈夫でしょう。
TWIP値というのは知らなかったのでこちらも勉強してみます。
ではでは。

99 :名無しさん@そうだ選挙にいこう:2005/05/05(木) 13:54:06
【 OSの種類】 Windows2000
【 Excelのバージョン】 Excel2003
【 VBAが使えるか】 あまり使えません
【 スレのFAQとログを読んだ】 半分読みました

CSVファイルを、GetOpenFileNameで開いて、
外部データの取り込みマクロを適用したいのですが、
(Space区切りの文字列データを開く為)

With ActiveSheet.QueryTables.Add(Connection:= _
"TEXT;D:\D\test\test.csv", _
Destination:=Range("A1"))
.Name = "test"

test.csvに、読み込んだcsvファイルを当てはめるには
マクロをどう書いたらよいですか?

100 :名無しさん@そうだ選挙にいこう:2005/05/05(木) 14:13:29
>>99
マクロの自動記録を使ってください。
それを自分で加工すればいいですよ。

101 :名無しさん@そうだ選挙にいこう:2005/05/05(木) 14:22:14
>>99
【 日本語が使えるか】 あまり使えません
ですか?

102 :名無しさん@そうだ選挙にいこう:2005/05/05(木) 14:27:53
>>101
質問者に普通に質問するかスルーするかどちらかにされたら?
煽りたいだけなら他所でどうぞ

103 :名無しさん@そうだ選挙にいこう:2005/05/05(木) 14:36:28
>>100  ありがとうございます。

Dim myBookname As String
Dim ReturnBook As Workbook, TargetBook As Workbook

Set ReturnBook = ActiveWorkbook
Application.ScreenUpdating = False

myBookname = Application.GetOpenFilename("(*.csv),*.csv")

If myBookname <> "False" Then
Workbooks.Open myBookname
End If

Set TargetBook = ActiveWorkbook

Application.ScreenUpdating = True

With ActiveSheet.QueryTables.Add(Connection:= _
"TEXT;D:\D\test\test.csv", _
Destination:=Range("A1"))
.Name = "test"
""""""""""""""""""""""""""""""""""""""""""""""""
With ActiveSheet.QueryTables.Add(Connection:= _
"TEXT;D:ActiveWorkbook, _
Destination:=Range("A1"))
この部分が赤文字になってしまいます。
浅い知識ですみません。
""""""""""""""""""""""""""""""""""""""""""""""



104 :名無しさん@そうだ選挙にいこう:2005/05/05(木) 14:47:42
>>103
WithときたらEnd Withがないとおかしいですな。

105 :名無しさん@そうだ選挙にいこう:2005/05/05(木) 14:54:24
>>104
.Name="test"
End With

とEnd Withを追加すれば動きましたよ
てか、ちゃんとSubの中に入れてるんでしょうか、、、(不安)

106 :名無しさん@そうだ選挙にいこう:2005/05/05(木) 14:59:07
>>104 すみません
全部書き込めなくて
続きは
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.TextFilePromptOnRefresh = False
.TextFilePlatform = 1252
.TextFileStartRow = 1
.TextFileParseType = xlDelimited
.TextFileTextQualifier = xlTextQualifierDoubleQuote
.TextFileConsecutiveDelimiter = True
.TextFileTabDelimiter = False
.TextFileSemicolonDelimiter = False
.TextFileCommaDelimiter = True
.TextFileSpaceDelimiter = True
.TextFileColumnDataTypes = Array(1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1)
.TextFileTrailingMinusNumbers = True
.Refresh BackgroundQuery:=False
End With
です どうかご教授ください。

107 :名無しさん@そうだ選挙にいこう:2005/05/05(木) 15:01:51
End Withの後に、

TargetBook.Worksheets(1).Range("A1:G59").Copy
ReturnBook.Worksheets(1).Range("A1").PasteSpecial Paste:=xlValues, _
Operation:=xlNone, SkipBlanks:=False, Transpose:=False

Application.DisplayAlerts = False

ActiveWindow.Close
Sheets("Sheets2").Select
Range("E4").Select
End Sub
と書きました。すいません。

108 :名無しさん@そうだ選挙にいこう:2005/05/05(木) 16:02:24
>>107
この部分が赤文字になってしまいます。

というところは赤字にはなりませんが?
そもそも最初にSub test() とかのSubを書いていますか?


109 :名無しさん@そうだ選挙にいこう:2005/05/05(木) 16:12:20
>>108
小出しになってしまい、すみません。

先頭に、
Private Sub CommandButton1_Click()
を記入しています。

110 :名無しさん@そうだ選挙にいこう:2005/05/05(木) 16:21:55
>>109
当方の環境では赤字になりません

111 :名無しさん@そうだ選挙にいこう:2005/05/05(木) 16:47:17
すみません 改めて書きます
Private Sub CommandButton1_Click()

Dim myBookname As String
Dim ReturnBook As Workbook, TargetBook As Workbook

Set ReturnBook = ActiveWorkbook
Application.ScreenUpdating = False

myBookname = Application.GetOpenFilename("(*.csv),*.csv")

If myBookname <> "False" Then
Workbooks.Open myBookname
End If

Set TargetBook = ActiveWorkbook

Application.ScreenUpdating = True

With ActiveSheet.QueryTables.Add(Connection:= _
"TEXT;D:myBookname", _
Destination:=Range("A1"))
.Name = "test"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True

112 :名無しさん@そうだ選挙にいこう:2005/05/05(木) 16:47:40
続き
.AdjustColumnWidth = True
.RefreshPeriod = 0
.TextFilePromptOnRefresh = False
.TextFilePlatform = 1252
.TextFileStartRow = 1
.TextFileParseType = xlDelimited
.TextFileTextQualifier = xlTextQualifierDoubleQuote
.TextFileConsecutiveDelimiter = True
.TextFileTabDelimiter = False
.TextFileSemicolonDelimiter = False
.TextFileCommaDelimiter = True
.TextFileSpaceDelimiter = True
.TextFileColumnDataTypes = Array(1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1)
.TextFileTrailingMinusNumbers = True
.Refresh BackgroundQuery:=False
End With

TargetBook.Worksheets(1).Range("A1:G59").Copy
ReturnBook.Worksheets(1).Range("A1").PasteSpecial Paste:=xlValues, _
Operation:=xlNone, SkipBlanks:=False, Transpose:=False

Application.DisplayAlerts = False

ActiveWindow.Close
Sheets("Sheets2").Select
Range("E4").Select
End Sub

113 :名無しさん@そうだ選挙にいこう:2005/05/05(木) 16:48:19
上記のマクロがデバックになる。
With ActiveSheet.QueryTables.Add(Connection:= _
"TEXT;D:myBookname", _
Destination:=Range("A1"))

読み込んだcsvファイルを当てはめるには
マクロをどう書いたらよいですか?

何度も本当に、すみません。

114 :名無しさん@そうだ選挙にいこう:2005/05/05(木) 16:55:59
>>113
なんかさっきのソースと違ってますが赤字とやらは直ったのですか?

"TEXT;D:myBookname", _

がおかしいです。

"TEXT;" & myBookname, _

ではどうですか?
(試してませんが)

115 :名無しさん@そうだ選挙にいこう:2005/05/05(木) 16:59:29
見辛いから省略できるプロパティは省略しろ


116 :名無しさん@そうだ選挙にいこう:2005/05/05(木) 17:10:50
シートに画像(Jepg等)のファイルをドラッグ&ドロップで貼り付ける方法ってありませんか?

117 :名無しさん@そうだ選挙にいこう:2005/05/05(木) 17:20:14
>>116
ありません。

118 :名無しさん@そうだ選挙にいこう:2005/05/05(木) 17:33:14
>>114 ありがとうございます
自分なりにいじっているうちに、
ソース違ってしまいました。赤字はなくなりました。

"TEXT;D:myBookname", _を
"TEXT;" & myBookname, _
に変えてみたところ、

実行時エラー '-2147024809 (80070057)':
取り込み先の範囲は、クエリ テーブルが作成された同じワークシートにありません

がでました。
シート5にボタンを作って、シート1に開いたCSVファイルの範囲を
貼り付けるつもりなんですけど。

初心とはいえ、たどたどしい質問に答えて下って、ありがとうございます。

119 :賢人よ:2005/05/05(木) 17:41:10
エクセルのデータをもうひとつに反映させる場合はなんのマクロを
つかえばよかですかね?

たしかchange何々だったと思うんですが・・・・
だれか賢人よ お願いします。

120 :名無しさん@そうだ選挙にいこう:2005/05/05(木) 17:49:44
>>118
うちでは別にエラーはでていませんが、、、

121 :名無しさん@そうだ選挙にいこう:2005/05/05(木) 17:52:12
>>119
Private Sub Worksheet_Change(ByVal Target As Range)

それ以上はテンプレ使って、やりたいことを具体的に書いてから。

122 :>>99:2005/05/05(木) 18:10:52
私のトコだけエラーなんですね、、、、。

なぜ、このマクロを書いたかというと、CSVファイルをエクセルで
開いて範囲指定した部分だけシート1に貼ってシート5の表に集計
していたのです。すると、カンマ区分の数値は見れたのですが、
スペース区分の文字列が、うまく反映されなかったのです。
で、ググッテいるうちに、外部データのマクロを用いようと思ったのです。

123 :賢人よ:2005/05/05(木) 18:16:01
ありがとうございます121

がんばってみます。

124 :名無しさん@そうだ選挙にいこう:2005/05/05(木) 18:21:33
>>122
で、クエリにする理由はあるのか?
自動マクロでやれば、あとはそれを加工すればできる。
あと、エラーが出るのは、Activesheetって概念が分かって
いないからと思われ。
自分の意図した動作をしていないからだよ。

125 :75:2005/05/05(木) 18:23:38
>>81-83
ありがとうございました

126 :69=78:2005/05/05(木) 21:14:40
>>95
69=78です。お返事おくれてすみません。
ありがとうございました。


127 :名無しさん@そうだ選挙にいこう:2005/05/05(木) 23:27:01
セルの書式設定で表示形式を文字列にしているのに、
='シート'!B6 とかになってしまい、文字が反映せれないのは、
なんででしょうか?

128 :名無しさん@そうだ選挙にいこう:2005/05/05(木) 23:36:12
>>127
入力した文字列が表示されてるんじゃないのか?

129 :名無しさん@そうだ選挙にいこう:2005/05/05(木) 23:46:19
>>127
表示形式を文字列にすれば、数式が文字列になってしまうのは当然。

130 :名無しさん@そうだ選挙にいこう:2005/05/05(木) 23:52:10
一つのブックにシートが8枚あります。
1,2,3、4シートはデータです。
5シート目で1,2,3、4データシート分の表をつくりました。
6,7,8、枚目は、シート5のコピーです。
でも、参照したい文字が2,3、4シートのそれぞれから
とりたいのです。=もつけています。なんででしょうか?

131 :>>127:2005/05/05(木) 23:56:17
ああああああ!!!
すみません!!!
>>129さん! あざーす!
標準でできました。 忘れてください。

132 :名無しさん@そうだ選挙にいこう:2005/05/06(金) 01:11:04
すみません、エクセルで出した平均って単純に合計値÷回数にならないんですが・・・・
どうしてですか?マジで困ってます。だれかHELP・・・

133 :名無しさん@そうだ選挙にいこう:2005/05/06(金) 01:19:33
>>132
合計/要素数だよ。
そうならないなら、空セル(0値)を含んでるとか
数値と表示形式が一致しないとか
浮動小数の丸め誤差とかじゃねーの?

どれも違うってなら、数式とセルの値と平均の結果を貼ってみな。

134 :名無しさん@そうだ選挙にいこう:2005/05/06(金) 01:37:35
>>133
どうやら原因は
範囲の選択のときに異常値を除こうと思ってCtrlキーを押しながらやってたらそれが2重にカウントされていたようです。
それは解決したのですが、今度は
異常値などをのぞくために一部のセルを選択しないで合計や平均をだすにはどうすればいいのでしょう?
初歩的な質問ですみません・・

135 :名無しさん@そうだ選挙にいこう:2005/05/06(金) 03:17:37
>>134
異常値ってエラー値のこと?
まあ、除外したいセルが固定なら、普通に複数範囲を引数に指定したらいいじゃん。
たとえばA1:A10の範囲でA5のみを除外したいなら
=AVERAGE(A1:A4,A6:A10)
ってな感じで。
範囲に(位置可変で)エラーが有あった場合、それを回避したいなら、
そのエラーが出てるセルの数式を論理関数でエラーが出ないように(Null値を返すように)
式を組み直すか、配列式で数値のセルだけを拾って平均を出すかすればいい。
AVERAGE関数はNull値と文字列はカウントしないから。
(0値は非表示にしてもカウントされるから一見空セルに見えても0かNullかで結果が違う)

136 :名無しさん@そうだ選挙にいこう:2005/05/06(金) 08:35:54
>>135
まじサンクス
なんとかレポート終わりマスタ

137 :名無しさん@そうだ選挙にいこう :2005/05/06(金) 11:02:49
エクセル2002(OSはXPのhome)で、
グラフシートの表示をズームさせようとしているのですが、
「表示」→「ウィンドウに合わせてサイズ変更」のチェックがなぜか
外れないために画面固定され、ズームが出来なくなってしまいます。

これまでこのようなことがなかったため、困っております。
ググっても解決法が見当たらず、office再インストールでもだめです。
どなたかお分かりの方お助けをお願いします。

138 :名無しさん@そうだ選挙にいこう:2005/05/06(金) 11:43:59

>>137

>>10

139 :137:2005/05/06(金) 11:59:38
すみませんやり直します。

【1 OSの種類】 Windows XP home edition
【2 Excelのバージョン】 Excel 2002
【3 VBAが使えるか】 いいえ
【4 Googleでの検索キーワード】 excel グラフ サイズ変更 ズーム など
【5 ヘルプでの検索キーワード】 ズーム
【6 スレのFAQとログを読んだ】 はい (めぼしいところのみですが)


グラフシートの表示をズームさせようと
しているのですが、
「表示」→「ウィンドウに合わせてサイズ変更」の
チェックがなぜか 外れないためにサイズが固定され、
ズームが出来なくなってしまいます。

これまでこのようなことがなかったため、
大変困っております。
色々と解決法を探してましたが見当たらず、
office再インストールでもだめでした。
どなたかお分かりの方お助けをお願いします。

なお、エクセル2002を削除して、代わりに
エクセル2000(office2000)をインストール
してみても結果は同じでした。

よろしくお願いします。


140 :名無しさん@そうだ選挙にいこう:2005/05/06(金) 12:32:57
>>138
書き直してるんだから即レスしてあげなきゃ
やる気ないなら思わせぶりなカキコするなよ

141 :名無しさん@そうだ選挙にいこう:2005/05/06(金) 12:34:47
>>140

142 :名無しさん@そうだ選挙にいこう:2005/05/06(金) 16:10:51
WinXP Excel2003

「したいこと」
登録したマクロを、ボタンを使って起動したい

「ためしたこと」
シートにボタンを作って、デザインビューでボタンを選択→右クリックで「マクロ登録」
…を、出したいのですが右クリックしても「マクロ登録」なんてものは出てきません。
どうしたらいいでしょうか?

143 :名無しさん@そうだ選挙にいこう:2005/05/06(金) 16:14:27
>>142
コントロールのボタンなら「コードの表示」

「マクロ登録」はフォームのボタン。

144 :142:2005/05/06(金) 16:27:21
>>143
ありがとうございます!できました。

145 :名無しさん@そうだ選挙にいこう:2005/05/06(金) 17:00:38
WindowsXP SP2 Excel2000 の環境です。
Application.Dialogs(5).Showを使って、ファイルの保存先をダイアログで選択・作成させて
そのファイルのパスを取得したいのですが、Application.Dialogs(5).Showを使うと、
パス取得&データ操作をしないまますぐに保存されてしまいます。
InputBoxを使うとパス取得はできるのですが、保存先のディレクトリを手入力に
しなくてはならなくなってしまいます。上手い方法はないですか?



146 :名無しさん@そうだ選挙にいこう:2005/05/06(金) 17:12:21
>>145
Application.GetSaveAsFilename
基本中の基本です。

147 :名無しさん@そうだ選挙にいこう:2005/05/06(金) 19:44:45
【1 OSの種類】 Windows XP pro
【2 Excelのバージョン】 Excel 2003
【3 VBAが使えるか】 はい
【4 Googleでの検索キーワード】なし
【5 ヘルプでの検索キーワード】なし
【6 スレのFAQとログを読んだ】 はい かなり前から
〜〜〜質問内容〜〜〜

質問です。質問の度に ↑ こんなのが出てきたら煩くないですか?



148 :名無しさん@そうだ選挙にいこう:2005/05/06(金) 20:12:34
>>147
教えて君や情報後出し君に悩まされるよりはマシ。

149 :名無しさん@そうだ選挙にいこう:2005/05/06(金) 21:04:42
>>147
はい、ウザいです

>>148
テンプレ強要してレスできないんじゃ(w

150 :名無しさん@そうだ選挙にいこう:2005/05/06(金) 21:07:02
>>148


>>35

151 :名無しさん@そうだ選挙にいこう:2005/05/06(金) 22:16:49
>>147
ネタ質問に煩わされるくらいなら33倍マシ。

152 :名無しさん@そうだ選挙にいこう:2005/05/07(土) 00:06:23
言われなくてもテンプレ張る人なら、●買わないと過去ログが見られない
ここよりも、他のエクセルQ&Aサイトで調べたほうが手っ取り早いと思うが。

153 :名無しさん@そうだ選挙にいこう:2005/05/07(土) 07:24:26
>>151
スルー出来ずに何か一言言いたくなるというのに限って
自称中級者なのだから始末に負えない。

154 :名無しさん@そうだ選挙にいこう:2005/05/07(土) 08:04:36

(´-`).。oO( 153は自分自身に言ってるのかな・・・ )

155 :勅令:2005/05/07(土) 09:28:16
テンプレはつけないことに決定しました

156 :名無しさん@そうだ選挙にいこう:2005/05/07(土) 10:29:05
エクセル使いなら1行で済ますべし

構文
Template  OsVersion/ ExcelVersion/ IsGoogle/ IsHelp/ IsLog

Template 省略可能です。
OsVersion 必ず指定します。文字列型(String)の値を使用します。
ExcelVersion 必ず指定します。整数型(Integer)の値を使用します。
IsGoogle 省略可能です。ネット検索の状況を記述します。
IsHelp 省略可能です。ヘルプ検索の状況を記述します。
IsLog 省略可能です。過去ログ、FAQを読んだかどうか記述します。

157 :名無しさん@そうだ選挙にいこう:2005/05/07(土) 11:04:13
【1 OSの種類】 Windows 98
【2 Excelのバージョン】 Excel 2000
【3 VBAが使えるか】 いいえ
【4 Googleでの検索キーワード】 罫線 太さ 揃わない
【5 ヘルプでの検索キーワード】
【6 スレのFAQとログを読んだ】 微妙

〜〜〜質問内容〜〜〜
罫線を引いた所、全て同じ線種を指定しているにもかかわらず
必ず一部、太い線になってしまいます。全て削除しいろんな引き方を
試してみましたが印刷プレビューでも同じところだけ太くなってしまいます。
なにが原因なのでしょうか? 過去ログ見れる環境じゃないので
重複でしたらすみません。

158 :名無しさん@そうだ選挙にいこう:2005/05/07(土) 11:39:29
>>157
テンプレつかうとレスつきませんよん 。。。( ̄ー ̄)ニヤリッ

159 :名無しさん@そうだ選挙にいこう:2005/05/07(土) 11:45:35
>>157
プレビューではたまにそういうこともありますよ。
実際に印刷してもそうなるなら罫線設定の間違い。
あと、プレビューでなく、通常の入力画面でそうなるときも
単なる間違い。

160 :名無しさん@そうだ選挙にいこう:2005/05/07(土) 11:47:20
>>155
>>158

と言ってるのは約1名なので気にしないように。

161 :157:2005/05/07(土) 11:51:41
通常の画面では判別できません。
実はまだ実際に印刷はしていないので実行してみます。ありがとうございます。

162 :名無しさん@そうだ選挙にいこう:2005/05/07(土) 12:07:15
関係ないけどさ、異動先の部署で
「君もエクセルぐらいは勉強しといてくれよ」
かなんか言ってCD-R渡されたんですよ

なんでCD-R?とか思いながら家で中を覗いてみると、ワークシートが
いくつか入ってるんだけど、開こうとするとPCが落ちるんですよ
何度やっても落ちる

見るとファイルのサイズが50メガとかですよ
どんな膨大なデータが入ってるんだとか考えながら、ページファイルのサイズ
増やしたりして、やっと開くのに成功したんですけどね
なんと中身は簡単なシートがわずかに5枚ですよ

賢明なスレ住人ならピンと来たでしょう、
5枚のシートの全セルに、書式が設定されてたんです
そうとも知らずにここの部署の連中は、ディスクをカリカリ言わせながら
50メガのシートを編集してたんですね

余白の書式を削除して保存し直すと、ファイルのサイズはわずかに50キロでした
1000分の1に縮んだワークシートのアイコンを見ながら、俺は思いましたね

「お前が勉強しろバカ」

163 :名無しさん@そうだ選挙にいこう:2005/05/07(土) 12:42:43
>>162
試されてるんじゃないの?
つうか、ありがちなミスだがな w

164 :名無しさん@そうだ選挙にいこう:2005/05/07(土) 13:42:47
>>160
1名じゃないって。
漏れもテンプレつけたやつには答えないことにするか

165 :名無しさん@そうだ選挙にいこう:2005/05/07(土) 14:07:01
と、また155が言っています。

166 :名無しさん@そうだ選挙にいこう:2005/05/07(土) 14:23:48

まともな奴なら、テンプレなどなくとも
ここのテンプレから「検索ワード」を除いた程度のものは書くし、
検索してからここに来るので検索ワードくらいすぐに書ける。
しかしそういう必要な情報を書けない子がいるからテンプレってもんが出来る。

つまり質問テンプレなんて本来必要ない物なんだが
おバカな子が多く、情報を小出しにされたり環境を聞き返したりしなくちゃならなくなかったり
スレのFAQにある内容を質問してきたり、ググればすぐわかる質問をしてきたりと
そういったことを回避するためだけのもの。

*まともな奴→テンプレ無くてもテンプレと同等の情報を提示する→テンプレが煩わしいとは思わない
*おバカさん→テンプレ無ければ必要な情報も無しに質問する→書くべき事が増えるので「テンプレうざい」と思う

まぁそんなわけで、「テンプレつけたやつには答えない」なんて言ってるおバカさんが
回答をやめたところで、スレ的にはなんらダメージは無いのでお好きなように。


167 :名無しさん@そうだ選挙にいこう:2005/05/07(土) 15:16:45
すみません。質問させてください。
DDE通信使ってExcelのブック内からシート名のリストを
抜き出したいんですが、可能でしょうか?
DDE requestコマンドに適当な項目名つければいけそうな気が
するんですが項目名が不明です、、。

どなたかご存知の方いらっしゃいましたら御教授お願いします。


168 :名無しさん@そうだ選挙にいこう:2005/05/07(土) 16:37:50
質問です。

あるセルに文字が入っていて、その文字が他のシート名と一致してる場合、
数式内でそのセル内の文字を読ませて、そのシートに飛ばすことはできるのでしょうか?

つまり、

1枚目のシートのA1のセルに「成績」という言葉が入っていて、
そのシートとは別に「成績」という名のシートがある場合、
1枚目のシートにある数式で「成績」シートを参照させる時に、
「成績!」という言葉の変わりに「A1!」を使うみたいなことはできるのかなと。。

意味不明だったらすみません。。。

セル内に入っている言葉を「シート名称」として認識させる方法・・・

とでも言えばいいのでしょうか;;

169 :名無しさん@そうだ選挙にいこう:2005/05/07(土) 16:43:21

>>168

>>8

170 :名無しさん@そうだ選挙にいこう:2005/05/07(土) 16:59:28
>>167
たしかにぐぐっても情報がない。
DDEじゃなくて、OLEにすれば?

171 :167:2005/05/07(土) 17:34:57
>>170
うーむ、それが1つの手ですかね。
実はあまりOLE使ったことなかったんで少し敬遠気味でした、、。
少し勉強して挑戦してみます。どうもでした。

172 :名無しさん@そうだ選挙にいこう:2005/05/07(土) 18:14:24
質問です

ユーザーフォームのListBoxをColumnCount3にして作ったのですが、
そのうちの2列目だけをTextAlignをRightにすることはできるでしょうか?
可能であればそのコーディングを教えてもらいたいです(XP、Excel2003)

173 :名無しさん@そうだ選挙にいこう:2005/05/07(土) 18:26:06
できません。
ColumnWidthsとスペースなどで上手く調整してください。

174 :名無しさん@そうだ選挙にいこう:2005/05/07(土) 19:18:50
>>173
回答ありがとうございました

175 :167:2005/05/07(土) 19:23:12
度々すんません。
167ですが、一応自己解決しました。
需要少でしょうが念のため、簡単にご報告。
DDEをtopic="System"で接続して、item="Topics"でDDERequest。
これでいけますた。


176 :名無しさん@そうだ選挙にいこう:2005/05/07(土) 20:23:33
Excell特有なのかOSなどの問題かいまいち判断つきかねるので
こちらでご教授願います。

【1     O S の 種 類    】 WindowsXP
【2 E x c e l の バ ー ジ ョ ン .】 Excel97
【3   V B A が 使 え る か  】 いいえ
【4 Googleでの検索キーワード】 コマンド送信中にエラー
【5 ヘルプでの検索キーワード】
【6 スレのFAQとログを読んだ.】 はい
〜〜〜質問内容〜〜〜
エクセルで作ったあるファイルを開こうとすると、
同名のファイルがすでに開いています。違うフォルダでも同じ名前のファイルは〜と毎回メッセージがでます。
無視(OKをおせば)すれば問題ないのですが、このメッセージが出る前に、ファイルを閉じようとすると、
「プログラムへコマンド送信中にエラーが発生しました」というメッセージがでます。

PC内を検索しても同名のファイルは存在せず、またその問題のファイルをコピーしたファイルを開こうとしても
やはり同じように同名のファイルが開いていますといわれます。
新規につくったファイルではこの問題は起きません。





177 :名無しさん@そうだ選挙にいこう:2005/05/07(土) 20:37:22
>>176
SP当てて、関連付けの確認。

PC使い始めた当初から同じエラーが出てるんじゃないなら
システムの復元やExcel・OS再インストール試してみれ。

178 :名無しさん@そうだ選挙にいこう:2005/05/07(土) 20:50:00
オブジェクト名(CodeName)で下のようにループするんですが、うまくいきません。
なんで?
教えてエロイ人

Sub sample()
Dim ws As Worksheet
For Each ws In Array(Sheet1, Sheet3, Sheet5)
  ws.Range("A:A").NumberFormatLocal = "yyyy/mm/dd"
Next
End Sub

179 :名無しさん@そうだ選挙にいこう:2005/05/07(土) 20:52:07
>>176
例えばこの質問にこんな長い天ぷら要らないって

次スレは
>>28 ベースで簡潔な天ぷらにしたほうがよいと思う

180 :176:2005/05/07(土) 21:05:21
>>177
即レスども。
やっぱりそのくらいしないとだめですかねぇ。

エラーが出るファイルと問題ないファイルがあるので
ファイルになにか問題があるかなとおもってるんですが、
「プログラムにコマンド送信中にエラー」というメッセージがでる場合っていうのはどういうときなんでしょうか。

CPUがいっぱいいっぱいってことはないんですが・・・

181 :名無しさん@そうだ選挙にいこう:2005/05/07(土) 21:15:34
>>178
Dim i As Byte
For i = 1 To 5 Step 2
 Worksheets("Sheet" & i).Range("A:A").NumberFormatLocal = "yyyy/mm/dd"
Next i

ちなみにArrayの使い方はこんな感じで。
Array(Worksheets("Sheet1"), Worksheets("Sheet3"), Worksheets("Sheet5"))
まあ、どっちみちFor Eachのコレクションとしては使えないけど。

182 :名無しさん@そうだ選挙にいこう:2005/05/07(土) 22:42:34
>>166


>>35

183 :名無しさん@そうだ選挙にいこう:2005/05/07(土) 22:44:35
>>182
35は簡素化した方が良いけどテンプレは必要って書いてるね。

184 :名無しさん@そうだ選挙にいこう:2005/05/07(土) 23:11:26
レスが200いかないのに、このスレのログを全然読もうとしないやつらがごろごろしているという状態に脱力感を感じますな。

185 :名無しさん@そうだ選挙にいこう:2005/05/07(土) 23:14:55
>>166の文章って前段と末尾につながりが全くないのは何故?
「そんなわけで」ってどこがどんな訳?


186 :名無しさん@そうだ選挙にいこう:2005/05/08(日) 01:12:54
すいません、エクセルのソルバーって、ifを使った計算式と組み合わせると正しい答えが出ないのでしょうか?
また、制約条件に区間=整数にしたのに変化させるセルに0.167832167916084などという数が入り正しい答えが出ません。
何か設定の仕方が間違っているのでしょうか?

187 :名無しさん@そうだ選挙にいこう:2005/05/08(日) 01:35:52
>>186
if使うと普通は駄目です。

188 :名無しさん@そうだ選挙にいこう:2005/05/08(日) 01:41:33
>>187
そうなんですか、すいません。
区間の方はわかりますでしょうか?

189 :名無しさん@そうだ選挙にいこう:2005/05/08(日) 05:22:35
>>178
wsをworksheet型でなく、variant型で宣言すると良いよ
arrayだけだとデータ型が不明でコンパイルが通らないだけだから
for...eachとarrayを組み合わせるのは何の問題も無いっす

190 :名無しさん@そうだ選挙にいこう:2005/05/08(日) 08:14:55
【1 OSの種類】 Windows XP home edition
【2 Excelのバージョン】 Excel 2000
【3 VBAが使えるか】 はい(初めて一週間程度)
【4 Googleでの検索キーワード】 excel vba 名無し
【5 ヘルプでの検索キーワード】 図の書式設定
【6 スレのFAQとログを読んだ】 このスレは読みました。

オートシェイプのサイズ変更についての質問です。
図の書式設定→サイズで、原型のサイズにリセット(倍率を100%に戻す)
をvbaで記述する方法はありますか?

自動記述で試しても駄目でした。(高さ,幅を直接入力していた)
よろしくお願いします。

191 :名無しさん@そうだ選挙にいこう:2005/05/08(日) 08:21:52
>>190
ScaleWidth
ScaleHeight

現在のサイズを基準に拡大・縮小と、
元のサイズを基準に拡大・縮小が出来る。

詳しくは上記メソッド名でヘルプでも調べな。
引数の詳細や使用例も載ってるから。

192 :名無しさん@そうだ選挙にいこう:2005/05/08(日) 08:25:40
>>191
回答ありがとうございます。
ScaleWidthとScaleHeightは知ってまいたが、認識が間違っていたようです。
家に帰ったらさっそく試してみます。

193 :名無しさん@そうだ選挙にいこう:2005/05/08(日) 08:57:38
>>184
奈に逝ってるんだ?テンプレか?
そんなもの書きたいやつは書けばいいし、書く必要ないと思えば書かなくていい。

>>189
ここのラベルを心配したがお前がいて安心したよ。
漏れはどのくらいで正しい回答があるかみてたよ。





194 :名無しさん@そうだ選挙にいこう:2005/05/08(日) 09:24:43
>>193

195 :名無しさん@そうだ選挙にいこう:2005/05/08(日) 09:40:27
可哀相な子…

196 :名無しさん@そうだ選挙にいこう:2005/05/08(日) 10:01:51
>>188
区間の設定の仕方がおかしいからでない?
やったけどちゃんと整数になったが、、、

197 :名無しさん@そうだ選挙にいこう:2005/05/08(日) 11:03:59
>>189
この例の場合はwsはWorksheet型でないとダメじゃね?
Rangeオブジェクトがメンバになれないから。
だから、この場合はFor Each使うの無理じゃね?

198 :名無しさん@そうだ選挙にいこう:2005/05/08(日) 11:07:46
こんにちは
質問です。
税込値段のリストがあり
それより税抜き価格を出したいのが一つと
その出した税抜き価格を計算式ではなく、数値で他のエクセルファイルに貼り付けを行いたいのですが
よろしくお願いします

199 :名無しさん@そうだ選挙にいこう:2005/05/08(日) 11:30:08
>>198
税込み価格を1.05で割るだけでいいなら初心者杉。
こんな変人集団の2ちゃんねるで聞かずに、入門書を1回通読することをオススメします。
一応答えると、A1に税込価格があるならB1に=A1/1.05と入力。

その他の処理をご希望なら詳しくかいてね。

値の貼り付けは、形式を選択して貼り付けで「値」を選ぶ。

200 :名無しさん@そうだ選挙にいこう:2005/05/08(日) 11:41:55
>>197 ヘルプ嫁
[Array 関数]
配列が格納されたバリアント型 (Variant) の値を返します。

だからVariant型を返す。
Variant型の中でWorksheet Objectが格納されるようだ
ウォッチして型見るとそうなっているよ

201 :名無しさん@そうだ選挙にいこう:2005/05/08(日) 11:43:42
>>199
せめてround()系で整数化したほうがよくね?
てか、せんとあかんやろ。

202 :名無しさん@そうだ選挙にいこう:2005/05/08(日) 11:55:46
>>200
知ってるよ。
だったらウォッチするだけじゃなく、189のコード完成させて実行してみたら?
内部で格納されていようと、Variant型ではRangeオブジェクトをメンバにできない。

203 :名無しさん@そうだ選挙にいこう:2005/05/08(日) 11:58:16
>>201
だから、Round系って言っても、切り上げか切捨てか四捨五入か
どうしたいかがわからないでしょう?
そういう希望をきちんと書かなきゃ。

204 :名無しさん@そうだ選挙にいこう:2005/05/08(日) 12:08:23
>>202
私は200ではないですが、普通にメンバーにできると思いますが・・・
何か勘違いしてませんか?

205 :名無しさん@そうだ選挙にいこう:2005/05/08(日) 12:47:03
>Rnageオブジェクトがメンバになれない
って言ってる時点でどこかおかしくない?たぶんどこかで勘違いしてるのでは?
189のコードを完成させるって、 >>178
Dim ws As Worksheet  を Dim ws As Variant
に変えるだけじゃん。自分は実行してみたの?それで、どこかでエラーでた?


206 :名無しさん@そうだ選挙にいこう:2005/05/08(日) 12:48:45
>>202
もう消したけどできたよ。
Arranyの中はSheets(1)とかSheets("Sheet1")にしたけど。
つうか、RangeオブジェクトではなくSheetsオブジェクトですが、、、

てか、なんか勘違いしてる、おれ?

207 :名無しさん@そうだ選挙にいこう:2005/05/08(日) 12:50:42
>>205
Sheet1とかSheet3とかのままではいけませんが、、、
subの外でSetしてるんだろうけど

208 :178:2005/05/08(日) 12:52:18
>>197
Variant型でいいんだよ。
釣り質問でラベルを調べて申し訳ない。


209 :178:2005/05/08(日) 12:54:11
>>207
オブジェクト名(CodeName)って書いたのだが。

210 :名無しさん@そうだ選挙にいこう:2005/05/08(日) 13:05:32
>>208 ラベルを調べる意味が不明でつが
>>209 ああ,よく読んでませんでつ w

211 :名無しさん@そうだ選挙にいこう:2005/05/08(日) 13:15:49
>>178
なんだこいつ最悪。せいぜい天狗になってろよ

212 :名無しさん@そうだ選挙にいこう:2005/05/08(日) 13:29:46
入力用のシートAに会社などの名称,住所,URL,メールアドレスなどを入力します。
ここでは,ハイパーリンクは設定しません。それで閲覧用シートBに下記のようにハイパーリンクを設定します。
=HyperLink(シートA!URLを記入したセル, シートA!URLを記入したセル)
=HyperLink(CONCATENATE("mailto:","シートA!メールアドレスを記入したセル"), シートA!メールアドレスを記入したセル)
そうした上で,シートBを保護すると,クリックしてもブラウザやメーラーが起動しません。
シートを保護した上でリンクを活かすにはどのようにすればよいのでしょうか?
該当部分だけ保護しないということはしたくないので・・・

213 :名無しさん@そうだ選挙にいこう:2005/05/08(日) 13:37:31
嘘を書いた211が怒ってます

214 :名無しさん@そうだ選挙にいこう:2005/05/08(日) 13:52:12
>>212
セルを選択出来る状態なら、シートを保護しても
ハイパーリンクは動作するでしょ。
セルの選択を許可してないなら、そもそも
リンク上でクリックしても「リンクをクリックしてない」ことになるわけだから
ハイパーリンクが動作しないのは当然なので、
セルの選択を許可して保護すればいい。

215 :名無しさん@そうだ選挙にいこう:2005/05/08(日) 14:36:08
【1 OSの種類 / Excelのバージョン】XP/2002
【2 Googleやヘルプでの検索キーワード】編集 入力 キャレット カーソル
【3 VBAが使えるか】はい

セルに文字列を入力した後、←キーやhomeキーを押すと
通常は選択セルが変わってしまいますが、セル内のカーソル(キャレット)を
移動させるにはどうすれば良いですか?
以前、そういうExcelのシートを使ったことがあるのですが、
入力した側から"編集"になっていたか、"入力"のままカーソル移動が出来たかは
覚えてませんが、F2を押さずとも自由にカーソルを移動できました。

過去ログやグーグルで調べても、セルを選択しただけで入力もしてないのに
"編集"になってしまうような方法しか見つからず、
そのシートは以前勤めてた会社で使ってたものですが、今はその会社に居ないので
そのシート自体を調べることも出来ません。
以前使ったシートの操作性を再現したいので、詳しい方どうか方法を教えてください。


216 :211:2005/05/08(日) 14:42:12
>>213
は?何いってんのあんた?俺は>>197書いた物だけど?
わざわざ質問者のふりしてひっかけの質問する奴が最低と言ってるだけだ
糞くだらねー。そういう奴は自分に酔ってるだけなのが見え見えじゃねーかよ
そういう馬鹿にははっきりお前は馬鹿だっていってやんなきゃわかんねーんだよ
つきあったこっちが恥ずかしい

何が「ラベルを調べて申し訳ない」だ。胸糞わりい
こういう馬鹿がいるからVBAは難しいもんだとか勘違いされんだ
マジで死んだ方がいいんじゃねーのこいつ?
なんの焼くにもたたねー。せいぜいサポートセンターで答えを黙々と答える
ウンコマシーンにでもなるくらいじゃねーの?
余計なことすんじゃねーよ邪魔だから


217 :名無しさん@そうだ選挙にいこう:2005/05/08(日) 14:48:29
>216
オマエ、ウゼー

218 :名無しさん@そうだ選挙にいこう:2005/05/08(日) 14:53:55
>>216
>>197で嘘書いてるじゃん。お前馬鹿じゃねーの?


219 :名無しさん@そうだ選挙にいこう:2005/05/08(日) 15:03:13
>>215
VBAでF2押して操作するとか

220 :215:2005/05/08(日) 15:08:43
>>219
F2を送る方法くらいはわかりますが、
適当なイベントが見あたりません。
Worksheet_SelectionChange
では、入力しなくてもセルを移動しただけで"編集"になってしまうし
Worksheet_Change
では、内容が確定されないとイベントが動かないので遅すぎます。


どのタイミングでF2を送れば良いのでしょうか?

221 :名無しさん@そうだ選挙にいこう:2005/05/08(日) 15:10:47
>>220
Sub Macro1()
ActiveCell.FormulaR1C1 = "12345"
SendKeys "{F2}"
SendKeys "{LEFT}"
SendKeys "{LEFT}"
SendKeys "{LEFT}"
End Sub

{ESC}を最後に送ればいいし。

222 :名無しさん@そうだ選挙にいこう:2005/05/08(日) 15:13:03
>>220
というか、何したいのかが分かりません。
何をしたらF2を行なうかが説明されていないので回答不能

223 :名無しさん@そうだ選挙にいこう:2005/05/08(日) 15:14:05
>>220
セルに入力中は無理じゃないの?

224 :名無しさん@そうだ選挙にいこう:2005/05/08(日) 15:23:25
>>220
セル移動してもセルが空欄だったらF2送らなければいいでしょ

225 :215:2005/05/08(日) 15:43:16
>>221
そういうことじゃないです

>>222
セルに入力開始したら、F2を押さなくても"編集"に切り替わるか
"入力"のままでも、←キーやhomeキーで選択セルではなく
カーソル位置を変更できるようにする方法をさがしてます。

>>220
でも実現してる物があったので。

>>224
それでは何か入力してあるセルを選択しただけで、
入力する必要が無くても"編集"になってしまいます。

226 :215:2005/05/08(日) 15:44:23
9行目>>220>>223に訂正します。

227 :名無しさん@そうだ選挙にいこう:2005/05/08(日) 16:05:39
久々にいい釣りを見せてもらった

反応してた奴もGJだ

228 :名無しさん@そうだ選挙にいこう:2005/05/08(日) 16:08:52
>>225
不完全とおもわれ後は自分で考えろ

Option Explicit
Dim str As String
Dim r As Range
Private Sub Worksheet_Change(ByVal Target As Range)
If str <> r.Text Then
r.Select
SendKeys "{F2}"
End If
End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
str = Selection.Text
Set r = Selection
Cells(1, 1) = str
End Sub


229 :名無しさん@そうだ選挙にいこう:2005/05/08(日) 16:11:57
>>228
したのCells(1,1)=strは削除してくれ
あと、Selectionで複数セルが選択されているとバグルから直せ。

230 :名無しさん@そうだ選挙にいこう:2005/05/08(日) 16:16:10
>>229
selection→activecellでいいようだ
(なんか、意味なさそうだが w)

231 :名無しさん@そうだ選挙にいこう:2005/05/08(日) 18:49:32
★自分で出来ることは自分でやろう(ヘルプ・Googleの検索など)★
【1     O S の 種 類    】 mac9.2
【2 E x c e l の バ ー ジ ョ ン .】 Excel98
【3   V B A が 使 え る か  】 いいえ
【4 Googleでの検索キーワード】 シート内 表張り付け 挿入
【5 ヘルプでの検索キーワード】
【6 スレのFAQとログを読んだ.】 はい
〜〜〜質問内容〜〜〜
ワークシートの上部に、コード一覧表をはりつけたいのですが
そういうことはできますでしょうか。
例としてはたんじゅん家計簿というソフトの上部にある
ようなものなんですが。

検索してもワークシートの挿入しかヒットできないのです。

232 :名無しさん@そうだ選挙にいこう:2005/05/08(日) 18:59:08
>>231
図のリンク貼り付けでヘルプみれ

233 :名無しさん@そうだ選挙にいこう:2005/05/08(日) 19:10:02
>>231
Window枠の固定じゃいかんのか?

234 :名無しさん@そうだ選挙にいこう:2005/05/08(日) 20:01:06
【1 OSの種類 / Excelのバージョン】windows2000/2002
【2 Googleやヘルプでの検索キーワード】エクセル 数式エディタ
【3 VBAが使えるか】はい

質問内容
エクセルにて数式エディタを使って数式を表示しています。
今は、ツールバーの「挿入」⇒「オブジェクト」⇒「Microsoft 数式 3.0」から
使っていますが、頻繁に使う為、ツールバーに表示して使おうとした所、
ツールバーに持っていくことが出来ません。

ワードでは、ツールバーの「ツール」⇒「ユーザー設定」⇒「コマンド」タブの
「分類」の中にある「挿入」を選択すると右側に数式エディタが表示され、それを
ドラッグ&ドロップでツールバーに表示する事が出来ました。

しかし、エクセルで同じ事をしても途中の「分類」の中の「挿入」を選んでも
右側に数式エディタが表示されません。
これは仕様なのでしょうか?

スレ汚し的な質問ですが、よろしくお願い致します。

235 :名無しさん@そうだ選挙にいこう:2005/05/08(日) 20:11:27
【1 OSとExcelのバージョン】 WindowsXP、ExcelXP
【2 VBAが使えますか】 いいえ
【3 Googleやヘルプでの検索キーワード】エクセル グラフ 省略 空白 ギャップ

横軸に年代をとって、途中数年間のブランクがあるばあいに、横からみたら
 〜
 〜
のような省略を入れたいのですがやりかたがわかりません。

236 :名無しさん@そうだ選挙にいこう:2005/05/08(日) 20:33:03
>>235
できなかった気がしまつ。
グラフ二つ作って重ねて加工するだったような希ガス

237 :235:2005/05/08(日) 20:52:31
そうですか。わかりました、ありがとうございました

238 :名無しさん@そうだ選挙にいこう:2005/05/08(日) 21:43:23
水星金星 地球火星木星土星天王星海王星冥王星
扁率000.00340.00590.06490.0980.02290.01710
密度5.435.245.523.931.330.691.271.641.9
自転周期58.65243.020.99731.0260.4140.4440.7180.6716.387

例えばこういったデータがあって、左側の項目を全部並べて縦棒グラフで表示したいのですが
マウスでドラッグをして並べると値があまりにもかけはなれてるのでスゴイ偏ったものになってしまいます。
何か良い方法はありませんか?

それと、グラフの値の上限などを設定したりできますでしょうか?
変な質問かもしれませんが、よいやり方をぜひ教えてくださいm(__)m

239 :名無しさん@そうだ選挙にいこう:2005/05/08(日) 21:44:50
エクセルのを貼り付けたらとんでもない数字になってたんですが
気にしないでくださいm(__)m

240 :238:2005/05/08(日) 21:56:45
【1 OSの種類】 WindowsXP
【2 Excelのバージョン】 Excel2003
【3 VBAが使えるか】 使えない
【6 スレのFAQとログを読んだ】 最初の方を読みました

241 :名無しさん@そうだ選挙にいこう:2005/05/08(日) 22:44:17
>>238
良く分からんが、値の桁が違うデータのときは対数取るのが常識
グラフでもできたんじゃない?

242 :名無しさん@そうだ選挙にいこう:2005/05/08(日) 23:03:28
その対数の撮り方を教えてください
無知ですみませんm(__)m

243 :名無しさん@そうだ選挙にいこう:2005/05/08(日) 23:22:43
【1 OSの種類】 Windows2000
【2 Excelのバージョン】 Excel2003
【3 VBAが使えるか】 あまり使えない
【6 スレのFAQとログを読んだ】 途中まで読みました


A B C D E F G

1 1 ハンカチ5003150000
2 2 布巾500150000
3 AA 420000042000
4 BB 1536700
5 CC 0902050470

こういう表がありまして、
横1,2列は表計算のデータとして、
縦D列(売れた枚数)の合計、
縦E列(売れた金額)の合計としてSUM関数で計算したいのですが、
横3,4,5列はAA,BB,CCという、いらないデータ列なので、
計算には入れたくないのです。毎回売れた品によりAA、BB,CCの位地
は上下に変わるのです。50品ぐらいのデータで最後に、AA,BB,CCがついてきます。
なにか、良い手法があれば、ご指導ください。


244 :名無しさん@そうだ選挙にいこう:2005/05/08(日) 23:23:37
同じ形式のグラフを二つ並べて、お互いの値が干渉しないようにできないでしょうか?
軸を二つとる、など。
しつこくて申し訳ないんですが、できるだけ早く知りたいんです><

245 :>>243 :2005/05/08(日) 23:28:38
すみません、表が変になってしまいました。
A     B     C     D     E     F     G
1     1    ハンカチ 500    3    1500   0
2     2    布巾   500    1500  0     0
3     AA   420    0     0     0    42
4     BB   15     36    7     0     0
5     CC   09     0     20    50    470

246 :>>243:2005/05/08(日) 23:36:40
すみません、表が変になってしまいました。改めて

A     B     C      D    E     F      G
1     1    ハンカチ  500   3    1500    0
2     2    布巾    500   1500  0      0
3     AA    420    0    0     0     42
4     BB    15    36    7     0      0
5     CC    9     0     20    50    470

こういう表がありまして、
横1,2列は表計算のデータとして、
縦D列(売れた枚数)の合計、
縦E列(売れた金額)の合計としてSUM関数で計算したいのですが、
横3,4,5列はAA,BB,CCという、いらないデータ列なので、
計算には入れたくないのです。毎回売れた品によりAA、BB,CCの位地
は上下に変わるのです。50品ぐらいのデータで最後に、AA,BB,CCがついてきます。
なにか、良い手法があれば、ご指導ください。



247 :>>243:2005/05/08(日) 23:38:38
すみません、表が変になってしまいました。改めて

     A      B     C    D    E       F    
1     1    ハンカチ  500   3    1500    0
2     2    布巾    500   1500  0      0
3     AA    420    0    0     0     42
4     BB    15    36    7     0      0
5     CC    9     0     20    50    470

こういう表がありまして、
横1,2列は表計算のデータとして、
縦D列(売れた枚数)の合計、
縦E列(売れた金額)の合計としてSUM関数で計算したいのですが、
横3,4,5列はAA,BB,CCという、いらないデータ列なので、
計算には入れたくないのです。毎回売れた品によりAA、BB,CCの位地
は上下に変わるのです。50品ぐらいのデータで最後に、AA,BB,CCがついてきます。
なにか、良い手法があれば、ご指導ください。

248 :名無しさん@そうだ選挙にいこう:2005/05/09(月) 00:12:53
>>247
つまり、D列は3+1500で1503、
E列は1500+0で1500ってことだよね。

なら配列数式で
{=SUM(IF(ISNUMBER(A1:A5),D1:D5,0))}
とか、D・E列の値が正数値のみなら
=SUMIF(A1:A5,">0",E1:E5)
とか。

あと、関係ないけど
横1,2列 → 1,2行
縦D列 → D列
って書いた方がわかりやすい。

249 :>>247:2005/05/09(月) 00:34:36
>>248
すげーーーー!!!!
ありがとうございますーーー!!!
締め切り近くで、テンパッテいて、
表の書き込み方とか、二重書き込みなどのスレ汚しな私に
良きご指導、本当に、ありがとうございました!!!!
助かりました!!!

250 :名無しさん@そうだ選挙にいこう:2005/05/09(月) 03:08:02
突然のお願いで申しわけございません。
当方はOffice2000でウィンドウズXPです。
私は、教師をしております。

今、少し困っておりまして、こちらで助けていただければなと思って書き込み
させていただきました。
生徒の成績個人票を作成したいと思っております。

エクセルのシートに50名から100名ほどの生徒の成績を入力し、別シートに作った
個人成績表にその成績を反映させたいのです。
ワードに差込み印刷なら今までやった事があります。
でも、ワードだと、グラフとか今までの成績推移とかは作れませんよね。

また、普通にVLOOKUPとかの関数だと、一人分しか反映されませんよね。
出来れば、ボタンを使ってソフトのようにしたいのです。

個人成績表の感じは、名前、クラス、学年、4教科の点数、到達度を表すための
棒グラフ、レーダーグラフ、6回分のテストの点数の一覧、点数推移、
各教科のテストの問題ごとのコメント入力などです。

いきなりの質問です。本当にぶしつけで申しわけございません。
どうぞ宜しくお願いいたします。


251 :名無しさん@そうだ選挙にいこう:2005/05/09(月) 03:38:42

教師ともあろうものが、基本ルール(このスレに限らず>>1-10程度は読む)も守れないとはねぇ

> 出来れば、ボタンを使ってソフトのようにしたいのです。
VBA使えるなら勝手にやれ、使えないなら諦めるか勉強しろ。
VBAの勉強中にどうしてもわからないことがあったらまたここに聞きに来ればいい。

> また、普通にVLOOKUPとかの関数だと、一人分しか反映されませんよね。
"個人"成績表なんだから反映されるのは一人分でいいんじゃないの?

数十人分の成績を表にしたものから、特定個人のデータを
別シートのテンプレート(個人成績表)に当てはめるなら、
入力規則のリストとVLOOKUPでいいじゃん。
又はDGETやINDEX(使い方はヘルプ参照)でもいいけど。



252 :名無しさん@そうだ選挙にいこう:2005/05/09(月) 03:56:40
先ほどは人大杉になってしまい、1−10を読む事が出来ませんでした。
申しわけございません。ご指摘ありがとうございます。

【1 OSの種類】 WindowsXP
【2 Excelのバージョン】 Excel2000
【3 VBAが使えるか】いいえ
【4 Googleでの検索キーワード】
【5 ヘルプでの検索キーワード】
【6 スレのFAQとログを読んだ】 はい
〜〜〜質問内容〜〜〜

VBAは使えるようになりたいと思っています。
結構早く作りたいのです。本当に申しわけございません。

253 :名無しさん@そうだ選挙にいこう:2005/05/09(月) 04:10:08
>>252

>>251の下4行

つーか検索もせずに教えて君ですか…
ゆとり教育の弊害が教師にもでてるのか?

254 :名無しさん@そうだ選挙にいこう:2005/05/09(月) 07:45:34
>>242
グラフを作ります
作ったグラフの数値軸の書式設定、目盛りというところに
対数目盛りというチェックがありませんか?
あったらそれで
なければまたカキコして誰かが答える、と



>>244

>>7 のQ3でどぞ



>>251、253

十分親切に教えてるような気がしないでもないが餅付
読んでてうんざりする
スルーしたら?

255 :名無しさん@そうだ選挙にいこう:2005/05/09(月) 07:55:06
>>254
スルーしたら?

256 :231でつ:2005/05/09(月) 08:10:22
>>232
ありがとうございます!
ネットで図のリンク貼付けで検索し、解決しました!

>>233
上下で幅が違うのでだめだったのです、、

257 :名無しさん@そうだ選挙にいこう:2005/05/09(月) 11:14:25
>>252
> ボタンを使ってソフトのようにしたいのです
ボタンで何をしたいのか解らんが、
単純に考えるなら、入力用の一覧シートから印刷用の個人シートに、VLOOKUP関数で検索するのが一般的だし、
グラフは、予め個人票に作っておけば、VLOOKUPで抽出された個人だけが表示される。
ボタンで全員の個人票を一括印刷するなら、VBAを使ってFor〜Nextで回していくし、
特定の学年やクラスだけを印刷するなら、If〜End Ifで分岐させるし。。

258 :名無しさん@そうだ選挙にいこう:2005/05/09(月) 13:33:12
個人ごとの帳票の印刷考えると、Accessの本一冊かって勉強したほうがいいかも
PC上だけだったらVLOOKUPで十分。ボタンつけたければ[フォーム]のスピンボタンとか、
皆さんが言ってるように入力規則使えばいいと思いますよ。
つーか先生に2ch見てて欲しくないなあ。本当に先生だとしても、名乗らないでもらいたいよ。

259 :名無しさん@そうだ選挙にいこう:2005/05/09(月) 14:01:43
確かに。
Excelでヘルプ読んでもググってもわからないことがあっても、
ここよりまともで頼れるところなんてたくさんある。
教師が「わからない→(ヘルプも読まずググりもせず)→2ch直行」
ってのはなんか悲しい。教師って職業も墜ちたってことかな。

260 :名無しさん@そうだ選挙にいこう:2005/05/10(火) 01:14:07
教師です。
いろいろご返答ありがとうございます。
えっと、>257さんありがとうございます。
> ボタンを使ってソフトのようにしたいのです
ボタンで何をしたいのか解らんが、
単純に考えるなら、入力用の一覧シートから印刷用の個人シートに、VLOOKUP関数で検索するのが一般的だし、
グラフは、予め個人票に作っておけば、VLOOKUPで抽出された個人だけが表示される。
ボタンで全員の個人票を一括印刷するなら、VBAを使ってFor〜Nextで回していくし、
特定の学年やクラスだけを印刷するなら、If〜End Ifで分岐させるし。。


261 :名無しさん@そうだ選挙にいこう:2005/05/10(火) 01:14:39
↑ その通りなのです。一人分ならVLOOKUPで出来ることはわかっています。
しかし、一人分印刷と、一括印刷をしたかったのです。VBAがまだわからなかったので、
おしえていただきたかったのです。調べてみます。自力で。他の方にも
いわれてしまったので。。。すみませんでした。皆さん。お手を煩わせて

262 :名無しさん@そうだ選挙にいこう:2005/05/10(火) 01:15:01
あの・・・少し言わせてください。2chってだめなとこなんですか?
「ここよりまともで頼れるところなんてたくさんある。」
確かに、検索でしらべてみたところ、いろいろHPはありまして、参考になりそうなところ
もありました。
あえてここに書いてみたのは、ふと思い立ってです。
エクセル質問版なるものがあったので、書いてみたのです。
気に食わなかった方はもうしわけございません。
しかし・・・すこし、残念でもあります。
教師は2chに来てはいけませんか?少々教師という職業を買いかぶりすぎです。
教師の立場でいわせてください。教師は神ですか?教師は聖職者ですか?
子どもに教える立場の人間はすばらしいものしか見ては、聞いては、知っては
いけませんか?


263 :名無しさん@そうだ選挙にいこう:2005/05/10(火) 01:15:42
教師も人間です。もっというなら、善しか知らない人間は教師になるべきではありません。
善も悪も、いいことも悪い事も知っているからこそ、子どもに伝えるべきことが
判断できると思います。私はそう信じています。
大学出たばかりで、社会人経験のない、世間をしらない人間が医者だったら、真摯にその医者の
ことばが胸にのこるでしょうか?
私は否です。苦労して、苦労して、努力して、困難も喜びも知っているからこそ、人のこころを
理解できるのだと思っています。
確かに、だめな教師もいます。ニュースを見ると多くいます。授業中にカッターナイフを出したり、
女生徒に手を出したり・・・


264 :名無しさん@そうだ選挙にいこう:2005/05/10(火) 01:16:52
でも私はそんな教師と一緒にしないで頂きたい。また、教師に幻滅しないで頂きたい。
その様なニュースの裏には必死になっている教師もおります。
私自身、今までの苦労談や、失敗談をまた成功して嬉しかった喜びなどを生徒に話し、
子どもたちが「心の成長」をもしてもらいたいとおもっています。
私はこのような気持ちで教師をしております。

たくさん話してしまい申しわけありません。しかし、本音です。
このように書くと、またたたかれると思いますが、少しでも気持ちを理解していただけたら、
嬉しく思います。


265 :名無しさん@そうだ選挙にいこう:2005/05/10(火) 01:17:13
それに2chは教師が見てはいけないような掲示板ですか?私はそうはおもいません。
たしかに、目を覆いたくなるようなものもありますが、すばらしいものもあると思います。
見たことない、あったこともない人間同士が、このようなネットを通じ、気持ちを通じ合わせ、
一つ一つの言葉に一喜一憂する。
日本で有数の規模の2chはそんなすばらしい掲示板だと思います。いいところも悪いところも
あわせた上でです。
私は2ch好きですよ。

大変長々とすみませんでした。

266 :名無しさん@そうだ選挙にいこう:2005/05/10(火) 01:39:19
2ch見るのは構わないが
「わからない→(ヘルプも読まずググりもせず)→2ch直行」
はダメ過ぎだろ。職業関係なく"人"として。
まあ、2chには人以下の外道も多いけど。

267 :名無しさん@そうだ選挙にいこう:2005/05/10(火) 02:03:12
いきなり2chはだめなのでしょうか?
多くの人間がいる巨大掲示板だからこそ知恵や知識の共有がはかれるのではないのでしょうか。
ぐぐるってほかのHPと2chはなにがちがうのでしょうか。
2ch直行が人としていけないのなら、2chは何のためにあるのですか?



268 :名無しさん@そうだ選挙にいこう:2005/05/10(火) 02:04:07
2chが悪と言ってるわけではないよ。
正直、こういう青い人に子供を任せたくないね。
君はおとなしく教科書の事だけを教えてて下さい。
スレ違い失礼。

269 :名無しさん@そうだ選挙にいこう:2005/05/10(火) 02:35:55
>>267
2chがダメなんじゃなくて掲示板直行がダメ

> ぐぐるってほかのHPと2chはなにがちがうのでしょうか。
2chは掲示板、場合によっては努力せず答えを得ることが出来る。
というか、ヘルプやGoogleで調べずに掲示板に来る奴は
努力せず答えを得ることを望む教えて君。

Googleでの検索は、他人の知識を利用するとはいえ、
目的の答えにたどり着くために、検索キーワードをいろいろ試したり
いろんなページを読みあさったりという努力をしなくてはならない。
掲示板に質問を書いて放置しておくのとは大違い。

わからないことが有ったときに、(解決できるかどうかは別として)
自分で解決しようとしないような人間には、人にものを教える立場に立って欲しくないね。

>2chは何のためにあるのですか?
多様性があるので一概には言えないが、少なくともこのこのスレを含めた2chの質問スレ、
2ch外の質問掲示板は、自力でどうにもならなかったとき、
そして周り人に聞けない(聞く相手が居ない)寂しい人のための最期の砦。

おまえが教壇に立って、一生懸命説明してるときに、
「先生、説明はいいから答えだけ簡潔に教えてください」って言われたらどうよ?
これが問題ないと感じるならマジで教師やめるべき。
そしておまえがやってることはこれと同じようなこと。
極一点の答えを与えたところで、そいつの知識は養われないし、
「極一点の答え」を求めるなら、有料で要望取りのExcelブックを仕上げてくれるところもある。
ここはそういう依頼請負所ではなく、やる気の有る奴の手助けしてやる場だから。


と、言うまでもないことを熱く語ったりしてみる。

270 :名無しさん@そうだ選挙にいこう:2005/05/10(火) 03:04:42
なるほど、とてもよいご意見ありがとうございます。
私がかんがえてもいなかったご意見を下さりありがとうございます。

それに、とても長い時間を私にかけてくださりありがとうございます。


271 :名無しさん@そうだ選挙にいこう:2005/05/10(火) 04:29:22
【1 OSの種類】 WindowsXP sp2
【2 Excelのバージョン】 Excel2003
【3 VBAが使えるか】パソコンが使えるかと聞かれたときと同じぐらい困ります
【4 Googleでの検索キーワード】 excel メーラー 操作 マクロ
【5 ヘルプでの検索キーワード】
【6 スレのFAQとログを読んだ】 はい

エクセルのマクロでメーラーを起動し、メーラーを操作できますか?
例えば、エクセルのマクロによってメーラーを起動し、
マクロによってメール本文に「こんにちは、ぶなしめじさん」
と入力するとかです。
上の例の場合は、マクロに何を記入すればいいですか?

272 :名無しさん@そうだ選挙にいこう:2005/05/10(火) 05:00:00
>>271
スレ違い。

メーラーを操作するためにはどうすればいいかなんてのは、
そのメーラーのスレか作者にでも聞け。
「どうすればいいか」までわかった上で、それをVBAで実現する方法がわからなかったら
またここに聞きに来い。

273 :名無しさん@そうだ選挙にいこう:2005/05/10(火) 05:24:14
そうギスギスしなさんな。

274 :名無しさん@そうだ選挙にいこう:2005/05/10(火) 06:01:12
>>273>>273

275 :名無しさん@そうだ選挙にいこう:2005/05/10(火) 06:44:21
気のせいかVBA教えたがり君に頭が壊れてるのがひとり混じってるような…

276 :名無しさん@そうだ選挙にいこう:2005/05/10(火) 08:18:17

Do
 If MsgBox("それは>>275のことですね", vbYesNo, ">>275") = vbYes Then
  Exit Do
 Else
  MsgBox "嘘はだめですよ♪"
 End If
Loop


277 :名無しさん@そうだ選挙にいこう:2005/05/10(火) 20:57:09
>>276

>>273
ちょっと餅穴


278 :名無しさん@そうだ選挙にいこう:2005/05/10(火) 21:30:54
>>271

メーラー(アウトルックエクスプレス)を起動させるだけなら

Sub macro1()
Dim apli As Variant
apli = Shell("C:\Program Files\Outlook Express\msimn.exe", vbNormalFocus)
End Sub

あとは自分で少し考えてから、また聞いてね

279 :名無しさん@そうだ選挙にいこう:2005/05/10(火) 21:41:30
Excelを使っているのですが、セルに「1/3」等の/を入れた分数を入力すると、勝手に日付になってしまいます。
これはどうやって直せばいいのでしょうか?

280 :名無しさん@そうだ選挙にいこう:2005/05/10(火) 21:49:26
>>279
・「'1/3」
・「="1/3"」
・表示形式「文字列」→「1/3」

281 :名無しさん@そうだ選挙にいこう:2005/05/10(火) 22:11:20
質問させてもらいます。
グラフでx軸を平方根目盛りにしたいんですが、
エクセルで平方根目盛りでグラフは描けるでしょうか?
対数目盛りでの方法は知っています。

ご存知の方ご教授よろしくお願いします。

282 :名無しさん@そうだ選挙にいこう:2005/05/10(火) 22:33:27
>>279
分数は、予めセルの書式設定で表示形式を分数にしてから入力する。

>>280
それだと日付や文字列になっちゃって分数にならないよ。

283 :名無しさん@そうだ選挙にいこう:2005/05/10(火) 22:35:52
計算できる必要があるとは書いてないな

284 :名無しさん@そうだ選挙にいこう:2005/05/10(火) 22:45:26
すみません質問です。
B5サイズで作った表をA4サイズにしたい時は、
手動で列幅&行幅を変更するしかないですか?


285 :名無しさん@そうだ選挙にいこう:2005/05/10(火) 22:50:54
実は>>280の3つの例はどれも日付として扱われ、計算できるわけだが。

286 :名無しさん@そうだ選挙にいこう:2005/05/10(火) 22:52:26
>>284
普通に印刷設定で拡大してやればいいじゃん
ファイル > ページ設定 > 拡大/縮小

プレビュー見ながらの方がいいかもな。
あとは用紙合わせにしてもいいし。

287 :名無しさん@そうだ選挙にいこう:2005/05/10(火) 22:52:50
>>285
をいをい・・・w

288 :名無しさん@そうだ選挙にいこう:2005/05/10(火) 22:53:44
>>284

ページ設定で用紙サイズをA4にして「次のページ数〜」を横1×縦1

ただし、この場合は線も太くなるし、文字も大きくなる

罫線の太さも文字の大きさも同じで行きたいのなら
手動しかない

289 :名無しさん@そうだ選挙にいこう:2005/05/10(火) 22:55:41
>>281
できないと思う。
別セルに平方根を計算して、それを目盛としてグラフを書く。
目盛を表示させないようにして、文字列のオブジェクトを一個ずつ置いていくとか。

290 :284:2005/05/10(火) 23:04:21
>>286,288
ありがとうございます!
勉強になりました。

291 :名無しさん@そうだ選挙にいこう:2005/05/11(水) 00:05:24
XPでエクセルの中にメールアドレス貼り付けて、アウトルックを起動していない
状態でそのリンクをクリックすると新規メール作成ウィンドウが現れると
思いますが、これをやるとスタートメニューの中の電子メールという
ショートカットのリンク先がおかしくなってしまうのですが、
これを直すことはできないのでしょうか?

292 :初心者:2005/05/11(水) 00:06:10
フィルタでセルの絞込みで、<空白セル>を選択しようとしています。
だけど、<空白セル>という項目がリストにでてきません。
だけど、空白セルは、確かにその列にあるんです。
その空白セルには、関数等も使用していません。
どうしたら、<空白セル>をリストに表示させて、
絞込みできるんでしょうか?
すいません。教えてください。
excel2003です。

293 :名無しさん@そうだ選挙にいこう:2005/05/11(水) 00:12:38
>>292
普通に出るけど
下の方に隠れてないかスクロールしてみそ

294 :名無しさん@そうだ選挙にいこう:2005/05/11(水) 01:57:35
すみません、質問です。
「何も値の入っていない」「行」を
削除して上に詰める、というようなことは
可能でしょうか?
例えば、sheet1をアンケートの回答用紙にして
a、bなどの記号で答えを入力していく。
sheet2はIF関数などで、sheet1の回答を具体化した
ものが表示されるようにしておく。aなら「はい」、bなら
「いいえ」というように。
とばして答えなかった質問のところは「""」、つまり
なにも値が入らないようにしたとして、その行が最終的に
削除されて上につめられる、というような作業なのですが。
いかがでしょうか?

295 :名無しさん@そうだ選挙にいこう:2005/05/11(水) 02:09:14
>>294
関数の返してる値を隣の列に書き出し
作業列を作って連番を振る
書き出した列でソート
空の部分を一括削除
連番列でソートして不要な列を削除

VBA使えるなら
「対象が空欄ならその行を削除」をForで回すだけ。


296 :名無しさん@そうだ選挙にいこう:2005/05/11(水) 11:51:56

【1 OSの種類 / Excelのバージョン】XPsp1 2002sp3 WSH5.6
【2 Googleやヘルプでの検索キーワード】Popup WScript Windows Script Host VBA 閉じる 時間
【3 VBAが使えるか】はい

Web上で紹介されてるWSHのPopupメソッドをVBAから使う方法で
Sub Sample2()
 Dim WSH As Object
 Set WSH = CreateObject("WScript.Shell")
 WSH.Popup "1秒後、自動的に閉じます", 1, "Title", vbInformation
 Set WSH = Nothing
End Sub
と待機秒数である第二引数を1にすれば1秒後に閉じるはずなのですが、
実際に閉じるまでには3〜5秒掛かります。
しかしvbsで同じ事をやるときちんと1秒後にポップアップが閉じます。
VBA上でもきちんと指定秒数経過で閉じるにはどうすればいいですか?
VBAから.vbsを呼べってのは無しで御願いします。


297 :名無しさん@そうだ選挙にいこう:2005/05/11(水) 11:53:24
無理なんじゃないかな

298 :名無しさん@そうだ選挙にいこう:2005/05/11(水) 12:03:14
わからない質問に無理と答えるのは簡単

299 :名無しさん@そうだ選挙にいこう:2005/05/11(水) 15:13:18
>>296
VBAから.vbsを呼べ。







ちょっと言ってみたかっただけ。

300 :名無しさん@そうだ選挙にいこう:2005/05/11(水) 15:34:57
セルそれぞれN、E、S、S、・・・・N、Wという記号を入力します。
その後、一番多く入力されている記号を表示させたい場合に使う関数はありますでしょうか?

301 :名無しさん@そうだ選挙にいこう:2005/05/11(水) 16:23:01
>>300
COUNTIFを組み合わせるとか。
数値だったらMODEで一発なんだけどな。

302 :名無しさん@そうだ選挙にいこう:2005/05/11(水) 17:25:02
行き詰ったので質問させてください。

口で説明するのが難しいのですが

212
111
321

211
222
321

というように(実際は30*30くらい)文字列が並んでいて、
上と下を比較し、両方1なら

 1 
   
  1

というように表示したり、両方1になるセルの数を出す方法はありませんでしょうか。
ANDやEXACTを使えばいいのかなとも思ったのですが、綺麗にまとめるとなると
難しくて・・・。ご指導願います。

303 :名無しさん@そうだ選挙にいこう:2005/05/11(水) 17:43:41
マクロで、以下の様な物を組みました。
Sub Macro1()
'
' Macro1 Macro
' マクロ記録日 : 2005/5/11 ユーザー名 : hoge
'

'
Rows("1:2").Select
Selection.PrintOut Copies:=1, Collate:=True
Rows("2:2").Select
Selection.Delete Shift:=xlUp
End Sub

1,2行目を選択してその部分だけ印刷、印刷後に2行目を削除。以下繰り返し。と言う事をやろうと思い組んでみました。
ところが、普通に印刷している時は問題なかったのですが、このマクロを実行すると、プリンタの予約キューに入るだけで印刷されません。
一度その状態になると、他の物(関係ないシンプルテキストなど)もキューに入り、印刷出来ないです。
プリンタが問題なのか、マクロが問題なのか分からない状態なので、アドバイスをくださいませ。
よろしくお願いします。

304 :名無しさん@そうだ選挙にいこう:2005/05/11(水) 18:13:25
>>302
普通にIFとCOUNTIFでやればいいんじゃないの

単に1を求めるのかANDを取りたいのかで、条件式の中身は変わってくるとは思うが

305 :名無しさん@そうだ選挙にいこう:2005/05/11(水) 20:01:06
セルの書式設定の表示形式で数値の後ろ2桁を強制的に削るのは可能でしょうか?
もし判るかたいれば教えてください。

306 :名無しさん@そうだ選挙にいこう:2005/05/11(水) 21:41:21
>>305
通常の方法ではたぶん無理。

強攻策で行くなら、
表示形式>ユーザー定義>#[Ctrl+J]##   注:[]は入力しない、Ctrlを押しながらJを入力
配置>折り返して全体を表示 にチェック
セルの高さを調節する。
以上で、セル内で2行に分割し一部を隠すことが可能です。
表示形式での設定であり、中身はモチロン後ろ2桁が生きています。


307 :名無しさん@そうだ選挙にいこう:2005/05/11(水) 21:51:17
1/100をかけて小数点以下を非表示にする、ってのはダメなん?

308 :名無しさん@そうだ選挙にいこう:2005/05/11(水) 22:15:10
>>302
上の行列がA1:C3で、下がA4:C6だとしたら、
A7に =IF(AND(A1=1,A4=1),1,0) と入れて
C9までコピーしたらいいだけと違うの?

309 :302:2005/05/11(水) 22:37:01
>304&308
返信遅れてすみません。お陰様でなんとかできました。空白のセルもあったことで
手こずっていましたが、IF○○="", を使って空白表示もなんとかなりました。

急いでいたためテンプレに沿わない質問の仕方になってしまい申し訳ありませんでした。
それにも拘わらずご指導いただき、本当にありがとうございました。

310 :305:2005/05/12(木) 09:27:36
306さん307さんありがとうございます。

データ量が多いのと他の処理の関係でマクロや関数などで再計算させると
もの凄く時間が掛かってしまう為、何かスッキリしたやり方がないかなと
思い相談させてもらいました。
う〜ん、表示形式での通常方法では無いですか。。。なんかあっても良さそうに
思うんですけどね。

311 :名無しさん@そうだ選挙にいこう:2005/05/12(木) 12:36:31
仕事でマクロ使った資料作成していますが
何をやっているのかわかりません。

はなにをやっているのでしょうか?
お助けを・・・・・・教えて下さい。
会社契約のところに質問したらマクロ説明は対象外といわれた・・・
うう・・・・・

Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
ActiveWindow.ScrollRow = 1
ActiveWindow.LargeScroll ToRight:=14
Range("DJ4").Select
ActiveWindow.FreezePanes = True
ActiveWindow.SmallScroll ToRight:=4
ActiveWindow.LargeScroll ToRight:=1
ActiveWindow.FreezePanes = False
ActiveWindow.SmallScroll ToRight:=3
ActiveWindow.FreezePanes = True
ActiveWindow.SmallScroll ToRight:=5
Range("DO4").Select
End Sub


312 :名無しさん@そうだ選挙にいこう:2005/05/12(木) 13:22:22
【1 OSの種類 / Excelのバージョン】 winXP ・2002
【2 Googleやヘルプでの検索キーワード】選出 選択 並べ替え
【3 VBAが使えるか】いいえ

名簿の行に女性なら2、男性なら1と番号がついているのですが
男性だけ、女性だけ選び出して名簿を作るにはどうすればいいのでしょうか?


313 :名無しさん@そうだ選挙にいこう:2005/05/12(木) 13:28:43
>>312
オートフィルタで絞ればいいじゃん。
別シートに移したいなら絞った状態でコピペ

314 :名無しさん@そうだ選挙にいこう:2005/05/12(木) 13:44:28
出来ました!ありがとうございます。

315 :名無しさん@そうだ選挙にいこう:2005/05/12(木) 14:29:19
セル○○に値があるときのみセル△△の計算を実行する
ということは可能ですか?

例えば、A1〜A10まで数値が入っていて
B列が Bn = An-A(n-1) (nとかn-1は行番号)の場合
B11は-A10になってしまいますよね。
これを、A11に何か入力した時のみB11を計算し
そうでない場合は空欄になるようにしたいのです。

316 :315:2005/05/12(木) 14:36:43
失礼しました。慌てていました。

EXCEL2002
WinXP Pro SP2
VBAは使えません。

317 :名無しさん@そうだ選挙にいこう:2005/05/12(木) 14:41:36
>>315
=IF(ISBLANK(A11),"",A11-A10)

318 :315:2005/05/12(木) 15:37:26
>>317
ありがとうございました。
 ノシ

319 :名無しさん@そうだ選挙にいこう:2005/05/12(木) 17:46:07
>>311
実行してみたら判るという考えは頭に思い浮かばないのかな?

320 :名無しさん@そうだ選挙にいこう:2005/05/12(木) 17:55:05
質問です。

特定のセルを選択できないようにするにはどうすれば良いでしょうか?
(例えばセルB3から→キーを押すとセルC3をとばしてセルD3を選択するなど)

教えて下さい。よろしくお願い致します。

321 :名無しさん@そうだ選挙にいこう:2005/05/12(木) 17:58:57
初めまして、シートに貼ってある画像なのですが、ビットマップなのでJPEGに変更したいのですが、何かいい方法ありますでしょうか?
画像を切り取りペイントでJPEGにしてるのですが、なぜか貼り付けるとJPEGの方がサイズが大きくなってしまいます、、、
元はJEPGの方が小さいはずなのに、、、なぜでしょう??

322 :名無しさん@そうだ選挙にいこう:2005/05/12(木) 22:21:03
単純なことかもしれませんが・・・

適度に表なんかを作って印刷プレビューでチェックし、また標準画面に戻ると
点線で印刷範囲が示されますが
横線(下)は出るのですが縦線(右側)がでないのです
初めてなったのですが、設定の問題なのでしょうか
それとも良くあること?

323 :名無しさん@そうだ選挙にいこう:2005/05/12(木) 23:16:36
>>322
> 適度に表なんか
適度に?
表なんか?

表以外でもなるのか?
つか、印刷したらどうなるんだ?

324 :名無しさん@そうだ選挙にいこう:2005/05/12(木) 23:48:37
>>322
重なってるだけじゃない?

325 :名無しさん@そうだ選挙にいこう:2005/05/12(木) 23:50:20
>>323
作っているのが罫線を引いた表形式なので。
言葉が悪かったです。
印刷したらちゃんと出るには出るので問題はないのですが
列の幅調整をする時にそれを目安に調整しているので不便といえば不便なので
行側の点線部分は出ているのに

326 :名無しさん@そうだ選挙にいこう:2005/05/12(木) 23:51:55
>>324
いや、1行目2行目の部分はタイトル部分でそこの部分は罫線自体引っ張ってないので
それはないです

327 :名無しさん@そうだ選挙にいこう:2005/05/13(金) 02:54:13
>>321
jpgをそのまま貼り付けるときに、付加情報をEXCELがつけちゃう。
bmp形式のファイルを メニュー→図の挿入によって貼り付ける事が一番用量が小さい(とおもう。)

328 :名無しさん@そうだ選挙にいこう:2005/05/13(金) 02:57:19
マクロを使用しないものでは、
1 プロパティ→ロックにチェックを入れ、
2 シートの保護をする。
が簡単です。

329 :328:2005/05/13(金) 02:58:25
番号つけるの忘れてました。ごめん、320へ。
>>320
マクロを使用しないものでは、
1 プロパティ→ロックにチェックを入れ、
2 シートの保護をする。
が簡単です。

330 :名無しさん@そうだ選挙にいこう:2005/05/13(金) 10:59:07
質問です。
シート1 名称:「成績」
シート2 名称:「結果」
とし、
シート2のA1セルに「成績」という文字列が入っているとします。
このとき、シート2のB1セルの数式の中で、シート1の「成績」に存在するZ1セルを参照したい場合、
シート2のB1の数式に、=!成績Z1 とするのではなく、
A1セルに「成績」という文字列があることを利用して、これをシート名称として読ませて参照することは可能でしょうか?

つまり、シート2のB1セルの数式内に、=!(シート2のA1セルの名称)Z1
というような感じにしたいのです。

意味不明でしたら申し訳ありません。。
INDIRECTを使っても、シート名称としては認識させることができなかったので。。


331 :名無しさん@そうだ選挙にいこう:2005/05/13(金) 11:10:46
>>330
INDIRECTで出来るよ。
出来ないんだとしたら使い方間違ってるだけ。
ヘルプをよく読んでもう一度やってみな。

ちなみに数式(関数)は半角で入力しなくちゃダメだからね。

332 :名無しさん@そうだ選挙にいこう:2005/05/13(金) 11:35:57
お返事ありがとうございます。
もう一度やり直しています。
シート1を成績という名称として定義し、参照できるか試しています。
=INDIRECT($A$1)!Z1
これだとできないのですねぇ。。。どうやるんだろう@@;

>>330の!の位置が違っていました。。訂正します。

333 :名無しさん@そうだ選挙にいこう:2005/05/13(金) 11:40:13
>>332
だ〜か〜ら〜、ヘルプ読めって

334 :名無しさん@そうだ選挙にいこう:2005/05/13(金) 11:51:51
読んでます。。でも出来ないんです。。。
ヘルプは同一シート内でのことしかやってないし。。。;;



335 :名無しさん@そうだ選挙にいこう:2005/05/13(金) 12:03:32
>>334
参照と実数を同時に使う場合はヘルプでどういう風に記述されてる?
今回は「$A$1」が参照で「Z1」が実数だ。
参照と実数を同時に使う方法が分かってれば、
同一シートか別シートかなんて関係ない。

336 :名無しさん@そうだ選挙にいこう:2005/05/13(金) 12:15:43
素直に教えてあげりゃぁいいのに。

337 :名無しさん@そうだ選挙にいこう:2005/05/13(金) 12:24:42
と言いながら自分も教えてあげない336に萌え

338 :名無しさん@そうだ選挙にいこう:2005/05/13(金) 12:46:57
なんでヘルプに書いている数式はそのままで
要素だけを書き換えるって作業が出来ない子がいるんだろう。

とりあえず簡潔に言えば↓
=INDIRECT($A$1&"!Z1")


応用としてこっちが出来ないってなら話は分かるけど
・行のみ相対参照
=INDIRECT($A$1&"!Z"&ROW())

・行列ともに相対参照
=INDIRECT(ADDRESS(ROW(),COLUMN()+24,1,1,$A$1))


339 :名無しさん@そうだ選挙にいこう:2005/05/13(金) 13:04:01
これもゆとり教育の弊害かねぇ
定型的な処理は速くなっても、応用ってもんが出来ない奴が増えてる
人間は応用が出来るから時として機械以上の仕事がこなせるわけで
定型処理じゃどんなに早くなっても機械にはかなわないんだから
応用が出来ない人間は機械以下の存在だよ

340 :名無しさん@そうだ選挙にいこう:2005/05/13(金) 13:08:14
できました。。
ありがとうございます。
私にはこんなの難しいよ。。なんせ中3だし。。関係ないかぁ。
でもよかった、ありがとうございました!

応用として書いていただいた2つ、練習で今から調べてやってみます。

341 :名無しさん@そうだ選挙にいこう:2005/05/13(金) 16:49:33
エクセルBVAのことなのですが、
検索に使用する[*]や[?]のような任意の文字を使用することができるのでしょうか?
具体的にしたいことが、

If Worksheets(1).Cells(1,1) = "*" & 変数 & "*" Then
            ・
            ・
            ・
のように変数を挟んで[*],[?]などを使いたいのですがどのようにすればいいのでしょうか?
宜しくお願いします

342 :名無しさん@そうだ選挙にいこう:2005/05/13(金) 17:00:09
>>341
ヘルプでLike演算子調べてみ?

343 :名無しさん@そうだ選挙にいこう:2005/05/13(金) 17:04:17
>>341
等号演算子を使った場合は、ワールドカードは使えません。
ワールドカードが使いたければLike演算子を使ってください。

344 :名無しさん@そうだ選挙にいこう:2005/05/13(金) 17:09:16
@ A Bと丸付きの数字をドラッグで連番入力したいのですが
やってもCと続かず再び@からはじまります。

やり方を教えてください

345 :名無しさん@そうだ選挙にいこう:2005/05/13(金) 17:16:12
>>344
オプション > ユーザー設定リスト > リストの項目
@
A
B
C
とSまで入力していき「追加」ボタンをクリック。
知ってるだろうけど○囲み数字はSまでだから。

346 :名無しさん@そうだ選挙にいこう:2005/05/13(金) 17:18:31
>>342,343
ありがとうございます♪ばっちりできました。

347 :名無しさん@そうだ選挙にいこう:2005/05/13(金) 23:26:41
>343
つ、釣られないぞ。

348 :名無しさん@そうだ選挙にいこう:2005/05/13(金) 23:48:22
>>347

349 :名無しさん@そうだ選挙にいこう:2005/05/14(土) 01:45:00
すみませんこんな夜中に。ずっとわからないで居るのですが、
たとえばシフト作成とかで10−23時と入力してあるデータを
別なシートで10時から23時までマスを作成しその時間まで塗りつぶすみたいなことやりたいのですが
どうしてもできません。ようは10-23時まで線を自動で引きたいのです。いろいろ聞いたらマクロでできると聞いたんですが、
これまたさっぱりでどうしてよいかわかりません。どなたかご教授してください。

350 :名無しさん@そうだ選挙にいこう:2005/05/14(土) 02:08:57
それぐらいの勉強はしろよ

351 :名無しさん@そうだ選挙にいこう:2005/05/14(土) 02:41:04
普通にグラフ使えばいいような気もするが、
とりあえず数式でやるなら
C1:Z1に0〜23を入力、A2に10、B2に23、C2に
=IF(AND(C$1>=$A2,C$1<$B2),"■","")
と入力してオートフィルでZ2までコピー。
フォントによ因るが列幅は2くらいにしとけ。

コレを元に別シートに作るなら参照部分にシート名を加えればいいし
「10、23」という数値ではなく「10-23時」という文字列から
数値を取り出したいなら、文字列操作関数を使ったり、
数式を入れるセルの文字色を変えてみたりしろ。
30分単位、15分単位の処理も出来るし
VBA(マクロ)でもこれと同じ考え方でセルの塗りつぶしが出来る。

ここは「ぜんぜんわからないので、俺の変わりにコード書け」ってスレではないので
あとは自分でかんがれ。
がんばる気がないなら上記の数式そのままで満足しとけ。

352 :kaz:2005/05/14(土) 04:52:48
やってみます!!!ありがとうございます

353 :名無しさん@そうだ選挙にいこう:2005/05/14(土) 09:20:12
ログを読もうとしない奴が多いみたいなんで

★自分で出来ることは自分でやろう(ヘルプ・Googleの検索など)★
【1     O S の 種 類    】 Windows***
【2 E x c e l の バ ー ジ ョ ン .】 Excel***
【3   V B A が 使 え る か  】 はい・いいえ
【4 Googleでの検索キーワード】
【5 ヘルプでの検索キーワード】
【6 スレのFAQとログを読んだ.】 はい・いいえ
〜〜〜質問内容〜〜〜



354 :名無しさん@そうだ選挙にいこう:2005/05/14(土) 11:24:06
大会の集計を作ってるんですが、エクセルあんまり使ったことなくて
頭抱えています。

コースが1から7まであって、左に名前、タイム、着順のセルがあり
競技終了後タイムを1.45.32な感じで入力していって、最後に
早い順からコース・名前・タイムを並び替えて、着順を表示させたいのですが、
単純に並び替えをしても着順が表示できないし、行き詰ってしまいました。

VBAを使えばって考えましたけど、さらに使ったことありません

最終的には、着順ごとに表彰状も印刷できるようにしたいのですが
どなたか、ご指導お願いします。

ヒントでも結構です

355 :名無しさん@そうだ選挙にいこう:2005/05/14(土) 11:51:17
>>354
ヒント
着順表示:RANK、mm.ss.00
表彰状印刷:For Next、Worksheets.PrintOut

これ以上の回答が欲しかったら、一つ上のレスでもよんでみろ

356 :名無しさん@そうだ選挙にいこう:2005/05/14(土) 12:59:43
シートAにその日の日付とデータを記入して、シートBにそのデータを蓄積して月のデータ表に
したいのですが、データの引用の仕方がいまいちわかりません。

具体的にはシートAに書かれた日付から、シートBで記入される列を自動的に変えていきたいのですが
どのような関数を使えばよいでしょうか?

357 :名無しさん@そうだ選挙にいこう:2005/05/14(土) 13:08:12
>>356
ワークシート関数は、基本的に関数を入力したセルに値を返すだけのものなので
あなたの想定しているようなことは出来ません。
VBAで処理してください。

358 :名無しさん@そうだ選挙にいこう:2005/05/14(土) 14:10:22
助けてください。エクセル2003の起動時のトラブルです。
エクセル起動時に、personal.xlsが起動しません。
表示、非表示ではなく実際に開いていないのです。

C:\Program Files\Microsoft Office\Office11\XLSTART

のフォルダ内に、ファイルはあるのですが・・・。

そのせいか、手動でpersonal.xlsを開いても、
アイコンにマクロ登録していたのが使えません。

エクセルを再インストールしても直りませんでした。


359 :名無しさん@そうだ選挙にいこう:2005/05/14(土) 14:17:04
>>358
Program Files内にpersonal.xlsがあるってことはWin9x/Me系か?
Excel2003はWindows2000以降のOSじゃないとちゃんと動かないよ。
動作対象外の環境で使ってるなら、不都合が起きてもどうにも出来ないな。

http://www.microsoft.com/japan/office/excel/prodinfo/sysreq.mspx
> Excel 2003 のシステム要件
> オペレーティング システム   Microsoft Windows 2000 (Service Pack 3 : SP3) 以降、または Windows XP 以降

360 :名無しさん@そうだ選挙にいこう:2005/05/14(土) 14:25:42
>>359
返事ありがとうございます。
OSはXP SP1です。

C:\Documents and Settings\<ユーザー名>\Application Data\Microsoft\Excel\XLSTART

の中に移動しても同じ結果でした。

説明不足ですいません。



361 :名無しさん@そうだ選挙にいこう:2005/05/14(土) 14:33:56
XPならそもそもProgram Files内にpersonal.xlsがある時点でおかしい
XLSTARTフォルダはあっても普通は空のはず。
とりあえずOSも再インストールしてみな。

362 :名無しさん@そうだ選挙にいこう:2005/05/14(土) 15:45:19
お前ら他人事だと思って簡単に言うよな

OSのインストールなんて生涯しない人が大半なのに

363 :名無しさん@そうだ選挙にいこう:2005/05/14(土) 15:51:36
うちのデバック機なんて月5〜10回はOS再インストールしてますよ。
メイン機も2ヶ月に1回くらいは再インストールしてるし。

364 :名無しさん@そうだ選挙にいこう:2005/05/14(土) 18:28:30
質問です

エクセルでE1のセルに=C1+D1の値を入れたいと思って、

=INDIRECT(ADDRESS(ROW(),COLUMN()-2,1,1,"シート1"))+INDIRECT(ADDRESS(ROW(),COLUMN-1,1,1,"シート1"))

という関数を入れて値を出そうとしたのですが、値は出るのですが、エラーが出てしまいます。
どこが間違ってるのでしょうか?

365 :名無しさん@そうだ選挙にいこう:2005/05/14(土) 18:39:51
>>364
=INDIRECT(ADDRESS(ROW(),COLUMN()-2,1,1,"シート1"))+INDIRECT(ADDRESS(ROW(),COLUMN-1,1,1,"シート1"))
                                                           ↓
=INDIRECT(ADDRESS(ROW(),COLUMN()-2,1,1,"シート1"))+INDIRECT(ADDRESS(ROW(),COLUMN()-1,1,1,"シート1"))

凡ミスだね。ちなみに同一シート内なら
=INDIRECT(ADDRESS(ROW(),COLUMN()-2))+INDIRECT(ADDRESS(ROW(),COLUMN()-1))
でもいける。

366 :名無しさん@そうだ選挙にいこう:2005/05/14(土) 19:42:41
excelを使って、割り算したいのですが
10/3....3まり1のようなふうに答えをだしたいです。
Mod関数を使うと1しかでてこないので、3も同時に
だすような関数はありますでしょうか?

367 :名無しさん@そうだ選挙にいこう:2005/05/14(土) 20:35:15
>>365
どうもありがとうございます。

368 :名無しさん@そうだ選挙にいこう:2005/05/14(土) 22:48:57
>>366
Mod関数のヘルプや関連項目をよく読む。

369 :名無しさん@そうだ選挙にいこう:2005/05/15(日) 02:24:14
すいません、質問させてください。
あるセルの(あるいは、セルの中の一部の文字列でもいいです)「文字間の間隔」を、
設定するにはどうすればよいのでしょうか?

よろしくお願いいたします。

370 :名無しさん@そうだ選挙にいこう:2005/05/15(日) 02:42:02
>>369
Excelはワープロではなく表計算ソフトなので、任意で文字間を変えることは出来ません。

代用策
・均等割付
・スペース、あるいは非表示色の文字を入れる
 (文字間用の文字サイズだけを調整することで、かなり細かく設定出来る)
・文字間の違うフォントを使う


371 :名無しさん@そうだ選挙にいこう:2005/05/15(日) 10:43:44
>>369

2002以降なら

セルの書式設定→配置→横位置→均等割り付けのインデントで調整

372 :名無しさん@そうだ選挙にいこう:2005/05/15(日) 11:18:05
>>362
マジ?俺今までに、2kを50回は再インスコしているよ。

373 :名無しさん@そうだ選挙にいこう:2005/05/15(日) 11:33:04
↑異常

374 :名無しさん@そうだ選挙にいこう:2005/05/15(日) 11:43:16
月1くらいのペースで再インスコするのは正常の範囲。
もちろん数年間入れっぱなしなのも正常の範囲。
PCの使い方なんて多種多様。
自分の使い方と違うからといって他人を異常と判断する奴は異常

375 :名無しさん@そうだ選挙にいこう:2005/05/15(日) 14:16:32
月1で再インストールって・・なんか問題があるんじゃねーのか?
そんなに不安定ならOS変えれば?

376 :名無しさん@そうだ選挙にいこう:2005/05/15(日) 14:21:49
不安定だから再インストールする
再インストールは不安定になった時しか必要ない

そういう発想自体がナンセンスですよ

377 :名無しさん@そうだ選挙にいこう:2005/05/15(日) 14:48:30
んん?それじゃなんにもなくても毎月再インストールするのか?
安定しているのに無駄な作業をする方がナンセンス

再インストールが趣味なのか?

378 :名無しさん@そうだ選挙にいこう:2005/05/15(日) 14:52:24
わかってないなぁw

379 :名無しさん@そうだ選挙にいこう:2005/05/15(日) 15:09:59
普段はテンプレにうるさい奴が多い割に、スレ違いどころか板違いには寛容なのか?
再インスコの話してる数名はOS板に「再インストールの頻度」スレでも立てて、思う存分語り合ってくれや。

380 :名無しさん@そうだ選挙にいこう:2005/05/15(日) 15:11:01
日曜ですから

381 :名無しさん@そうだ選挙にいこう:2005/05/15(日) 15:15:58
>379
可哀相な奴だな

382 :名無しさん@そうだ選挙にいこう:2005/05/15(日) 15:57:43
不安定でもなんでもいいんだけどさ、何度もOSを入れ直す人というのは、
結局のところ趣味でやってるというのが本当のところだよな。

趣味を追求するのが悪い事とは言わないが、本来1度行えば永久に不要である(筈の)
インストール作業なんかに労力を割き過ぎるというのは、道具の使い方としては
下手糞と言わざるを得ないな。

383 :名無しさん@そうだ選挙にいこう:2005/05/15(日) 21:09:01
> 労力を割き過ぎる
OSのインストールって労力使うのか?
難しく考えてるのは素人だけだろ。
あんなもん、インストール自体はCDが勝手にやってくれるし、
環境の復元はバッチやスクリプト回すだけ。

寝る前にCDセットして、朝起きたらスクリプト実行、
仕事から帰れば、既に再インストールは完了している。
こんなもんに労力も糞もねーよ。

OSの再インストールごときに労力だのなんだの言い出すほど振り回されるのは
道具の使い方としては下手糞と言わざるを得ないな。


384 :名無し:2005/05/15(日) 21:09:15
エクセル2000でオートフィルしたとき式は下方に出てくれるのですが答えがドラッグした位置と同じ答えになってしまいます
セルをダブクリして数式に戻してからエンターを押せば正しい答えには戻ってくれるのですが・・・

385 :名無しさん@そうだ選挙にいこう:2005/05/15(日) 21:24:47
>>384
質問は日本語でどうぞ

386 :名無しさん@そうだ選挙にいこう:2005/05/15(日) 21:38:37
>仕事から帰れば、既に再インストールは完了している。

毎月そんなことしなきゃいけないような環境で使ってるとすれば
道具の使い方としては下手糞と言わざるを得ないな。


387 :名無しさん@そうだ選挙にいこう:2005/05/15(日) 21:43:53
>>386


388 :名無しさん@そうだ選挙にいこう:2005/05/15(日) 21:46:34
>>384
ツール>オプション>計算方法タブ>計算方法
ここの選択が「手動」になってないかい? だったら、「自動」を選択。

389 :名無しさん@そうだ選挙にいこう:2005/05/15(日) 22:14:33
>>388
なるへそ。
あなたはエスパーですか?

390 :名無し:2005/05/15(日) 22:14:34
>>388
ありがとうございました
おかげで直りました

391 :名無しさん@そうだ選挙にいこう:2005/05/15(日) 23:02:39
難しいとかそういう問題じゃないんだよな

現実にインストール作業なんかしなくても済んでいる人が何十万人といる中で、
あえて何度も作業をするというのは、好きこのんでやってるとしか思えないという事なのだな

確かに不具合を解決する為にOSの再インストールを迫られる場合もあるだろうが、本来それは
OSやソフトを組んだ人間が万全を期していれば起こらなかった筈の問題で、ユーザーがわざわざ
骨を折って解決する筋合いの事じゃないんだよな

ユーザーの立場としては、まずは現状の環境で解決策を探す事、それが無理だったら、次は
同じ問題を起こさないよう気を付ける事が、本来向けるべき努力の方向じゃないだろうか

392 :名無しさん@そうだ選挙にいこう:2005/05/15(日) 23:24:55
> ユーザーがわざわざ骨を折って
再インストールごときで骨を折るのは無能だから

> ユーザーの立場としては、まずは現状の環境で解決策を探す事、それが無理だったら、次は
> 同じ問題を起こさないよう気を付ける事が、本来向けるべき努力の方向じゃないだろうか

そういうことは、ちゃんとしたOS使ってる奴だけに言ってくれ。
Windowsにその理論は通らないよ。


393 :名無しさん@そうだ選挙にいこう:2005/05/15(日) 23:59:40
だからWindoiwsが糞なのになんでユーザーがその糞OSの尻ぬぐいをしてるんだって話だろ

一度入れたOSを再度入れ直すなんて無駄な作業をユーザーに強いる方がおかしいし、
ユーザーがそんな無駄に付き合ってやる筋合いは無い

それは再インストールが1分で終わろうが一瞬で終わろうが同じだよ

394 :名無しさん@そうだ選挙にいこう:2005/05/16(月) 00:05:36
Windoiws

395 :名無しさん@そうだ選挙にいこう:2005/05/16(月) 00:13:34
XPにしてから3年半たつが一度も再インストールせずに快適に
使えているが、それが大半の状況ではないのかね。
9.xのときは最低年一回再インストールしていたが。普段は、
レジストリバックアップをこまめにして、調子悪くなるたびに
書き戻していたけど、、、

396 :名無しさん@そうだ選挙にいこう:2005/05/16(月) 00:13:42
言い負かされて話題転換か(w
しかもWindoiws

397 :名無しさん@そうだ選挙にいこう:2005/05/16(月) 00:38:46
391→393だろ?
別に話題転換はしてないんじゃないか?

Windoiwsはともかく

398 :名無しさん@そうだ選挙にいこう:2005/05/16(月) 06:08:55
今5人のNBA選手のその日の成績をデータベース化しています。
選手ごとに5枚のシートを使って得点、リバウンド数、アシスト数などを毎試合データにしているのですが、
別のシートに得点別、アシスト別、などに分けたランキングを作りたいんです。

得点で言えば、5人の毎試合の得点の中から上位20位とかで抽出してランキングを作りたいのですが方法が分かりません。
範囲内(この場合5人の選手それぞれの毎試合の得点)の数から上位20位だけ取り出してランキングを作れるような式はありませんか?
出来ればその得点だけでなく得点者も並列してランキングにしたいんです。

例を挙げれば、

1. A   56点
2. A   50点
3. B   49点
4. A   45点
5. C   43点
6. E   42点
      ・
      ・  
      ・
みたいな感じにしたいんです。A〜Eは選手名です。アドバイスお願いします。

399 :名無しさん@そうだ選挙にいこう:2005/05/16(月) 06:55:57
>>398
「別のシート」に作業枠を設けて、5枚のシートの内容を書き出すなら
数式だけで出来るけど、それをやりたくないならVBAで処理した方が楽かな。
一応定義参照と配列式使えば書き出し無しでも数式のみで出来そうだけど。

とりあえず「上位20位だけ取り出してランキングを作れるような式」は
=LARGE(A:A,ROW())
こんなのとか。但し名前も必要だから、RANK関数で順位書き出して、
VLOOKUPで引っ張った方がいいね。B列に名前、C列に得点なら
A1=RANK(C1,C:C)
でデータ範囲行までフィルコピーし、
D1=1、E1=VLOOKUP(D1,A$1:C$100,2,0)、F1=VLOOKUP(D1,A$1:C$100,3,0)
で20行までフィルコピー。
これでD〜F列に君が挙げた例通りの表が完成する。
逆にランキングシートへの書き出しでLARGE関数使えばいい。

元データがどういう風になってるのか分からないからこれ以上のアドバイスは難しいな。

400 :名無しさん@そうだ選挙にいこう:2005/05/16(月) 08:23:24
>>399
かなり参考になりました!
それでやってみます。感謝します。

401 :名無しさん@そうだ選挙にいこう:2005/05/16(月) 08:58:14
過去ログ探したのですがうまく見つからないので・・・
例えば90(単位は分)と表示しているセルを1:30とか1.30とか
つまり1時間30分と示すことが出来る表示形式とか関数というものは存在するのでしょうか

90+60+40=190(分)→3時間10分、というような感じで

うまく伝わらないかもしれなくて申し訳ないですが・・・
Excelha2002です

402 :名無しさん@そうだ選挙にいこう:2005/05/16(月) 09:13:03
>>401
=TEXT(A1/1440,"h:mm")

Excelのシリアル値では24時間が1です。
つまり整数を時間に変換するなら1/24、
分に変換するなら1/(24*60)。つまり1/1440ですよ。

403 :名無しさん@そうだ選挙にいこう:2005/05/16(月) 09:25:42
合計が24時間を超えたら使えないじゃないですか

駄目ですよこんなの

404 :名無しさん@そうだ選挙にいこう:2005/05/16(月) 09:35:12
>>403
=TEXT(A1/1440,"[h]:mm")

ちょっとは調べろこのやろー


とか言いながら、
ちなみに
=TEXT(A1,"[m]")
で25:00を1500(分)に変換出来る。
なんてことまで教えちゃう俺はお人好し。

405 :名無しさん@そうだ選挙にいこう:2005/05/16(月) 09:40:14
403は俺ではないわけだが

406 :名無しさん@そうだ選挙にいこう:2005/05/16(月) 09:41:10
>405
なんかかんけーあるの?

407 :名無しさん@そうだ選挙にいこう:2005/05/16(月) 10:34:11
うん

408 :名無しさん@そうだ選挙にいこう:2005/05/16(月) 10:42:22
404の書き込みは403が"俺"だろうと誰だろうとあまり関係ないわけで

409 :名無しさん@そうだ選挙にいこう:2005/05/16(月) 10:43:49
うそぴょん

410 :名無しさん@そうだ選挙にいこう:2005/05/16(月) 10:44:20

【1 OSの種類】 winxp
【2 Excelのバージョン】 2002
【3 VBAが使えるか】 使えません
【4 Googleやヘルプでの検索キーワード】 EXCEL 関数 空白、0を返さない
【5 ヘルプでの検索キーワード】 空白、=、参照
【6 スレのFAQとログを読んだ.】 FAQは読みましたがログは少し
〜〜〜質問内容〜〜〜
シートを越えて、=でリンクさせているのですが、
seet1で、A1が空欄の場合リンク先のseet2のA1で0と表示されるのを
空白に見せかける方法はありますか?

411 :名無しさん@そうだ選挙にいこう:2005/05/16(月) 11:05:45
>>410
IF ISBLANK ""

412 :名無しさん@そうだ選挙にいこう:2005/05/16(月) 11:10:58
>>410
すべてのセルで0が消えてもいいなら、
ツール→オプション→ウィンドウオプション
で「ゼロ値」のチェックをはずす。

特定のセルだけで空白にしたいならIFをつかう。

413 :名無しさん@そうだ選挙にいこう:2005/05/16(月) 11:12:47
>>410
もしsheet1のA1が「""(何もないの意味)」だったら、""を表示。それ以外の場合はsheet1のA1を表示。

IF関数を調べてみましょう。

414 :410:2005/05/16(月) 11:36:08
ありがとうございました。

IF(Sheet2!B3=""," ","?")
偽の場合にナニを入れればいいのか解らないですが、
これで少し探ってみます。

415 :名無しさん@そうだ選挙にいこう:2005/05/16(月) 11:46:42
=IF(ISBLANK(Sheet1!A1),"",Sheet1!A1)

416 :名無しさん@そうだ選挙にいこう:2005/05/16(月) 18:01:47
【1 OSの種類】 winxp
【2 Excelのバージョン】 2002
【3 VBAが使えるか】 使える
【4 Googleやヘルプでの検索キーワード】 EXCEL マクロ 保存
【5 ヘルプでの検索キーワード】 マクロ Personal
【6 スレのFAQとログを読んだ.】 FAQは読みましたがログは少し

〜〜〜質問内容〜〜〜
あるマクロを作ったのでこれを保存します。マクロはメニューバーの自作マクロ という
ボタンから実行できるようになっています。 このエクセルのファイル名を macro.xls とします。
続いて、このmacro.xls を立ち上げて マクロを実行後、結果を out.csv に書き出し
ます。しかし、次に macro.xls を立ち上げると メニューバーも文字とマクロのリンクが外れて
いるのです。


Personal.xls に記録しろ、物の本に書いてあるのですが、 この名前がプロジェクトブラウザ
に存在しないのです

何か間違えていますか?





417 :名無しさん@そうだ選挙にいこう:2005/05/16(月) 20:22:47
まだ記録してないんだから当然だな

418 :名無しさん@そうだ選挙にいこう:2005/05/16(月) 20:38:48
excelで日をまたいだ時間を計算する場合、例えば12/31 22:00から1/1 20:00まで何時間かを計算する
場合はシリアル値を使った計算方法しかないのでしょうか?

419 :名無しさん@そうだ選挙にいこう:2005/05/16(月) 20:54:38
>>416
次の二つの方法がある。
1) メニューバーではなく、macro.xlsのシートの中にボタンを作って
 そのボタンにマクロを登録する。こうすればmacro.xlsを他人の
 PCで使ってもマクロが使える。
 もちろんマクロはmacro.xlsに記載する必要がある。
2) 他人がまったく使わず自分だけで使うマクロなら、parsonal.xls
 にマクロを書く。マクロの自動記録を一回やれば自然にできますよ。

420 :名無しさん@そうだ選挙にいこう:2005/05/16(月) 21:18:37
>>402
ありがとうございます〜
出来ました〜助かりました〜

421 :名無しさん@そうだ選挙にいこう:2005/05/16(月) 21:48:56
>>418
いろいろな方法がある。が、シリアル値を使えば楽だと思う。
なお、「12/31 22:00から1/1 20:00」などの場合は本当に減っているのか(マイナスの時間)、
実は翌年で増えているのかなどの処理を考える必要がある。

422 :名無しさん@そうだ選挙にいこう:2005/05/16(月) 23:27:12
時間計算するためのシリアル値なんでつ
とにかくシリア値にすれば道は開けるぞよ

423 :名無しさん@そうだ選挙にいこう:2005/05/17(火) 00:07:19
【1 OSの種類】 WindowsXP
【2 Excelのバージョン】 Excel2000
【3 VBAが使えるか】 いいえ
【4 Googleでの検索キーワード】 excel 対数近似 最小二乗法
【5 ヘルプでの検索キーワード】 対数近似
【6 スレのFAQとログを読んだ】 はい
〜〜〜質問内容〜〜〜
Excelの対数近似曲線の補間法って最小二乗法ですか?
もし違うのなら何で補間してるのでしょうか?
よろしくお願いします。

424 :名無しさん@そうだ選挙にいこう:2005/05/17(火) 02:10:29
>>423
補間法というより、回帰法というべき?思うんだが・・・きっとそうだよ。
y=a logx+ b を
 ↓
Y=a X +b と置き変えて一次式とし、最小自乗法により係数a・bを求める。
元の式に戻して、相関関数を取っている。
の手順だとオモ。数学センスないけどね・・・>ヂブン。



425 :名無しさん@そうだ選挙にいこう:2005/05/17(火) 06:29:14
1507

707

425

333

333

318

305

253

こういうデータをつかうとき、間の空セルを詰めたいんですが

426 :名無しさん@そうだ選挙にいこう:2005/05/17(火) 06:39:13
>>425
For
If
Cells().Value = ""
Rows().Delete

はい、あとはがんばってね。

427 :名無しさん@そうだ選挙にいこう:2005/05/17(火) 06:42:59
なにそれマクロかなんかですか

428 :名無しさん@そうだ選挙にいこう:2005/05/17(火) 06:44:06
要するに、もし空白セルなら消すということを繰り返すプログラムでしょ

そりゃわかるが、もっと簡便な方法ないの?
なんでプログラム一々かかないといけんのですか

429 :名無しさん@そうだ選挙にいこう:2005/05/17(火) 07:11:54
てめー番号昇順で詰められた
ざまーみろやったー

430 :名無しさん@そうだ選挙にいこう:2005/05/17(火) 07:18:08
>>429
それは「データを詰める」とは違いますが、なにか?
「詰める」のではなく順番が狂ってもいいから空白を無くしたいだけなら最初からそうかきましょうね。


431 :名無しさん@そうだ選挙にいこう:2005/05/17(火) 07:18:38
>>425
1:全部選択
2:[編集]-[ジャンプ]-[セル選択]→「空白セル」
3:納豆に入れるネギをきざむ
4:[編集]-[削除]

これでいけるお

432 :名無しさん@そうだ選挙にいこう:2005/05/17(火) 07:20:49
単純ソートをするだけのことで、数十分も悩んだ425に萌え

433 :名無しさん@そうだ選挙にいこう:2005/05/17(火) 07:29:17
>428
あの〜、マクロって面倒な処理を簡単にするためにあるんですけどぉ

434 :名無しさん@そうだ選挙にいこう:2005/05/17(火) 07:41:17
429かあいい

435 :名無しさん@そうだ選挙にいこう:2005/05/17(火) 08:08:40
>>431

神キターーーーーーーー


有難い

436 :名無しさん@そうだ選挙にいこう:2005/05/17(火) 08:21:05
順番気にしないならソートの方が楽じゃね?
なぜソートで問題ないのに>>431で喜ぶのか不思議

437 :名無しさん@そうだ選挙にいこう:2005/05/17(火) 08:24:03
わーい神が教えてくれたわしょーい


438 :名無しさん@そうだ選挙にいこう:2005/05/17(火) 08:52:27
































439 :名無しさん@そうだ選挙にいこう:2005/05/17(火) 12:03:55
>>426より
>>429や  >>431が手間がかからないことだけは確かだな

己の読解力の低さを誇る>>430に萌

440 :名無しさん@そうだ選挙にいこう:2005/05/17(火) 12:14:03
>439
かわいそうなやつだな

441 :名無しさん@そうだ選挙にいこう:2005/05/17(火) 12:37:25
426じゃないけど試してみた

>>426
マクロ記述16秒、実行1秒以下、計約17秒
Sub hoge()
For i = 1 To Cells(65536, 1).End(xlUp).Row
If Cells(i, 1).Value = "" Then Cells(i, 1).Delete
Next i
End Sub

>>492
列範囲選択後、ツールアイコンから操作=1秒
同じくメニューから操作=3秒

>>431
1〜4までで21秒

>>492がダントツで簡単なのは間違いないが
順を維持するなら、漏れの場合マクロの方が速い
使い捨てマクロなんで変数宣言しろって突っ込みは無しの方向で

442 :名無しさん@そうだ選挙にいこう:2005/05/17(火) 12:40:36
>>441
ねぎを刻む時間が難しいよな
俺は入れても入れなくてもいい派なので
>>431はもうすこし短縮可能な希ガス

443 :名無しさん@そうだ選挙にいこう:2005/05/17(火) 12:54:53
右クリックメニューをカスタマイズしたいのですが
どこで設定できるんでしょうか?

444 :名無しさん@そうだ選挙にいこう:2005/05/17(火) 13:07:58
>>443
VBAで
詳しくはヘルプ参照

445 :名無しさん@そうだ選挙にいこう:2005/05/17(火) 13:15:05
>>444
レスありがとうございます
以前にカスタマイズしたことがありツール
バーメニューから設定できたと思うんですが。
右クリックメニューにグラフウィザードボタン
を追加したいと思いまして。
MSのオンラインヘルプを見ても見当たらないので
よろしくお願いします。

446 :名無しさん@そうだ選挙にいこう:2005/05/17(火) 13:23:24

(´-`).。oO( Excelのバージョンは何なんだろう )

447 :445:2005/05/17(火) 13:26:39
>>446
2000です

448 :名無しさん@そうだ選挙にいこう:2005/05/17(火) 14:13:53
時間の入力でたとえば5:00と表示したいのですが
いちいち:を入力する際にシフトを押すと時間がかかります。
もっと効率的な時間の入力方法ってありますか?

よろしくお願いします。

449 :名無しさん@そうだ選挙にいこう:2005/05/17(火) 14:21:17
>>448
変換用の列を1列作るか、マクロで変換

450 :名無しさん@そうだ選挙にいこう:2005/05/17(火) 14:24:35
>>448
なぜShiftを押す必要が?

451 :名無しさん@そうだ選挙にいこう:2005/05/17(火) 14:36:21
うちのパソコンはシフトをおさないと@と出るんです。。。

452 :名無しさん@そうだ選挙にいこう:2005/05/17(火) 14:37:11
>>442
じゃあこれでどう?
1:選択する
2:キムチと納豆を混ぜる
3:イミディエイトウィンドウに「Selection.Specialcells(xlCellTypeBlanks).Delete」

>>447
CommandBars("Cell").Controls.Add msoControlButton, 436
かな?元に戻すには
CommandBars("Cell").Reset

453 :名無しさん@そうだ選挙にいこう:2005/05/17(火) 14:39:53
>>452
正解は「卵を割り入れる」でつ

454 :名無しさん@そうだ選挙にいこう:2005/05/17(火) 14:41:01
>>451
大量に入力するんだったら、「5q00」とか「6q30」みたいに、「:」の代わりに入力がめんどくさくない
文字を入力しておいて、最後に全部選択して、[編集]-[置換]で「q」を「:」に置き換えとかは?

455 :名無しさん@そうだ選挙にいこう:2005/05/17(火) 14:42:45
>>453
(・c_・`)ソッカー

456 :名無しさん@そうだ選挙にいこう:2005/05/17(火) 14:51:29
複数種類がある飲み物の杯数表を作りたいのですが
シート1が履歴表 シート2が打ち込み表としてあります。
毎日データを更新し、1週間の履歴がシート1に
残るようにしたいのですが、どうやればいいのでしょうか。

詳しいかた、宜しくお願いします。

457 :名無しさん@そうだ選挙にいこう:2005/05/17(火) 15:11:26
>>448
オートコンプリートに「..」と入れると「:」になるよう登録。
テンキーの「.」を二回押すと勝手に変換してくれる。
時間入力がたくさんある場合、この方法だとテンキーだけで処理出来るので早いと思います。

458 :名無しさん@そうだ選挙にいこう:2005/05/17(火) 16:30:54
>>457
質問者じゃないけど感謝!
これ賢い!!

459 :398:2005/05/17(火) 18:47:36
>>398で質問した者ですが、>>399さんのおかげでランキング作ることが出来ました。ありがとうございます。
1列目にRANK関数で順位を、2列目にVLOOKUPで名前を、3列目にLARGE関数で得点を羅列したのですが、
ひとつ問題が出てきて、全く同じ得点の場合にVLOOKUPが昇順に名前を優先してしまうせいか、同じ名前が続いてしまうんです。

VLOOKUP用に別シートにこんな感じで羅列してるんですが

38点 A
47点 A
22点 C
35点 B
47点 C   (A〜Cは選手名)

ランキングでは

1. 47点 A
1. 47点 A

となって47点をとったもう片方のCの名前が出せません。
どうすれば同じ得点があった場合にそのそれぞれの名前をVLOOKUPで出せるか教えていただけませんか?

460 :名無しさん@そうだ選挙にいこう:2005/05/17(火) 18:55:28
>>457
ありがとう。でも、ここでいうオ−トコンプリ−トに登録って
どこの話? エクセルにそんな項目はないし、ATOKとかのIMEの
話?

461 :名無しさん@そうだ選挙にいこう:2005/05/17(火) 18:58:24
>>460
[ツール]-[オートコレクト]で登録できるお

462 :名無しさん@そうだ選挙にいこう:2005/05/17(火) 18:58:43
>>460
氏ねばいいと思うよ

463 :質問 ◆y7XYmaFpQA :2005/05/17(火) 19:56:09
すいません。質問です。
「ある」か「無い」かだけを判定する単純な構文というのはあるんでしょうか。

例えば
A     B     C
1 1は? 
5     7は? 
10    13は? 
15    20は? 
20    28は? 

とセルに入力されていて、Cの列に「ある」「ない」を
ダーっと表示するには、C列にはどう入力すればいいのでしょう。
「COUNTIF」と「IF」を組み合わせて判定していたのですが
複雑になってきたので、もっと単純な構文は無いかと思いたって質問しました。
わかるかた、よろしくお願いします。

464 :名無しさん@そうだ選挙にいこう:2005/05/17(火) 20:01:45
>>463
「ある」と「ない」の基準が判らないので、式なんてたてられませんが。
上の例ではC列に何が返ればいいのでしょう?
判断基準とともに例示してください。

465 :名無しさん@そうだ選挙にいこう:2005/05/17(火) 20:04:37
セルの中にファイルの名前を売って、そこをクリックすれば
マイピクチャに保存している画像を開くようにしたいんだけど
こんなことって可能ですか?

466 :名無しさん@そうだ選挙にいこう:2005/05/17(火) 20:06:16
>>464
言葉足らずですいません。
B列にある数字がA列にあるかどうかをC列に返したいのです。
C1は、B1の数字がA列全体の中にあるかどうか
C2は、B2の数字がA列全体の中にあるかどうか・・・
という感じです。

C列が下のように表示されるようにしたいんです。

A     B     C
1      1    ある
5     7    ない
10    18    ない
15    20   ある
20    28   ない

467 :名無しさん@そうだ選挙にいこう:2005/05/17(火) 20:14:46
>>465
ファイルの名前を打って、
そこにカーソル合わせて「挿入→ハイパーリンク」
で、「参照」を押して表示したい画像ファイルを選べばOK.

468 :名無しさん@そうだ選挙にいこう:2005/05/17(火) 20:16:30
>>467
ありがとう。やってみます。

469 :名無しさん@そうだ選挙にいこう:2005/05/17(火) 20:17:22
>>466
C1=IF(COUNTIF($A$1:$A$5,B1)=0,"ない","ある")
下までオートフィル
範囲 $A$1:$A$5 の所は任意で。

470 :463 ◆y7XYmaFpQA :2005/05/17(火) 20:21:12
>>469
さっそくの回答ありがとうございますー!
ですが、今自分がやっている判定方法がまさにそれなんです・・・
参照先が別ファイルになっているせいか、
参照先ファイルを閉じた途端に
COUNTIFの結果が「#value!」になってしまうんです。
countifを使わない方法があれば・・・と思って質問してみたんですが
何かありませんでしょうか?

471 :名無しさん@そうだ選挙にいこう:2005/05/17(火) 20:35:02
463よ、>>1は読んだか?
・質問する人は可能な限り具体的に書いてね。
・情報は小出しにせず、きちんと書いてね。

>参照先ファイルを閉じた途端に COUNTIFの結果が「#value!」に
当方再現できず。問題なし。
他ブックの参照範囲をどんな風に記述しているか、晒してみたら。
式を書き込んでいるファイルのアドレスも合わせて。

472 :459:2005/05/17(火) 20:53:38
失礼しました。出来ました!
データ用の別シートに
A列に「B1+COUNTIF(D1:D1,D1)-1」
B列に「rank(C1,D1:D5)」
を加えて、
ランキングの得点の部分もVLOOKUPで引っ張りました。
入りくちを教えてくださった>>399さん感謝します!

473 :457:2005/05/17(火) 22:17:31
>>460
>>461さんの言うとおり「オートコレクト」でしたorz スマソ。
外出中に携帯で書き込んでたので、そばにエクセルが無かった
ため、うろ覚えで書いておりました。
「オートコンプリート」って、IEの検索履歴を自動表示する奴ですね。
エロサイト検索してるのが奥さんにばれてしまうという機能ww

474 :名無しさん@そうだ選挙にいこう:2005/05/18(水) 01:27:07
エクセルは自分で調べるより知ってる奴にきくのが一番なんだよ
そういうわけで、2chでもこういうスレはとくに有意義であるから
住人は誇りに思ってもらいたい


                                      学長

475 :名無しさん@そうだ選挙にいこう:2005/05/18(水) 01:51:34
まぁExcelに限らずにだけどね。
でもあんまり簡単な質問や
環境を書かずに質問する奴、条件を後出しする奴はどこに逝っても嫌われる。
最低限コレ↓くらいの情報は書こうぜ。

Sub test()
 MsgBox Application.OperatingSystem & vbCrLf & "Excel" & Application.Version
End Sub

476 :名無しさん@そうだ選挙にいこう:2005/05/18(水) 02:37:39
エクセルをやっててひとつ思うこと。

「あ、こんな式出来ないかな?」
「あ、こんな方法ないかな?」
「あ、もしかしたらこんなこと出来るんじゃないか?」

エクセルで出来なかった試しがない。
奥、深すぎ。

477 :名無しさん@そうだ選挙にいこう:2005/05/18(水) 02:38:57
あ、俺の発想が浅すぎ、とも言える。

478 :名無しさん@そうだ選挙にいこう:2005/05/18(水) 07:35:09
すみません。
質問させて下さい。
excelで、セルに入力してある数字にボタン一発で決まった数を足す事は出来るでしょうか?
寸法書きしている数字全部にそれぞれ14ミリづつ足したいのです。


479 :名無しさん@そうだ選挙にいこう:2005/05/18(水) 07:54:28
>>478
適当なボタン作って
ActiveCell.Value = ActiveCell.Value + 14
を登録する。
ボタンを押したときアクティブだったセルに+14

でも
> 寸法書きしている数字全部に
というならその全てに+14するマクロ使った方がいいね。
Dim RngObj As Range
For Each RngObj In 範囲
RngObj.Value = RngObj.Value + 14
Next RngObj
とか。
ActiveSheet.UsedRangeを指定して
If IsNumeric(RngObj.Value) Thenとしてもいいけど
その辺は条件がわからないので自分で判断して。

480 :名無しさん@そうだ選挙にいこう:2005/05/18(水) 11:37:54
ツール⇒分析ツール⇒ヒストグラム
でデータ区間を省略すると自動で140分割されますが
この140を変えることはできるのでしょうか?
どなたか分かる方がいましたらお願いします。

481 :478:2005/05/18(水) 12:28:28
>>479
有難うございます〜〜〜〜〜!!!
めちゃくちゃ感激しました。
あなたさまは神、いわゆるゴッドです。

482 :名無しさん@そうだ選挙にいこう:2005/05/18(水) 16:03:06
セルの指定で、アクティブセルと同じセルの選択ってできますか?

483 :名無しさん@そうだ選挙にいこう:2005/05/18(水) 16:22:41
任意のセルにマウスポインタを持って行き、マウスに強力にかかと落としすると出来る

484 :名無しさん@そうだ選挙にいこう:2005/05/18(水) 16:23:59
>>482
意味がよくわからん・・・

485 :akira:2005/05/18(水) 16:49:34
エクセルで、サッカーの勝ち点による順位の推移グラフを作りたいです。
縦軸が順位、横軸が時系列です。
各チームの勝ち点を入力するセルは1チームに1つ。
毎試合ごとにセルを増やして作るのは簡単ですが、履歴をグラフにできませんか?
うまく説明できませんが、お願い致します。
マクロは出来れば使いたくないです。


486 :名無しさん@そうだ選挙にいこう:2005/05/18(水) 18:04:03
>>470
A列に当たる部分が別ファイルと言うことなら
A列部分を外部リンクで手元のファイルに引っ張ると言う方法もある
(COUNTIFで参照するシートはローカル・シートにする)

1.新たにシート(Aとする)を作成
2.作ったシートを参照先外部ファイルの参照先シート(Bとする)と同じ書式に設定
3.Bシート内の「データのあるセル全て」をAシートの同じ位置に外部リンクする
(外部リンクの貼り方はOK?)
4.COUNTIFで見に行くのはAシート

でやってみると、#value!回避できるんでない

蛇足だが、関数レベルで#valueを表示させないには
C1=IF(ISERROR(COUNTIF($A$1:$A$5,B1)),"",IF(COUNTIF($A$1:$A$5,B1)=0,"ない","ある"))
などどすることも可。多少まどろっこしいが。


487 :名無しさん@そうだ選挙にいこう:2005/05/18(水) 18:12:34
>>470

データ有無の単純な判断の場合、MATCH関数も良い。
例の場合
1行目(C1) =MATCH($A:$A,B1,0)
2行目(C2) =MATCH($A:$A,B2,0)
3行目(C3) =MATCH($A:$A,B3,0)
.
.
.

C1に上記入力した後、C2〜C5にコピペでも良い

尚、$A:$Aの指定の場合、A列にヘッダ相当のデータなどがないと言う前提
(あったらその行も検索しちゃう)



488 :名無しさん@そうだ選挙にいこう:2005/05/18(水) 18:17:59
>>487
パラメータの書き方逆でした。

1行目(C1) =MATCH(B1,$A:$A,0)
2行目(C2) =MATCH(B1,$A:$A,0)
3行目(C3) =MATCH(B1,$A:$A,0)

失礼

489 :名無しさん@そうだ選挙にいこう:2005/05/18(水) 19:24:58
すいません。COUNTIFについて質問させてください。
Cドライブに二つのファイルがあり、「計算用」というファイルでは
「元データ」というファイルの数値を元に様々な計算をしています。

「元データ」を開いていない状態で「計算用」ファイルを開くと
「開いているブックには自動リンクが設定されています
すべての情報を更新する場合にははいを押してください」
と出てきますので、データ更新のために「はい」をクリックします。
すると、COUNTIFで計算しているセルだけが「VALUE!」と表示されてしまうのです。

たとえば、「元データ」というファイルはA列はA1から順に
1
2
3
4
5  と入力されているとします。
「計算用」ファイルのA列にはA1から順に
='C:\[元データ.xls]Sheet1'!A1
=IF('C:\[元データ.xls]Sheet1'!A1-'C:\[元データ.xls]Sheet1'!A2<0,"マイナス","")
=SUM('C:\[元データ.xls]Sheet1'!A1:A5)
=COUNTIF('C:\[元データ.xls]Sheet1'!A1:A5,5)
と、入力されているとします。画面表示上はA1から順に
1
マイナス
15
1
になります。この状態で保存し、「計算用」だけを開いて、情報を更新すると
A1、A2、A3はそのまま「1」「マイナス」「15」が表示されますが、
COUNTIFを使っているA4だけが「VALUE!」になってしまいます。
この状態で「元データ」ファイルを開くと、「VALUE!」ではなく、ちゃんと「1」が表示されるようになります
これは一体どういう理由なのでしょうか。もし可能ならば、
「VALUE!」にならない方法を教えてください。よろしくお願いします。

490 :名無しさん@そうだ選挙にいこう:2005/05/18(水) 19:54:36
エクセルで消費税を計算するときに
1.05を使わないで計算する方法わかる方いますか!?
かなり切実です!!

491 :名無しさん@そうだ選挙にいこう:2005/05/18(水) 19:58:21
>>491
共産党に投票して政権を取らせる。
すると消費税を3%に下げてくれる。


492 :名無しさん@そうだ選挙にいこう:2005/05/18(水) 19:59:33
>>490
何故1.05じゃダメなんですか?

493 :490:2005/05/18(水) 20:06:34
1.05と入力しないで出すよう指定されてるんです↓↓

494 :名無しさん@そうだ選挙にいこう:2005/05/18(水) 20:12:37
>>490
A1に元の値段が入ってるとして

=A1+A1/20

これでいいのかしら?

495 :名無しさん@そうだ選挙にいこう:2005/05/18(水) 20:13:13
>>493
=A1*105/100
=A1+A1*0.05
=A1+A1/20
=A1/20*21

1.05を使わない式なんていくらでもあるが。

496 :490:2005/05/18(水) 20:18:44
5の数字を使った計算方法
わかりますか??

497 :名無しさん@そうだ選挙にいこう:2005/05/18(水) 20:18:46
消費税率age(sage)に対応させる必要は無いの?

498 :名無しさん@そうだ選挙にいこう:2005/05/18(水) 20:19:30
実数使っちゃダメとか、後出し条件言い出しそうな悪寒

とか言ってみる。

499 :名無しさん@そうだ選挙にいこう:2005/05/18(水) 20:25:18
単に 5%を 使用したら

とかいっちゃったりして

500 :490:2005/05/18(水) 20:42:17
消費税率ゎ関係ないです↓
本当に誰かお願いします!!


501 :名無しさん@そうだ選挙にいこう:2005/05/18(水) 20:48:16
>>500
1.05ではなぜいけないか(いけないと言われているか)を
書いたほうがみんな回答しやすいとおもうんですが、いかが?
その理由によってはなにか知恵があるかもしれませんよ

502 :名無しさん@そうだ選挙にいこう:2005/05/18(水) 20:50:44
>>500
何かの問題に対する解答を求めてるのなら
問題そのものを書き込んだ方が早いのでは?

503 :490:2005/05/18(水) 20:55:03
すいませんでした…
問題載せます!!

問題:果物をいくつか買って、何人かで割り勘するときの、
一人分の支払額を求めてください。
なお、支払い時には、消費税を加える必要があります。
そして、この店では1円未満は四捨五入されます。
また一人分の支払額では、
10円未満は「おまけ」します。

果物
単価購入数購入人数消費税支払い総額一人分
12525145



 
注意:消費税は「*1.05」と入力するのではなく、
セルD3を参照する数式を考えてください。


504 :名無しさん@そうだ選挙にいこう:2005/05/18(水) 20:55:20
>>500
「5」を使えばいいってなら
=A1+INT(A1*5/100)
とか。(消費税って小数切り捨てでいいんだよね)

ユーザー定義関数だとこんな感じ。
Function hoge(buf As Currency) As Currency
 Const foo As Byte = 5 '税率(%)
 hoge = Int(buf * Round(1 + foo / 100, 3))
End Function

税率を外部参照したいとかなのかなぁ。

505 :490:2005/05/18(水) 20:57:39
図はこれなんですけど…


果物
単価 購入数 購入人数 消費税 支払い総額 一人分
125 25 14 5

506 :名無しさん@そうだ選挙にいこう:2005/05/18(水) 20:59:23
>>505
まず入門書買え。

507 :名無しさん@そうだ選挙にいこう:2005/05/18(水) 20:59:29
うはww 宿題かよww ジュクでも行ってろwww

508 :名無しさん@そうだ選挙にいこう:2005/05/18(水) 21:00:00
>>505
果物より入門書を買って来い。

509 :名無しさん@そうだ選挙にいこう:2005/05/18(水) 21:01:05
>>505
ここをお前の学校の宿題解決用にしようというわけですね(プゲラ

510 :名無しさん@そうだ選挙にいこう:2005/05/18(水) 21:09:59
あらら、リロードせずに書いたらなにやら条件が。

皆の言うように「宿題、課題は自分でやれ」ってのが筋だろうけど、
こういう厨房は教えなければ粘着してウザいだけだと思うので
簡潔に答えを書いておく。

=ROUNDDOWN(ROUND(A3*B3+A3*B3*D3/100,0)/C3,-1)

本当はもうちょっと短い式にも出きるんだけど、コレが一番基本的な解き方だと思うので。

511 :名無しさん@そうだ選挙にいこう:2005/05/18(水) 22:02:27
【1     O S の 種 類    】 Windows2000
【2 E x c e l の バ ー ジ ョ ン .】 Excel2003
【3   V B A が 使 え る か  】 ただ今、修行中
【6 スレのFAQとログを読んだ.】 途中まで読みました


Private Sub CommandButton1_Click()

Dim myBookname As String
Dim ReturnBook As Workbook, TargetBook As Workbook

Set ReturnBook = ActiveWorkbook
Application.ScreenUpdating = False

myBookname = Application.GetOpenFilename("(*.csv),*.csv")

If myBookname <> "False" Then
Workbooks.Open myBookname
End If

Set TargetBook = ActiveWorkbook

Application.ScreenUpdating = True

上記のマクロで、ダイアログボックスでファイルを開いて
ファイル処理しているのですが、キャンセルボタンを押すと、
マクロファイルが閉じてしまいます。
キャンセルボタンを押した場合のコードは、
どこにどう書けばいいか、
ご指導下さいませ。

512 :名無しさん@そうだ選挙にいこう:2005/05/18(水) 22:15:16
>>511
Else

513 :名無しさん@そうだ選挙にいこう:2005/05/18(水) 22:54:38
【1 OSの種類】 Windows 2000
【2 Excelのバージョン】 Excel2000
【3 VBAが使えるか】 いいえ
【4 Googleでの検索キーワード】経験分布関数 excel グラフ
【5 ヘルプでの検索キーワード】分布関数
【6 スレのFAQとログを読んだ】 はい

経験分布関数のグラフを書きたいのですが
どのグラフを使えばいいのかわかりません。
具体的なグラフの概形は
|              __________
|        ____________
|     ______
|  ______
|______________________________________
こんな感じになります。
作り方を教えていただきたいです。

514 :名無しさん@そうだ選挙にいこう:2005/05/18(水) 23:10:56
散布図の折れ線でつないだタイプでいけるのではないでしょうか。

515 :>>511:2005/05/18(水) 23:29:51
すみません、
Elseの使い方がういまいち、書けません。

If myBookname <> "False" Then
Workbooks.Open myBookname

の後に、Else ですか?

516 :名無しさん@そうだ選挙にいこう:2005/05/18(水) 23:37:45
>>515
yes


517 :名無しさん@そうだ選挙にいこう:2005/05/18(水) 23:54:53
【1     O S の 種 類    】 xp home
【2 E x c e l の バ ー ジ ョ ン .】 Excel2000 
【3   V B A が 使 え る か  】 微妙
【4 Googleでの検索キーワード】 変数の結合 vbe 
【5 ヘルプでの検索キーワード】 
【6 スレのFAQとログを読んだ.】 はい 
〜〜〜質問内容〜〜〜 
for 〜next等でテキストボックスのtextbox1を
for i = 1 to 12
if textbox & i = true then
end if
がtextbox1~12と認識してくれません
なにかいい方法はないでしょうか?


518 :名無しさん@そうだ選挙にいこう:2005/05/19(木) 00:00:41
Control("TextBox" & i)

519 :名無しさん@そうだ選挙にいこう:2005/05/19(木) 00:24:03
>>517
Controls("TextBox" & i)

520 :名無しさん@そうだ選挙にいこう:2005/05/19(木) 02:52:35
わけあって、Excelを英語で使いたいのですが、英語版をインストール
以外に方法はありますのでしょうか。

 メニュー、ボタンがすべて英語表示されればオッケーです。

521 :名無しさん@そうだ選挙にいこう:2005/05/19(木) 04:27:59
英語版をインストールするのが一番簡単で確実だと思いますよ
画面を作りたいだけだったら、VBAで自作のメニューを英語で作るしか
ないんじゃないかな。Commandbarまわりのヘルプ読んでチャレンジしてみてください。

522 :名無しさん@そうだ選挙にいこう:2005/05/19(木) 05:06:37
【1 OSの種類】 WindowsXP
【2 Excelのバージョン】 Excel2002
【3 VBAが使えるか】 いいえ
【4 Googleでの検索キーワード】
【5 ヘルプでの検索キーワード】
【6 スレのFAQとログを読んだ】 はい
〜〜〜質問内容〜〜〜

データの並び替えをしたいのですが、
一番上の行(項目名など)も一緒に並び替えに
組み込まれてしまいます。
一番上の行を巻き込まない並び替えはどうやるのでしょうか?

523 :名無しさん@そうだ選挙にいこう:2005/05/19(木) 05:36:05
>>522

メニューバーの「データ」→「並び替え」

「範囲の先頭行」のところの「タイトル行」のチェックが外れているようなら
チェック。で、いけるはず。

524 :名無しさん@そうだ選挙にいこう:2005/05/19(木) 05:56:10
>>523
うまくいきません…。なんでだろう

525 :名無しさん@そうだ選挙にいこう:2005/05/19(木) 06:35:48
それじゃ、タイトル行を除いて範囲指定(ドラッグして反転)させといて
ツールバーに(523さんの環境では出てるか解らないけど)
「AZ↓」なり、「ZA↓」ボタンでは?

526 :名無しさん@そうだ選挙にいこう:2005/05/19(木) 06:57:11
525の括弧内は523じゃなくて522さんの間違い。
それじゃ自分だわ。

527 :名無しさん@そうだ選挙にいこう:2005/05/19(木) 09:17:53
>>515
If myBookname <> "False" Then
  Workbooks.Open myBookname
else
hogehoge
end if

こんな感じで。

528 :名無しさん@そうだ選挙にいこう:2005/05/19(木) 10:16:29
地震?

529 :名無しさん@そうだ選挙にいこう:2005/05/19(木) 12:45:57
   A   B   C   D
1
2  9:00 17:30  8:30
3
4

上記のような表がありまして、何れも書式は時刻型になっております。
C2の計算式は =B2-A2 となっています。
ここでC2の結果を8.5にしたいのですが。
時間30分を0.5として出力する方法などご存知ありましたら教えてください。

530 :名無しさん@そうだ選挙にいこう:2005/05/19(木) 12:59:00
>>529

方法A : 関数を利用
1.A1 に時刻(例、8:30 )を入力
2.A2 に次のような数式を入力
=(DAY(A1)*24+HOUR(A1))+(MINUTE(A1)/60)
3.A2 の表示形式を標準に戻す
(自動的に日付の表示形式が設定されてしまうため)

方法B : 1時間分のシリアル値で除算
1.A1 に時刻(例、8:30 )を入力
2.A2 に次のような数式を入力
=A1/"01:00:00"
3.A2 の表示形式を標準に戻す
(自動的に日付の表示形式が設定されてしまうため)


531 :名無しさん@そうだ選挙にいこう:2005/05/19(木) 12:59:51
>>530
文中のA1とかA2とかは置き換えて考えてね

532 :名無しさん@そうだ選挙にいこう:2005/05/19(木) 13:04:20
質問です。
請求書を作成する際に消費税の項目を入れたいのですが、
自動的に税額を算出するような設定は可能ですか?
当方、excel98 (Office 98)/macOS9.1を使用しています。
よろしくお願いします。


533 :名無しさん@そうだ選挙にいこう:2005/05/19(木) 13:27:17
A B C
1 元金 税込 税額
2  100  105 5

の「税額」を求めたいみたいな感じですか?
もしそうなら C2に =A2*0.05 です。
んな簡単な質問じゃないかな?
(もう少し具体的に)

534 :名無しさん@そうだ選挙にいこう:2005/05/19(木) 13:59:56
>>529
=C2*24

そのまま(時刻表示形式)だと12:00になるだろうけど
表示形式を数値にすれば8.5になる。
時間と分を別々に処理しようとか難しく考えること無いよ。
表示指定も数式内でやりたければTEXT関数で。

535 :名無しさん@そうだ選挙にいこう:2005/05/19(木) 14:08:26
>>529
C2の計算式を =(B2-A2)*24 にして、表示形式を標準にする。

536 :532:2005/05/19(木) 14:36:02
>>533さん
ありがとうございます。
具体的に申しますと、↓のような感じです。

1, A商品 10,000
2, B商品 10,000
  ・
  ・
  ・
  ・
小計 50,000
消費税
合計 52,500

という風に、商品の金額を打ち込めば、
消費税の税額も自動的に計算してくれるように設定したいのです。
例えば、小計や合計は「Σ」を設定しておくことによって自動的に計算してくれますよね。
それと同じようにしたいのです。

ところで「A2*0.05」とはどういう事でしょうか?
A(横軸)の2(縦軸)で、0.05(5%)というのはわかるのですが、
これをどうすればよいのかがわかりません。
初歩的な質問で申し訳ないです。

以上、引き続きよろしくお願いします。

537 :532:2005/05/19(木) 14:38:11
>>536
すみません、上記の表の消費税額を入力し忘れました。
失礼しました。

538 :名無しさん@そうだ選挙にいこう:2005/05/19(木) 14:48:46
初歩的以前だな。
単純に数式の使い方が分かってないだけじゃん。

とりあえず「小計」の行が10で数値が入ってる列がB列なら
消費税の右となりのセルに「=INT(B10*0.05)」って入れとけ。

539 :532:2005/05/19(木) 15:11:50
>>538さん
ありがとうございました!
大変よくわかりました。

ただ、最後に一つだけ質問させて頂きたいのですが、
消費税が算出されると金額が非常に細かくなるので、
「小数点以下は表示しない」という設定に致しました。
すると、税額の表示が右詰めではなくなってしまいました。
右から一桁分だけ左に寄ってしまったのです。
これを直すにはどのようにしたらよいのでしょうか?

540 :名無しさん@そうだ選挙にいこう:2005/05/19(木) 15:12:29
>>536>>537
538さんの書かれているとおりですね。
「消費税」の行が10行目(A10)としての話しです

ちなみに「Σ」をクリックすると =SUM(......) とか入りますよね。
今回のは、それを手で入力して下さいと言うことです。


541 :名無しさん@そうだ選挙にいこう:2005/05/19(木) 15:15:37
>>539
被りました、失礼

書式設定で 分類を「通貨」 小数点以下の桁数を「0」
にしてみたらどうですか?(金額のセル全部)


542 :532:2005/05/19(木) 15:21:41
>>541さん
修正できました。

>>ちなみに「Σ」をクリックすると =SUM(......) とか入りますよね。

今まで↑が何なのか疑問でしたが、今回ようやく意味がわかりました。
皆さんお忙しい中、本当にありがとうございました。

543 :名無しさん@そうだ選挙にいこう:2005/05/19(木) 16:42:13
>>505>>510の人に対して礼とかしないのか?

こういう厨って自分の問題解決の為には、いくらでもスレを消費するけど、礼の一つもしやがらねぇんだよな。(>O<)カァーッ ( -.-)ペッ

544 :名無しさん@そうだ選挙にいこう:2005/05/19(木) 17:33:43
っていうか、そんな奴に答えるなよ。

545 :名無しさん@そうだ選挙にいこう:2005/05/19(木) 20:36:23
てか、こいつ電卓すら使えないやつなんだろうな w
生活していけるんだろうか、、、

546 :名無しさん@そうだ選挙にいこう:2005/05/19(木) 21:19:34
>金額が非常に細かくなるので、
>「小数点以下は表示しない」という設定に致しました。

消費税の小数点以下をどうするかって結構面倒だと思うんだけど…
切り捨てるか、四捨五入するかとかまちまちだし。
もしレジ使ってるならそれにあわせたほうが良くないか?
ただ表示しないだけにしとくと、最終的な合計(レジでいうところのグランドトータル)を出したときに
差が出てくるし。まあ本人がいいならそれでいいんだろうけどさ。



547 :名無しさん@そうだ選挙にいこう:2005/05/19(木) 22:24:18
>>546
round関数・・・って言っても、
ご本人はsum関数すら理解していなかったみたいですからねぇ
>>532さんは500円のでもいいから何か一冊参考書買ったほうが
ご自身の為にはいいかもしれませんね。

>>543
まぁまぁ。こういう人は、理解しようとせず、単にその問題に答える
だけできればOK→いつまでたっても知識として蓄積されない→結
局せっかく学んでもそれを活かす事のできないかわいそうな人で
すから、腹を立てるよりも憐憫の情で接してあげましょう。

548 :名無しさん@そうだ選挙にいこう:2005/05/19(木) 22:55:04
つうか、金額計算では必ずround()使え。
見積もりでroundも使わず表示された数字と合計が合わないという
馬鹿なことがよくあるんだよな。
roundつかってね。round知ってるよね?−「はい、しっています」
といわれて、それが何度も裏切られることがあったよ。

549 :名無しさん@そうだ選挙にいこう:2005/05/19(木) 23:30:54
【 OSの種類】 Windows2000
【 Excelのバージョン】 Excel2003
【 VBAが使えるか】 それなりに
【 スレのFAQとログを読んだ】 一応一通り検索かけました

分析ツールとVBAを使わずに、標準で使える関数のみで16進数→10進数、10進数→16進数をやりたいのですが
どういった手順の式を書けば良いのでしょうか?
分析ツールが使えればそれ用の関数があるのですが、ナシでやることになったので・・・・・。
よろしくお願いいたします。

550 :代理:2005/05/20(金) 00:33:06
なんか無茶苦茶言ってるな
解が用意されてるのに使うなって

つか関数書いたって1行だろ
そんなのプログラムですらないよ

551 :名無しさん@そうだ選挙にいこう:2005/05/20(金) 00:46:58
また宿題なんだろうよ。n進数の計算方法かなんか教えてもらってんじゃない?
情報処理系の参考書を自分で探して読みなされ。

552 :名無しさん@そうだ選挙にいこう:2005/05/20(金) 01:07:00
暖かくなると変なのが湧くねぇ
549みたいのは以後放置で

553 :名無しさん@そうだ選挙にいこう:2005/05/20(金) 02:26:00
【1     O S の 種 類    】 Windows2000
【2 E x c e l の バ ー ジ ョ ン .】 Excel2000
【3   V B A が 使 え る か  】 ある程度
【4 Googleでの検索キーワード】 excel 計算されない
【5 ヘルプでの検索キーワード】
【6 スレのFAQとログを読んだ.】 ある程度

大き目のファイルをいじっていると、ごくたまに計算されない
数式ができます。
再計算はおわります。
空白セルに適当な数字入れる等しても変わりません。
同じルールの数式をコピーしてはりつけると計算されます。
自動計算はオンになってます。
回避可能でしょうか?

554 :553:2005/05/20(金) 02:32:55
すいません、補足です。
「計算されない」ではなく「再計算されない」です。
参照元の数値を変えても参照先の数式の値が変化しないです。
参照元と参照先はシートまたぎです。ブックまたぎは
してないです。
よろしくお願いいたします。

555 :名無しさん@そうだ選挙にいこう:2005/05/20(金) 09:45:07
__│____A_________B____C____D_____E_____F_____G
1│入力値___________ km
2│
3│距離(km)__0.3___0.5___1.0___1.5__2.0__3.0
4│日数(日)_0.6___0.7___0.8___0.9__1.0__1.2

B1に距離を入力し、表上段の数値以下なら下段の数値を返すようにしたいので
例) 0.6km→0.8日、1.5km→0.9日、1.8km→1.0日

=HLOOKUP(B1,B3:G4,2)

という式を組んだのですが、
0.6km→0.7日、1.5km→0.9日、1.8km→0.9日という結果になってしまいます。
どこが間違っているのか教えてください。


556 :555:2005/05/20(金) 10:09:59
追記

省略しましたが表の項目は8個以上あるので
IF関数ではできません。


557 :名無しさん@そうだ選挙にいこう:2005/05/20(金) 10:26:33
質問よろしいでしょうか。
Excelのハイパーリンクでは、○○.xlsファイルの『どのタブ』というところまでは指定できないのでしょうか。
なんかできそうな気がするんですけど、なかなか見つかりません。どなたかご存知でしたらお願いします。
秘密兵器とか言ってExcelVBA完全制覇買ったけど役に立ってないよ〜〜


558 :名無しさん@そうだ選挙にいこう:2005/05/20(金) 10:34:14
>>555-556
間違ってるというかHLOOKUPの仕様がわかってないだけ。
HLOOKUPの場合「表上段の数値"以下"なら」ではなく
「表上段の数値"以上"なら」ってのが仕様。

表現的には表の値ではなく検索値を基準にするので
「検索値未満で最も大きい値」となるわけだが、(実際には未満じゃなくて以下みたいだね)
 0.6:検索値0.6以下→0.3、0.5 /  最も大きい値→0.5 / その2行目→0.7
 1.5:検索値1.5以下→0.3、0.5、1.0、1.5 /  最も大きい値→1.5 / その2行目→0.9
 1.8:検索値1.8以下→0.3、0.5、1.0、1.5 /  最も大きい値→1.5 / その2行目→0.9
というのが仕様。なので距離の方を
 0.3, 0.5, 1.0, 1.5, 2.0, 3.0
   ↓
 0.0, 0.31, 0.51, 1.01, 1.51, 2.01
と直せば望み通りになると思うよ。

表をそのまま使いたいならそれこそIF関数使うしか無いかな。
たとえばこんな感じで。(↓の式を入れてCtrl + Shift + Enterで確定、式が{ }で囲われればOK)
=MIN(IF(B1<=B3:G3,B4:G4))


559 :555:2005/05/20(金) 10:51:56
>>558様、ありがとうございました。

HLOOKUPの仕組みと対処法、理解できました。

で、下の {MIN(IF…}の式ですが、
最初の表(距離0.3〜3.0)ではうまくいったんですが
項目を12個に増やしたらエラーが出ました。

IF関数だから8個までしかダメなんですか?
項目を増やすにはどうしたらよいでしょう。

よろしくお願いします。



560 :名無しさん@そうだ選挙にいこう:2005/05/20(金) 11:04:54
>>558様。追加で質問です。


> 0.6:検索値0.6以下→0.3、0.5 /  最も大きい値→0.5 / その2行目→0.7
> 1.5:検索値1.5以下→0.3、0.5、1.0、1.5 /  最も大きい値→1.5 / その2行目→0.9
> 1.8:検索値1.8以下→0.3、0.5、1.0、1.5 /  最も大きい値→1.5 / その2行目→0.9
> というのが仕様。なので距離の方を
> 0.3, 0.5, 1.0, 1.5, 2.0, 3.0
>   ↓
> 0.0, 0.31, 0.51, 1.01, 1.51, 2.01
> と直せば望み通りになると思うよ。

との事ですが、この場合

0.6:検索値0.6以下→0.31、0.51 /  最も大きい値→0.51 / その2行目→0.7
1.5:検索値1.5以下→0.31、0.51、1.01 /  最も大きい値→1.01 / その2行目→0.8
1.8:検索値1.8以下→0.31、0.51、1.01、1.51 /  最も大きい値→1.51 / その2行目→0.9

となってしまいます。

正解は
0.6km→0.8日、1.5km→0.9日、1.8km→1.0日
なんですよね。

何度もすいませんがよろしくお願いします。


561 :名無しさん@そうだ選挙にいこう:2005/05/20(金) 11:10:43
>>559
いや、いくらでもいけると思うよ。
配列式組んでるだけで、IF関数は1段しか使ってないから。
もしかして参照範囲書き換えてないとか
参照範囲書き換えた後、Ctrl + Shiftを押さずに確定したとかは無いよね?
距離を日数の表がB3:M14までの12項目なら
=MIN(IF(B1<=B3:M3,B4:M4)) でCtrl + Shift + Enter
でいけると思うけど。
それでもダメならちょっとわからんがエラー内容でも書いてくれれば糸口が見つかるかも。

>>560
頭に0.0入ってるの見えない?
書き換えは0.5→0.51ではなく0.5→0.31だよ。

>>557
シート名(タブ名)だけの参照は出来ないと思う。
やるならセルまで指定して
○○.xls#シート名!セルアドレス
って感じで。

562 :名無しさん@そうだ選挙にいこう:2005/05/20(金) 11:32:16
>>561

うわ、はやっ!ありがとうございます。

というか、こんなに簡単にできたんですね。なんでひっかからないかなあ。。。情報の氾濫?
奔流にのみこまれてちっとも狙った岸にとりつくこともできなかったです。助かりました。
ありがとうございましたー m(..)mペコリ♪(^^)/~~~


563 :555:2005/05/20(金) 11:38:47
>>561

ありがとうございました。
559、560両方とも解決できました。

560は0.0を無視してました。
一つずらすんですね。

559は恥ずかしながらご指摘の通り「Ctrl+Shift+Enter」をしてなくて…。
で、今日初めて見たのですが、「Ctrl+Shift+Enter」って
どういう意味があるのですか?

564 :名無しさん@そうだ選挙にいこう:2005/05/20(金) 11:54:42
>>563
まあ、配列式に慣れていても偶にやらかす凡ミスではあるな。
で、「Ctrl+Shift+Enter」は数式を配列式として解釈させる為のもの。
そして配列式として解釈されてる式は目印として{ }で囲われる。

配列式が如何なるものかはここじゃ説明しきれないので、
興味があるなら「Excel 配列数式」とかでググるかヘルプでも見れ。

565 :名無しさん@そうだ選挙にいこう:2005/05/20(金) 15:19:52
下記の実行前に「選択されている行があれば」という条件をいれたいんですが
書き方がわからないです〜

If MsgBox("このデータを削除しますか?", vbYesNo + vbDefaultButton2) = vbYes Then
Sheet10.Protect , userinterfaceonly:=True
Selection.Rows.Delete
End If

566 :名無しさん@そうだ選挙にいこう:2005/05/20(金) 15:35:26
あんまり上手い方法じゃないけど
If Selection(Selection.Count).Column - Selection.Column = 255 Then
とか
If IsNumeric(Replace(Selection.Address(0, 0), ":", "")) Then
とか。

567 :名無しさん@そうだ選挙にいこう:2005/05/20(金) 15:49:44
>566
ありがとうございます〜

568 :名無しさん@そうだ選挙にいこう:2005/05/20(金) 18:23:46
隣り合う2つの列に分けて入力された文字列のリストがあります。

AAA | BBB
CCC | DDD
・・・

例えば↑の例で、”AAAとBBBがある行の位置”を取得するための
簡単な方法はあるのでしょうか?
まずAAAを探してその隣にBBBがあるかないか・・・というような
ループと条件判断で組む方法は思い付きますが、そうではない方法を
ご存知の方、ご教授ください。

569 :名無しさん@そうだ選挙にいこう:2005/05/20(金) 18:48:06
また宿題か?

というか、VBAでやりたいのかワークシート関数でやりたいのかも
はっきりしないし、(ループと言ってるあたりから、VBAかなとも思うが)
位置ってのが行番号なのかアドレスなにかもわからないし、
取得したものをどうすればいいのかもわからないし
条件に一致するものが複数あった場合にどうすればいいのかもわからない。

VBA使って良いなら方法なんていくつもあるけど
条件がはっきりしなければ何も教えられない。

570 :名無しさん@そうだ選挙にいこう:2005/05/20(金) 19:18:10
>>569
VBAで行番号を得る方法です。
文字列に重複はありません。

解決に使えるキーワードだけでも良いです。

571 :名無しさん@そうだ選挙にいこう:2005/05/20(金) 19:33:19
何故ループがダメなのか気になるなぁ
マクロのメリットとして同じ処理の繰り返し(ループ)が
手動でやるより遙かに高速ってのがあるんだけど。
つまりループはマクロの要ってこと。

572 :名無しさん@そうだ選挙にいこう:2005/05/20(金) 19:42:17
>>570
今現在どういう処理してるのか書いてみそ


573 :名無しさん@そうだ選挙にいこう:2005/05/20(金) 19:45:04
>>571
ただ目的が果たせれば良いということなら、質問する必要も無いんですよ。

AAAを下方検索して、右のセル値がBBBでなければ再検索、BBBなら1つ確定。
これでは1回の検索自体にループが必要になりますが、自分の今の作業では
数万回の検索を行います。

2列に並んだ文字列の行位置を1度の処理で求められれば、多重ループを1つ解いて
処理を早く終わらせることができるので、質問をしています。


574 :名無しさん@そうだ選挙にいこう:2005/05/20(金) 20:06:44
>>572 まずはソース

  Dim lDataBottom As Long
  lDataBottom = Cells(65536, 2).End(xlUp).row
  
  Dim lDataNum As Long
  lDataNum = lDataBottom - 1
  
  Dim lDeleteCount As Long
  lDeleteCount = 0
  
  Dim findResult As Variant
  Dim strKeyLeft As String
  Dim strKeyRight As String
  Dim lStrGetRow As Long
  lStrGetRow = 2
  


575 :名無しさん@そうだ選挙にいこう:2005/05/20(金) 20:06:59
  Do While lDeleteCount <= lDataNum / 2
  
    strKeyLeft = Cells(lStrGetRow, 2).Value
    strKeyRight = Cells(lStrGetRow, 3).Value
  
    Set findResult = Range( _
      Cells(lStrGetRow + 1, 2), _
      Cells(lDataBottom, 2) _
    ).Find(strKeyRight, LookAt:=xlWhole)
    
    If findResult Is Nothing Then
      lStrGetRow = lStrGetRow + 1
    Else
      If Cells(findResult.row, 3).Value = strKeyLeft Then
        Cells(findResult.row, 1).EntireRow.Delete
        lDeleteCount = lDeleteCount + 1
      Else
        lStrGetRow = lStrGetRow + 1
      End If
    End If
  
  Loop


576 :名無しさん@そうだ選挙にいこう:2005/05/20(金) 20:11:44
2行目以降の、2列目と3列目に

DDD  CCC
AAA  BBB
CCC  DDD
BBB  AAA
EEE  FFF
FFF  EEE

というようなデータがあります。
この例でもそうですが、"AAA BBB"と”BBB AAA"のように
順序が入れ替わったペアがこのデータを構成しています。
データ順序に規則性はありません。

このデータはペアのうち一方だけあれば良いので、ペアの他方を
削除してしまう処理が必要で、今のやり方が↑に示すようなVBAコードです。



577 :名無しさん@そうだ選挙にいこう:2005/05/20(金) 20:16:48
>>572で書いてみそ、と言われてから書いてみましたが、この処理自体は
1重ループで済む話でしたね。それでも片方の列だけでキーワードを検索し、
見つかれば右隣の文字列を見てみるという流れは変わりません・・・


578 :名無しさん@そうだ選挙にいこう:2005/05/20(金) 20:19:31
>>577
C列にA列とB列を結合した文字列入れとけば?

579 :名無しさん@そうだ選挙にいこう:2005/05/20(金) 20:20:30
・・・多重ループという前提が単なる勘違いだったので、2文字列を
1度に検索できたからといって速度が大きく変わる気はしなくなりました。
>>568 〜の質問はスルーしてくださいorz

580 :名無しさん@そうだ選挙にいこう:2005/05/20(金) 22:08:32
>>579
つうか、そもそも今書いているコードでは目的が達成できませんが w

581 :名無しさん@そうだ選挙にいこう:2005/05/20(金) 22:15:16
>>579
つうか、やはり多重ループしないとだめでしょ。
で、
BBB|CCC は BBBCCC
CCC|BBB は BBBCCC(BBBとCCCを比較して並べ替え)
をしてから同一データチェックをしたらどうですか?

データの取得はいちいちセルから一回一回読み出すのではなく
Dim r
r=range(データ範囲)
としてデータを一気に配列として読み込んで、必要なデータだけを
残して、r1という配列に格納(rの次元を減らしてもいいが)
そして、もとのデータを削除の上、r1の配列を貼り付ければ、
求めるデータがセルに書き込まれる。

高速化はアルゴリズム以上に、配列格納して処理するほうが
早くなったと思いますよ。

582 :名無しさん@そうだ選挙にいこう:2005/05/20(金) 22:16:56
>>581
よく考えたら、並べ替えるより素直にそのまま比較と入れ替えた
ものを比較したほうが早い気がしてきた(つうか差はなさそう)

583 :579:2005/05/21(土) 06:45:21
>>581
確かに上のコードだと抜け漏れますね。
右セルが一致しなければスルー、というのはNGでした。

Rangeで複数列の文字列リストを配列に取り込める、というのは
知らなかったです。

列区切りを考慮すれば重複が無いというリストなので

AAA | BBBCCC
AAABBB | CCC

のようなデータを考えると、間にデリミタも挟む必要がありますね。

584 :579:2005/05/21(土) 07:36:15
Type PairColumnDataStruct
  Left As String
  Right As String
  Key As String
End Type

  Dim lDataBottom As Long
  lDataBottom = Cells(65536, 2).End(xlUp).row
  
  Dim lDataLast As Long
  lDataLast = lDataBottom - 2
  
  Dim vListData As Variant
  vListData = Range(Cells(2, 1), Cells(lDataBottom, 8))
  
  Dim strList() As PairColumnDataStruct
  Dim strListRev() As PairColumnDataStruct
  ReDim strList(lDataLast)
  ReDim strListRev(lDataLast)

585 :579:2005/05/21(土) 07:36:47
  Dim lListIndex As Long
  Dim lListIndex2 As Long
  For lListIndex = 0 To lDataLast
    
    With strList(lListIndex)
      .Left = vListData(lListIndex + 1, 2)
      .Right = vListData(lListIndex + 1, 3)
      .Key = .Left & Chr(1) & .Right
    End With
      
    With strListRev(lListIndex)
      .Left = vListData(lListIndex + 1, 3)
      .Right = vListData(lListIndex + 1, 2)
      .Key = .Left & Chr(1) & .Right
    End With
      
  Next 

586 :579:2005/05/21(土) 07:37:04
  Dim strKey As String
  Dim lDelCount As Long
  lDelCount = 0
  For lListIndex = 0 To lDataLast - 1
    
    strKey = strList(lListIndex).Key
    If strKey <> "" Then
      For lListIndex2 = lListIndex + 1 To lDataLast
        If strKey = strListRev(lListIndex2).Key Then
          strList(lListIndex2).Key = ""
          lDelCount = lDelCount + 1
          Exit For
        End If
      Next
    End If
  
  Next


587 :579:2005/05/21(土) 07:37:32
  Range(Cells(lDataBottom - lDelCount, 1), Cells(lDataBottom, 8)).Clear
  
  Dim nColumnIndex As Integer
  Dim lWriteRow As Long
  lWriteRow = 2
  
  For lListIndex = 0 To lDataLast - 1
    
    With strList(lListIndex)
      If .Key <> "" Then
        For nColumnIndex = 1 To 8
          Cells(lWriteRow, nColumnIndex).Value = vListData(lListIndex + 1, nColumnIndex)
        Next
        Cells(lWriteRow, 2).Value = .Left
        Cells(lWriteRow, 3).Value = .Right
        lWriteRow = lWriteRow + 1
      End If
    End With
  
  Next
  
  Erase strList()
  Erase strListRev()


588 :579:2005/05/21(土) 07:41:19
8列のデータがあり、2列目と3列目に問題のデータリストがあります。

行単位での整合は維持する必要があるので、Rangeで8列分のデータを取り込んで
最後の結果出力時に 2列目と3列目以外のデータを合わせています。

・・・しかしスッキリしないorz


589 :579:2005/05/21(土) 07:49:47
動かしてみると >>587のクリアより後の出力生成が遅いですね。


590 :名無しさん@そうだ選挙にいこう:2005/05/21(土) 16:01:53
【 OSの種類】 WindowsXP Home SP2
【 Excelのバージョン】 Excel2002 SP3
【 VBAが使えるか】 独学で勉強中

下記のようなコードでシートを選択しております。
シート数が多いと、Popupで表示しきれず、"シートの選択"をクリックして
いちいちシートを選択しなくてはなりません。
Popupを表示せずに、ダイレクトにPopupの、"シートの選択"をクリックした
状態には出来ないでしょうか?
また、コードはもっとスリムに出来ますでしょうか?
よろしくお願い致します。

Sub select_sheet()
Dim sheet_name As Variant, QA As Byte
QA = MsgBox("シートを選択します。よろしいですか?", vbYesNo, "シート選択")
If QA = vbYes Then
Do
CommandBars("Workbook tabs").ShowPopup
sheet_name = MsgBox(ActiveSheet.Name & "このシートで良いですか?", vbYesNo, "確認")
Loop Until sheet_name <> vbNo
MsgBox ActiveSheet.Name
End If
End Sub

591 :& ◆hRHgVHFhzk :2005/05/21(土) 18:37:53
どなたか、少数点以下が四捨五入じゃなくて切り捨てになる方法教えてください。

592 :名無しさん@そうだ選挙にいこう:2005/05/21(土) 18:56:38
【1 OSの種類】 WindowsXP
【2 Excelのバージョン】 Excel2003
【3 VBAが使えるか】いいえ
【4 Googleでの検索キーワード】
【5 ヘルプでの検索キーワード】
【6 スレのFAQとログを読んだ】 はい

折れ線グラフを書いたら,X軸の数値がすべて等間隔で表示されてしまいます.
そのためグラフが正しく表示されません.
これを直すにはどうすればよいのでしょうか?
アドバイスください。よろしくお願いします


593 :名無しさん@そうだ選挙にいこう:2005/05/21(土) 19:41:39
>>591

INT関数

=INT(3.14) → 3

594 :名無しさん@そうだ選挙にいこう:2005/05/21(土) 20:09:25
>>591
=ROUNDDOWN(A1,0)でも可
HELPで「切り捨て」を調べると他にもいろいろ出てくるよ。

>>592
折れ線グラフはX値は項目なので等間隔で当たり前。
推測するに君が書きたいグラフは「散布図」と思われる。


595 :名無しさん@そうだ選挙にいこう:2005/05/21(土) 20:25:27
Excel関係の書籍を一つ買って勉強しようとおもうのですが、
あまりに数が多くて絞りきることができません・・・orz
3Kくらいまででそこそこ詳しく載ってて、わかりやすい書籍はないものでしょうか?

596 :名無しさん@そうだ選挙にいこう:2005/05/21(土) 20:27:56
>>591
FLOOR というのもあるよ。

597 :名無しさん@そうだ選挙にいこう:2005/05/21(土) 20:51:06
>>595
本屋に行って実際手に取ってみて色々見比べてみて自分に合うやつを買う
とりあえず自分がExcelで一番やってみたいことがわかりやすく書いてあるやつが
自分に合う本
その結果1980円の本が一番合うかもしれないし
500円の本でも十分かもしれない

598 :名無しさん@そうだ選挙にいこう:2005/05/21(土) 20:55:02
>>591
>>595を見習え

>>595
レベルは?
初めてなのか、中級なのか、VBAも含めてかわからんと答えようがない

599 :595:2005/05/21(土) 21:00:55
初心者的なことはできるので、中級くらいだと思います。
できれば、VBAまで載ってるのが良いんですが、無いなら無いでOKっす。
これから仕事でExcel使う機会が増えそうなので、ある程度深く勉強したいと思ってます。

600 :名無しさん@そうだ選挙にいこう:2005/05/21(土) 21:20:32
>>599

中級だとすると
http://www.officetanaka.net/books/index.htm

俺はニフティーの頃から答えてもらっていたこともあって
田中亨さんの本がわかりやすくて良いと思う

まあ、少し中身を見てから決める方が良いがな・・高いから

VBAはVBA専門の方がいい
VBA初心者なら超図解のVBA編とかから入ってステップアップするのが○

以上、全て俺の主観なので他の人の意見も聞いてからだな

601 :名無しさん@そうだ選挙にいこう:2005/05/21(土) 22:27:16
VBAはVBAで持っていた方がいいね
分厚い系だったらできる大事典が自分には合うんだが、やっぱりこっちも値段が高い
Z式マスターは結構いいかもと思う。でも中級向けってあったかな
Accessで愛用中だが、結構重宝してる

大事典じゃない方のできるシリーズは最近内容が薄っぺらくなった印象
スタンダードなやつ買うならできるシリーズよりも超図解シリーズだな

602 :名無しさん@そうだ選挙にいこう:2005/05/21(土) 22:51:18
百ます計算で質問しようとしたけど自己解決してしまったよ
RANK関数知らんかったよ orz

603 :名無しさん@そうだ選挙にいこう:2005/05/21(土) 22:59:34
【1 OSの種類】 WindowsXP
【2 Excelのバージョン】 Excel2002
【3 VBAが使えるか】いいえ
【6 スレのFAQとログを読んだ】 このスレは読みました

職場が1日8時間でフルタイムなので8(時間)=1(もしくは1.0)という形で表示させたいのです
4時間仕事したら0.5という感じで
色々と調べてはいるのですがうまく見付けられず・・・
よろしくお願いいたします

604 :名無しさん@そうだ選挙にいこう:2005/05/21(土) 23:10:39
>>603
入力セルと作業セル別にすればいいじゃん
=入力セル/8って感じで。

入力したセル自体に1/8の数値を表示させたいなら
Private Sub Worksheet_Change(ByVal Target As Range)
 Application.EnableEvents = False
  Target.Value = Target.Value / 8
 Application.EnableEvents = True
End Sub
みたいなかんじでできる。あとはこの自動置き換えをする範囲を指定すればいいんだけど
範囲が書かれてないから教えられない。
このまま使うと全セルが対象になってスゴいことになっちゃうかも。

とりあえず1/8の置き換えを有効にしたい範囲(たとえば「B列全て」とか「C3:C10」とか)を
書いてくれればそのくらいは書いてやる。あと上記のコードの使い方すらわからないならそれも言ってくれ。

605 :603:2005/05/21(土) 23:44:02
入力セルと作業セルは別でいいんです
非表示にするんで
横に長い表なので行部分に作ることになるのですが
(上から日付、働いた時間)
5/1 5/2 5/3
4   8  8

というような感じで
時間の下に作業セルという形で行を使って
時間部分の行を非表示にするつもりなので

606 :名無しさん@そうだ選挙にいこう:2005/05/21(土) 23:49:32
>>605
だったら
   A    B    C
1| 5/1  5/2  5/3
2|  4    8    8
3|=A2/8 =B2/8 =C2/8
でいいじゃん。
式は1つ入れればオートフィルでコピー出来るし。

607 :603:2005/05/22(日) 00:03:08
>>606
ありがとうございます
やってる間にまさにその方法で解決いたしました。
難しく考える必要がなかったですね
それまでに処理していたデータが関数やら何やらと色々使っていたもので

608 :名無しさん@そうだ選挙にいこう:2005/05/22(日) 01:24:14
俺が最初に買った本はEXCEL95開発技法だったな

EXCELのオブフェクトモデルが載ってたのが
買おうと思った直接の理由だった気がする

それまではヘルプでいちいち参照してて、めんどくせーなーとか
思ってた

609 :名無しさん@そうだ選挙にいこう:2005/05/22(日) 01:48:07
>>608
そんで、なに?

610 :& ◆QWv3R1XL8M :2005/05/22(日) 02:27:44
>>591
です。>>593>>594>>596みなさま有難うございました。
とても助かりました。

611 :名無しさん@そうだ選挙にいこう:2005/05/22(日) 15:23:26
【1     O S の 種 類    】 WindowsXPprofessional
【2 E x c e l の バ ー ジ ョ ン .】 Exce2003
【3   V B A が 使 え る か  】 はい(自分自身は使いこなせません)
【4 Googleでの検索キーワード】 条件付き書式 ハイパーリンク
【5 ヘルプでの検索キーワード】 条件付き書式 ハイパーリンク
【6 スレのFAQとログを読んだ.】 はい

質問は、条件付き書式の条件でハイパーリンクを張りたいと言うことです。
Aと記入すればAのexcelファイルに。
Bと記入すればBのexcelファイルを呼び出し、未記入であればリンクなし と出来れば理想です。
上記のような手法が出来るのでしたら、どのようにすればいいのでしょうか?
教えて下さい。

612 :名無しさん@そうだ選挙にいこう:2005/05/22(日) 15:26:51
>>611
INDIRECT関数

使い方はヘルプ参照

613 :名無しさん@そうだ選挙にいこう:2005/05/22(日) 15:32:18
>>611
条件付書式では無理だけれども、IF関数とHYPERLINK関数を使えばできそうな感じですね。

614 :名無しさん@そうだ選挙にいこう:2005/05/22(日) 16:08:32
>>611
=HYPERLINK(IF(A1="A","http://123.com/abs.html",IF(A1="B","http://hoge.com")))

ではだめなのか?
A1に AとかBとかいれて、A2にリンク表示

615 :名無しさん@そうだ選挙にいこう:2005/05/22(日) 16:10:58
>>614
=IF(A2="A",HYPERLINK("http://123.com/abs.html"),IF(A2="B",HYPERLINK("http://hoge.com"),""))

のほうがいいな

616 :名無しさん@そうだ選挙にいこう:2005/05/22(日) 16:18:23
http://members2.jcom.home.ne.jp/ryo0701/story.htm

617 :名無しさん@そうだ選挙にいこう:2005/05/22(日) 16:19:23
なんでこいつは「ファイルに」って書いてるのに
URLリンクの例を出すんだ?

618 :名無しさん@そうだ選挙にいこう:2005/05/22(日) 17:00:44
>>612-615
レスありがとうございます。
>615さんのIF文で出来るようになりました。
お騒がせ致しました。
>617さん
URLリンク部分をC:\~と置き換えれば問題ないので大丈夫です。

ありがとうございました。

619 :名無しさん@そうだ選挙にいこう:2005/05/22(日) 17:08:05
Excel2003とか、ハイパーリンクを作ってそれをクリックすると
無効にしておいた最小化/最大化のウィンドウアニメーションが
勝手に有効に切り替わってしまう・・・俺だけ?



620 :名無しさん@そうだ選挙にいこう:2005/05/22(日) 17:10:17
おまえだけ

621 :名無しさん@そうだ選挙にいこう:2005/05/22(日) 17:17:10
>>617
ああ、よく読んでなかったからだよ w

622 :590:2005/05/22(日) 18:16:52
どなたか>>590を分かる方はいらっしゃいませんか?
よろしくお願い致します。

623 :名無しさん@そうだ選挙にいこう:2005/05/22(日) 19:39:48
>>622
http://www.keep-on.com/excelyou/2000lng1/200004/00040049.txt

624 :549:2005/05/22(日) 20:25:38
何度もすいません。
放置されたのも悔しくて自分で考えまくってましたけど限界です・・・。

10進数を16進数に、エクセルの標準関数のみを使ってやりたいのですけど(涙
10進の数を16で割って商と余りをとり、その商を16で割って商と余りをとる・・を繰り返して
商が0になったところで余りを逆から並べる、ってのは分かるんですけど、エクセルでの書き方
が分かりません。

よろしくお願いいたします。

625 :名無しさん@そうだ選挙にいこう:2005/05/22(日) 20:44:03
>>624
=DEC2HEX(十進数)

626 :549:2005/05/22(日) 20:47:51
>>625
レスありがとうございます。
分析ツールのインストールは許可されていないので、標準関数のみでやりたいのです。

最初は分析ツールの関数もしくはVBAでと思ったのですが、それはダメということで・・。


627 :名無しさん@そうだ選挙にいこう:2005/05/22(日) 20:50:46
>>624
1行でなくて良いなら、手順通りに

数値 =MOD(A1,16)
=INT(A1/16) ...
... ...

等として数値を0〜Fに直してやればいい

628 :549:2005/05/22(日) 21:04:52
>>627
レスありがとうございます。
手順通りに書きたいのですが、変数も繰り返しも使えないのでどう書いたら良いかサッパリです・・・。
IF文で商がゼロになるまで繰り返せれば・・・。

どういった記述方法があるのでしょうか?

629 :名無しさん@そうだ選挙にいこう:2005/05/22(日) 21:25:37
>>628
ケタ数の制限はないの?

630 :549:2005/05/22(日) 21:29:33
変換対象の10進数の桁数制限はありません。
16進数に表記するときに有効桁数下n桁ってのはありますけど・・・。
まず10進数を16進数に変換してから
=Right(16進数, n)
とするしかないかと思うのですが、10進数を16進数に出来ないことには・・。
何度もすいません。

631 :名無しさん@そうだ選挙にいこう:2005/05/22(日) 21:57:07
強引に100桁(とか)をそれぞれ別セルに一桁ずつ求める
それから全セルを結合させて最終的な解をひとつのセルに
表示させる

というか、問題がいまいちわからんのだが w

632 :名無しさん@そうだ選挙にいこう:2005/05/22(日) 22:08:13
【1 OSの種類】 Windows XP pro
【2 Excelのバージョン】 Excel 2002
【3 VBAが使えるか】 すこし
【4 Googleでの検索キーワード】VBA VBProject
【5 ヘルプでの検索キーワード】クラス
【6 スレのFAQとログを読んだ】 すこし
〜〜〜質問内容〜〜〜

別のブックに保存してあるクラスモジュールをインスタンス化することはできますか?
もしできるなら、どう記述したらよいのでしょうか?
お願いします。

633 :名無しさん@そうだ選挙にいこう:2005/05/22(日) 22:09:05
>>630
>有効桁数下n桁
うーん、出題者の意図としては「上の桁は無視して下n桁求めろ」って意味か?


634 :名無しさん@そうだ選挙にいこう:2005/05/22(日) 22:13:12
OS:XPPro
ver:Excel2000
VBA:ちょくちょく

IsNA関数で質問です。
ワークシートにNAが含まれているか(1セルでもNAがある場合を検出したい)を調べたいと思っています。
調べる限りIsNA(検査の範囲)となっているので、引数に単一セルだけでなく
範囲を入れても動くと思い、VBAで
ret = Application.IsNA(Worksheets(1).Cells)
としたのですが、期待通りに動いてくれません。
戻り値をみるとNAがあるにもかかわらずFalseとなっていました。
シートにNAがあるかどうかをうまく判断する方法はないでしょうか?
よろしくお願いします。


635 :名無しさん@そうだ選挙にいこう:2005/05/22(日) 22:29:41
>>549に言いたいんだけど、何でそんな制限が有るのか、素直に話してみ?大方学校の宿題とやらなんだろうけど。


636 :名無しさん@そうだ選挙にいこう:2005/05/22(日) 22:34:38
>>633
1.2を16進数にしたら、、、とかいう意味での小数点以下の
有効桁でしょが

637 :名無しさん@そうだ選挙にいこう:2005/05/22(日) 22:37:03
>>634
Cellsではだめでしょ。
Cells(n,m)とか Each c in Cells とかしてひとつのセルづつ
評価しないと。てか、全シートやったら一体どれだけ時間が
かかるか

638 :名無しさん@そうだ選挙にいこう:2005/05/22(日) 23:03:37
>>714
とんかつが大好きな、おいらがやって来ましたよ。

639 :名無しさん@そうだ選挙にいこう:2005/05/22(日) 23:20:20

最新64bit版Windowsが早くも6000円で登場!
AutoCAD 2006 Corel Painter 9 Acrobat7 3ds max7 一太郎2005 など、新作を大量入荷!!
8割引9割引は当たり前!しかも代金後払いでラクラク注文♪

♪ホームページオープン記念♪

・送料無料!
・1本あたり5000円以下の商品をお好きな商品どれでも5本セットで
 サービスプライス15000円!
・合計代金20000円以上のご購入で、5000円以下のお好きな商品を
 1本無料でサービス

詳しいご案内は
http://www.remakelife.com/
まで!当サイトをよろしくお願いいたします。
サイトが閲覧不能な場合は下記メールアドレスに
ご連絡いただければ迅速にご案内を配信いたします。
info@remakelife.com

640 :名無しさん@そうだ選挙にいこう:2005/05/22(日) 23:28:01
>>630
知りたいのは16進の桁数に決まってる。
桁数が不定なら関数だけでは無理。


641 :634:2005/05/22(日) 23:29:23
>>637
レスありがとうございます。
ret=Application.IsNA(Range(Worksheets(1).Cells(1, 1), Worksheets(1).Cells(10,10)))
でやってみると、retは多次元配列のTrue/Falseになってました。
が、けっきょく多次元配列のANDをとる必要があるので、637さんのおっしゃっている
ひとつずつCellを評価するのと変わらないですよねぇ
なんかうまい方法をがあればいいのですが、やっぱり一個ずつ評価するしかなさそうですね


642 :名無しさん@そうだ選挙にいこう:2005/05/23(月) 05:29:06
>>641
内部的には1個ずつ評価してるのだろうけど、こんな方法もあるよ。
a = Application.Evaluate("SUM(IsNA(" & Worksheets(1).UsedRange.Address(, , , True) & ")*1)")
msgbox "1枚目のワークシートには、" & a & "個N/Aがあるよ"



643 :名無しさん@そうだ選挙にいこう:2005/05/23(月) 05:33:36
>>549
たぶん、10進→2進→2^n進(8進や16進)に計算させたいんじゃないのかな?
メモリの使い方の意識付けをさせたいとかで。

644 :名無しさん@そうだ選挙にいこう:2005/05/23(月) 08:54:48
そういう事だとしたら俺の解は不適当だな
なので断片だけ

MID("0123456789ABCDEF",MOD(INT(値/256),16)+1,1)

この式が何を求めているのかが解れば16ビットでも32ビットでも1つのセルで求められる

645 :名無しさん@そうだ選挙にいこう:2005/05/23(月) 17:04:10

フォームツールのラジオボタンなんですが
このサイズって変えられないのでしょうか?

646 :名無しさん@そうだ選挙にいこう:2005/05/23(月) 17:06:28
あ、ラジオボタンじゃなくてチェックボックスでした。

647 :名無しさん@そうだ選挙にいこう:2005/05/23(月) 18:35:27
うん。変えられないのですよ。
シートの表示倍率を大きくして大きくすることはできるんだけど、
それだと全部一緒に大きくなっちゃいます。

648 :名無しさん@そうだ選挙にいこう:2005/05/23(月) 19:03:55
そうでしたか、サンクスです〜

649 :名無しさん@そうだ選挙にいこう:2005/05/23(月) 19:51:16
【1 OSとExcelのバージョン】 Windows2000、Excel2000
【2 VBAが使えますか】 いいえ
【3 Googleやヘルプでの検索キーワード】条件に合致、複数の行、セルを返す、lookup 等いろいろです
【4 スレのFAQとログを読んだ.】このスレのみ

    A   B   C  
1  A品  135  X群
2  B品  200  Z群
3  C品  300  X群
4  D品  250  Y群

上記のような表がありまして、C列に例えばX群と
入力してあれば、その条件に合致する全ての
A列の値を別のシートに返したいのです。
C列の文字は固定ではなく、XからYに変わったり
するので、オートフィルタ→コピペをその都度
行うのもミスが出そうで・・・
よろしくお願いいたします。


650 :名無しさん@そうだ選挙にいこう:2005/05/23(月) 21:59:44
教えてください。
棒線グラフに散布図を重ねたいんですがどうすればいいのでしょうか?
棒線グラフは散布図の区間(例えば0.05〜0.06)の平均などにしたいのですが・・・
ヒントだけでもいいので教えてください。

651 :名無しさん@そうだ選挙にいこう:2005/05/23(月) 22:05:38
>>650
複合グラフ

652 :名無しさん@そうだ選挙にいこう:2005/05/23(月) 22:33:42
>>649
sheet2に
    A   B   C  
1  A品  135  X群
2  C品  300  X群
と表示するってこと?

ピボットテーブル機能を利用すると
X群の中でA列分類ごとに集計してもらえる。

式だけだと難しい。VBAしかないと思う。
それでいいのか?
とりあえず、どういう結果がほしいかしっかり書いてくれ。

653 :名無しさん@そうだ選挙にいこう:2005/05/23(月) 23:04:24
ワークシート関数は値を一つしか返せないから
「条件に一致したもの全て」ってことは出来ない。
やるなら必要数の数式を用意することになる。
一致可能性のある要素数が最大100件なら数式も100個用意することになるが
それでもいいなら元シートに行数列作って、あとは配列式で引っ張れるけど。

でも652の言うようにピボットテーブルかVBA使った方がいいと思う。


654 :名無しさん@そうだ選挙にいこう:2005/05/23(月) 23:49:17
変な質問でゴメンなさい。
計算式の結果で「+3000」って感じに、0より大きければ+を
小さければ−を表示させるにはどうしたらいいでしょうか?

655 :名無しさん@そうだ選挙にいこう:2005/05/23(月) 23:57:46
+0;-0

656 :名無しさん@そうだ選挙にいこう:2005/05/24(火) 00:19:27
+0;"±"0;-0

657 :名無しさん@そうだ選挙にいこう:2005/05/24(火) 00:22:05
>>656
正数;負数;0値;文字列

それと"±"0じゃなくて"±0"な

658 :名無しさん@そうだ選挙にいこう:2005/05/24(火) 00:35:48
エクセルのデータをコピペして貼り付けたいんですが
大量にあるためショートカットじゃなく1クリックでコピーしたいんですがそういう設定はできます?
もしくはエクセルのデータファイルを読み込めてそういうことできるソフトあれば教えてください

659 :名無しさん@そうだ選挙にいこう:2005/05/24(火) 00:36:26
コピペして貼り付けたいって文章おかしいですね、すみません

660 :名無しさん@そうだ選挙にいこう:2005/05/24(火) 00:41:32
>>658
これはおまえか?

◆こんなソフトウェアつくってください!〜Part5〜◆
http://pc8.2ch.net/test/read.cgi/software/1105208128/657

657 名前:名無しさん@お腹いっぱい。 [] 投稿日:2005/05/24(火) 00:20:24 ID:hihmxg18
   私は会社で伝票入力の仕事をしています。お客様の住所、氏名、商品名、
   金額等を会社の独自のアプリに入力するのですが、なぜかシステムの
   都合?で午後4時まで入力できません。

   なので、ひまな時に一度エクセルなどに必要なデータを入力しておいて
   入力できる時間になったら、一気にそのデータの貼り付けの作業を行える
   ソフトがあればなと思っています。

   イメージとしてはID managerなどのID、パスワード自動入力ソフトの
   ようなイメージです。ID、パスワードのデータのかわりに
   エクセルにあるデータを貼り付けてくれる・・・

   会社の独自のアプリもID、パスワード入力画面のような感じです。
   住所を入力して、Tabキー、名前を入力してTabキー・・・・
   最後にenterキーで伝票一枚終了。これを繰り返してくれるソフトが
   あれば非常に便利だと思うので、是非ともおねがいします。


661 :名無しさん@そうだ選挙にいこう:2005/05/24(火) 00:57:06
>>660
いえ、別人です
自分は単に1クリックでコピーしたいだけです
自動で入力とか必要ありません

662 :名無しさん@そうだ選挙にいこう:2005/05/24(火) 01:02:54
>>661
んじゃVBAでがんばれ。
具体的な内容が書かれてないから具体的なやり方は教えられないけど。

663 :名無しさん@そうだ選挙にいこう:2005/05/24(火) 01:22:35
>>662
具体的な内容とは?
単純にショートカットをキーボードでうつのがめんどくさいだけなので
1クリックでできればなって話なんですが
別にデータベースと連動とか全く必要ないです

664 :名無しさん@そうだ選挙にいこう:2005/05/24(火) 01:28:17
Excelのデータを「何に」ペーストしたいのか、とかいろいろあるだろうがよ…


665 :名無しさん@そうだ選挙にいこう:2005/05/24(火) 01:28:50
エクセルの【どんな】データを【なにに】コピペして貼り付けたいんですが
ショートカットじゃなく【なにを】1クリックでコピーしたいんですが

ちなみに「コピペして貼り付けたい」は
・コピー&ペーストしてペーストしたい
・複製&貼り付けして貼り付けしたい
ってなっちゃうよ。

666 :名無しさん@そうだ選挙にいこう:2005/05/24(火) 03:29:55
>>664
貼り付ける側のソフトに指定はないです
ただのエディタでもメールソフトでもなんでも
単純にショートカットをさらに簡略化したいだけなんで

>>665
ログ読んでいってもいちいちそこまで書いてないですよね
計算式について質問するのに【何のデータを計算したいので】と質問してる人ほとんどいませんし

667 :名無しさん@そうだ選挙にいこう:2005/05/24(火) 04:02:22
残念ながらナマイキ言っちゃったから放置決定
数年して皆が忘れた頃またおいでw

668 :名無しさん@そうだ選挙にいこう:2005/05/24(火) 07:09:37
IF関数を使用して以下のようにするには、どのようにすればいいでしょうか?
「もしA1のセルが空欄であれば、空欄で表示する。
それ以外であればA1セルに入力された数字を表示する。」

669 :名無しさん@そうだ選挙にいこう:2005/05/24(火) 07:30:23
=IF(ISBLANK(A1),"",A1)

670 :649:2005/05/24(火) 07:39:51
おはようございます。
>652-653さん
レスありがとうございます。
数式の結果はまさしく652さんのとおりなのですが
データをあてはめる表の書式がきまっているので
ピボは使えないんですよ。
式だけだとやっぱり難しいんですね(;´Д`)
VBAは使えないんであきらめます・・・

671 :名無しさん@そうだ選挙にいこう:2005/05/24(火) 07:55:55
>>668
この質問も定期的に出るね。
FAQの
Q:セルの内容を判断して、表示を変えたい
の例5として追加する?

672 :名無しさん@そうだ選挙にいこう:2005/05/24(火) 08:23:29
>>670
ピボットテーブルを最終的な表にする必要はないんじゃないかな。
他のシートの書式設定してるとこに、ピボットテーブルの結果だけを
表示すればいいんじゃない。
単純に参照させてもいいし、IF関数とかGETPIVOTDATA関数でもいいし。

673 :名無しさん@そうだ選挙にいこう:2005/05/24(火) 10:26:28
>>667
回答者が質問者を見下してるスレという評判を広めてる馬鹿はこいつですか?

674 :名無しさん@そうだ選挙にいこう:2005/05/24(火) 10:39:39
質問者がまともな情報を出さないからしゃーない罠

675 :名無しさん@そうだ選挙にいこう:2005/05/24(火) 10:41:54
たしかに>>667のレスは見下し感があるかもだけど、あれだけの情報で的確に答えられる回答者はいない気が。
コピーするのがシート全体なのか、セル範囲なのかもわからんし。
そもそも質問者がVBAを使えるのかどうかすら。

676 :名無しさん@そうだ選挙にいこう:2005/05/24(火) 11:11:33
やたら偉そうな奴いるよな。マジうざい。
そういう奴に限ってすべての書き込みが自分宛だと勘違いして
知らないことにまで口出して嘘回答広めたり、評判落としたり。
質問者以上にどうでもいい存在の癖に自覚が無いから困ったもんだ。

677 :名無しさん@そうだ選挙にいこう:2005/05/24(火) 11:46:11
質問者が喧嘩腰つーかやってもらって当然とふんぞり返ってるのもどうかと思うぞ…

678 :名無しさん@そうだ選挙にいこう:2005/05/24(火) 12:37:11
答えられないならスルー
それだけでいいんじゃねーの?

679 :名無しさん@そうだ選挙にいこう:2005/05/24(火) 12:42:21
まー、質問者は書籍代節約できてると思って、多少のことはガマンしたらどー?
実際ここの回答者はスゴイと思うよ。
これだけのこと自分ひとりで調べると、ほんとに大変だよ。
(やってみると判る)
2ちゃんなんだから、多少の無礼は大目に見てはどーですか

680 :名無しさん@そうだ選挙にいこう:2005/05/24(火) 12:52:16
はっきり言って回答者側は質問がヘボかろうが荒れようが困らない
しかし質問者は荒れたり答えてもらえなかったら困る
こういう立場の違いがあるんだから理不尽に感じても質問者は下手に出るべき。
少なくともここできちんとした回答が出来る奴よりは事実下手に居るんだから。

それがイヤなら金出して本買うなりパソコン教室逝くなりすればいい。
本は口答えしないし、パソコン教室では質問者が客なんだから丁寧に答えてもらえるぞ。

681 :名無しさん@そうだ選挙にいこう:2005/05/24(火) 13:05:08
時系列グラフについて

下記のようなデータでグラフを作った

日  スコア
5/1 3
5/2 2
5/3 1
5/5 3

すると入力してない5/4のグラフも下記の通り作成できてこれはおっけ。
□               □ 
□  □       □   □
□  □   □   □  □
5/1 5/2  5/3  5/4  5/5


これと同じことが 軸を日でなく 時間で行いたい
12:00 3
13:00 2
14:00 1
16:00 3
これで上記と同じようなグラフが出来るとうれしいんだが
どうにも設定がうまくいかない 時間軸項目は日付だけなんだろうか
時間(時:分:秒)には対応しないのだろうか。ボスケテ。

682 :名無しさん@そうだ選挙にいこう:2005/05/24(火) 15:30:43
>>681
http://office.microsoft.com/ja-jp/assistance/HP051984181041.aspx
> 時間、分、または秒間隔で入力されたデータから時系列グラフを作成することは
> できません。時系列軸の基本単位は、日、月、または年で設定します。

VBAで入力されていない時間を補完した表を新たに作ってグラフ作成するとか、
かな、、、



683 :名無しさん@そうだ選挙にいこう:2005/05/24(火) 16:25:47
【1     O S の 種 類    】 WindowsXP
【2 E x c e l の バ ー ジ ョ ン .】 Excel2000
【3   V B A が 使 え る か  】 いいえ
【4 Googleでの検索キーワード】 ワイルドカード 検索
【5 ヘルプでの検索キーワード】 ワイルドカード
【6 スレのFAQとログを読んだ.】 はい
〜〜〜質問内容〜〜〜
    A       B
1   a    12111111111

このような表で、IF関数を使ってA1=aで
B1が11桁の数字(文字列)で上から2番目の数字が2の時に真になるようには、
どのようにすればいいのでしょうか?
=IF(AND(A1="a"B1="?2?????????"),,)とやってみたのですが、うまくいきませんでした

684 :名無しさん@そうだ選挙にいこう:2005/05/24(火) 16:36:14
AND(A1="a",LEN(B1)=11,MID(B1,2,1)="2")
かな?

685 :名無しさん@そうだ選挙にいこう:2005/05/24(火) 16:51:33
VBAのプログラム(マクロ?)をどのファイルからでも実行できるようにしたいのですがどうすればよいのでしょうか?
ファイル1で作ったマクロを登録(?)→ファイル1を閉じてファイル2でマクロを実行。
というようなことがしたいのですが・・・教えてください。
同じようなファイルが10個ほどあるのでこのような操作を必要としています。

686 :名無しさん@そうだ選挙にいこう:2005/05/24(火) 16:55:08
>>685
マクロの保存先で「個人用マクロブック」ってのを選べないか?

687 :683:2005/05/24(火) 17:13:31
>684
LENとMIDなんて使ったことがなかったので、
こんな方法があるとは全く思いつきませんでした。
どうもありがとうございました!

688 :名無しさん@そうだ選挙にいこう:2005/05/24(火) 17:29:55
気になったので便乗質問なんですが、IF関数の条件にワイルドカードって
使えるんでしょか?

689 :名無しさん@そうだ選挙にいこう:2005/05/24(火) 18:19:13
すみません
ほかの場所で質問したのですが
「犯罪っぽいから」という理由で
教えてもらえなかったのでこちらにきました

EXCELのデータをフロッピーに保存しておいたのですが
パスワードを忘れてしまいました
パスワードを解析するいい方法があったら
教えていただけないでしょうか???

よろしくお願いします

690 :名無しさん@そうだ選挙にいこう:2005/05/24(火) 18:23:37
何のパスワード?Excelの?

691 :名無しさん@そうだ選挙にいこう:2005/05/24(火) 18:32:03
>>689

自分のファイルしか操作しないなら、そんなに犯罪っぽくないと思うけど・・

ベクターにたくさん出ています
http://www.vector.co.jp/soft/win95/util/se360399.html
とか
http://www.vector.co.jp/soft/win95/business/se354444.html

692 :名無しさん@そうだ選挙にいこう:2005/05/24(火) 18:41:47
>>688
SEARCH関数を組み合わせるとできるよ。

693 :685:2005/05/24(火) 20:55:06
>>686さん
ありがとうございます。
開いているすべてのブック、作業中のブック、○○.xls
しかありませんでした。
しかし、一つのファイルを開いておいて、ショートカットを登録することによりボタン一つでできるようになりました。
ありがとうございました。

694 :名無しさん@そうだ選挙にいこう:2005/05/24(火) 21:30:57
> ○○.xls
それってPersonal.xlsでしょ?
それが個人用マクロブックだけど。

695 :名無しさん@そうだ選挙にいこう:2005/05/24(火) 22:43:10
>>680
回答者側も困るんじゃない?
だからこのスレのはじまりあたりで喧喧諤諤してたんだろ
あれは全部質問者の議論だったとも?

>>679
お前、真性馬鹿だろ?


696 :名無しさん@そうだ選挙にいこう:2005/05/24(火) 23:28:47
>>690.691さん
そうなんです
ちょっとほかのひとに見られてはまずいものだったので
パスワードかけたのが運のつきで(涙
やってみたのですが、パスワード解けませんでした(大泣

もう少しがんばってみます

697 :名無しさん@そうだ選挙にいこう:2005/05/24(火) 23:38:54
ここでパスワードをズバリと書いてやったら相当焦るだろうな

698 :名無しさん@そうだ選挙にいこう:2005/05/25(水) 00:32:13
>>695

>お前、真性馬鹿だろ?
そうだよ、それが何か?
どんなに悪態つかれても回答寄せてるオレは真性かもな^^

こー言うもの言いされちゃー、答えるのイヤになるヤツも出て来る罠
って吊られてるオレは「お前と同じ」真性だよ

699 :名無しさん@そうだ選挙にいこう:2005/05/25(水) 00:52:33
>>698
うまいな、一票だ

695みたいな厨は適当にスルーしとけ

700 :名無しさん@そうだ選挙にいこう:2005/05/25(水) 02:12:40
【1     O S の 種 類    】 Windowsxp
【2 E x c e l の バ ー ジ ョ ン .】 Excel2003
【3   V B A が 使 え る か  】 はい
【4 Googleでの検索キーワード】
【5 ヘルプでの検索キーワード】
【6 スレのFAQとログを読んだ.】 いいえ

マクロについての質問です。
空の多次元配列(動的配列)ってどう宣言すればいいんでしょうか?
VBだと

Dim DataBase() As String

らしいですが、上記のように宣言したらエラーになってしまいました。
アドバイスください。




701 :名無しさん@そうだ選挙にいこう:2005/05/25(水) 02:37:43
結局、使う前にReDim()で要素数を決定しなくちゃ駄目なんじゃなかったっけ?

702 :名無しさん@そうだ選挙にいこう:2005/05/25(水) 06:49:56
>>681
折れ線グラフでいいなら、散布図にしたらできるよ。

703 :名無しさん@そうだ選挙にいこう:2005/05/25(水) 08:04:40
>>695

×喧々諤々(けんけんがくがく)
○喧々囂々(けんけんごうごう)
○侃々諤々(かんかんがくがく)

あまり無理して難しい言葉はお使いにならないほうが
ご自身のためかと思われます。

704 :名無しさん@そうだ選挙にいこう:2005/05/25(水) 08:25:32
全くその通りだな。
ねっ、>>703さんw

705 :名無しさん@そうだ選挙にいこう:2005/05/25(水) 08:53:12
703に一票w

706 :名無しさん@そうだ選挙にいこう:2005/05/25(水) 11:39:23
なんか最近やたら荒れるなぁ
>>695の言うことももっともだと思うぞ
偉そうに答えたいんだったら自分で掲示板つくってそこでやりなよ
質問側、回答側にもなんの義務も利潤も発生しないのが基本だよ
学校行けとか言ってるやつは自分こそ職業として教師にでもなったらどうだい?

707 :名無しさん@そうだ選挙にいこう:2005/05/25(水) 11:45:25
質問なんですが、セルの書式を全て残して、数値と文字だけを全て削除するにはどうすればいいんですか?

708 :707:2005/05/25(水) 11:47:57
範囲指定して編集→クリア→数値と値 で出来ました。すいません。

709 :名無しさん@そうだ選挙にいこう:2005/05/25(水) 12:07:31
【1     O S の 種 類    】 WindowsXP
【2 E x c e l の バ ー ジ ョ ン .】 Excel2000
【3   V B A が 使 え る か  】 いいえ
【4 Googleでの検索キーワード】crypt htaccess excel
【5 ヘルプでの検索キーワード】暗号化 crypt
【6 スレのFAQとログを読んだ.】 はい

基本(BASIC)認証のIDとパスワードを100人分エクセルで管理したいのですが、
関数かマクロで暗号化(DES)を行うことはできないものでしょうか。
perlのcrypt()関数のような感じで。
ご指導よろしくお願いいたします。

710 :名無しさん@そうだ選挙にいこう:2005/05/25(水) 15:15:54
OS:WinXP
Ver:Excel2002

オートフィルタの検索を多用する表があります。
明細が増えた時のために、コピー元を2行目に用意して非表示にしておきます。
2行目を名前ボックスから選択→必要な分だけ追加ペースト としたいのですが
オートフィルタの検索を解除するため すべて表示 にすると
非表示にした2行目までもが表示されてしまいます。
これはもう防ぎようの無いことなのでしょうか?

711 :名無しさん@そうだ選挙にいこう:2005/05/25(水) 15:23:27
>>710
自己解決しました。

コピー元をオートフィルタに使用する項目の上に置けば
すべて表示 にしても対象外となり、望んだ結果になりました。
レス消費すいませんでした。

712 :名無しさん@そうだ選挙にいこう:2005/05/25(水) 16:24:40
>>703
私の持ってる広辞苑には喧喧諤諤が載ってますよ
喧喧囂囂と侃侃諤諤を合わせてできた新語として認識されてるみたいです
ご参考までに

713 :名無しさん@そうだ選挙にいこう:2005/05/25(水) 16:38:30
>>703-705
はずい・・・


714 :名無しさん@そうだ選挙にいこう:2005/05/25(水) 16:49:40
704は気付いてるんだと思われ。
だから「ねっ、>>703さんw」なんでしょ。

715 :名無しさん@そうだ選挙にいこう:2005/05/25(水) 17:00:50
つまり
> あまり無理して難しい言葉はお使いにならないほうが
> ご自身のためかと思われます。
を、>>703に向けてるってわけか

まあなんにしても703が一番恥ずかしいことには変わりないけど

716 :名無しさん@そうだ選挙にいこう:2005/05/25(水) 17:44:47
= FAQ: ブラウザの変更 =
Q.Excelでアドレスをクリックした時に開くブラウザをIEからSleipnirなどに変更したい。
A.スレ違いです。
 開きたいブラウザの設定画面でそのブラウザを通常使うブラウザに指定してください。

これって間違ってない?

717 :名無しさん@そうだ選挙にいこう:2005/05/25(水) 18:04:07
とりあえず>>703を晒しageしておきますね

718 :名無しさん@そうだ選挙にいこう:2005/05/25(水) 18:15:11
>>712
http://dic.yahoo.co.jp/bin/dsearch?p=%B7%F6%B7%F6%EB%E0%EB%E0&stype=0&dtype=0
スレ消費スマソ

719 :名無しさん@そうだ選挙にいこう:2005/05/25(水) 18:18:38
俺頭Eeeeeee!!
と思って嘘を自信満々に言っちゃう奴なんだろうなw

720 :名無しさん@そうだ選挙にいこう:2005/05/25(水) 18:35:11
二つ三つ教えてください。

メモを付け加えた時に誰が書いたものか表示されるのですが
それを消去または変更する事は出来ますか?
その名前はメモの一番上に出てくる「名前:」と言うのではなく画面左下に出てくるものです。

時間を「分:秒」で表示させたいのですが
単純に1:43などと打つと画面上方の表示が1:43:00となってしまいます。
そして書式をmm:ssに変えたところセルの表示が43:00となってしまいました。

最後にもう一つ。
上のと関連して1分あたり何個あるのか?
と言う表を作りたいのですがどのように行えばいいですか?

誰かご教授ねがいますm(_ _)m

721 :名無しさん@そうだ選挙にいこう:2005/05/25(水) 19:51:41
>>720

>時間を「分:秒」で表示させたいのですが
>単純に1:43などと打つと画面上方の表示が1:43:00となってしまいます。
>そして書式をmm:ssに変えたところセルの表示が43:00となってしまいました。

入力するときに 0:1:43

722 :名無しさん@そうだ選挙にいこう:2005/05/25(水) 20:24:00
【1     O S の 種 類    】 Windows2000
【2 E x c e l の バ ー ジ ョ ン .】 Excel2000
【3   V B A が 使 え る か  】 いいえ
【4 Googleでの検索キーワード】
【5 ヘルプでの検索キーワード】
【6 スレのFAQとログを読んだ.】いいえ

エクセルでグラフを作ったんですけど、
横軸が-76,-74,-72,・・・,0,・・・,72,74,76
というグラフを、目盛ラベルが
-76,-70,-60,-50,-40,-30,-20,-10,0,10,20,30,40,50,60,70,76
で横軸を表示させたいんですけど、どうすればいいんでしょうか?

723 :名無しさん@そうだ選挙にいこう:2005/05/25(水) 21:05:10
>>703必死だな。。。

724 :名無しさん@そうだ選挙にいこう:2005/05/25(水) 23:00:24
セルを目立たせるために背景の色を変えたりしていますが、
背景(セル)をぴかぴか点滅させる事って出来ますか?


725 :名無しさん@そうだ選挙にいこう:2005/05/25(水) 23:14:13
>>724
マクロ使えば出来るけど。

726 :名無しさん@そうだ選挙にいこう:2005/05/25(水) 23:50:06
>>722
間は10刻みでいいけど両端の-76,+76はピンポイントで
表示したいということか?

727 :726:2005/05/25(水) 23:52:59
っていうか、722自分で調べる努力してないじゃん。釣られた〜

728 :名無しさん@そうだ選挙にいこう:2005/05/26(木) 00:08:47
【1 OSの種類】 WindowsXP Home
【2 Excelのバージョン】 Excel 2000
【3 VBAが使えるか】 はい
【5 ヘルプでの検索キーワード】 範囲指定
【6 スレのFAQとログを読んだ】 FAQは読みました

ポイント単位での範囲指定方法が分かりません。

dim r as range
set r = range(cells(1,1),cells(3,3))

↑セル単位でなくtopやwidthのポイント単位で指定したいんです。

729 :名無しさん@そうだ選挙にいこう:2005/05/26(木) 00:11:07
>>728
rangeはセル範囲を指定するものでつよ。
何をしたいかよくわかりません。

730 :名無しさん@そうだ選挙にいこう:2005/05/26(木) 00:14:34
>>728
何がやりたいのかいまいちわからん

731 :名無しさん@そうだ選挙にいこう:2005/05/26(木) 00:24:37
教えてください。
=RAND()って0になることあるの?
ヘルプでは「0 以上で 1 より小さい乱数を発生させます」
となってますが、いままで見たことないです。

732 :名無しさん@そうだ選挙にいこう:2005/05/26(木) 00:32:58
あるよ。
確率はものすごく少ないけど普通は丸めて使うものだから関係ないし。

733 :名無しさん@そうだ選挙にいこう:2005/05/26(木) 00:35:20
>>729
>>730
例えば、top,left,width,heightがそれぞれ100ポイントの矩形範囲を、
オブジェクトとして変数に代入したい。
つたわりませんかね?
まだ全然未熟なもので。

734 :名無しさん@そうだ選挙にいこう:2005/05/26(木) 00:42:30
>>733
境界になったセルをどう扱うのか知らんが
行高を1行目から、列幅をA列から取得していき、
対象に含めるかどうか判断していくしかないな。
ポイント単位で指定した範囲を一発で変数に格納するのは無理だから。

735 :名無しさん@そうだ選挙にいこう:2005/05/26(木) 00:43:09
>>731
>>732
ほんとうにある?

Sub test()
Dim r As Double
Do
  r = Evaluate("=Rand()")
Loop Until r = 0
End Sub

10分ほど走らせてみたけど、いつまでたっても終わらないよ。
セルに代入すると丸められて0になることもあるのかな?


736 :735:2005/05/26(木) 00:49:27
VBA.Rndは0になることもあるみたいだが。

737 :名無しさん@そうだ選挙にいこう:2005/05/26(木) 00:54:45
>>734
一発じゃ無理ですか、、
それが分かっただけでも助かりました。
ありがとうございます。

738 :名無しさん@そうだ選挙にいこう:2005/05/26(木) 01:06:58
>>735
RAND()の出力はちょっと見ただけで15桁ほどありそうなので、
2年くらい動かしていれば出るかも(根拠なし)。

739 :名無しさん@そうだ選挙にいこう:2005/05/26(木) 01:09:47
>>735
どのくらいの確率で発生するか考えた?

さっきAth64FX53で>>735にカウンタ(i = i + 1)付けて10秒回したら約40万だった。
カウンタ入れた分を多めに差し引いて1秒5万くらいの処理だとすると
1000000000000000(乱数のパターン数)/50000(1秒の処理)/60(秒)/60(分)/24(時間)/365(日) = 634年

まあ、最短では処理開始直後に見つかる場合もあるが、最長では数百年掛かるってことだ。
たとえば"0.5"は間違いなく発生するわけだが、丸めずに0.500000000000000に成る確率も上記と同じ。

740 :名無しさん@そうだ選挙にいこう:2005/05/26(木) 01:13:36
>>721
なるほど!
何で気付かなかったんだ…。

他のに関しても分かる方いませんか?

741 :名無しさん@そうだ選挙にいこう:2005/05/26(木) 01:32:50
>716
どこが間違ってると思うか指摘しないとただの因縁みたいだよ


742 :名無しさん@そうだ選挙にいこう:2005/05/26(木) 02:06:56
>>735
ttp://support.microsoft.com/?scid=kb%3Ben-us%3B828795&x=&y=
Excel2003のRANDのアルゴリズムだそうで、なんとなく恐ろしげではある。

743 :名無しさん@そうだ選挙にいこう:2005/05/26(木) 02:56:16
Excel 2003 で RAND 関数の使用時に負の値が返される
http://support.microsoft.com/default.aspx?kbid=834520

744 :735:2005/05/26(木) 06:21:49
>>742
よく分からないんだが周期は30269*30307*30323になるの?
vBA.Rndの周期は16777216だが。


745 :名無しさん@そうだ選挙にいこう:2005/05/26(木) 08:18:24
>>719に呼応するかのように意図のありそうな質問と回答が増えたな
>>703はそんなにヒマなのか?

746 :名無しさん@そうだ選挙にいこう:2005/05/26(木) 08:30:53
棒グラフを繋げて出したいんですがどうすればいいでしょうか?
例えばxが0〜1の間はyは3、xが1〜2の間はyは5、・・・
のように階段みたいに出したいのですがやり方がわかりません。
表をどのように作ってもいいかも分かりません
x   y
0〜1 3
1〜2 5
・・・
とできればいいのですが、「〜」の部分はどうすればいいでしょうか?
全角じゃだめだし、半角だと何を入力していいのやら・・
お願いします。

747 :名無しさん@そうだ選挙にいこう:2005/05/26(木) 08:31:21
 <誤用としている辞典>↓     <認めている辞典>↓

   『大辞林』第2版  三省堂    『広辞苑』第5版  岩波書店
   『明鏡国語辞典』  大修館書店  『成語林』初版    旺文社
   『三省堂国語辞典』        『日本国語大辞典』
        第5版  三省堂         第2版   小学館
   『日本俗語大辞典』 東京堂出版  『類語大辞典』    講談社
   『四字熟語辞典』  東京堂出版  『新明解四字熟語辞典』三省堂

   <番 外>
   『新明解国語辞典』第5版  三省堂(掲載なし)
   『四字熟語辞典』 岩波書店(「耳にするようになった」とあいまい)
   『四字熟語辞典』 大修館書店(「本来は誤り」としている)


748 :名無しさん@そうだ選挙にいこう:2005/05/26(木) 08:40:55
まだ訂正してないところもあるんだね。
まあちょっと前までは確かに誤用だったわけだし。

749 :名無しさん@そうだ選挙にいこう:2005/05/26(木) 08:50:40
>>703 もう誰もお前の事なんか気にしてないしどうでもいいから落ちつけwww

750 :名無しさん@そうだ選挙にいこう:2005/05/26(木) 09:15:09
以降、質問される方は自分が
>>703でない旨、宣言してからにしてください
でないと釣りなのかどうかわからず、マジレスできません
よろしくお願いします

751 :名無しさん@そうだ選挙にいこう:2005/05/26(木) 09:42:40
俺703じゃないんだけど、RANDワークシート関数とVBAのRnd関数(あ、ごめww VBA.Rndって
書くのがカッコイイんだったwwww)を混同させるような質問したいんだけど、どうやったらひっかけ
られますか?ひっかかった奴に、2つが違うアルゴリズムだと知ってる事をさりげなく披露してして、
やっぱり俺頭Eeeeeeeeeeeeと自慢したいのですが。
ちなみに0が出ないというのをエサにしようと思ったらうまく行かなくて困ってる人は知ってます。

752 :名無しさん@そうだ選挙にいこう:2005/05/26(木) 09:52:36
>>703がヴァカ(というか最後の煽りが間違いでカコワルイ)なのは事実だが、いつまでも粘着してるキモい奴らもとっとと消え失せてくれ。
つまらんレスでスレ消費したら過去レス検索の意味合いが低くなる。
ここはExcelの質問スレで、日本語の新語スレではない。

753 :名無しさん@そうだ選挙にいこう:2005/05/26(木) 10:16:31
>>752
ついでに
「質問のためのスレ」であって「回答のためのスレ」じゃない
質問者がいるから回答者がいるわけで
質問者の無知を嘲りたいがために回答してる椰子もいなくなれ
もーうんざり

754 :735:2005/05/26(木) 10:44:28
なんか変なのがいるな。
普通に疑問に思ったので書いただけなのだが、なんで皮肉言われなきゃならんのか。
それにどうも漏れが703のような書き方だな。


755 :703でないが:2005/05/26(木) 11:46:31
「誤用が最近認められた」という辞書は、
本当は誤用だし使うヤツはアホだが現状ではしょうがないと言ってるわけで、
703みたいに指摘するのも大人げないが、
辞書に載ってるから正しいと鬼の首を取ったように言うのはかなり恥ずかしい。
むしろ703を煽ってるのは一人だけなのではないか。

756 :735:2005/05/26(木) 11:52:31
>>739
なるほどパターン数が多ければ時間かかるね。
でも1000000000000000パターンあるの?
だれか>>742のリンクのアルゴリズム解読できる人、パターン数だけでも教えて。


757 :名無しさん@そうだ選挙にいこう:2005/05/26(木) 11:57:02
Win2k,Excel2kで、画像のサイズを変更するマクロを組んでいます。

実行時にSelectされているオブジェクトが、図でなければ処理を抜けたいのですが、
オブジェクトの種類を判別する方法、もしくは図であるかを判別する方法はありませんか?
今はOnErrorでしのいでいますが、スマートな方法があればと思いまして...

758 :名無しさん@そうだ選挙にいこう:2005/05/26(木) 12:09:04
>>757
TypeNameで調べられない?
図だったらShapeになるのかな?


759 :名無しさん@そうだ選挙にいこう:2005/05/26(木) 12:26:11
>>756
パターン数は>>739であってるよ。
本当はもっと細かいんだけど有効桁数が15だから。

760 :735:2005/05/26(木) 12:31:17
>>759
ありがd
もし有効桁数が無限だったらアルゴリズム的に周期はいくつになるんでしょう?

761 :名無しさん@そうだ選挙にいこう:2005/05/26(木) 12:39:10
>>755
スレ違い承知の助だが

「本来は誤用」なのであっても、すでに社会通念上認められていれば
それを誤用とは呼ばないし、アホではないし、「現状ではしょうがない」わけでもない。
言葉とは使う人間の了解事項でしかない。



762 :名無しさん@そうだ選挙にいこう:2005/05/26(木) 12:54:02
>>761
国語教育研究会の同級生に喧喧諤諤って使ったら「アホ」って言われた。
今になってよく考えるとやはりアホだと思う。

763 :名無しさん@そうだ選挙にいこう:2005/05/26(木) 13:03:15
2chでは「役不足」「汚名挽回」は駄目で「喧々諤々」はOKですかそうですかw
ちなみに今携帯から書いてるんだが、喧々囂々と侃々諤々は一発で出るが、喧々諤々は出ないんだが、これでも「社会通念上認められ」ていますかそうですかwww

764 :757:2005/05/26(木) 13:09:32
>>758
ありがとうございます。
今試してみたところ、セルなどと、図の判別はつくようになりました。
ただ、図でも直線でもShapeが返ってきてしまいます。
これ以上細分化する事は無理でしょうか?

765 :名無しさん@そうだ選挙にいこう:2005/05/26(木) 13:09:56
703必死だなwww

766 :名無しさん@そうだ選挙にいこう:2005/05/26(木) 13:15:52
喧々諤々なんて今まで聞いたこともないよ
本当に社会通念上認められているのかはなはだ疑問
おそらく馬鹿にされることの方が多いと思う

漏れはつい2chのクセでスクツって言って馬鹿にされるが
注意せんといかんな。

767 :名無しさん@そうだ選挙にいこう:2005/05/26(木) 13:18:45
>>762
広辞苑に載ってれば社会通念上認められてると言っても差し支えないような気がするけど
学生さんが知ってる社会って狭いのかもしれんね
「国語教育研究会」って何?

>>763
携帯買い換えてみたら出るかもよ

768 :名無しさん@そうだ選挙にいこう:2005/05/26(木) 13:23:30
>>746
これ、いろいろ試したけど上手く行かなかったよ
散布図にして
x     y
1    15
1.001  20
2    20
2.001  30
3    30

とか、ダミーの値作って線でつなげばいちおう階段状になるけど、折れ線になっちゃうね。

あとは、同じくダミーの値を作って、yの要素だけを選択して「面グラフ」を作って、
[系列]の「項目軸ラベルに使用」の所でxの要素の値だけ選択。で、x軸の[軸]タブの
「X/項目軸」を「時系列」にチェック。つまりは、xを日付シリアル値として面グラフ作るわけね。
そうすると、いちおう階段状になるけど、x軸項目が日付になるから、書式の設定で「d」(日だけ表示)
にすると、見た目だけはそれらしくなるよ。

もっと簡単な方法ありそうだけどね。知ってる人教えてplz。

769 :名無しさん@そうだ選挙にいこう:2005/05/26(木) 13:27:33
MSIMEだと
感官ごうごう、喧喧諤諤になる
馬鹿さ加減が中途半端だなWWW


770 :名無しさん@そうだ選挙にいこう:2005/05/26(木) 13:32:19
>>720
>メモを付け加えた時に誰が書いたものか表示されるのですが
>それを消去または変更する事は出来ますか?

読み取り専用みたいから、変更はできないみたいね。
いったんコメントの内容を退避しておいて、削除してあらためて新しい名前で
コメント書き直す処理をVBAで作ればいけそう

>1分あたり何個あるのか? と言う表を作りたいのですがどのように行えばいいですか?
[ツール]-[アドイン]で「分析ツール」を組み込んで、「ヒストグラム」かな
初回使用時はCD必要だったかも


771 :762:2005/05/26(木) 13:38:49
国語教育研究会が何なのか漏れもよく知らない。
中学校時代の同級生がどうもそれに属してるらしい。
ちなみに漏れは学生じゃないよ。

772 :名無しさん@そうだ選挙にいこう:2005/05/26(木) 14:36:30
>>761
「本来は誤用だが最近は通用している」と知っている人は、わざわざその語は使わないでしょ。
つまり、使ってるのは、細かい意味は知らないがなんとなく使ってるという人なので、
アホ扱いされるのは仕方ないと思う。

773 :名無しさん@そうだ選挙にいこう:2005/05/26(木) 14:39:16
>>769
俺の仕事用に強まったIMEだと
喧々((((;゚Д゚)))ガクガクガクブルブルブル
になるぜ

774 :名無しさん@そうだ選挙にいこう:2005/05/26(木) 14:45:33
「本来は誤用だが最近は通用している」と知っている人は>>703みたいに煽らないわな

775 :709:2005/05/26(木) 15:06:06
レスが無いのは、タイミング悪すぎたのかな・・・。
703だと思われちゃったのかな・・・。

。・゜・(ノロ`)・゜・。

776 :名無しさん@そうだ選挙にいこう:2005/05/26(木) 15:28:05
諤々厨どもはそろそろ別スレに移動すべきだろ

777 :名無しさん@そうだ選挙にいこう:2005/05/26(木) 16:29:35
1 OSの種類】 WindowsXp
【2 Excelのバージョン】 Excel2002
【3 VBAが使えるか】 少しわかる
【4 Googleでの検索キーワード】excel ふりがな
【5 ヘルプでの検索キーワード】 ふりがな
【6 スレのFAQとログを読んだ】 はい

別のシートの名前のデータを

=sheet2!a1

という風に表示するようにしたのですが、ふりがなが表示されません

もちろん【書式】→【ふりがな】→【表示/非表示】をやってみましたが
ダメでした

直接名前を入力したセルに対してはふりがなをふれるけど、関数などで
表示したデータには、ふりがなふれないんでしょうか?

関数使わずにマクロ使うか、データをコピペするしかないんでしょうか?
できればマクロ使わないで表示できればなぁ・・と思います
もちろんPHONETICで別セルに出すことも考えましたが
見栄えがあまりよくないので・・・

よろしくお願いします

778 :初心者:2005/05/26(木) 17:15:57
友人のExcelをこぴーして自分のPCに入れることって可能なの?
それともやっぱり買わないといけないの?まじでだれか教えて〜


779 :名無しさん@そうだ選挙にいこう:2005/05/26(木) 17:33:08
誰も釣られるなよw

780 :名無しさん@そうだ選挙にいこう:2005/05/26(木) 17:34:12
>>777
表示だけでいいなら、
1:参照元のセルであらかじめふりがなを表示させておく
2:参照元を[コピー]
3:牛の角が耳の上にあるか下にあるかを思い出す
4:コピーしたセル(範囲)と同じ大きさのセル(範囲)を用意し、そこを選択
5:Shiftを押しながら[編集]-[図のリンク貼り付け]
で、「図として」ふりがなごとリンク貼り付けできるよ

781 :名無しさん@そうだ選挙にいこう:2005/05/26(木) 17:37:04
ええと、Wordのように上下、左右各方向に選択範囲を中央揃えするのは不可能だっけ?

あと、1セル内に斜線を引くまでは分かるけれど、斜線で出来た三角形の中に
テキストボックスで文字を埋め込むと恐ろしく小さくなるんだけれど
セルを大きくして対処するしかない?

782 :名無しさん@そうだ選挙にいこう:2005/05/26(木) 17:56:08
>>780
3の手順でつまづいて上手くいかんとです。

783 :名無しさん@そうだ選挙にいこう:2005/05/26(木) 17:57:06
>>775
自分で作るしかないお(.netだと暗号化用のライブラリがあるお)。
アルゴリズム&コードは、
ttp://www.onicos.com/staff/iz/amuse/javascript/expert/
さんのとこが有名ですよ。JavaScriptだけど、これで暗号化したものを
Excelの表に貼りつけて管理してもいいでしょうし、VBAでこのモジュールを作ってしまってもいいと思うよ。
暗号/複合用のモジュールは、表のブックとは別に保存しておいた方がいいよね。

それか、もうブックごと暗号化してしまっても構わないお。例えばこんなツール。
ttp://www.vector.co.jp/soft/win95/util/se256260.html

でも、一番いいのは、その表のブックを誰にも触れないところに保管しておくことだお。


784 :名無しさん@そうだ選挙にいこう:2005/05/26(木) 18:37:22
【1     O S の 種 類    】 WindowsXP
【2 E x c e l の バ ー ジ ョ ン .】 ExcelXP
【3   V B A が 使 え る か  】 いいえ
【4 Googleでの検索キーワード】 エクセル 印刷 伏字|エクセル 印刷 初心者
【5 ヘルプでの検索キーワード】 伏字|印刷
【6 スレのFAQとログを読んだ.】 はい

コメント機能は分かるのですが、それとは別に、
印刷時に、特定の文字だけを印刷しないという設定はできますか?
データは消さずに、そのまま使いたいのです。

その都度置換して削除なりをするしかないでしょうか?

785 :709:2005/05/26(木) 20:07:45
>>783
いや、安全のために暗号化して保管したいのではないんです。
単にptpasswdを作るために大量にDES暗号化処理がしたいだけで・・・。

ttp://mikeneko.creator.club.ne.jp/~lab/perl/des/
ttp://www.shtml.jp/htaccess/basic.html

ではphpで処理してますよね。これをエクセル上で関数かマクロとして使えたらなあと・・・。

すみません、私たぶん無理なこと言ってますね、教えて厨ですみません、
無知ですみません、生きててすみません。

786 :名無しさん@そうだ選挙にいこう:2005/05/26(木) 22:51:44
>>733-734
>>737

で会話が成り立っているのが不思議 w
なんか>734をみると、単にテキストボックスやオートシェープ
を指定した大きさで描画したいのかとも思えるが、、、


787 :名無しさん@そうだ選挙にいこう:2005/05/26(木) 22:56:05
>>764
そういうときはウォッチで直線と図のプロパティ見れは
区別できるか探せるよ。

788 :名無しさん@そうだ選挙にいこう:2005/05/26(木) 22:58:59
読解力の無い子は黙ってなさい

789 :名無しさん@そうだ選挙にいこう:2005/05/26(木) 23:26:57
>>784
1:「特定の文字」とは、印刷範囲の該当セルに全て同じ文字列が
  入ってるということですか?
 【例】c1〜c10に「東京」と入っていて、「東京」という文字列を印刷
    しないようにしたい
2:「特定の文字」とは、ひとつの文字列の一部分ですか?
 【例】c1〜c3に「神奈川県」「愛知県」「福岡県」と入っていて、
    「県」のみを印刷しないようにしたい
3:印刷はカラーですか?白黒ですか?
4:(白黒の場合のみ)セルの背景色や文字色を変えていますか?


「2」を除くという場合なら、「条件付書式」で文字色を背景色と同色に
することで対応できるかと思います。
(印刷範囲外に作業セルを設け、条件付書式で「数式が」を選択。
「=該当セル=作業セル」とし、文字色を背景色と同色に。こうすれば作業セル
に値を入れなければ通常通り表示され、入れれば文字が消えたように見えます)

VBAなら印刷対象のセル範囲に特定の文字が含まれるかを調べ、
その場合は背景色と文字色を同色にして印刷→印刷後元に戻す
というコードを書けば対応できるかと思います。

790 :789:2005/05/26(木) 23:29:02
「2」の場合も、文字列操作関数を利用すれば可能と思いますが、
勉強不足で俺には説明できませんw
エロい人に教えてもらってください。

791 :名無しさん@そうだ選挙にいこう:2005/05/26(木) 23:59:31
>>784
Sub HUSE()
  HUSE = Range("A1").Value
Application.ReplaceFormat.Font.ColorIndex = 2
Cells.Select
Selection.Replace What:=HUSE, Replacement:=HUSE, ReplaceFormat:=True
End Sub

792 :名無しさん@そうだ選挙にいこう:2005/05/27(金) 11:52:04
質問です。
2003を使っているのですが、グラフのグラフエリアにテクスチャを
付けようとしたとき、テクスチャが表示されません。
シート上で表示されないのも困るんですが、ボックスでの選択時にも
すでに表示されないので、選びようがない状態です。
いつも起こるわけではないのですが、何が原因なんでしょう?
わかる方教えてください。

793 :784:2005/05/27(金) 12:53:57
>>789-790
ありがとうございました。

印刷は白黒です。
「特定の文字」というのは、「指定したセル」という感じです。
特に決まっているものではなく、印刷だけはしたくないというセルです。
記入の際に式か何かで指定する感覚で、「印刷しないマーク」のようなものを付けたかったのです。

色を変更するというのは盲点でした。
さっそく試してみたいと思います。

794 :名無しさん@そうだ選挙にいこう:2005/05/27(金) 14:43:52
>>770
ありがとうございました!
やってきます。

795 :名無しさん@そうだ選挙にいこう:2005/05/27(金) 15:41:30
エクセルでドラッグせずにカーソル動かすだけで範囲選択してしまって
抜け出せません。解除方法ありますか?


796 :名無しさん@そうだ選挙にいこう:2005/05/27(金) 15:51:44
>>795
ウチの会社のは左右同時クリックで治ります。

797 :名無しさん@そうだ選挙にいこう:2005/05/27(金) 16:03:06
誰かいい方法教えてください。
2003です。
たとえばA1セルをドロップダウンリストで選ぶと次に続く言葉の候補がB列に表示されるというのを作りたいのですが。
他にもBOXに入力すると候補が出るというのを作ったのですがいまいちで、、、
A1候補がB列さらにB列を選ぶとC列に表示されるとさらにいいのですが、、、
無理でしょうか?

798 :名無しさん@そうだ選挙にいこう:2005/05/27(金) 16:07:23
【1     O S の 種 類    】 WinXP
【2 E x c e l の バ ー ジ ョ ン .】 Excel2002
【3   V B A が 使 え る か  】 少し
【4 Googleでの検索キーワード】 excel 一括置換 / excel 置換 リスト
【5 ヘルプでの検索キーワード】
【6 スレのFAQとログを読んだ.】 はい
〜〜〜質問内容〜〜〜
sheet1に200種類程度の商品コードが羅列されています。
これをsheet2に記載されている、商品コードと商品名の対応リストに基づいて、
商品コード→商品名の置換を一括して行いたいのです。
sheet1 商品コードを
1005
1002
1003
1005

sheet2 置換リストで
1001 みかん
1002 りんご
1003 しいたけ
1004 もも
1005 きゅうり

一括置換したい
きゅうり
りんご
しいたけ
きゅうり

799 :795:2005/05/27(金) 16:07:44
>>796
ありがとうございました!

800 :名無しさん@そうだ選挙にいこう:2005/05/27(金) 16:57:15
>>798
VLOOKUP関数を使えば?
コードが入力されている列は非表示にすればいい

801 :名無しさん@そうだ選挙にいこう:2005/05/27(金) 17:28:36
>>798
>>800さんのが手っ取り早いと思いますが、
どうしても商品コードを入力したセル自体
が商品名に変換されたほうがいいのなら、
やはりVBAでしょうね。
俺は恥ずかしながらVBA勉強中なので間
違ってるかもですが、
イベントプロシージャで「商品コードセル
に値が入力されたら、そのセルにVLOOKUPの
結果を格納」でいいでしょうか?VBAを
使えるエロい人w

802 :名無しさん@そうだ選挙にいこう:2005/05/27(金) 18:09:00
>>797
確か田中亭にサンプルがある

803 :名無しさん@そうだ選挙にいこう:2005/05/27(金) 19:09:46
>>802

これのことか?
http://www.officetanaka.net/excel/function/tips/list.htm

804 :名無しさん@そうだ選挙にいこう:2005/05/27(金) 19:29:53
【1     O S の 種 類    】 Windows XP
【2 E x c e l の バ ー ジ ョ ン .】 Excel 2003
【3   V B A が 使 え る か  】 いいえ
【4 Googleでの検索キーワード】 エクセル 時刻
【5 ヘルプでの検索キーワード】 時刻
【6 スレのFAQとログを読んだ.】 はい 現行スレのみ

時刻t1 3分03秒89
時刻t2 6分27秒24



というふうに時刻がたくさんあります。
これらの差をとり、差を100で割って、x秒xxxxと表示させていのですがどうしたらよいでしょうか?
xx時xx分ならできたのですが、1秒未満の部分(100分の1秒と10分の1秒の部分)が表せずに困っています。
どなたかお助けください。

805 :名無しさん@そうだ選挙にいこう:2005/05/27(金) 19:33:17
>>798
Dim buf() As String, i As Long
With Worksheets("Sheet2")
 ReDim buf(.Cells(1, 1).Value To .Cells(65536, 1).End(xlUp).Value)
 For i = 1 To .Cells(65536, 1).End(xlUp).Row
  buf(.Cells(i, 1).Value) = .Cells(i, 2).Value
 Next i
End With

With Worksheets("Sheet1")
 For i = 1 To .Cells(65536, 1).End(xlUp).Row
  .Cells(i, 1).Value = buf(.Cells(i, 1).Value)
 Next i
End With

こんなかんじかな。
Sheet1は"1005"がA1セル、Sheet2は"1001"がA1セルの場合で書いてるから
違うなら適当に書き換えて。
あとSheet2はコードの列でソートしておくこと。

806 :名無しさん@そうだ選挙にいこう:2005/05/27(金) 19:44:35
>>804
mm"分"ss"秒".00
ss"秒".000

仕様で"秒"のあとにカンマ入れなくちゃならないけど。
因みにExcelの時刻形式で1/1000以下を扱うのは無理。
やるなら独自形式でやるしかないな。

807 :804:2005/05/27(金) 22:44:40
>>806
レスありがとうございます!
実際にやってみると下のようになりました。
やはり小数点以下の秒数がちゃんと表示されずうまくいきません。
どうしたらよいのでしょうか?

A(時間)..B(分)....C(秒).....D(1/100秒)........E.=TIME(A,B,(C+D/100))

0........0.........1........16................00分01秒.00
0........0........19........49................00分19秒.00
0........0........40.........3................00分40秒.00
0........1.........0........63................01分00秒.00
0........1........21.........3................01分21秒.00
0........1........41........66................01分41秒.00
0........2.........2........35................02分02秒.00
0........2........22........83................02分22秒.00
0........2........43........30................02分43秒.00
0........3.........3........89................03分03秒.00
0........3........24........38................03分24秒.00
0........3........44........90................03分44秒.00
0........4.........5........49................04分05秒.00
0........4........26........12................04分26秒.00
0........4........46........62................04分46秒.00
0........5.........7........11................05分07秒.00
0........5........27........59................05分27秒.00
0........5........48.........0................05分48秒.00
0........6.........6........62................06分06秒.00
0........6........27........24................06分27秒.00

808 :名無しさん@そうだ選挙にいこう:2005/05/27(金) 22:53:54
>>807
TIME関数自体が1秒以下を扱わない仕様だからそういう使い方は無理
0:0:1.16って入力すればちゃんと表示されるし
四則計算ではちゃんと1秒以下の値も計算される。

809 :名無しさん@そうだ選挙にいこう:2005/05/27(金) 22:59:17
次スレからスレ分割しない?
VBA厨スレと一般スレとか
初心者スレとそれ以外とか

810 :804:2005/05/27(金) 23:03:44
>>808
レスありがとうございます!
TIME関数は秒までしか扱ってくれないんですね(泣
関数使わずにxx:xx:xx.xxで入力してやってみます。

811 :名無しさん@そうだ選挙にいこう:2005/05/27(金) 23:20:57
>>809
分割しなくていいよ。VBAスレもちゃんとあるし。
そこまで流れが早いわけでもないし。

812 :名無しさん@そうだ選挙にいこう:2005/05/27(金) 23:25:27
>>809
分割したところで質問者は意図したようには流れないものだよ。
というか分割する必要も無いし、ム板にはVBAスレがあるし、
PC初心者板にはOfficeソフト総合の初心者質問スレもある。


次スレは分割なんてせず、テンプレは>>28の簡素化バージョンってことで

813 :名無しさん@そうだ選挙にいこう:2005/05/27(金) 23:40:26
この板もID制になればいいのになあ。
そうすればろくに回答も出来ないのに
煽りだけは一人前の奴が一目でわかるのに。

814 :名無しさん@そうだ選挙にいこう:2005/05/27(金) 23:47:31
ID出たところで●持ちなら串使ってID変え放題だし
●無しでも使える串探すツールもあるし
ADSLはつなぎ直せばID(というかIP)変わるし
ってことで意味ねーよ
自演ミスったときにプチ祭りになるくらいで

815 :名無しさん@そうだ選挙にいこう:2005/05/28(土) 00:27:20
>>809
答える気も能力もないのに相談所スレに居座りそうなバカ専用スレとかな。

816 :名無しさん@そうだ選挙にいこう:2005/05/28(土) 00:29:46
>>810
TIME関数じゃなくて
E1=(((D1/100+C1)/60+B1)/60+A1)/24
としたらできるよ。

817 :名無しさん@そうだ選挙にいこう:2005/05/28(土) 00:59:54
>>797
前スレで全く同じ質問がありました。ログ残ってたので貼っておきます。

681 名前:名無しさん@そうだ選挙にいこう 投稿日:2005/04/21(木) 20:53
(A1の選択肢)
関東
中部
関西

(A2の選択肢)
・A1で関東を選んだ場合→東京 神奈川 千葉
・A1で中部を選んだ場合→名古屋 三重
・A1で関西を選んだ場合→大阪 京都 奈良

と、A1の結果によって、A2の選択リストを変化させたいのですが
こういうのは不可能でしょうか?
選んだ項目は両方とも別シートに反映させたいのですが・・・

685 名前:名無しさん@そうだ選挙にいこう 投稿日:2005/04/21(木) 21:32

INDIRECTと名前定義を使うのが定法。
言葉で説明するのがマンドクサイので、こちらをどうぞ。
http://www.google.co.jp/search?q=EXCEL%E3%80%80%E3%83%AA%E3%82%B9%E3%83%88%E3%80%80%E9%80%A3%E5%8B%95&hl=ja&c2coff=1&rls=GGLD%2CGGLD%3A2004-40%2CGGLD%3Aja


686 名前:名無しさん@そうだ選挙にいこう 投稿日:2005/04/21(木) 21:59
>>685
うわーーーこれですこれ!
こんなこともできるんですね、ありがとうございました!!!!


818 :名無しさん@そうだ選挙にいこう:2005/05/28(土) 09:20:54
うわーーーこれですこれ!
こんなこともできるんですね、ありがとうございました!!!!

819 :名無しさん@そうだ選挙にいこう:2005/05/28(土) 12:01:27
2乗を入力したいのですが、小さい2はどうやったらだせますか?


820 :名無しさん@そうだ選挙にいこう:2005/05/28(土) 12:20:45
>819
表示は上付きで出来るけど、計算は別になるよ。

821 :819:2005/05/28(土) 12:34:57
表示のほうを教えてほしいです。

822 :名無しさん@そうだ選挙にいこう:2005/05/28(土) 15:08:57
以前、普通にエクセル上にGIFアニメを貼ってた記憶があるのですが、
今やってみたら、貼れますが動きません。
何か方法とか動く条件とかあるのでしょうか?

823 :名無しさん@そうだ選挙にいこう:2005/05/28(土) 20:02:25
【1 OSの種類】 Windows XP
【2 Excelのバージョン】 Excel2002 SP3
【3 VBAが使えるか】 はい
【4 Googleでの検索キーワード】 "ほかのデータソースへのリンク"
【5 ヘルプでの検索キーワード】 リンク
【6 スレのFAQとログを読んだ】 はい
〜〜〜質問内容〜〜〜
 200以上の xls ファイルの特定のシートから、セル値を抜き出すマクロを作成しています。
   Set WB = CreateObject("Excel.Application").Workbooks.Open(CurDir & "/" & filename)
この式でファイルをオープンしているのですが、いくつかのファイルをオープンしたときに
ポップアップで「このブックは、ほかのデータ ソースへのリンクが含まれています。(後略)」
という Information が出てしまいます。
 とりあえず、Excel 本体の「ツール」→「オプション」の「編集」タグ内にある
「リンクの自動更新前にメッセージを表示する」のチェックボックスを外して、
ファイルクローズ時に
   WB.Close False
という指定でファイルの保存をしないようにして、とりあえず問題のポップアップを抑止することはできました。
 しかし、他のPCでこのマクロを実行するたびにオプションの設定をするのは面倒なので、
マクロで件のポップアップの抑止をしたいのですが、何かよい方法はありませんでしょうか?

824 :名無しさん@そうだ選挙にいこう:2005/05/28(土) 21:40:30
【1 OSの種類】 WindowsXP
【2 Excelのバージョン】 Excel 2000
【3 VBAが使えるか】いいえ
【4 Googleでの検索キーワード】
【5 ヘルプでの検索キーワード】
【6 スレのFAQとログを読んだ】 はい


日12345
在庫量132と8531と17

のようなデータを元に一つの棒グラフを作成したいのです。
同じx軸に二つの値がある場合、直線で結ばせたいのですが、どのようにしたらいいのでしょうか

825 :824:2005/05/28(土) 21:43:16
タブ使ってました。すみません。

y軸   日    1  2    3  4  5
x軸   在庫数 13 2と8  5  3  1と17

こんな感じです

826 :名無しさん@そうだ選挙にいこう:2005/05/28(土) 21:57:14
> 直線で結ばせたい
がよくわからんが、普通は↓こんなかんじにしないか?
                        ┌─┐
┌─┐                  │入│
│在│┌─┐            │庫│┌─┐
│庫││入│            │  ││在│
│  ││庫│┌─┐      │  ││庫│
│  ││  ││在│      │  ││  │
│  ││  ││庫│┌─┐│  ││  │
│  │├─┤│  ││在│├─┤│  │
│  ││在││  ││庫││在││  │
┴─┴┴─┴┴─┴┴─┴┴─┴┴─┴

827 :777です:2005/05/28(土) 23:58:50
>780

できました
たぶん大丈夫だと思います
ありがとうございました

でも牛の角って?

828 :名無しさん@そうだ選挙にいこう:2005/05/29(日) 01:25:50
>>827
耳の上に角があるのが牛で、角の下に耳があるのがベコです。

829 :名無しさん@そうだ選挙にいこう:2005/05/29(日) 01:46:34
mac OSX 
Excel2004 VBA可 

時間の入力を簡素化したいため「.」を「:」変換したいのですが
オートコレクトでやるとExcel全体が影響を受けます
特定のファイル、特定のセルだけでそういう風にしたいのですが
できますか?

830 :名無しさん@そうだ選挙にいこう:2005/05/29(日) 01:59:37
>>829
いっそのことキーボードのキー入れ替えソフトをデータ入力時
のみいれてテンキーの . を : にするとか、そっちで考えたほうが
よさそうですよ。

831 :名無しさん@そうだ選挙にいこう:2005/05/29(日) 02:05:09
妥協案 オートコレクト「..」で「:」

832 :829:2005/05/29(日) 02:11:33
>>830 FM+WINでやりかけて止めました
>>831 なるほど、もう少し工夫して採用します

有り難うございます

833 :名無しさん@そうだ選挙にいこう:2005/05/29(日) 02:12:17
>>829
VBA使えるならWorksheet_Changeイベントで変換させればいいじゃん


834 :829:2005/05/29(日) 02:22:07
>>833
VBAで自動化したボタンは使ってますが、詳しくないまま遠ざかってました
なるほど、埋め込みで設定できるのですね、WEB検索でわかりました
試してみます

835 :824:2005/05/29(日) 11:57:05
またまた違ってました。すみません。
棒グラフでなく折れ線グラフでした。

棒グラフだと>>826さんのように出来るのですが、
折れ線グラフだと2つの線が出来てしまい、1つの線で表示させることが出来ないのです。

836 :名無しさん@そうだ選挙にいこう:2005/05/29(日) 12:10:14
【1 OSの種類】 XP
【2 Excelのバージョン】 2003
【3 VBAが使えるか】 少し
【4 Googleやヘルプでの検索キーワード】 罫線 自動化 マクロ

日程表などでたとえば

  15     18  

15日から18日まで下に罫線を自動で入力されるマクロなんてありますか?
オートシェイプで線が自動に引かれてもいいです。

説明へたくそでm(。・ε・。)mスイマソ-ン

837 :名無しさん@そうだ選挙にいこう:2005/05/29(日) 13:07:59
自動化の条件は?
「いつ」「どんな判断」で罫線引くのさ?

838 :名無しさん@そうだ選挙にいこう:2005/05/29(日) 13:09:18
>>835
合計を計算させる→グラフ

839 :名無しさん@そうだ選挙にいこう:2005/05/29(日) 13:26:02
>>837
説明へたくそですみません。
他のセルは何も入力されていない状態で15日のセルに15などと入力されると自動的にって感じです。
ただ、そのセルだけなら簡単そうなのですが、その4つ隣に同じように入力されるとそこまで罫線が繋がるという仕組みに
したいのです。


840 :名無しさん@そうだ選挙にいこう:2005/05/29(日) 14:10:19
>>839
きちんと条件書かないとわからないよ
4  7   10
だったらどうするんだ?
とかな。

841 :名無しさん@そうだ選挙にいこう:2005/05/29(日) 14:16:08
>>839
たとえば 18 を入力し終わった時点でイベントを取得
入力セルの左側に数字が入力してあれば離れていても
その左の数字のセルから入力したセルまで罫線を引く

でいいんだろ?
1)イベントをヘルプで調べる
2)自動マクロで罫線引くときのプログラムを調べる

これで終わりジャン。

842 :名無しさん@そうだ選挙にいこう:2005/05/29(日) 14:30:29
>>839
シートにマクロを書くこと
データを削除したときに罫線を消去する操作が必要なら
あとは自分でやってください。
--
Private Sub Worksheet_Change(ByVal Target As Range)
Dim r As Range
If Target.End(xlToLeft).Text <> "" Then
Set r = Range(Target.End(xlToLeft), Target)
r.Borders.LineStyle = xlNone
With r.Borders(xlEdgeBottom)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
Target.Select
End If
End Sub

843 :名無しさん@そうだ選挙にいこう:2005/05/29(日) 15:31:12
officeXPを使っています。質問です。
E1からE200までメールアドレスが入力されているのですが、
この200人にBCCで同じ文章を送信しようと思っています。
ホットメールからメールしたいので、メールアドレスの間に;をうたなければいけません。
しかしいちいちエクセルからホットメールにコピーアンドペーストしていては時間がいくらあってもたりません。
良い方法ないでしょうか?

844 :名無しさん@そうだ選挙にいこう:2005/05/29(日) 15:59:43
ホットメールにこだわると?
csv形式にした後、Outlook Express のアドレス帳に取り込む。
新しいグループに全員登録したのち、宛先をグループ指定して一括送信。
は、許されないのですか?

845 :名無しさん@そうだ選挙にいこう:2005/05/29(日) 16:50:10
細かいオートシェープがたくさんあり、それらを範囲指定などして
まとめて消せますか?
今やってる方法はひとつひとつ選んで切り取りで消しています。
効率悪くてしょうがありません。


846 :名無しさん@そうだ選挙にいこう:2005/05/29(日) 16:57:56
>>845
Ctrl押しながらクリックすれば複数選択できるから、
まとめてさくじょ

847 :名無しさん@そうだ選挙にいこう:2005/05/29(日) 17:02:01
>>845
F5(ジャンプ機能)→セル選択→オブジェクト

848 :名無しさん@そうだ選挙にいこう:2005/05/29(日) 17:04:53
>846
すみません。オートシェプで作ったのは複数選択できませんでした。


849 :名無しさん@そうだ選挙にいこう:2005/05/29(日) 17:24:19
>>847
できました。ありがとうございます。
では、ひとつのシートに10ページくらいあり
5ページ目だけのオートシェープだけを消すと言う事も可能ですか?

850 :名無しさん@そうだ選挙にいこう:2005/05/29(日) 17:34:12
>>849
改ページプレビューでも使ってんのかな?
図形描画ツールバーを出し、
オブジェクトの選択(矢印のアイコン)を
使用したほうがいいのもね。

851 :名無しさん@そうだ選挙にいこう:2005/05/29(日) 17:55:48
あっ、Shiftキー押しながら選択できました。

解決です。

852 :名無しさん@そうだ選挙にいこう:2005/05/29(日) 18:00:41
>>842
ありがとございます。ただ
>>840
さんが言われてますように連続すると繋がってしまうのですよね、、、自分もそう思っていたのですが解決方法
が思いつかなくてこちらでお聞きしたのです。やはり他の場所で15から18など入力させてその値に相当するセルが
色が変わるなり、罫線が引かれるなどしないとだめかなぁ、、

853 :名無しさん@そうだ選挙にいこう:2005/05/29(日) 20:31:01
>>852
ようはどうしたいのかが分からないからなにもいえないのだよ。

854 :名無しさん@そうだ選挙にいこう:2005/05/29(日) 22:48:51
エクセルの表を
列の区切りは「,」
行区切りは「/」の、
テキストに書き出ししたい。
マクロでどう書けばよいのでしょう?

855 :名無しさん@そうだ選挙にいこう:2005/05/29(日) 23:23:57
>>854
WriteやPrintステートメントだと最後に改行が入るから、行区切りを / にしたいなら
FSOのWriteメソッドで書き込めばいいよ。
詳しくはヘルプやMSのリファレンスでも読んでね。

856 :名無しさん@そうだ選挙にいこう:2005/05/30(月) 11:18:28
【1 OSの種類 / Excelのバージョン】WinXP Excel2002
【2 Googleやヘルプでの検索キーワード】配列 一次元 二次元 多次元 分離 抽出 切り出し
【3 VBAが使えるか】はい

VBAの二次元配列の一部を一次元配列にしたいのですが、どうすれば良いのでしょうか?
たとえばbuf(2,3)という配列は
00 10 20 30
01 11 21 31
02 12 22 32
という要素を持ちますが、これを
┌─┐┌─┐┌─┐┌─┐
│00││10││20││30│
│01││11││21││31│
│02││12││22││32│
└─┘└─┘└─┘└─┘
buf1(2) buf2(2) buf3(2) buf4(2)
という4つの一次元配列に分けたり
┌──────┐
│01 11 21 31│buf1(3)
└──────┘
だけを切り出したりしたいのです。
今はForNextで地道に書き出してますが
何か良い方法をご存じでしたらご教示ください。
一次元配列にする理由はJoin関数やFilter関数など
一次元配列しか扱えない処理を行うためです。
諸事情により最初から複数の一次元配列に値を格納しておくことは出来ません。

857 :名無しさん@そうだ選挙にいこう:2005/05/30(月) 11:58:43
2S+5B≦600
1S+0.5B≦120
B≦110
S≧0andB≧0
この制約条件をエクセルを使ってグラフに表したいんですけど、
どうすればいいのでしょうか?
初心者なので詳しく教えてください。

858 :名無しさん@そうだ選挙にいこう:2005/05/30(月) 15:46:50
>>857
2S+5B=600のグラフは、
   A   B
1  0   300
2 120   0

と入力してA1からB2を選択、グラフウィザードで散布図を選択。
メニューの グラフ→近似曲線の追加 でおk。
あとは工夫して。

859 :名無しさん@そうだ選挙にいこう:2005/05/30(月) 16:07:04
>>857
http://pc8.2ch.net/test/read.cgi/pcqa/1112158351/941
マルチ!マルチ!マルチ!マルチ!マルチ!マルチ!
マルチ!マルチ!マルチ!マルチ!マルチ!マルチ!
マルチ!マルチ!マルチ!マルチ!マルチ!マルチ!


860 :名無しさん@そうだ選挙にいこう:2005/05/30(月) 17:03:14
>>856
Forじゃない方法なら、
bufをどこかのセル範囲に書き出しておいて、
それのColumnsやRowsを利用する、とかかなぁ。

Forよりスマートとはいいがたいですが。

861 :名無しさん@そうだ選挙にいこう:2005/05/30(月) 20:40:57
>>858
ありがとうございます

862 :名無しさん@そうだ選挙にいこう:2005/05/31(火) 11:51:00
【1     O S の 種 類    】 Windows2000
【2 E x c e l の バ ー ジ ョ ン .】 Exce2002
【3   V B A が 使 え る か  】 はい(自分自身は使いこなせません)
【4 Googleでの検索キーワード】 一覧 シート ハイパーリンク
【5 ヘルプでの検索キーワード】 一覧 シート ハイパーリンク
【6 スレのFAQとログを読んだ.】 はい

シートがかなり多くなっているので、一覧から
ハイパーリンクにとばす事を考えています。
シート一覧を取得する処理は、
「ミコの黄色いおうち」様からVBAを借用してできました。
ただ一つ一つに右クリック→ハイパーリンク…とやるのは
結構手間がかかるので一覧取得と同時にハイパーリンクを
はることはできないかと思って投稿しました。



863 :名無しさん@そうだ選挙にいこう:2005/05/31(火) 13:02:12
【1 OSの種類 / Excelのバージョン】WinXP Excel2000
【2 Googleやヘルプでの検索キーワード】ユーザーフォーム、VBA
【3 VBAが使えるか】ほぼ初心者。

ユーザーフォームについてご質問させて下さい。
入力項目をボタン化しているのですが、数が多くなってしまい、整理の為に
ユーザーフォームで「ボタンパレット」を作ろうと思いました…。
ネットで調べて、なんとかユーザーフォームを使って、コマンドボタンを作り、
今まで日付入力で使用していたSelection.Value = Format(Now( ),"mm/dd") を
ボタンに登録する事は出来ましたが、Ctrlを押しながらセルを選択して、
ボタンパレットからボタンで複数のセルに一括入力する事が出来ません。
フォームを開きながら(表示したまま)セル選択は出来ないのでしょうか?

ご回答宜しくお願い致します。



864 :sage:2005/05/31(火) 13:15:35
エクセルの関数の事で教えてもらいたいのですが。
IFの条件で時間を12:00〜13:00と入れたいのですが、時間帯の指定は出来ないのでしょうか?
分かる方 教えてください。

865 :829:2005/05/31(火) 13:24:08
>>829で相談し、Worksheet_Changeのアドバイスを
受けて色々やったのですが、次のセル拾ったりして
上手く行きません

入力された文字からReplaceで置換して戻すには
どうしたらいいですか、ヒントください?

866 :名無しさん@そうだ選挙にいこう:2005/05/31(火) 16:15:44
>>862
具体例が無いとなんとも

>>863
ユーザーフォームをモードレスで呼べばフォーム起動中もワークシートの操作はできますよ。
プロパティから「ShowModel = False」に設定するか、
呼び出すときに「ユーザーフォーム.Show(vbModeless)」で呼んでください。

>>864
条件式にAND関数を使えば出来ますよ
AND(A1>=TIME(12,0,0),A1<=TIME(13,0,0))

>>865
Private Sub Worksheet_Change(ByVal Target As Range)
 Dim buf As Variant
 Application.EnableEvents = False
 buf = Split(Target.Value, ".")
 Target.Value = buf(0) & ":" & Left(buf(1) & "0", 2)
 Application.EnableEvents = True
End Sub


867 :名無しさん@そうだ選挙にいこう:2005/05/31(火) 17:03:40
【1     O S の 種 類    】 WindowsXPproSP2
【2 E x c e l の バ ー ジ ョ ン .】 Excel2003
【4 Googleでの検索キーワード】 エクセルファイル1つに シート/エクセルファイル1つ シート/
【5 ヘルプでの検索キーワード】 シート数
【6 スレのFAQとログを読んだ.】 はい

シート数の最大値はわかりますか?
正直、シート30まで追加して疲れてしまったのですが、何シートまで作ることが出来るのでしょうか?

868 :名無しさん@そうだ選挙にいこう:2005/05/31(火) 17:13:28
>>867
環境(主に物理メモリ容量)とシート内容依存です
最大数は固定されていません

869 :名無しさん@そうだ選挙にいこう:2005/05/31(火) 17:43:22
>>868
なるほど。
かなりのシート数は扱えるということですね。
ありがとうございます。

870 :829:2005/05/31(火) 19:15:04
>>866
有り難うございます

ただ、Macであるせいかfuctionがなんとかとでて動きません
ちょっと作法が違うのかもしれません

モジュールの方ではこんなトラブルなかったので
もうちょっと頑張ってみます

871 :863:2005/05/31(火) 19:42:00
>>866様、有り難うございます。
おかげさまで、やりたいと思った事ができました。
今回の件で、VBAをいろいろ調べたら、自分の作成した
データもまだまだ進化できる可能性がある事を感じたので、
これからも精進したいと思います。

また、行き詰まったらよろしくお願い致します。


872 :名無しさん@そうだ選挙にいこう:2005/05/31(火) 20:41:54
学校でExcel2003で表を作ったりしてるんですけど、コピーして張り付けたらバレマスカ??
先生が言うには貼り付けた日時がフロッピーに全部残ってるって言ってるんですけどコピーして張り付けた日時なんて残るもんなんですか?

873 :名無しさん@そうだ選挙にいこう:2005/05/31(火) 21:28:23
ご教授願います。マクロを昨日からはじめました。

あるファイルを開いて、マクロの実行ボタンを作って、
そのボタンを1回しか「実行」出来ないようにするには
どうすればいいのでしょうか?
間違えて2回目のボタンを押しても「無効」にするには
どうすればいいのでしょうか?


874 :名無しさん@そうだ選挙にいこう:2005/05/31(火) 21:33:57
>>872
ファイル自体をコピーすれば作成日時と最終保存日時がコピーされるが
セルやシートをコピーするだけではそんな細かい情報は残らないと思う。

宿題を人にやってもらうつもりなのか??

875 :名無しさん@そうだ選挙にいこう:2005/05/31(火) 21:40:59
>>874
じゃなくて情報処理検定3級の問題を授業中にやってるんですけど、
わかりきった問題を2回もやらされて進むにも進めないんで‥


876 :名無しさん@そうだ選挙にいこう:2005/05/31(火) 21:47:50
>>873
1回しか使えないマクロなんて、意味が無いと思うが‥
マクロの最後に、ボタンを消去するコマンドを入れれば、そのボタンは一回きりしか使えない。

次にそのボタンを実行することが出来るタイミングは?
一定時間の経過後か、あるセルの変更後かによって変わってくるし‥。

877 :名無しさん@そうだ選挙にいこう:2005/05/31(火) 21:54:09
>>876
そのコマンド教えてくれませんか?
もうひとつ教えてください。

そのコマンドで消えて、作業が終わって、
保存した後、次、開いたら、又、ボタンは出てくるんですか?


878 :876:2005/05/31(火) 22:25:26
>>877
Shapes("ボタン名").Delete
で消えるが、消えた状態で保存すれば、次に開いた時は当然ボタンは消えたまま。

開いた時に、ボタンの作成を自動実行するならば、
Private Sub Workbook_Open()
ActiveSheet.Buttons.Add(左位置, 縦位置, 横幅, 高さ).OnAction = "マクロ名"
End Sub

879 :名無しさん@そうだ選挙にいこう:2005/05/31(火) 23:39:14
>>876さん
ありがとうございます。
挑戦してみます。
今日も夜更かしだ。


880 :名無しさん@そうだ選挙にいこう:2005/05/31(火) 23:50:22
質問です。
インプットボックスにファイル名の禁止文字(/、?とか)を入力できなくしたいんですが、
いい方法ありますか?
like使って簡単かと思ったんですが、「 " 」だけは構文エラーになってしまい比較できません。

881 :880:2005/05/31(火) 23:51:37
すいません記入忘れました。
【1     O S の 種 類    】 WindowsXP
【2 E x c e l の バ ー ジ ョ ン .】 Excel2000
【3   V B A が 使 え る か  】 はい
【6 スレのFAQとログを読んだ.】 はい

882 :名無しさん@そうだ選挙にいこう:2005/06/01(水) 00:20:51
>>880
hoge Like "*""*"

883 :名無しさん@そうだ選挙にいこう:2005/06/01(水) 00:27:17
>>880
Like演算子使うより、正規表現使った方がいいんじゃないの?
やり方はググってくれ。

884 :名無しさん@そうだ選挙にいこう:2005/06/01(水) 00:44:14
>>882
>>883
ありがとうございます。
方法はあるようなので、googleで少し調査してみます。
勉強不足ですいません。

885 :名無しさん@そうだ選挙にいこう:2005/06/01(水) 01:18:42
2003です。
>>797で出ていた質問で、>>803,817に、
それぞれ、参照されていたサイトのTipsを見ると、1箇所の処理だけを取り上げていますが、
複数行で同じ処理をする場合は、どうすればよいのでしょうか。

リスト

 親   子
東京 世田谷
    江戸川
    新宿

横浜 保土ヶ谷
    戸塚
    旭


   A   B
1 東京 世田谷 ← ここの親(A)を東京にしてしまうと、
2 横浜 世田谷 ↓以下、親を横浜にしてもA1を参照しているらしく、
3 東京 世田谷   横浜の子が表示されないです。
4 横浜 世田谷

それぞれの行で処理する方法はあるでしょうか

886 :名無しさん@そうだ選挙にいこう:2005/06/01(水) 01:31:15
どこで調べても載ってないので質問です。
【1     O S の 種 類    】 WindowsXP
【2 E x c e l の バ ー ジ ョ ン .】 Excel2003
【3   V B A が 使 え る か  】いいえ
【4 Googleでの検索キーワード】ピボット 関数 計算式 埋め込み
【5 ヘルプでの検索キーワード】 ピボット
【6 スレのFAQとログを読んだ.】 はい
〜〜〜質問内容〜〜〜
ピボットテーブルの中に関数(A列とB列の差を、ピボットテーブル内の
C列に自動計算など)を入れたいのですが、「ピボット内のデータはいじれくれないよ〜ん」と
エラーになります。別シートでピボット内データを参照して・・・、ということも
考えましたが、データ更新すると書式が崩れちゃうので、ピボット内に関数を埋め込みたいです。
誰か助けて・・・。


887 :名無しさん@そうだ選挙にいこう:2005/06/01(水) 01:32:12
>>885
なんかわかってないみたいなので
もう一度参照先サイトをよく読んでみましょう。
きちんと理解で来てればこんな質問はしないはずですから。

888 :名無しさん@そうだ選挙にいこう:2005/06/01(水) 03:27:44
質問です。
A1に'1
A2に'2
とした時、
普通に足した場合(=A1+A2)は答えが出て
関数を使って足すと(sum(A1:A2))だと答えが出ないのですか?



889 :888:2005/06/01(水) 03:32:05
テンプレに気付きませんでした・・・orz
【1 OSの種類】 Windows XP
【2 Excelのバージョン】 Excel 2003
【3 VBAが使えるか】 いいえ
【4 Googleでの検索キーワード】 エクセル 仕組み SUM Value
【5 ヘルプでの検索キーワード】 仕組み Value
【6 スレのFAQとログを読んだ】 はい

890 :888:2005/06/01(水) 03:32:26
すいません・・・上げてしまいました・・・orz

891 :名無しさん@そうだ選挙にいこう:2005/06/01(水) 03:45:09
>>888
+演算子は要素の合計なので数値として扱える要素は計算しますが
SAM関数は数値の合計なので数値として入力されてる値以外は0として扱います。

それと質問スレなのでageは問題ありません。

892 :888:2005/06/01(水) 09:12:54
>>891
ありがとうございました。すっきりしました^−^

893 :名無しさん@そうだ選挙にいこう:2005/06/01(水) 11:25:18
Windows2000で、Excel2000をつかっています

Excelでファイルを開くと、既存のすでに立ち上がっている
Excelで子ウインドウとして開かれたり、
新たにExcelが立ち上がって開かれたりすることがありますが
これを明示的に分けるには、どのようにすればいいのでしょうか?
起動オプションには、ファイルの指定しかないみたいで、、

また同じようなことですけども
Excelの子ウインドウとして開かれているブックを
新たにExcelを立ち上げて開きなおしたりといったことはできるんでしょうか?

左右解像度の違うモニタでデュアルディスプレイなのですが
書類等参照しながら入力するときに、Excelが独立していないと
それぞれに最大化できないので、上のような質問をさせていただきました
ご存じの方がいましたら、よろしくお願いします
ほかの回避方法などでも、アドバイスがあればお願いします

894 :名無しさん@そうだ選挙にいこう:2005/06/01(水) 15:17:50
>>893
普通に[スタート]ボタンとかデスクトップのショートカットから
Excelを2つ起動させてからファイルを開けばいいんでない?

895 :名無しさん@そうだ選挙にいこう:2005/06/01(水) 17:24:31
エクセルでグラフを作ってるのですが、
x/項目軸に任意の文字を入れることは出来ないのでしょうか。
目盛りを入れると自動的に1から順に数字が振られて出るのですが、
データの都合上9月から始まって8月までの項目名を割り振りたいのですが…


896 :名無しさん@そうだ選挙にいこう:2005/06/01(水) 17:34:43
コメントのデフォルトのフォントや色を変更したいのですが、
色々と調べたのですが、方法が分かりません。

変更不可能?

897 :名無しさん@そうだ選挙にいこう:2005/06/01(水) 17:44:18
>896
難しく考えすぎ。コメントの編集を選んで、後は普通にテキストボックスの
テキストのフォント変えたり色を変えたり、塗りつぶしたりするのと同じようにすればいい。

898 :名無しさん@そうだ選挙にいこう:2005/06/01(水) 18:32:18
>>896
変更不可能。
でも、スタイルが決まってるならVBAで変更するようにすれば
そんなに手間じゃないと思う。
その辺のことはヘルプでも読んで。

>>897
勘違いしすぎ。

899 :名無しさん@そうだ選挙にいこう:2005/06/01(水) 19:41:48
デフォルトの、だったか…スマソ

900 :名無しさん@そうだ選挙にいこう:2005/06/01(水) 21:41:32
>>716でも指摘されてるブラウザの件ですが、次スレ逝く前に答えを出しましょうよ。
因みにうちの環境では関連付けを変えてもExcelからはIEが立ち上がります。
WindowsXPsp1、Excel2002sp3です。


あと、時刻入力の件をテンプレ化したほうがいいと思うんだけどこんなかんじでおk?

= FAQ: 時刻の入力 =
Q:時刻をテンキーで入力するとき:を入力するのが面倒なのですが、
  なにか良い方法はありませんか?
A:.を:に置き換える方法をお試しください
  1) オートコレクトで..を:に置き換える
   →自動で置換されるので手間は少ないが..を使う他の入力にも影響する
  2) 「時..分」で入力しておいて、後から「編集 > 置換」で範囲指定で一括置換する
   →置換に一手間掛かるが、他への影響は無い
   (「時.分」だと分の1桁目が0の場合狂ってしまう)
  3) VBAのWorksheet_Changeイベントで置換する
   →置換する範囲を指定すれば他への影響もなく置換も自動、入力も.一つでOK
参考コード(入力は「時.分」)
Private Sub Worksheet_Change(ByVal Target As Range)
 Dim buf As Variant
 Application.EnableEvents = False
 buf = Split(Target.Value, ".")
 Target.Value = buf(0) & ":" & Left(buf(1) & "0", 2)
 Application.EnableEvents = True
End Sub


901 :名無しさん@そうだ選挙にいこう:2005/06/01(水) 21:46:41
A:.を:に置き換える方法をお試しください
 ↑
ここ「.」でいいんか? 「..」かな?

902 :900:2005/06/01(水) 21:51:10
>>901
.文字を:代わりに使うという意味で書いてます。
1)、2)ではきちんと..と書いてますよ。(Pフォントでは半角.は見辛いと思いますが

それとブラウザの件も試してみてください。

903 :名無しさん@そうだ選挙にいこう:2005/06/01(水) 22:14:17
>>902
>.文字を:代わりに使うという意味で書いてます。
なるほど
>1)、2)ではきちんと..と書いてますよ。(Pフォントでは半角.は見辛いと思いますが
それはちゃんと見えてたんだけどね。アンサーの最初の一文が解り難かったんだよね。

ブラウザの件は未解決のまま。テンプレに入ったのが勇み足だったんだと思う。
解決策が出ればテンプレ訂正。 誰も解らないままならテンプレ削除。

904 :名無しさん@そうだ選挙にいこう:2005/06/01(水) 22:22:23
>>903
ブラウザの件、設定でダメなら、入力オートフォーマット切って
VBAで代用する方法をテンプレに載せるって手もあるんだけど。

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
 If Selection.Count = 1 Then If Left(Target.Value, 7) = "http://" Then Call Shell("ブラウザのパス(最後に半角スペース→) " & Target.Value)
End Sub


905 :名無しさん@そうだ選挙にいこう:2005/06/01(水) 22:59:00
A1の値とB1の値を入れ替える簡単な方法ないかしら?


906 :名無しさん@そうだ選挙にいこう:2005/06/01(水) 23:06:38
A1を選択して、SHIFT押しながら、B1とC1の間にドラッグ

907 :名無しさん@そうだ選挙にいこう:2005/06/01(水) 23:09:27
>>905

ホントにA1,B1の交換だけか教えろ。
そうなら、マクロに記録じゃだめ?

908 :名無しさん@そうだ選挙にいこう:2005/06/01(水) 23:12:35
>>906 出来ません!!

909 :名無しさん@そうだ選挙にいこう:2005/06/01(水) 23:13:49
ただ単純に入れ替えだけです。

910 :名無しさん@そうだ選挙にいこう:2005/06/01(水) 23:16:20
>>908
どう出来ないのか、書かなきゃ分からん!!
勝手にしたら。

911 :名無しさん@そうだ選挙にいこう:2005/06/01(水) 23:26:11
>>910
ごめんなさい。
切り取って挿入ではなく、入れ替えなんです。
単純に・・・

912 :名無しさん@そうだ選挙にいこう:2005/06/01(水) 23:35:26
>>911
それって>>906でできるじゃん
やり方間違ってるだけでしょ

まあVBAでやるならこんなのとか
Dim buf(0, 1)
For i = 0 To 1
 buf(0, i) = Cells(1, 2 - i).Value
Next i
Range("A1:B1") = buf

Dim buf
buf = Cells(1, 1).Value
Cells(1, 1).Value = Cells(1, 2).Value
Cells(1, 2).Value = buf

913 :名無しさん@そうだ選挙にいこう:2005/06/01(水) 23:57:22
データをランダムに並び替えることはできますか?

914 :名無しさん@そうだ選挙にいこう:2005/06/01(水) 23:58:39
>>913
乱数使えばできる。
詳しくはヘルプ参照。

915 :名無しさん@そうだ選挙にいこう:2005/06/02(木) 00:08:32
Sheet1に任意のレポートがあるとして、
そのレポート中にある文字、例えば”あ”が何個出現したかを知りたいのですが、
どの様にすればよいのでしょうか?
結果はSheet2で表示したいのですが。
よろしくお願いします。

916 :名無しさん@そうだ選挙にいこう:2005/06/02(木) 00:18:08
>>914
できた
ありがとう

917 :名無しさん@そうだ選挙にいこう:2005/06/02(木) 00:21:51
>>915
ワープロ代わりにExcel使うなハゲ!
http://pc5.2ch.net/bsoft/kako/1025/10255/1025524380.html


ってのはおいといて、
Worksheets("Sheet2").Cells(1, 1).Value = UBound(Split(Worksheets("Sheet1").Cells(1, 1).Value, "あ"))
でSheet2のA1セルにSheet1のA1に"あ"が何個あるかを出せる。
複数セルの合計を出したいならFor使えばいいけど、どの範囲を処理するかとか書いてないから、そのへんは自分でやって。

918 :870:2005/06/02(木) 00:36:34
元質問は >>870 >>865

splitもReplaceもあれもこれもダメでした

結果的に、隠しシートを作って
a1 ← 代入
a2 ← =FIND(".",B1)
a3 ← =REPLACE(B1,B2,1,":")

とし、vbaのWorksheet_Changeで
a1に送ってa3を戻すということで動作を得ました
これにいろいろとフィルターをかけると使えそうです

macな方々、お互い苦労しますが頑張りましょう

919 :870:2005/06/02(木) 00:37:37
いけね

a1 ← 代入
a2 ← =FIND(".",a1)
a3 ← =REPLACE(a1,a2,1,":")

920 :名無しさん@そうだ選挙にいこう:2005/06/02(木) 00:43:30
ヘボいOS使うと苦労するねぇ

921 :870:2005/06/02(木) 00:49:46
スルーが基本ですが・・・
この場合問題はMSの開発にあるわけです
でもこれからも作ってくれるので文句は言いませんよ

922 :名無しさん@そうだ選挙にいこう:2005/06/02(木) 01:02:12
Winで使えてる以上、問題はMacにあるわけです

923 :名無しさん@そうだ選挙にいこう:2005/06/02(木) 05:41:08
【1 OSの種類 / Excelのバージョン】WinXP Excel2002
【2 Googleやヘルプでの検索キーワード】Subプロシージャ 取得
【3 VBAが使えるか】はい

あるブックの標準モジュールにある全てのSubプロシージャ名を
ユーザーフォームのリストボックスに列挙したいのですが、どのようにすれば良いですか?
たとえば標準モジュールに
Sub hoge()
End Sub
Sub test()
End Sub
Sub sample()
End Sub
とあったら、リストボックスに
hoge
test
sample
を表示させたいのです。(標準モジュールオブジェクトが複数ある場合はその全て)
ListBox1.AddItem の後、具体的にどう記述すれば良いのでしょうか?

924 :名無しさん@そうだ選挙にいこう:2005/06/02(木) 09:54:32
>>923
こんな感じでできるお

1:Excelの[ツール]-[マクロ]-[セキュリティ]→「信頼のおける発行元」タブを選ぶ
2:「Visual Basic プロジェクトへのアクセスを信頼する」へチェック
3:小野の怪我の奇跡的な快復を祈る
4:コード書く

Set a = ThisWorkbook.VBProject.VBComponents
For Each b In a
 If b.Type = 1 Then
  With b.codemodule
   curLine = .CountOfDeclarationLines + 1
   Do Until curLine >= .CountOfLines
    pName = .ProcOfLine(curLine, 0)
    ListBox1.AddItem pName
    curLine = curLine + .ProcCountLines(pName, 0)
   Loop
  End With
 End If
Next
MsgBox "ジーコバーカヽ(`Д´)ノ "

変数の宣言とか長くなるからしてないお。てめえでしてください。

925 :名無しさん@そうだ選挙にいこう:2005/06/02(木) 10:07:48
>>924
3でつまづいて先へすすめません
あしたまでかかりそうです

926 :名無しさん@そうだ選挙にいこう:2005/06/02(木) 10:46:45
【1 OSの種類】 WindowsXP
【2 Excelのバージョン】 Excel2000
【3 VBAが使えるか】 はい
【4 Googleでの検索キーワード】 エクセル vba 関数 出力

質問です。
vbaからワークシート上にエクセル関数を出力することは可能なのでしょうか。

For int_ct = 1 To int_day
Cells((int_ct + 4), 5) = "=IF(D6-C6=0, 0, D6-C6)"
Next

上記のような感じのことがしたいのですが…



927 :926:2005/06/02(木) 11:01:37
すみません、
元々は↓のようにやっていて出来なかったので書き込んだのですが
Cells((int_ct + 4), 5) = "=IF(D6-C6=0, \"\", D6-C6)"

書き込み時に問題の切り分けをしようと思って↓のように直したら問題なく動きました…
Cells((int_ct + 4), 5) = "=IF(D6-C6=0, 0, D6-C6)"

さらに「"」の記述が原因だとわかったので調べたら
Cells((int_ct + 4), 5) = "=IF(D6-C6=0, """", D6-C6)"
で問題なく動きました。。

失礼しました…。

あと、書き込むときのIF文の対象セルを動的に指定することは可能なんでしょうか…?
イメージだと
Cells((int_ct + 4), 5) = "=IF(" & 対象セル & "-" & 対象セル & "=0, """", " & 対象セル & "-" & 対象セル & ")"
このような感じなのですが、これも昨日から調べているのですが情報が見つかりません。。

928 :名無しさん@そうだ選挙にいこう:2005/06/02(木) 11:16:03
結合したセルのデータを参照して他のシートの結合したセルに出す事はできますか?
すみませんがお教え願います。

929 :926:2005/06/02(木) 11:21:19
連投すみません、自己解決しました。
質問した後に限って答が見つかる…orz

Cells((int_ct + 4), 5).Formula = "=IF(RC[-1]-RC[-2]=0, """", RC[-1]-RC[-2])"

Rは縦軸、Cは横軸で、[]内に相対位置を記述することで動的に指定できました。

930 :名無しさん@そうだ選挙にいこう:2005/06/02(木) 11:35:26
>900
XP Home SP1 +Excel2002、2003

通常使うブラウザをOperaに変更、Excelのハイパーリンクをクリック。Opera起動。
Firefoxに変更してもちゃんとFirefoxが立ち上がった。


931 :名無しさん@そうだ選挙にいこう:2005/06/02(木) 12:11:02
クリップポードの中身を空にする、VBAの命令を
おしえてください。


932 :名無しさん@そうだ選挙にいこう:2005/06/02(木) 13:46:28
【1 OSの種類】 WindowsMe
【2 Excelのバージョン】 Excel2000
【3 VBAが使えるか】 いいえ
【4 Googleでの検索キーワード】 INDIRECT、VLOOKUP、ドロップダウン
【6 スレのFAQとログを読んだ】 だいたい

〜〜〜質問内容〜〜〜

現金出納帳を作っています。
摘要の欄は科目の内容に応じてさらにドロップダウンリストで選べるようにしたいんです。

シート[小口現金]
│ 科目   │ 摘要 │
├──────┼────┼
│水道光熱費▼│ガス ▼│

シート[内容]
│ 科目  │
├─────┤
│水道光熱費│
│交通費  │

│水道光熱費│ │交通費  │
├─────┤ ├─────┤
│ガス   │ │バス   │
│電器   │ │電車   │
│水道   │ │タクシー代│

シート[小口現金]の科目の欄はシート[内容]の「科目」からドロップダウンリストにしたんですが、
「科目」と「水道光熱費」等の表の関連付けがうまくいきません。
検索しても「参照形式の指定は省略」と書かれていて、一番知りたいところが判らないのです。
よろしくお願いします。

933 :名無しさん@そうだ選挙にいこう:2005/06/02(木) 14:20:27
このスレをだいたいじゃなくしっかり読んで下さい。
2回もガイシュツです。

934 :名無しさん@そうだ選挙にいこう:2005/06/02(木) 15:50:45
>>931
Declare Function OpenClipboard Lib "User32" (ByVal hwnd As Long) As Long
Declare Function EmptyClipboard Lib "User32" () As Long
Declare Function CloseClipboard Lib "User32" () As Long

Sub ClipCLR()
CLR_ClipBoard ""
End Sub

Function CLR_ClipBoard(myString As String)
Dim ret As Long
If OpenClipboard(0&) = 0 Then
GoTo ERR1
End If
ret = EmptyClipboard() 'クリップボードクリア

If CloseClipboard() = 0 Then 'クリップボードクローズ
GoTo ERR2
End If
Exit Function

ERR1:
  MsgBox "クリップボードが開けません(エラー)"
  Exit Function
ERR2:
  MsgBox "クリップボードが閉じれません(エラー)"
  Exit Function

End Function


935 :名無しさん@そうだ選挙にいこう:2005/06/02(木) 16:18:26
>>934
ありがとう


936 :名無しさん@そうだ選挙にいこう:2005/06/02(木) 18:08:26
>>930
Excelからブラウザへ関連付けてるキーを探して報告よろしく
HKEY_CLASSES_ROOT\httpの関連付けでは、
URL実行すれば指定したブラウザで開くけど、
Excelからは指定したブラウザが立ち上がらなかった。

937 :名無しさん@そうだ選挙にいこう:2005/06/02(木) 20:27:54
OSはWINDOWS98で、Excel2000を使っています。
以下の様なマクロを作成したのですが、実行してもペーストが実行されません。
マクロ実行後に手動でペーストすると問題無いので、
コピーまでは順調に行われていると思います。
どうしたらペーストまで実行されるのでしょうか?

Sub ()
ActiveSheet.Previous.Select
Range("C13:I16").Select
Selection.Copy
ActiveSheet.Next.Select
Range("C5:I8").Select
Selection.PasteSpecial Paste:=xlAllExceptBorders
End Sub

宜しく「お願い致します。

938 :名無しさん@そうだ選挙にいこう:2005/06/02(木) 20:43:51
>>937
PasteSpecial Paste:=xlPasteAllExceptBorders
にすればいいお。Excel2000はマクロ記録される定数の1部にバグがあるので、
記録した定数そのまま使うと、うまく機能しない場合があるんだよ。

このケースは「xlPasteAllExceptBorders」(定数で「7」)が記録されるはずが、
「xlAllExceptBorders」(定数で「6」)が記録されてしまうんだよ。困っちゃうよね。

939 :名無しさん@そうだ選挙にいこう:2005/06/02(木) 20:48:05
ActiveSheet.Previous.Range("C13:I16").Copy
ActiveSheet.Range("C5:I8").PasteSpecial Paste:=xlPasteAllExceptBorders


940 :名無しさん@そうだ選挙にいこう:2005/06/02(木) 20:53:27
【1 OSの種類】 WindowsXPHomeSP2
【2 Excelのバージョン】 Excel2002
【3 VBAが使えるか】 いいえ
【4 Googleでの検索キーワード】関数 抽出 偶数
【5 ヘルプでの検索キーワード】抽出
【6 スレのFAQとログを読んだ】 はい
〜〜〜質問内容〜〜〜
データベースを作ったのですが、その表に列で番号を割り振っています。
その番号が偶数の行のデータだけ抽出したいんですが、
どのような関数を使って抽出したらいいのでしょうか?

941 :名無しさん@そうだ選挙にいこう:2005/06/02(木) 21:01:35
>>940
MOD関数

んでオートフィルタ

942 :名無しさん@そうだ選挙にいこう:2005/06/02(木) 21:19:37
MOD関数を使ってどのようにしたらよいんでしょうかね?
あまりを求める関数なんですよね、MODって…

943 :PC初心者 ◆Px7777cbP6 :2005/06/02(木) 21:22:14
すいません。教えてください。
 
マクロでセルの数値、文字を一括消去する方法、知ってる方いますか?
 
ツール→マクロ で出来るみたいなのですが・・・
 
教えてください。

944 :名無しさん@そうだ選挙にいこう:2005/06/02(木) 21:30:09
>>942
2で割ってあまりが0なら偶数、あまりが1なら奇数やろ
こんなの10歳になる前に習うやんか

あとはそれをどこかの列に書き出して0だけをオートフィルタで抽出すりゃええやん

>>943
初心者なら無理してマクロ使うことないやん
メニューから 編集 > クリア > 数式と値 使うか
Deleteキーつかうかしな

それがダメならどこがまずいのかくらい書け

945 :PCt中級者 ◆Px7777cbP6 :2005/06/02(木) 21:34:00
マクロでセルの数値、文字を一括消去する方法、知ってる方いますか?
ツール→マクロ で出来るみたいなのですが・・・
教えてください。
 
エクセル2000 WINxp
 
一括消去ならボタン一つで消去出来るので楽だと思うのですが。
スキルアップしたいのです。
どうか教えてください。
 
111  222  3333  444
このような数値をボタン一つで消去する方法です。


946 :名無しさん@そうだ選挙にいこう:2005/06/02(木) 21:41:42
中級者ならこれでわかるだろ

Cells.ClearContents


947 :名無しさん@そうだ選挙にいこう:2005/06/02(木) 21:41:56
>>944
頭がまわらなくて申し訳ないです。それなら分かります。
ありがとうございました!

948 :PC中級者の下 ◆Px7777cbP6 :2005/06/02(木) 21:46:30
>>946
もう少し詳しく教えていただけると助かります。

949 :名無しさん@そうだ選挙にいこう:2005/06/02(木) 21:51:58
>>948
>>946がシートの全ての値を消去するコード。
あとは適当なボタン作ってそのコードを割り当てればいいだけ。

これ以上はヘルプでも読んでがんがれ。

950 :名無しさん@そうだ選挙にいこう:2005/06/02(木) 21:52:12
>>948
はぁ?

951 :名無しさん@そうだ選挙にいこう:2005/06/02(木) 21:53:31
>>948
シート内のどのセルに消したい値が入っているのかを全て示さなければ、
>>946さんのコードが回答の全てになるかと思われますが。

たとえばアナタが上司や学校の先輩から、「掃除しとけ」といわれ、
自分の机の周りをピカピカに掃除した跡、
「自分の周りだけ掃除してどうする!この部屋全部だ!」とか言って
怒られたらどう思います?
先に言えよ!と思いませんか?

952 :名無しさん@そうだ選挙にいこう:2005/06/02(木) 21:55:17
>>948
藻前にいいサイト教えてやる。
http://www.google.co.jp/

953 :名無しさん@そうだ選挙にいこう:2005/06/02(木) 21:56:21
>>948
藻前にいいサイト教えてやる。
http://www.googkle.com/

954 :名無しさん@そうだ選挙にいこう:2005/06/02(木) 21:59:18
初級者なんだか、中級者なんだか、実は日本語入力もままならない "t"中級者なんだか・・・
逆に質問したいので、答えてくれませんか。
質問1 >945の例は、今のスキルならどうやって一括消去とやらしてるの?
質問2 数値・文字・式などを区別して取り扱いたいのか?
質問3 マクロの記録、および実行・編集・登録などは出来るのか?

955 :PC中級者の下 ◆Px7777cbP6 :2005/06/02(木) 22:02:03
質問1  今はデリートとかで消去してる
質問2  見積りとか請求書とか、ある数値や文字のみ消去できれば・・
質問3  全くの初心者(マクロ)

956 :PC中級者の下 ◆Px7777cbP6 :2005/06/02(木) 22:04:46

 
見積書 2ちゃん
 
222 4444 4444 個
 
この例だと、見積書、個 これ以外を一括消去できれば・・・



957 :名無しさん@そうだ選挙にいこう:2005/06/02(木) 22:09:51
>>956
決まったフォーマットのおなじ所を消すんなら、
マクロ記録で十分だろ。まず自分で調べろよ。

958 :名無しさん@そうだ選挙にいこう:2005/06/02(木) 22:09:57
1:「ツール」→「マクロ」→「新しいマクロの記録」

2:今やってるとおり、デリートで消去したい部分を全て消去。

3:マクロツールバーの「■」をおす。

4:「フォーム」ツールバーを表示し、「ボタン」をクリック。

5:適当な位置にボタンを配置し、「マクロの登録」ダイアログで、先ほど作ったマクロを登録。




以上。

959 :958:2005/06/02(木) 22:11:29
今俺が書いたことが出来ないようなら、スキルアップは無理。
ていうか、これって「スキルアップ」じゃなくて「教えて君」のような気が。

960 :PC中級者の下 ◆Px7777cbP6 :2005/06/02(木) 22:12:30
やってみます。
親切な方、ありがとう。
 
最後は end sub かな?

961 :958:2005/06/02(木) 22:18:01
あの・・・
あなたはまだ、
end sub
が必要なレベルにはなっていません。
まずは自分でいろいろとマクロ記録を試して、
そのコードをVBエディタで見てみることからはじめてくださいorz

962 :名無しさん@そうだ選挙にいこう:2005/06/02(木) 22:18:08
>>960
おまえはまだ"PC初心者の下"で充分だよ。

963 :名無しさん@そうだ選挙にいこう:2005/06/02(木) 22:19:27
スキルアップとかいって上を見てないで、
足元みろよ。


964 :名無しさん@そうだ選挙にいこう:2005/06/02(木) 22:24:20
マクロで質問なのですが、
エクセル上に作った 消去 とかの表示をさせたいのですが、
どうやったら出来ますか?

965 :名無しさん@そうだ選挙にいこう:2005/06/02(木) 22:26:35
そんなに急いでコテと鳥を消して別人装って質問しなくても・・・。

966 :名無しさん@そうだ選挙にいこう:2005/06/02(木) 22:26:42
>>964
何に表示させるんだよ。

967 :名無しさん@そうだ選挙にいこう:2005/06/02(木) 22:28:09

                            消去
444 444 あああ ららっらあ            ↑
                        このボタンで一括消去できる
 
こんな感じ。

968 :名無しさん@そうだ選挙にいこう:2005/06/02(木) 22:29:16
>>967
藻前はまず、エクセルの入門書買ってこいよ!

969 :名無しさん@そうだ選挙にいこう:2005/06/02(木) 22:31:45
ID出なくてもハッキリわかるほどの自作自演って久しぶりに見たよ

970 :名無しさん@そうだ選挙にいこう:2005/06/02(木) 22:34:58
前回も質問しました。
もう一度お願いします。

A1の値とE1の値を入れ替える簡単な方法ないかしら?

単純にE1にA1の値がきて、A1にE1の値が表示されればいいのです。

これって、よく使うと思うんですが・・・私はね。
宜しくお願いします。



971 :名無しさん@そうだ選挙にいこう:2005/06/02(木) 22:35:46
すべて消去は分かったが、ある特定の場所だけ消去はどうやるのですか?

972 :958:2005/06/02(木) 22:39:28
ス キ ル ア ッ プ

したいんでしたね?

なら自分で調べる努力も必要です。

流れを読まずに自動記録説明して損した気分orz

973 :名無しさん@そうだ選挙にいこう:2005/06/02(木) 22:40:23
>>971
明日本屋行って来い。

974 :名無しさん@そうだ選挙にいこう:2005/06/02(木) 22:42:17
>>971
Cells.ClearContents = 全てのセルの.値のみを消去

なので、「ある特定の場所だけ.ClearContents」で
ある特定の場所だけ消去出来る。

「ある特定の場所だけ」の記述はスキルアップの為に調べましょう。

975 :名無しさん@そうだ選挙にいこう:2005/06/02(木) 22:43:47
>>971
>958の手順で、特定の場所だけを消去するように記録すればおKじゃん。
スキルアップするには頭も使え。

976 :958:2005/06/02(木) 22:56:25
ていうか・・・。
俺の、

>2:今やってるとおり、デリートで消去したい部分を全て消去。

って説明が通じてなかったって事ですかそうですか・・・orzorzorz

977 :名無しさん@そうだ選挙にいこう:2005/06/02(木) 22:57:16
どうせ、複数選択して一括消去(DEL)することも知らないんだろうな w

978 :名無しさん@そうだ選挙にいこう:2005/06/02(木) 22:57:43
>>971
まさか…釣ってる?

979 :ナナシ名人 ◆Px7777cbP6 :2005/06/02(木) 22:57:51
すいませんね〜 
マクロ初心者なもんで。
 
指定場所・ClearContents ってのを登録させればいいんですね。

980 :名無しさん@そうだ選挙にいこう:2005/06/02(木) 22:58:20
もしかしてCtrlで複数セル選択を知らないんだろうか?

981 :名無しさん@そうだ選挙にいこう:2005/06/02(木) 22:59:25
>>979
何処に登録する気ですか?

982 :名無しさん@そうだ選挙にいこう:2005/06/02(木) 22:59:30
マクロ初心者というより、日本語初心(ry

983 :名無しさん@そうだ選挙にいこう:2005/06/02(木) 23:00:30
釣られた俺が悪かったです。ごめんなさい。
もうレスは辞めておきます。

984 :名無しさん@そうだ選挙にいこう:2005/06/02(木) 23:01:15
>>970
906の要領で2回行う。

985 :ナナシ名人 ◆Px7777cbP6 :2005/06/02(木) 23:02:15
マクロの編集のところだけど?
 
今はこんな感じ
Cells.ClearContents
End Sub
 
ここに指定場所・ClearContents を登録させる。

986 :名無しさん@そうだ選挙にいこう:2005/06/02(木) 23:05:44
同情するよ・・・>>976>>958

987 :名無しさん@そうだ選挙にいこう:2005/06/02(木) 23:05:48

Excel総合相談所 34
http://pc8.2ch.net/test/read.cgi/bsoft/1117721050/

988 :名無しさん@そうだ選挙にいこう:2005/06/02(木) 23:07:16
「指定場所」を正しい文で書けるのかい?
まあ調べるのはいい勉強、でもその前に自動記録が上手く使えるようになるのが
物事の順序のような気がするよ。。。
とりあえず、「指定場所」の書き表し方をここで聞くのは無しナ。

989 :名無しさん@そうだ選挙にいこう:2005/06/02(木) 23:14:43
次スレで聞けばいいのか?そういう問題じゃないだろ。
>>983にハゲドウ、レスやめ。

990 :ナナシ名人 ◆Px7777cbP6 :2005/06/02(木) 23:26:13
Cells.ClearContents
End Sub


991 :名無しさん@そうだ選挙にいこう:2005/06/02(木) 23:45:52
そろそろほっといて次逝くか…って次スレにも同じ質問すなっ!

992 :名無しさん@そうだ選挙にいこう:2005/06/02(木) 23:47:38
なんかこの人、>>490と同じ匂いがする。


ま た 学 校 の 宿 題 で す か ?

993 :名無しさん@そうだ選挙にいこう:2005/06/03(金) 19:52:19


994 :名無しさん@そうだ選挙にいこう:2005/06/03(金) 23:25:28
まだ埋まってないのか?
はやく終わりにしようぜ

995 :名無しさん@そうだ選挙にいこう:2005/06/03(金) 23:27:43
埋めとくか

996 :名無しさん@そうだ選挙にいこう:2005/06/03(金) 23:32:12
では、俺は揚げ梅でww

997 :名無しさん@そうだ選挙にいこう:2005/06/04(土) 07:24:48
鵜目に鶯 −3

998 :名無しさん@そうだ選挙にいこう:2005/06/04(土) 08:16:22
998

999 :名無しさん@そうだ選挙にいこう:2005/06/04(土) 08:16:33
999

1000 :名無しさん@そうだ選挙にいこう:2005/06/04(土) 08:16:44
1000

1001 :1001:Over 1000 Thread
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。

341 KB
★スマホ版★ 掲示板に戻る 全部 前100 次100 最新50

read.cgi ver 05.04.00 2017/10/04 Walang Kapalit ★
FOX ★ DSO(Dynamic Shared Object)