Excel総合相談所 38

このエントリーをはてなブックマークに追加
904名無しさん@そうだ選挙にいこう:2005/11/04(金) 20:14:41
グラフタイトルをセルB4とリンクさせて表示する方法ってありますか?
905902:2005/11/04(金) 20:27:05
A456
B
75595823174.9595864827.4595896066.7
80595989784.8596058094.8596106411.7
85596135984.9596202628.9596231369.1
90596189716.6596129737.1595996449.2

値はめちゃくちゃですが
この表で最高になるABの組み合わせがわかるようなグラフが書きたいです。
この数値は適当なのででないと思いますが…
お願いします
906名無しさん@そうだ選挙にいこう:2005/11/04(金) 20:27:52
A 4 5 6
B
75595823174.9595864827.4595896066.7
80595989784.8596058094.8596106411.7
85596135984.9596202628.9596231369.1
90596189716.6596129737.1595996449.2
907名無しさん@そうだ選挙にいこう:2005/11/04(金) 20:43:20
組み合わせって具体的に何?
やりたいことが頭の中にあるおまえは自分用語でも脳内補完できるだろうけど
俺等はおまえと同じ脳内補完は出来ないから、ちゃんと標準用語で説明してくれ
908名無しさん@そうだ選挙にいこう:2005/11/04(金) 22:44:09
A列にXファイルを、B列にYファイルを読むことは可能ですか?
両方、テキストファイルです
909名無しさん@そうだ選挙にいこう:2005/11/04(金) 22:46:15
あるセルに「これはみかんです。」と入力されているとします。
でも、みかんの部分はたまに変化する場合があり、"りんご"であったりする場合があります。
そのため、"みかん"の部分に、変数fruitsを用意して、
そのセルを「これはfruitsです。」とし、別のセルにおいて、
変数fruitsの値を定義するようにしたいのですが、
エクセルでそのようなことができますでしょうか?
できれば、マクロを使いたくないのですが。。
よろしくお願いします。
910名無しさん@そうだ選挙にいこう:2005/11/04(金) 22:50:05
>909です。
あ、すみません。
自己解決しました。
911名無しさん@そうだ選挙にいこう:2005/11/04(金) 22:54:15
XPHomeSP2 Excel2002を使っています。
例えばりんごの個数が5個の場合は容器はS
りんごの個数が8個の場合は容器はM
りんごの個数が12個の場合は容器はL
りんごの個数が13個の場合は容器はS+M
というように、容器の文字列を機械的に表示したいのです。
よければ方法を教えてもらえますか?
912911:2005/11/04(金) 22:55:43
あ、すみません。
自己解決しました。
913911:2005/11/04(金) 22:56:57
>>912
解決してません
914名無しさん@そうだ選挙にいこう:2005/11/04(金) 23:00:21
>>911
vlookupですかね
915名無しさん@そうだ選挙にいこう:2005/11/04(金) 23:00:28
>>908
さぁ?
俺としては可能だけど、おまえにとって可能かどうかはわからない

>>911
> よければ方法を教えてもらえますか?
情報欲しいなら、自分も情報書こうね
>>1 > ★質問テンプレは必須じゃないけど、OSやExcelのバージョンやVBAの可否などの情報は必須。
916名無しさん@そうだ選挙にいこう:2005/11/04(金) 23:05:04
>>915
そういう機能はないようにおもえるのですが。
つくるのでしょうけど・・・
917名無しさん@そうだ選挙にいこう:2005/11/04(金) 23:17:50
>>916
君、誰?
918908:2005/11/04(金) 23:26:21
>>917
デフォでその機能はない気がします。
919名無しさん@そうだ選挙にいこう:2005/11/04(金) 23:31:26
>>918
デフォでその機能があるかどうかなんて一言も聞いてないじゃん
俺としては(VBA可だしコードも書けるから)可能だけど、
おまえにとって(VBAでの処理の可不可すらわからないから)可能かどうかはわからない
って意味で書いたんだけど

最初から
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 可
って書けば、コード貼って終わりの問題だし、
逆にVBA不可なら「不可能です」の一言で終わるのに、なんで最低限の情報すら書けないのかなぁ
それに「読み込み」ではなく結果としてAB列にXYファイルの内容が入ればいいならコピペでもいいじゃん

因みに情報後出し君にはコードは書かないのでよろしく
920908:2005/11/04(金) 23:51:30
申し訳ない。しかし、どうして、MSはこの機能をつけないのか・・・
921名無しさん@そうだ選挙にいこう:2005/11/04(金) 23:57:31
922名無しさん@そうだ選挙にいこう:2005/11/04(金) 23:58:04
>>920
テキストファイルのインポートは出来るわけで
それ以上でもVBA使えば簡単にできるし
923名無しさん@そうだ選挙にいこう:2005/11/04(金) 23:59:13
> MSはこの機能をつけないのか・・・
必要性が低いから

テキスト自体は読み込めるし、複数列データならcsvやtsvなどがある
テキスト2つを読むにしてもVBAでの処理も出来れば、別々のシートに読んで後から合わせてもいい

必要性が低いものも単一機能として組み込む方針なら、VBAなんてマクロ拡張は必要ないだろ
必要性が低いものは、必要とするユーザーが任意で機能を組み込めるように
マクロやアドインってものがある
924名無しさん@そうだ選挙にいこう:2005/11/05(土) 06:56:14
>>920
みんなが言ってること理解できるまで
書き込むのやめてくれ
925名無しさん@そうだ選挙にいこう:2005/11/05(土) 08:07:25
>>911
組み分けのケース数が少ないならIF関数で。>6を参照。
ケース数が多かったり変更が多いならVLOOKUP関数で。

ヘルプの使用例とかを参考にすればなんとかなると思うよ。
今度質問するときは、先に>1-2やテンプレのQ&Aをよく読んでね。
926名無しさん@そうだ選挙にいこう:2005/11/05(土) 10:02:43
すみません。教えてください。OSはXPなのですが、F7キーで
カタカナ変換をしようとするとき、確定前ひらがな以外の文字で
うっかり変換すると、スペルチェックになってしまい、IMEの
キー設定をやり直さなければならないので激しく不便です。
EXCELでF7キーをカタカナ化専門にするには
(スペルチェックは使わないのでその機能を抹消してしまいたい。)
どうすればよいでしょうか?

927名無しさん@そうだ選挙にいこう:2005/11/05(土) 10:29:27
テンプレ嫁
928926:2005/11/05(土) 11:41:55
度々すみません。
▼━質問テンプレ (出来れば使ってね) ━━━━━━━━━━━━
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel 2002
【3 VBAが使えるか    .】いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 F7 スペルチェック 無効
教えてください。OSはXPなのですが、F7キーで
カタカナ変換をしようとするとき、うっかり確定前ひらがな以外
の文字で変換してしまうと、スペルチェックになってしまい、
IMEのキー設定をやり直さなければならないので激しく不便です。
EXCELでF7キーをカタカナ化専門にするには
(スペルチェックを無効化してしまいたい。)
どうすればよいでしょうか?
929名無しさん@そうだ選挙にいこう:2005/11/05(土) 18:16:14
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel 2002
【3 VBAが使えるか    .】いいえ
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 コピー



マイドキュメントを開くとAA.XLSとBB.XLSというアイコンがあります
でBB.XLSをダブルクリックして開きます
ここでマクロを使って
AA.XLSのA列を全部BB.XLSのA列にコピーしたいんです
どうすればいいんでしょう?
930名無しさん@そうだ選挙にいこう:2005/11/05(土) 19:11:52
>>929
Private Sub Workbook_Open()
Workbooks.Open "AA.xls"
ThisWorkbook.Activate
>>734参照
End Sub

BB.XLSのブックオブジェクトに↑を貼れ
4行目は何をコピーしたいのかわからないので>>734を参考にしてブック名とシート名のみ書き換えな
先に言って置くけど「AA.xlsを開かずに」とかの条件後出しはしないでね
931名無しさん@そうだ選挙にいこう:2005/11/05(土) 22:33:21
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 ?

どうぞ教えてください。
過去に作った既存のブックの中で、ある特定のブックだけ、開けると
なぜだか作業ウインドウが勝手に開いてしまいます。

ツール−オプションで起動時作業ウインドウのチェックは外しています。
作業ウインドウを消した状態で上書き保存してもダメでした。
このブックだけ立ち上げるたびにゾンビのように作業ウインドウが出てき
てしまいます。

どなたか作業ウインドウが出なくする方法ご存じですか?
ちなみに作業ウインドウの内容は「テンプレートヘルプ」となっています。
932908:2005/11/05(土) 23:32:43
>>921
今回は控えたいと思います
>>922
簡単じゃないですよ。ここで悩みたくないですもの
>>923
そのとおりですがここでマクロを強いるのは酷というものです

検索した結果、2重ループ(ファイル数とファイル内行数)の内側ループをEOF判定にすると
エラー52 ファイル名または番号不明
とおっしゃる。
ファイルの終端条件に行番号を明示しないとだめのようです。
933名無しさん@そうだ選挙にいこう:2005/11/05(土) 23:47:11
> ここでマクロを強いるのは酷というものです
そう感じる人が少ないから実装されないんだよ
全ての人があなたと同じ要望を持ってるなんて思わないように
大方の見解は「この程度のことは、必要な奴がマクロ使ってやればいい」だろ


> 検索した結果、2重ループ(ファイル数とファイル内行数)の内側ループをEOF判定にすると
> エラー52 ファイル名または番号不明
> とおっしゃる。
> ファイルの終端条件に行番号を明示しないとだめのようです。
おまえが間違ってるだけ
934908:2005/11/06(日) 00:04:28
前半、ほんとに本心ですか。デフォでシート三個表示で、txt読み込むと一つですよ
後半、ルールに即さなかったですものね。コード書いても放置でしょうね。
いや、2ちゃんはこうでないとね
935名無しさん@そうだ選挙にいこう:2005/11/06(日) 00:29:18
だな
まあ、自分に非があるんだから諦めも付くだろ
936名無しさん@そうだ選挙にいこう:2005/11/06(日) 00:29:35
>>934
判定位置(方法)が悪いから
937名無しさん@そうだ選挙にいこう:2005/11/06(日) 00:36:34
エクセルのシート名を変更する方法(ダブルクリックで変更)
以外にショートカットキーがあれば教えて下さい。
938名無しさん@そうだ選挙にいこう:2005/11/06(日) 00:44:07
>>937
Alt→O→H→R
939名無しさん@そうだ選挙にいこう:2005/11/06(日) 02:39:13
横軸が 0 50 100 50 0 という離散図グラフは描けますか?
具体的には a0% a50% a100%(=b100%) b50% b0% という下のような形です
0,3 50,5 100,7 50,9 0,11
普通にやると0%で3と11,50%で5と9,と1つのxに2つのyが対応してしまって・・・
940名無しさん@そうだ選挙にいこう:2005/11/06(日) 02:47:28
Excel2003で作成したデータをExcel95で読み込もうと思ったら無理でした。
Excel97なら読み込むことは可能なのでしょうか?
どなたかご存知の方がいらしたら教えてください。
941908:2005/11/06(日) 07:36:45
ったくよぉ、手間だぜ
942名無しさん@そうだ選挙にいこう:2005/11/06(日) 08:20:58
>>931
それはきっとMicrosoft Office Onlineからダウンロードしたテンプレートなんじゃね?
ダウンロードするときに「ヘルプウィンドウを表示しますか」みたいなメッセージがでるのよ。
そこで「はい」を選択すると、開く度にゾンビウィンドウが表示される。

よくわかんないけどレジストリに書き込まれてんのかな。
少し調べたけどわからんかった。
×で閉じたほうが早そうだよ。
943名無しさん@そうだ選挙にいこう:2005/11/06(日) 08:50:24
908さん、>>920のぼやきについてですが

別テーブルのフィールドをまとめるってのはSQL使うのが普通なのでは?
だからそういいうのはAccessで簡単にできるようになってる。
Officeってそういうもんでしょ。
それをExcelでやりたいのなら、面倒がらずに知恵を絞るしかないと思うよ。
何でもかんでもMicrosoftのせいにすんのはどうかと…。
944名無しさん@そうだ選挙にいこう:2005/11/06(日) 09:12:01
>>939
普通は無理だと思う。
どうしてもというなら、重なる値のどちらかをマイナスにして
散布図でグラフを作り、目盛の数値をオフにしてダミーの目盛を
テキストボックス等で作る。
見掛けだけならこれでできるんじゃないかな。

>>940
2003でExcel95用の保存形式を取ればいいこと。
保存時にファイルの種類を「Microsoft Excel5.0/95ブック」にする。
ただし当然ながら、2003にしかない機能で作った部分は保存されない。
すでにできあいの2003データがあって、再保存はできないというなら
あきらめる。97だろうが2000だろうが読めないのは同じ。
945名無しさん@そうだ選挙にいこう:2005/11/06(日) 09:32:47
【1 OSの種類】 Windows x-p
【2 Excelのバージョン】 Excel2003
【3 VBAが使えるか】 マクロの記録程度(?)
【4 VBAでの回答の可否】 他に方法が無さそうなのでご指導願います。

事務書類シート中の横長の単独セルに1日〜31日までを均等割り付けして有ります。
別のシートには当月顧客データとして1〜31まで31個のセルが用意されております。
顧客データのセルには○か◎が入ります。

(ここまでは自力で出来ましたが、以下の動作をさせられません。)

たとえば、顧客データの1,5,23に○、◎、○と有ったら、
対応する事務書類シートの1,5,23の上に○、◎、○が重なって欲しい。

尚、顧客データは全員分1シートにまとまっており、
別シートの事務書類は1シートだけあります。
事務書類の“顧客名”を入力すると他の必要事項は顧客データより全て反映されます。
○や◎を重ねる方法は事務書類の1〜31が1つのセルに割り付けてあるため、
テキストボックスを31個100%透過で日付セルに重ねて、
顧客データの対応する○又は◎を入力出来たらと思います。
テキストボックス内に計算式が埋め込めない様なので、マクロ使用ですか?
毎月、顧客全員の事務書類を製作する為、現状では○や◎が無い状態で全員分を作成して、
せっせと手書きで○、◎を付けております・・・。
何とか知恵をお貸し下さい!
長文で申し訳ない!

946名無しさん@そうだ選挙にいこう:2005/11/06(日) 09:37:12
>>945
>テキストボックス内に計算式が埋め込めない様なので
この部分に関しては、 >>367 で対応できませんか?
947名無しさん@そうだ選挙にいこう:2005/11/06(日) 11:20:43
vbaで、文字列に対して、ある特定の文字([a-g]など)が何文字続いているか関数で調べる方法はないでしょうか?
948名無しさん@そうだ選挙にいこう:2005/11/06(日) 11:36:20
>>945 的外れだったらスルーしてね

1.当月顧客データには、あらかじめ全角スペースを入力しておく
2.事務書類シートには、連結式で
=当月顧客データ!セル番地1&・・・&当月顧客データ!セル番地31と入力
3.フォントタイプをポーショナル以外に設定する

ちょっとバカっぽいかな?どうでしょう。
949名無しさん@そうだ選挙にいこう:2005/11/06(日) 11:44:09
>>947
あるよ
950名無しさん@そうだ選挙にいこう:2005/11/06(日) 12:29:02
▼━質問テンプレ (出来れば使ってね) ━━━━━━━━━━━━
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2000
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 可

入力必要なセルへの書き込みが完了すると、別の起動済みソフトへ
フォーカスを移動させようとしています。

たとえばA1に文字が入力されたあと、別の起動済みソフトtest.exeをアクティブ
する。といった感じです。
VBAは判らないのですが、なんとかALT+Tabの操作をマクロで行うことは
出来ました。
ただ、この場合、起動されたソフトがexcel.exeとtest.exeのみのときだけ
成功し、この2者の間に違うソフトがあると、そのソフトをALT+Tabで
選択してしまい、うまくいきませんでした。

そこで特定のウィンドウをアクティブにする方法を教えてください。
ついでになりますが、これも教えてください
フォーカスを移したあとについて。test.exe上でキーボード操作を一つ行って
再びエクセルをアクティブにしなおすことは、マクロでも可能なのでしょうか?
951945:2005/11/06(日) 12:43:34
早速の御回答頂き、有難うございます!
事務書類シートの印刷範囲外の別のセルに、
顧客シートの内容(1〜31日とそれに対応する○◎)を反映。
そこからテキストボックスに反映で出来ました!
テキストボックスが事務書類1枚あたり31個必要で、
当方の作業には同様の事務書類が4種類・・・。
頑張ってテキストボックスを配置します!

更に質問なのですが、
顧客データの日付欄に○か◎か空欄が入るのですが、
最初と最後の日を別のセルに表示させてい場合はどうでしょう?
たとえば、5、8、28日に○で、
3、9、25日に◎がついている顧客の場合、
当月最初のセルに3で、当月最終のセルが28と表示させたい場合です。
お蔭様でだいぶ作業がはかどりそうです!よろしくお願いおいたします!
952名無しさん@そうだ選挙にいこう:2005/11/06(日) 13:24:29
>>950
findWindow
findWindowEX
postMessage
あたりを使えばできる。WinAPIの話なので,VBスレで聞いた方がいい。
多分スレ違い。
953名無しさん@そうだ選挙にいこう
>>950
>たとえばA1に文字が入力されたあと
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$A$1" Then
End Sub

>別の起動済みソフトtest.exeをアクティブする
Excelに関することで、テンプレの3=いいえ、4=可ならコード書いてやるところなんだが
「VB言語(VBA)で、特定ウィンドウをアクティブにする」というのは、
全くExcel関係ないので952も言ってる通りスレ違い
とりあえずAPI以外だとwshのAppActivateの後Sendkeysでも可能というヒントだけあげる
SendMessage、PostMessageの方がいいとは思うけど


>>951
>当月最初のセルに3で、当月最終のセルが28と表示させたい場合です。
このスレを読むと答えが書いてある