Excel総合相談所 20

このエントリーをはてなブックマークに追加
Excelに関する質問は、ここで!

     /)_/)    ( ・質問する人は可能な限り具体的に書いてね。
    < ゚ _・゚> .。oO( ・Excelのバージョン、OSのバージョンも書くとレスが付きやすい。
  ノ) /   |    ( ・回答がなくてもキレないで。
  \(_,,,_,,,)   ( ・分かる人はできるだけ回答して下さいませ。

前スレ
Excel総合相談所 19
http://pc2.2ch.net/test/read.cgi/bsoft/1069951870/

過去スレ、FAQは>>2-10くらい?
2【過去スレ】:04/01/12 17:15
3【FAQ 1】:04/01/12 17:16
Q.セルに入力した値が勝手に変わってしまうのですが
(先頭のゼロが消えてしまう、日付として解釈されてしまう)
 入力したままの形で表示させるにはどうしたらいいですか?
A.入力する時、先頭にアポストロフィ(')をつけるか、
 該当するセルで右クリック−「セルの書式設定」−「表示形式」で「文字列」を選択。


Q.列名がA,B,C,D,Eではなく、1,2,3,4,5になってしまいました。
A.ツールメニュー:「オプション」 -「全般」タグで
 『R1C1 参照形式を使用する(C)』のチェックを外せば直ります。


Q.セルに入力した値が勝手に変わってしまうのですが
 i⇒I、teh⇒the など
A.ツール->オートコレクト->入力中にオートコレクト
 の該当する箇所を削除。
4【FAQ 2】:04/01/12 17:16
Q.例えば、一つのセルに1803329と入力すると
 180度33分29秒と表示されるようにするには
 どうすればいいのでしょうか?
 ついでに計算もしたいです。
A.「1803329と入力すると180度33分29秒と表示される」
 というのと、計算できるというのを両立させるのは無理。
 書式を
 [h]:mm:ss や [h]"度"mm"分"ss"秒".00
 などにしておき、入力するときには
 180:33:29.99
 などとすれば、表示も計算もできる。


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

    ( ´∀`)つ ミ質問ドゾー

イルカ視ね
  ____∧∧  / ̄ ̄ ̄ ̄ ̄ ̄ ̄
〜' ____(,,゚Д゚)<  カレー丼マズー
  UU    U U   \_______
Scheme の let 構文みたいなものないの?
回答が欲しいなら、Schemeのletの説明からすべきじゃないかね。
余所の家に来てんだから。
【質問】

質問です。 ※EXCEL2000 WindowsXP

オートシェイプの線⇒矢印を選択して、矢印を図形描画します(平行な矢印)。
矢印を配置後にその幅をマウスで変更している過程で、微調整に失敗し高さまで
変えてしまうことがよくあります。

その後にマウス操作で直すか、プロパティで高さに”0”を設定すれば直りますが、
これが幅調整をしている時に変わらないように(高さが常に”0”)することは、
プロパティ設定他で出来るのでしょうか。
>>10
無理矢理やろうと思えば、VBAで高さが変わったら0に戻す処理を
行えばいいけど、それを仕込むよりCtrl+Zに手を沿えた状態で
仕事した方が有用では?と思う。
128:04/01/12 18:43
(+ (* a1 (expt (- b1 b2) 3))
   (* a2 (expt (- b1 b2) 2))
   (* a3 (expt (- b1 b2) 1))
   a4)
という計算をする時に
(let ((b (- b1 b2))
  (+ (* a1 (expt b 3))
     (* a2 (expt b 2))
     (* a3 (expt b 1))
     a4))
という風に局所変数 (この場合はb) を定義する方法を教えてくれ。
>>10

Alt(セルのエッジ吸着)か
Shift(8方向固定)押しながらマウスでサイズ変更すればいいのでは・・・

って焦点ずれてる?
1410:04/01/12 19:35
>>11
>>13

回答ありがとうございます。

>> 13
>> Shift(8方向固定)押しながらマウスでサイズ変更すればいいのでは・・・

おぉ、こんな便利な機能があったとは。 これはイイ(・∀・)
まさにこれが知りたかったのです。
職歴7年でずっとイラだっていたのがアホみたいだ。。
たぶんヘルプを探せば見つかったんですよね。
わざわざ有難うございました。

(後輩と一緒に悩んでいたので教えて自慢しよう)
Excel2002とWinXPを使っています。
セルの表示方式の最初から入っているユーザー定義を
削除するにはどうすればいいのでしょうか。
>>15
無理。
何の為に?
17名無しさん@そうだ選挙にいこう:04/01/12 20:32
ゴールシーク、ソルバーで方程式を解いているのですが
なかなか値が収束しません。
式がかなり複雑なのが問題なのかもしれませんが
何かコツみたいな物があれば教えてください。
1815:04/01/12 20:33
分:秒を01:00や00:10の様に表示したいのですが
ユーザー定義のせいでできないので…。
1915:04/01/12 20:34
>>18>>16氏へのレスです。
>>18
ユーザ定義を自分で作って、
該当セルに割り当てるのが一般的だけど?
21名無しさん@そうだ選挙にいこう:04/01/12 21:32
質問です。
データが非常に長いため2分割または3分割して一ページに収めたいのですが、
その場合グラフの系列はどのようにしたらグラフがつながるのでしょうか?
22名無しさん@そうだ選挙にいこう:04/01/12 21:56
>>21
データが7万以上あるのをひとつのグラフにしたいってこと?
複数の領域(つまり複数のシートも可)をグラフのデータソースに
指定することも可能だけど、そんなに細かなグラフ作っても視認
できなくて意味ないから、適当にピックアップしてグラフにしなよ。
2321:04/01/12 22:06
>>22
いやそんなに長くないです。100軒程度なのですが、
紙がもったいなく見栄えも悪いので一枚に抑えたいなとおもって。
A列に1行から35行までXの値が入っていてB列の1行から35行まで
それに対応するyの値が入っています。
そしてxの36番目の値から再びC列の1行から入っており、
同様に対応するyの値がD列の1行目から入っているのですが、
系列を指定するときにどうやってこの二つに分かれた
データを結合すればよいのでしょうか?
24名無しさん@そうだ選挙にいこう:04/01/12 22:10
>>23
C列・D列をA列・B列の下に移動してグラフ化するのがなぜイヤなの?
>>21
もしかして、シフト押しながらメニューで選べる
”図のリンク貼り付け”
が近いのでは?
グラフはつながるし。

でも>>22さんが言うように視認できないし、
どこら辺で分割するか、手作業が出ますよ。
2621:04/01/12 22:20
>>24
いやただ単に見栄えの問題で。後便利かなと思いまして。
無理なのであれば別のシートで全部つなげた奴をつくってそこから
グラフをつくることにします。

.>>25
どうもです。
shift押しても出てこないのでちょっと調べてみます。
2725:04/01/12 22:23
説明不足すまん。
つまり、
A列B列C列D列
○ × ○ ×
○ × ○ ×
じゃなくて、あくまで
データシート
A列B列
○ × 
○ × 
○ × 
○ × 
にしておく。んで、別のシートを印刷用にして
図のリンク貼り付けを使用して貼り付け、整形する。
印刷シート
○ × ○ ×
○ × ○ ×
っぽく1枚に収まるYO。


2825:04/01/12 22:29
あとは、データシートのみ変更していけば
印刷シートは更新される。

>どうもです。
>shift押しても出てこないのでちょっと調べてみます。
最近のエクセルしかだめなのかも。
XPからはできるはず。
2921:04/01/12 22:39
>>27>>28
結局そうしました。ありがとうございました。
3017:04/01/12 22:56
17です。もう一度質問させていただきます。

ゴールシーク、ソルバーで方程式を解いているのですが
なかなか値が収束しません。
式がかなり複雑なのが問題なのかもしれませんが
何かコツみたいな物があれば教えてください。
>>17
収束値が複数出る可能性がある(3つ以上の変数)
変数の稼動範囲が広い
以上の状態では
上限下限設定を小さくして再計算しかないとおもいます。

ここら辺は割り切りです。あとはMathcad使うしか‥
32名無しさん@そうだ選挙にいこう:04/01/13 01:04
EXCELの式の規則的な入力を簡単にする方法を教えてください。
sheet1(’)にはA’列に縦に項目を自分で入力します(1〜100程度)。
sheet2にはA1に(sheet1の)A'1の項目を表示、B1は空白にして、
C1にはA'2の項目を表示、D1は空白にして、E1にはA'3の項目を
表示・・・とできるようにしたいです。
しかし、sheet1が縦に進むのに対してSheet2は横に進み、
さらに間に空白を入れたいと考えているため、
コピー等の機能ではうまくできませんでした。
10回程で折り返して、A3からも同じことを繰り返し・・とやりたいです。
何かいい方法がありましたら教えて頂けませんでしょうか。
33名無しさん@そうだ選挙にいこう:04/01/13 01:30
>>32
C1に
=A2
1 行と列の入れ替え
2 参照先は空欄追加
3 10回ほどで折り返し
4 シート2内の表示はリンク?
の複合では
規模・用途を教えていただかないと
簡単にはできそうにないと思います。

>EXCELの式の規則的な入力を簡単にする方法
↑この想定しだいだと思うよ。式の規則的な入力が?です。
最初のテンプレ作成のみ苦労して、後はそれを再利用
なら、マクロしないでもある程度できそうだけど、
それだと普通にできるからそういうのじゃなさそうだし・・・
仕様を…考え直したら?
36名無しさん@そうだ選挙にいこう:04/01/13 11:43
折れ線グラフで空白のデータを無視してつなぐことが出来ますか?

例えば、
1月と3月はデータがあるが2月はデータが無い
この時に1月と3月のデータを折れ線グラフで結ぶ

このようなことは出来ますか?

>36
[ツール]→[オプション]→[グラフ]→[補間してプロットする]
38名無しさん@そうだ選挙にいこう:04/01/13 14:11
Dim name As String

name = Application.InputBox
ActiveCell.Value = name

インプットボックスから取得したnameを
A1から順番に入力していくにはどうすればいいですか?
最初に入力した名前をA1に、セルを一個移動して、
2番目に入力した名前はA2にいれたいです。
39名無しさん@そうだ選挙にいこう:04/01/13 14:16
数式満載のBookに、タッタカタッタカ入力を行います。

これまでセレロンの1.4GHzのマシンで作業していたときは
タッタカタッタカがひと段落した段階で再計算を行って
いたようなのですが、マシンをペン4の2.4GHzにパワー
アップしたら、一つ目のセルでEnterを押した段階で
再計算が始まり、これがおちつくまで、次のセルへの
入力を受け付けてくれなくなってしまいました。
(キーバッファも効いていないようです)
何とか解決する手立てはありますでしょうか?

OSはXP Home SP-1、Excelは2000です。
すいません。試行錯誤したんですが、やはりわかりません。

条件付き書式のことなんですが、
1.偶数のセルのみに色をつける のと 「=MOD(ROW(),2)」
2.あるセルに「0」以外の文字を入れたとき罫線を引く 「NOT(セル名<1)
という関数で条件式を作ったんですが、
偶数のセルに文字を入れると、セルの色が消えて罫線のみになってしまったんです。
(あたりまえですが)
で、
3.「0」以外の文字を入力し、さらに偶数のセルだった場合、罫線と色をつけるの
という数式を作ってみたのですが、うまく現れてくれませんでした。。

よろしければ何が間違っているのか教えてください。
記述した式はこうです。。。↓
「=AND(MOD(ROW(),2)=0,NOT($B"<1))」
41名無しさん@そうだ選挙にいこう:04/01/13 14:21
>39 自動--->手動
>>39
ツール→オプション→計算方法→>>41参照
>>40
=AND(MOD(ROW(),2)=0,NOT($B"<1))

(1) $B" は $B2 の間違いか?
  書かれた意味は、「ROW()が偶数で、かつ $B2<1でない」

(2) B2<>0 で B2 が 0 でないという意味になる。
  下記はセルが 0 でなく、偶数行の場合、TRUE を
  それ以外は FALSE を表示する。
  =IF(AND(セル<>0,MOD(ROW(セル),2)=0),"TRUE","FALSE")

(3) どこに罫線をひくか分からんので、下線付けにしてみた VBA
  1) [ALT] + [F11] で VBA エディタを開く。
  2) プロジェクトの対象シートをダブルクリック。
  3) 下記のコードをコピペ。
  4) たぶん希望に近い結果になると思う。

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Row Mod 2 = 0 Then
Target.Interior.Color = vbYellow
End If
If Target.Value <> 0 Then
Target.Font.Underline = True
End If
End Sub
4440:04/01/13 15:38
>>43
ごめん、すっごい参考になったけど、条件式書式のほうは
反応が前と同じままできちんと反応してくれないです。

ちなみにVBAは最高にきちんとした反応をしてくれました。

さらにずうずうしいことを言うと、罫線は上線で
しかもセルに引きたいんですよ。
さらに記入されたセルがある、すべてのセルに。。。

教えていただけたらうれしいな・・・なんて。
もちらん、後々はきちんと勉強しますので!
エロ画像をねだる厨房のセリフに似てるな
>>38
最後にActiveCell.Offset(1).Selectで移動しておけばどうでしょう。
かなりやってみたのですがわかりませんので質問させていただきます。

セルに入力した数値の1桁下まで数字を表示させたいのです。
条件が3つまでならセルの書式で[<1]0.00;[>=10]0;0.0のように出来るのですが
それ以上になるとどうすればよいのでしょうか?
IF関数を使うと最終桁が0の時に0を表示してくれないのでセルの書式で対応したのですが。
4843:04/01/13 17:05
>>44

(1) 下記の IF 例文を、自分自身(A1 セル)に適用しないように。
  =IF(AND(A1<>0,MOD(ROW(A1),2)=0),"TRUE","FALSE")
  この式が B1 セルに書かれていると、
  A1 セルの値と行番号を調べて、B1 セルに
  TRUE, FALSE を表示する。

(2) 下線から上側罫線に変更するには、
  Target.Font.Underline = True の行を
  次の行に差し替える。
Target.Borders(xlTop).Weight = xlThin

(3) さらに記入されたセルがある、すべてのセルに。。。
  というのは面倒だから嫌だ。
4947:04/01/13 17:16
文章が変ですね。
50名無しさん@そうだ選挙にいこう:04/01/13 17:22
>>44
A列を0の判定に使うとして
条件1:パターンと罫線を設定
=AND(MOD(ROW(),2)=0,AND($A1<>"",$A1<1))
条件2:パターンを設定
=MOD(ROW(),2)=0
条件3:罫線を設定
=AND($A1<>"",$A1<1)
5147:04/01/13 17:27
例えば、E1に入力された数字の桁数を参照してE2にその1桁下まで数値を表示させたいということです。
52名無しさん@そうだ選挙にいこう:04/01/13 17:59
>>51
桁数は
=INT(LOG(ABS(E1)))+1
で求まるので、これとROUND()かTRUNC()を組み合わせてみたら?
53名無しさん@そうだ選挙にいこう:04/01/13 18:19
>51 47
=TEXT(E1,IF(E1-INT(E1)=0,"0.0","0."&REPT("0",LEN(E1)-LEN(INT(E1)))))
戻り値は文字列だけど、計算には支障なく使える。
54名無しさん@そうだ選挙にいこう:04/01/13 18:36
>>47,51
>>53 文字列でやるなら
E1が整数なら =E1&".0"
E1が小数なら =E1$"0"  これで同じ結果になる
距離行列を瞬時に求めることできますか?

    X座標        Y座標
1    0           0
2    22.68644223    10.39194722
3    18.84322111    16.15677889
4    5.391947218    20
5    5.391947218    23.84322111
6    22.68644223    29.60805278

例えばこの六点間の距離を求めて6×6の行列に出力してくれるものです。
1:2成分には1と2の間の距離、といった具合にです。
56名無しさん@そうだ選挙にいこう:04/01/13 19:16
>>55
ただ単に数式書き込んでコピペすれば良いんじゃないの!
お前ら、「〜したいです」じゃなく、最低でも「〜したんですけど駄目でした。
どうしたらいいですか?」と訊け。
58名無しさん@そうだ選挙にいこう:04/01/13 23:16
>>55

    A列(X座標)    B列(Y座標)
1    0           0
2    22.68644223    10.39194722
3    18.84322111    16.15677889
4    5.391947218    20
5    5.391947218    23.84322111
6    22.68644223    29.60805278

として$A$1:$B6に名前を定義(仮にtable)
A12〜16に1〜6、B11〜G11にも1〜6を入力
B12に =SQRT((INDEX(table,$A12,1)-INDEX(table,B$11,1))^2+(INDEX(table,$A12,2)-INDEX(table,B$11,2))^2)
でコピペ。酔ってる俺。
>>57
3万回既出の愚痴だ。スルーしとけ。
>>58
おぉ、出来ました!
ありがとうございます。(・∀・)カラダキヲツケテネ
Excel2003で作った表をスタイルシートじゃないHTMLで保存したいのですが
無理でしょうか?
卒論の〆切が迫っていて過去スレ読んでる暇がありません。ガイシュツだったらすみません。
印刷するとセルの中身が途中で切れてしまうので困っています。
ぐぐっても答えが得られませんでした。解決法を教えて下さい。お願いします。
>>62
幅広げるかフォントを小さくして、印刷前にプレビューで確認するとか。
例えば、

A1 = 123
A2 = 456
(両方、数字扱い)

とあるときに、
A3 = '123 / 456'
(文字列扱い)

としたいのですが、どう関数を設定すれば良いでしょうか?
宜しくご教授お願いします。
>>64
="'"&A1&"/"&A2&"'"
>63
ありがとうございます。解決したみたいです。
気が動転しててすみません。
6764:04/01/14 01:36
>>65

即答有難うございます。
すみません、こちらのやりたいことを間違って伝えてしまいました。

誤:A3 = '123 / 456'
正:A3 = 123 / 456

文字列の前後のシングルクオーテーションは不要です。
単純に前後の"'"を外したらエラーになってしまいました。。
すみませんが、もう一度教えていただけませんか?
最初と最後の&をとってください。
6964:04/01/14 01:38
度々すみません、うまくいきました。^O^/

=A1&"/"&A2

これでOKですね。
一人でやっていたら絶対に分かりませんでした。
本当に有難うございました!
7064:04/01/14 01:39
っと、先に回答を頂いてました。^^;
重ねて、有難うございました。
VBAで月単位の日付の加減はできますか?2003/12/1を2004/1/1にしたりするやつ。
VBAのDateはワークシートのDateとは意味が違うし、ワークシート関数のDateも無い、
DateValueでいろいろやってみたけどできません。Excel2000です。
>>71
そこでdataddですよ
まちがい。dateadd
7447:04/01/14 11:38
>>52 53 54
ありがとうございます。
これからやってみます。
>>71
DateAdd
7671:04/01/14 11:41
>>72 >>75
ありがとう。存在自体も知らない関数でした。
77名無しさん@そうだ選挙にいこう:04/01/14 16:11
Excel2000、WindowMeです。
シートを開く時に自動的に最終行のセルに飛ぶようにすることは可能でしょうか?
毎日データを入れていきたいので。
セルの書式を文字列にする以外に小数点末尾の0を表示させることは出来るのでしょうか?
数値は小数点以下の桁数が変わるのでセルの書式で直接桁数指定することは出来ないのです。
よろしくお願いします。
79名無しさん@そうだ選挙にいこう:04/01/14 16:54
>>78
セルの書式設定で「0.#######0」とする。
#の個数は最大値以上に設定すること!

しかし末尾に0を追加する事になにか意味があるの?
数学的におかしくないか。
>>79 回答ありがとうございます。私の説明がおかしかったようです。
0を追加するのではなく、例えば1.204を関数で四捨五入して1.20にした場合1.2と表示されてしまうのです。
これを1.20と表示させたいのです。
<質問>
使用OS:WinXPHome
使用ver:Excel2000

作業ファイル、参照ファイルを作成
作業ファイルのセルD1に
if(作業ファイル$A1=参照ファイル$E1,参照ファイル$H1)
という条件式を入力した後に、
作業ファイルのセルD1からセルD1000まで右下隅ドラッグドロップ

1.FALSEを返した最初の行xで処理中断
2.xに1つ行挿入
3.参照ファイル$Ex:$Gxを作業ファイル$Ax:$Cxにコピー
4.作業ファイル$D(x-1)の条件式を用いて処理再開

という作業を行いたいのですが、if関数を用いて行挿入する方法はあるのでしょうか?
どなたかご教授お願いします
>>81
何を言ってるのか分からんが、ワークシート関数で行の挿入などできません。
>>80
セルの書式設定で少数点以下の桁数を指定じゃなぜ駄目なの?
「桁数が変わるので」の意味がよく分かりません。
桁数を固定したいから末尾を0にする、のが普通だと思うけど。
82氏、回答ありがとうございました
ワークシート関数で行の挿入はできないのですね

<作業ファイル>
   A列   B列   C列   D列
1   10    20    30    if(作業ファイル$A1=参照ファイル$E1,参照ファイル$H1)
2   20    30    40    if(作業ファイル$A2=参照ファイル$E2,参照ファイル$H2)

<参照ファイル>
   E列   F列   G列   H列
1   10    20    30    40
2   30    30    40    50

例えばこの状況だと
作業ファイルA1=参照ファイルE1なので参照ファイルH1の40が作業ファイルD1に返りますが、
2行目だとD2にFALSEが返ってきてしまいます
そこで、A2に新しい行を挿入して

<作業ファイル>
   A列   B列   C列   D列
1   10    20    30    if(作業ファイル$A1=参照ファイル$E1,参照ファイル$H1)
2    ← 挿入した行
3   20    30    40    if(作業ファイル$A2=参照ファイル$E2,参照ファイル$H2)

のような状況にして

1   10    20    30    if(作業ファイル$A1=参照ファイル$E1,参照ファイル$H1)
2   30    30    40    if(作業ファイル$A2=参照ファイル$E2,参照ファイル$H2)
3   20    30    40    if(作業ファイル$A2=参照ファイル$E3,参照ファイル$H3) ←2を3に変更

このような処理がしたいと考えているのですが、説明が下手で申し訳ありません
83氏、ありがとうございます
マクロを用いるみたいですので、そちらで質問させて頂くことにします
スレ違い申し訳ありませんでした
87名無しさん@そうだ選挙にいこう:04/01/14 19:44



if(作業ファイル$A1=参照ファイル$E1,参照ファイル$H1)

>>77
可能です。
Workbook_Open()のプロシージャに、
自動的に最終行を選択するマクロを書いてください。
8980:04/01/14 21:39
>>84 どうもです。
数値を0.240とか0.00240とか0.0000240とか0.00000240とか1つの書式?関数?で表示させたいのですが。
頭に0を表示するしようとすると文字列扱いになるのと一緒で
数値として扱うのは無理なんじゃないの?
91名無しさん@そうだ選挙にいこう:04/01/14 23:35
Excel2002、WinXPを使っています。
散布図に2本の曲線を描いたのですが、
1本が青、もう一本がピンクになりました。
この色を両方とも黒にしたいのですが、どうすればいいのでしょうか。
92食パンまん:04/01/14 23:46
エクセル初心者の者です。

セルに”microsoft”→”microsoftexcel”としたいのですが、どなたか
教えていただきたいです。
教本だと複雑なものばかりだったので。。。。
>>92
編集>置換
94食パンまん:04/01/14 23:55
エクセル初心者の者です。

セルに”microsoft”→”microsoftexcel”としたいのですが、どなたか
教えていただきたいです。
教本だと複雑なものばかりだったので。。。。
セルの中で改行したい場合はどうしたらいいですか??
96食パンまん」:04/01/14 23:59
ありがとうございます!!!>>92さん。2回もかきこんでしまいました。
もっと修行します。
>>95
Alt+Enter
>>97
ありがとうございます!!
99食パンまん」:04/01/15 00:32
>>95
これはセルの書式設定ですね。

>>93
置換えできませんでした。質問の仕方間違ってました。すみません。
各セルに1から10の文字が入っている中に、数字の頭に文字を挿入
させる方法おしえてください。   
>>99
それがA列に縦にずらっと入っているなら、
B1に「=(任意の文字)&A1」で。
101名無しさん@そうだ選挙にいこう:04/01/15 03:29
>>80,89
苦労してるようだけど…
こういうときは表示形式を指数にするのが本道じゃないかなあ。
102名無しさん@そうだ選挙にいこう:04/01/15 03:31
>>91
そのグラフを右クリックして書式設定で、色でも太さでも何でも変えられるよ。
>>101
最終的には指数表示しかないかなとは思ってるんですが・・・ダメみたいですね。
ありがとうございます。
104名無しさん@そうだ選挙にいこう:04/01/15 09:59
セルのコピーなどすると、スマートタグが表示されますが、
その後、他のセルに値の入力などすると、消えてしまいます。
後から、またスマートタグを再表示する方法はあるのでしょうか?
バージョンはXPです。
105名無しさん@そうだ選挙にいこう:04/01/15 11:09
>>80 >>89 >>103
>>79の回答で出来るじゃないか。
質問だけして何も試してないだろ!!!
A1:C10までデータがあります

For i = 1 to 10
With Application
.ScreenUpdating = False
ActiveSheet.ChartObjects("グラフ 1").Activate
ActiveChart.ChartArea.Select
ActiveChart.SetSourceData Source:=Sheets("Sheet1").Range(*****), PlotBy:=xlColumns
End With
Next

グラフ1をA1:C1からA10:C10まで順次表示アニメーションさせたいんですが、Range(*****)の設定の仕方が分かりません。
Cells(1,1),Cells(i,3)とかいろいろやりましたができませんでした。
お願いします。
107103:04/01/15 13:46
>>105
すみませんでした。
108名無しさん@そうだ選挙にいこう:04/01/15 15:30
【質問】
OS :98SE
ver:Excel2000

ファイルの中に2つシートがあり、シート1に写真が貼り付けてあります。
シート2には写真の撮影場所、撮影日時等を枠線で囲んだ表(3行2列)が小さな表があります。

シート1の写真上の隅にシート2の表がテキストボックスの様な形式で貼り付けてあります。
このオブジェクトをダブルクリックすると、シート2の表にジャンプします。
作成したエクセルのバージョンは不明です。

この様にセルの一部をテキストボックスの様な形式で貼り付ける事は、Excel2000でも可能なのでしょうか?
また、出来る場合その手順を教えてください。
よろしくお願いします。

110名無しさん@そうだ選挙にいこう:04/01/15 16:00
OS:98
ver:Excel2000

ワードでいうところの「隠し文字」の機能はエクセルにはないのでしょうか。
ヘルプで調べると
セルの書式設定→表示形式→種類→セミコロン3個を入力
という方法がありましたが、これだと消したい値のあるセルの中にカーソルを
持っていかない場合は、値が見えない状態なので不便です。
他に方法はないでしょうか。お願いします。

>>110
ちなみに何に使うのそれ?行、列の非表示で大抵は事足りるはずだけど
112名無しさん@そうだ選挙にいこう:04/01/15 16:18
【質問】
OS:2000
ver:Excel2003

個数により表示される金額を変化させたいのです。

<作業ファイル>
   A列   B列
1  個数   金額
2

個数が1個の場合は金額欄に「500」と表示
個数が2個の場合は金額欄に「600」と表示
個数が3個の場合は金額欄に「700」と表示
個数が4個以上の場合は「200×個数」と表示
されるようにしたいのです。
よろしくお願いします。
113110:04/01/15 16:23
>>111
印刷して人に渡す表の下に、自分以外には見せたくない覚え書きを入れたいのです。
114110:04/01/15 16:24
追記:行、列の非表示だと、セル1つだけを非表示にできないので…
115名無しさん@そうだ選挙にいこう:04/01/15 16:31
コメントの挿入でかんの?

カーソルもってかないと読めないけど。
>>114
白黒印刷だったらフォントを白にすれば見えないし印刷されないと思うけど
読みたいときはCtrl+Aとか
117108:04/01/15 16:42
>>109
ありがとうございました。
無事再現できました。
118110:04/01/15 16:54
>>113-114
なる。印刷時だけ特定のセルだけを印刷させたくない
ってことね。

う〜ん。印刷範囲じゃ駄目だし
>>115 が言うようにコメントぐらいしか思いつかないな
コメント挿入して、挿入したセルに対して「コメントを表示する」
に設定じゃ駄目?
デフォの印刷オプションだとコメント印刷されないし
でも、データとして使いたそうだしなぁ〜スマソ
>>110

>>115-116の言ってるとおり、
☆コメント挿入
☆フォントをセルの色と同じにする
 (読みたいときには全選択でも文字が浮き上がるけど、単に選択すれば数式バーに表示される)

他にも、
☆入力規則を使う
☆改ページプレビュー表示にして、枠外にメモする
など、いろいろ方法はありそうだ。

「カーソルを持っていかなくても常に表示されていて、しかも印刷されない」
ということがしたいのならば、
改ページプレビューを使うのがいいかもしれない。
120110:04/01/15 16:58
>>114-116,118さんありがとうございました。

118さんの仰るとおり「印刷時だけ特定のセルだけを印刷させたくない 」です。
読みたいときに作業するのではなく(隠してること自体忘れる可能性があるので)
普段は目に入ってくる、という方法を求めていました。
コメントを使う方向で考えてみます、ありがとうございました!
121名無しさん@そうだ選挙にいこう:04/01/15 17:00
>>112
関数CHOOSEとIFで簡単に作れる
122110:04/01/15 17:02
書き込んでいる間に、>>111さんもありがとうございました。
123110:04/01/15 17:03
>119さんでした、スマソ…
>>112
B1セルに
=IF(A1<1,"ERROR",IF(A1>3,200*A1,400+100*A1))
以下B列にコピー。
A1<1 のときは ERROR と表示する。
125112:04/01/15 17:08
>>121
CHOOSEを使ったことがありません。
今CHOOSEで検索していろいろ見てみましたがわかりません。
具体的にどのように使用すればよいのでしょうか?
ちなみに最初IFだけで作ろうとして挫折しました。
126119:04/01/15 17:08
>>110コメントがあるセルには印がつくから忘れないよ。多分その印は印刷もされないし。
コメント使うのがいいかもしれないね。
127名無しさん@そうだ選挙にいこう:04/01/15 17:14
>>112
ifだけでできるじゃん
helpの下のほうに平均点の例が載ってるだろ。
128112:04/01/15 17:15
>>124
ありがとうございます!助かりました。
質問です。
AutoFilterでボタンを押すとその列にあるアイテムの一覧が出ますよね。
あんなふうに有る範囲にあるアイテムを重複を省いて取得する簡単な方法はありますか?
セルに貼り付けても良いしVBAで配列に格納しても良いんですが。
130129:04/01/15 18:47
環境はExcel97です。
131名無しさん@そうだ選挙にいこう:04/01/15 18:51
シートの保護を解除するソフトってあるんですか?
132名無しさん@そうだ選挙にいこう:04/01/15 18:54
>112
ヤッパ汎用性を考慮したらCHOOSEだな
=IF(A1<1,"",CHOOSE(IF(A1>4,4,A1),500,600,700,A1*200))
単価が変わっても対応しやすい。
単価が複数ある場合などはLOOKUP系の関数が便利
>>129
フィルタオプションでリスト範囲に、調べたい一列を指定して(A:Aのように)、
「重複するレコードは無視する」にチェックいれる。
丁度オートフィルタをドロップしたときのような感じにセルにデータが入るよ。
134名無しさん@そうだ選挙にいこう:04/01/15 19:52
初歩的な質問ですいません。
  A
1  1
2  2
3  3
とA列に1から順に入力されている場合において、
 1,7,13,19・・・(以下6づつ増える)の時だけXの計算を行い、
 それ以外の場合はYを参照する
という式を教えてください。
>>134
=IF(MOD(A1,6)=1,X,Y)
>>135
即レスサンクスです。解決しますた。
137名無しさん@そうだ選挙にいこう:04/01/15 20:06
                        レノハハヽトト、ヽ、ルノハノ
                      ノルハkくニ三ミミ、ヽ、ヾト、ルハ
                    三ラKくソへニ二三ミミミヽリルくノフノ
────────────┐ ゞラノハノィルノハヽニ=-、ヾ、l川リルハK
                  | ゞツノハイ´    `´   ヾリ川ヾゞ、
   ∩___∩        ...| ヾシリイノ :          : `ヾハミ、
   | ノ      ヽ        .|  彡彳、,;_        _;,,. ミミミk     / ̄ ̄ ̄ ̄ ̄ ̄ ̄     
   /  ●   ● |  ...   .|  ミ彡i シ==ェ、   ,ェ==ヾ ソrヾ.  <  I am Kazuo Matui  
  |    ( _●_)  ミ      ..|  i^ヾ!' _,rェッ、。  / ,r'エッヶヽ|/)ソ    |  I love KUMA   
  彡、   |∪|  、`\     ..|  ヽド!  `  ̄´ ! 〉`  ̄ ´  }r' !     \_______     
/ __  ヽノ /´>  )    ... |   しハ   , (_ l ノ _)ヽ   / トー'                     
(___)   / (_/     . . |     i ーr'  ` ー ´ 。 `r'  !ヾ、                     
  |       /         ..|      ',.   ーt〒r〒ア ,'  ハミヽ                     
  |  /\ \           |     _,.-ハヽ i  `ニニ'´  ! / 〉ミ___                    
  | /    )  )         . |-‐''"´/l ヽ 丶      // /                       
  ∪    (  \        ..|   /  l  ヽ `ー----ァ' ´ /                         
       \_)         .|/    l   \____/   /
                  ,.r‐-、   |    /___ヽ  /
                / ,._ ヽ、 |  /!  /ヽ/
138名無しさん@そうだ選挙にいこう:04/01/15 20:55
列の最後はIVですが、これ以上になりませんか?
>>138
無理。
>>131
あっても教えないよ。

ブック作った人に聞きなさい。
141食パンまん:04/01/16 00:31
また質問です。
セルに表示された文字は残したいのですが、その中に入って
いる数値だけを消すことはできますか?
142名無しさん@そうだ選挙にいこう:04/01/16 00:42
EXCEL2000を立ち上げ文字を打とうとすると
必ず画面に「登録に必要な情報が不足しているためこのアプリーケーションを
実行できません。この問題を解決する為にはセットアップを再度実行する必要が
あります。」と出、使用することができません。
解決方法をご存知の方教えていただけませんか?お願いします。


>>142
Excelを再インストール
>>141
0から9まで10回「置換え」で空白に置き換えれば一括でできますよ
145名無しさん@そうだ選挙にいこう:04/01/16 03:30
すいません、エクセルを今後仕事で使うことになりました。

ワードはそれなりに使えるんですがエクセルはさっぱりです。
関数ってなに?って感じです。
そういう私ですがネットのサイトとかでわかりやすく解説している
場所とか教えて頂けませんでしょうか。
よろしくおねがいします。

ちなみに使っているOfficeはXPです。
>>142
WORD もダメみたいですねぇ。
http://pc2.2ch.net/test/read.cgi/bsoft/1012168343/99
Office の再インストール。
ネタじゃねーの?
解決方法自分で書いてるし。
149名無しさん@そうだ選挙にいこう:04/01/16 11:40
>>145
サイトは自分で検索して合うものを見つければよい、
人それぞれ修学のクセが違うからね。
(私はサイトよりも解説本の方が良く理解できた)
どっちにしろ中学レベルの数学知識を思い出しておいたほうが
理解しやすいよ。
    A列   B列
1   りんご  100       
2  256      
3   もも  124
4   かめ  139
5 231    
6   さかな  345

A列が空白になっているセルの
B列にあるデータを削除する
マクロを考えています。なにか
良い方法があったら教えてください。
上の例ではB2の256やB5の231
を削除して、上に詰めたいです。
For i = 6 To 1 Step -1
If Cells(i, 1) = "" Then Range(Cells(i, 1), Cells(i, 2)).Delete shift:=xlUp
Next
>>151
ありがとうございます。助かりました。
153名無しさん@そうだ選挙にいこう:04/01/16 14:30
散々既出だと思うんですが...

MS-Excelでpasswordをつけて保存したfileは
passwordを紛失した場合、復旧は不可能でしょうか?
それとも、なにかよいcrack toolはありますか?

そのfileを作成したExcelのversionは2000で、
Excel 2000かExcel 2002で開きたいと思っています。
154名無しさん@そうだ選挙にいこう:04/01/16 14:37
>>153
自己レス。
http://www.passwordrecoverytools.com/
http://www.crackpassword.com/

いずれもshare wareで、$25-$30。
もうちょっと探してみてfreeのが
見つからなかったら、これ試してみます。
2000はバイナリで開いて手書きでパスワードを変えられるという
素敵な技があったと思うが忘れた。
3000円くらいなら払ったほうが楽だよ。
156129:04/01/16 17:01
>>133
ありがとうございます。出来ました。
がんばってもできないので、ささやかに質問します。。

A列に商品名が羅列してあるとして、
その中から重複しているものに色をつけようとしたのですが

「条件付き書式」で「数式が =COUNTIF(A:A,A1)>1」

にしたんですが、かぶった商品をわざと入力しても色がつきません。
もちろん、すべての行に条件付き書式をつけたんですが、ダメでした。
なにがまちがってるんでしょか?
>>157
If文でネストしたら?
真の時True、偽の時False返せば色付くっしょ。

>>158
あ、いいですねぇ。やってみます。
どもです。
>>157
うちでその通りにやったら出来たけど(Excel2002)
161157:04/01/17 14:24
>>160 適当に作ったファイルでやってみたらできました。(ぉ
なんかセルの表示を真ん中にしてるからかな?
どもありがとうでした。。
質問です。
Excel2000 + Windows2000 + IEを利用して、Web上で、出欠を取りたいと思っています。
現在、

名前 所属 出欠
ああ A課 ○
あい A課 ×
あえ B課 ○
ほえ B課 不明
もげ C課 不明

というようなシートがあって、出欠部分のみ、Web上で変更できるようにしようとしています。
出欠部分のみ変更可能にするのは、シートの保護とセルのロックで解決できたのですが
出欠をまとめる欄として、Excel上では

所属 出席 欠席 不明
A課  1  1  0
B課  1  0  1
C課  0  0  1

があるのですが、この部分の関数がWeb発行をしたHTML上ではどうしても表現できません。
163名無しさん@そうだ選挙にいこう:04/01/17 16:15
Excelでは

=DCOUNT(C2:D5,,L41:M42)
=SUMPRODUCT((C2:C5="A課")*(D2:D5="○")*1)
={SUM(IF(C2:C5="A課")*(D2:D5="○"),1,0))}

等の関数を試したのですが、Web発行をしたHTML上では
どの場合も「#VALUE!」となってしまいます。

何か良い方法はないでしょうか。
よろしくお願い致します。
164名無しさん@そうだ選挙にいこう:04/01/17 19:46
Excel97を使っているのですが
Excelを閉じるとPCが固まってしまいます。

どうすれば直るか教えてください。
>>164
Excelの再インストール、それでも駄目ならOSの再インストール。
166162:04/01/17 19:52
Web発行だと、ネット上で更新したのが保存できないですね・・・_| ̄|○シマッタ
167とっぼぴ:04/01/17 21:21
ExcelもOSもXPを使っています。
ピボットテーブルの逆の機能をする機能か、高速に処理できる方法があったら
教えてください。今、VBAで縦2000行、横24列の表を変更していますが、
1つの表の変更に5分くらいかかります。4万行を越えたあたりから、
動作が極端に遅くなるようです。

なにかよい方法があったら、教えてください。

変更前
   A   B   C
1      1月  2月
2 キャベツ 40  10
3 にんじん  0  20


変更後
   A   B   C
1 品名   月   売上
2 キャベツ 1月  40
3 にんじん 1月   0
4 キャベツ 2月  10
5 にんじん 2月  20

>>167
品名データが固定なのなら、ワークシート関数(Lookup系)で
取ったら早いんでないの。
>>167
うまいことインデックスをつけてindex関数で参照してやればそんなに時間掛かんないよ
実際に2000x24の二次元データを一次元の表にするのに3分程度だったよ。

Atlon XP2500+ FSB333 WindowsXp+OfficeXp
>>167
Application.Calculation = xlCalculationManual
Application.ScreenUpdating = False
とか、してますか?
171167:04/01/17 21:58
3分じゃ遅すぎると思って乱数で作った元データとインデックを固定値に切り替えたら数秒で終わったよ。
>>167
とは言え、そのレコード数は
DBソフト導入を考えた方がいいと思う・・・・・
173名無しさん@そうだ選挙にいこう:04/01/18 01:45
Excelの自動的に表示形式を変更する機能って止められますか?
例えば、インターネットのホームページの表をExcelに貼り付けた場合、
「5-1」というデータが勝手に「2004/5/1」と変換されます。
正直鬱陶しいので、止め方があれば、ご教授ください。
おながいします。
助けてください!!!

小数点のある数値をあるセルに入力したら、別の2つのセルにそれぞれ整数
部分の数値と小数点部分の数値を表示したいのです。

(例)
    A     B     C
1  2.45   2     45


表示させるだけでなく、それぞれ数値として別の計算の元となる予定です(上
の例では、例えば45に10掛けたり・・・)
>>175
単純に [B1]=INT(A1) [C1]=(A1-B1)*100 でどうよ?
>>176
すみません、言葉足らずでした。。。。
整数部分の[B1]はご教授通りです。
問題は[C1]でして

例えば2.4の場合は、[C1]は 4 に
    2.682の場合は、[C1]に 682 と表示させたいのです。

助けてください
>>174
確かにこれで入力時に日付/時間になってしまうのは防げるけどそのセルの書式を文字列に
設定していても「置換」によって日付とおなじ文字列に変更される場合は駄目ね。
「'」付きで置換するしかないあるよ
>>177
あばしスマートじゃないけどA1から

B1: =TRUNC(A1)で整数部を取り出して
C1: =TEXT(A1-B1,"G/標準")と一旦テキストに変換し
D1: =SIGN(A1)*VALUE(RIGHT(C1,LEN(C1)-2))

もちろんC1無しでも良いけど更に式が面倒くさくなるのでC1は非表示にしておくとか
最終的に数値に変換する必要が無くマイナス値も無いのならもう少し簡単になるけど

それから小数部分の桁数が多すぎると破綻するよ。
もともとの数値で循環小数とか無理数がきたらどーすんの?
>>177

=RIGHT(A1,LEN(K110)-FIND(".",A1))

数値が欲しいならvalue組み合わせて。

しかし、エクセルの数値・文字列の扱いは理不尽だなあw
181180:04/01/18 09:25
失礼。

K110はA1だ。試しに入力した時のが残ってしまった。
182名無しさん@そうだ選挙にいこう:04/01/18 11:06
>177
計算の元になるのに
.2⇒2 と .682⇒682 を
混在させるのはいかがなものか。
183173:04/01/18 11:59
>>174
自分で入力すする場合、「'」や文字列にする方法で
出来るのは知ってます。
ただ、ホームページなどからHTML形式のまま貼り付けた場合。
予め文字列にしておいても駄目ですし、アポストロフィなんか
入れようがないですよね。
これどうにかなりませんか?
>>183

貼り付ける前に、シート全体のセルを選択して
右クリック→セルの書式設定→文字列

にしておいてもだめなんだっけか?
185173:04/01/18 12:36
>>184
駄目でした。
>>183
HTMLで貼り付ける前にエディタに貼り付け置換しとけば良いじゃん。まあうまく置換できる法則があればだけどね。
せっかくPC使っているのだから複数のソフトを連携させないと損だよ。
187173:04/01/18 12:50
>>186
や、それするんなら、Excelにダイレクトにテキストで貼り付けますよ。
だけど、テキストだと、セル間の列区切りが消えてしまって、
一行全体がA列に貼り付けられてしまうんです。
これじゃExcelに貼り付ける意味がないですよね。
うーむ。
>>187
固定長なら区切ってやれば良いと思うけど、それじゃ駄目?
189173:04/01/18 13:13
>>188
固定長などでググッテみましたがどうやるか分かりません。
本当に申し訳ありませんが詳しく教えて下さいです。。。
>>173

いっそ、
2004/1/ → "'1-"
2004/2/ → "2-"
 ・
 ・
 ・
2004/12/ → "'12-"
って置換すれば?
>>173
表の中だけ文字列にする。
(1) html ファイルをエディタで書換える。
  <TD> → <TD>="
  </TD> → "</TD>
  全置換。大文字/小文字は区別しない。
(2) Excel に読込む。
質問します
8

8
16
24

と1セルずつ打たないでこういった風にできる方法ありませんか?
>>192

A1 → 8
A2 → =A1+8
以下、A2をA3以下にコピー。
194名無しさん@そうだ選挙にいこう:04/01/18 14:08
質問します

A1 → 1970
B1 → 4
C1 → 16

と入力されていて

D1 → 1970/4/16 というように表示(しかも日付として)させるには
どうすればよいのでしょうか?文字列としてだけなら単につなげればいいんだけど。
=DATE(A1,B1,C1)
196191:04/01/18 15:56
だめだ。
<TD のあとに何が指定されてるか分からん。
正規表現で置換せにゃならん。
>>192
8って入力したセルの右下角から、入力したい範囲分
右ドラッグしてみそ。
198名無しさん@そうだ選挙にいこう:04/01/18 21:26
>>102
ありがとうございました。遅くてすみません。
>>197
16も必要と思われ
Excel2002を使っています。
一つのセルに複数行表示することはできるのでしょうか?
教えて下さい。
>>200
Alt+Enter
202名無しさん@そうだ選挙にいこう:04/01/18 21:57
>>200
強制改行は >>201
なりゆきに任せるなら
書式→セル→配置 で
折り返して全体を表示する。
203名無しさん@そうだ選挙にいこう:04/01/19 02:01
指定した範囲のオブジェクトを一括削除するような手法はありますか?
1つ1つちまちま消しているんですが、フローチャートを描いていたら
面倒になってしまいますた。
よろしくおねがいします。
203です。なんとか解決できました。
ありがとうございました。
205名無しさん@そうだ選挙にいこう:04/01/19 02:42
エクセル2000使ってます
データ表を折れ線グラフにするときに、横軸をデータの
ある行を使いたいんですけど、どうすればいいですか?
>>205
グラフ領域で右クリック⇒元のデータ⇒軸項目ラベルに使用
でできると思います。
207205:04/01/19 03:04
>>206
どうもありがとん
208205:04/01/19 03:27
すいませんが・・・横軸だけを反転する方法をおしえてください。
209nanashi:04/01/19 03:37
Windows2000とExcel2000を使用しています。
 
黒で塗り潰されてシートを集計したいと考えています。
countif関数を用いて、 =COUNTIF(A18:E18,????) のように簡単に集計したいと考えているのですが可能でしょうか?
またその際にはどのように条件を設定すれば良いのでしょうか?
御教授お願い致します。。。
>>209
シート上のいくつかのセルが黒で塗りつぶされており、その塗りつぶされたセルの数を集計したい
という意味でしょうか?
多分countifでは無理です。ユーザー定義関数を使う場合の例を書いてみました。
セルを塗り替えただけでは再計算しません。明示的にF9を押す等再計算をする必要があるので
注意してください。

Function countColoredCells(ByVal aRange As Range, ByVal aColor As Variant)
Application.Volatile
Dim aCell As Object
countColoredCells = 0
For Each aCell In aRange
If aCell.Interior.ColorIndex = aColor Then countColoredCells = countColoredCells + 1
Next
End Function
211210:04/01/19 07:15
えっと使い方は関数の貼り付けからイーザー定義関数を選んでください。
引数はaRangeにA18:E18、aColorにはカラーインデックスを入れますが「黒」であれば"1"です。
212210:04/01/19 07:18
>>211
×イーザー定義関数
○ユーザー定義関数
>>209
↓を列数分オートフィルさせてcountifでカウントするって手もあるけど
http://www.moreexcellent.com/excel/tips/color.htm
214名無しさん@そうだ選挙にいこう:04/01/19 09:57
>>208
軸を右クリックして書式設定
215209のnanashi:04/01/19 10:39
>>210の名無しさん
ありがとうございます。説明が下手で本当に申し訳ありません。
概ねその通りなのですが、集計は格行単位で行いたいと考えております。
(書き忘れておりました・・・・、重ねてお詫びいたします)
 
御教授頂いたユーザー定義関数の命令文を1行1行解読し
格行単位で集計するよう応用出来ないか考えているのですが
恥ずかしながらマクロ(?)未経験な為難儀しております。
もしよろしければ、黒塗りされたセルを格行単位で集計する方法も御教授願えませんでしょうか?
 
>>213の名無しさん
ありがとうございます。
>>210さんの方法で考えている為、まだ意味が飲み込めきれておりませんが
参考にさせて頂きます。
216209:04/01/19 11:33
>>215
あの〜・・・・・・・・・・・・・・・「格行」って何ですか?
Excelの用語にありましたっけ。
217名無しさん@そうだ選挙にいこう:04/01/19 11:34
すいませんが、わかる方のお知恵をお貸しください。
エクセル2000にて、
 A B
100 50 
200 60
300 150
400 280
500 450
という場合、A列100から200の間の数字をB列から50、60、150というように抽出したいのですが、
可能でしょうか?よろしくおねがいします
218209:04/01/19 11:54
も、もしかして「各行」毎に集計するという意味ですか (^^; ?
例えばAからDまでであれば範囲指定をA1:D1とかにして後はその式を下に必要な数だけ
コピー&ペーストすれば良いですよ。実際にやってみれば分かりますけど普通の関数、
例えば=SUM(A1:D1)なんてものの使い方と一緒です。

マクロがはじめてということですが、マクロシートに>>209のFunction - End Functionまでを
貼り付けるところはできていますか?
そこから説明が必要となると少し大変です。
>>217
>>217
オートフィルターでA列を100-200で抽出すればいいんじゃねーの?
221名無しさん@そうだ選挙にいこう:04/01/19 12:58
それではだめじゃない?
222名無しさん@そうだ選挙にいこう:04/01/19 13:00
全のためなら、善でも悪でも○
みんな217の質問の意味を理解できてるのか・・
>>223
アレフナンバーの話だろ。無理数は有理数より無限の度合いが高いと言う・・・・
225209のnanashi:04/01/19 14:47
>>218の209さん
すみません、誤字でした。>格行
こんな誤字をするなんて、かなり恥ずかしいです。。。
 
現在なんとかマクロシートの貼り付けも出来、自分の思ったとおりの結果を出す事が出来ました!
本当にお世話になりました。ありがとうございます!
 
最後に、、、説明文の不足や誤字等、回答して下さる方々を困らせ余計な負担をかけてしまった事お詫び致します。
申し訳ありませんでした。もっと勉強して少しでもエクセルを使えるように頑張ります。
ありがとうございました。
>>217
なにがやりたいんだ?
詳しく説明汁
227名無しさん@そうだ選挙にいこう:04/01/19 18:54
Excel 2000 OS:Windows2000
Excelで図を挿入してその上にオートシェイプで矢印や図形を描画すると印刷プレビュー時にずれて表示されます。
この現象を解決する方法はないのでしょうか?
ずれない時とずれる時があり、いまいち規則性が掴めません。
※XPでも印刷時に図形はずれると聞きました。
>>217
VLOOKUPで出来そう
229名無しさん@そうだ選挙にいこう:04/01/20 09:23
エクセルファイルに
A列 B列 C列
氏名 住所 電話番号

のデータがあり、送り状を印刷したいのですが、
どうすればいいのでしょうか?

〒000-0000
住所○○○○
氏名●●●●

上の様に印刷して、封筒に貼りたいです。
231229:04/01/20 09:39
>>230
有り難うございます。
差込印刷 宛名ラベルというのですね、
検索しようにも検索する言葉が分からなかったので、
助かりました、今から見てみます。
教えてくださいませ

セルに例えば

4.5と入力 → 4年5ヶ月
0.8と入力 → 0年8ヶ月
3.11と入力 → 3年11ヶ月

と表示させるには書式設定の表示形式でどのようなユーザー定義
をすればよいのでしょうか?
表示形式というのがどうも苦手でなりませぬ。
233名無しさん@そうだ選挙にいこう:04/01/20 14:46
>>232
月の最大桁数が決まっているなら、
セルの書式設定→表示形式でユーザー定義を選んで、
00"年"00"ヶ月"と設定しておけば、「0205」と入力したら「02年05ヶ月」という表示になるけど・・・
この場合、例えば「15002」と入れると、「150年02ヶ月」と表記されまつ。

それじゃダメかな?
>>233
既に数値形式で、大量に2.3だの10.6だのがズラ〜と入力されているんです。
しかも1万近くのデータが。
何に使うかはお聞きにならないでね

でいままでそういう形式で保存されていたのですが、この1月から赴任してきた
新しい上司がこのデータを見て
「これじゃよくわかりにくい。何年何ヶ月と表示させろ。パソコンなんだから
一瞬(?)で表示形式変えれるだろ」ときついご指示・・・

だから、だから助けてくだされ
235名無しさん@そうだ選挙にいこう:04/01/20 15:14
>>234
むぅ、ピリオドの位置を検出して、値を分け、yy年で1セル、MMヶ月で1セルに入れる、というのなら
思い浮かぶ(関数などを利用して)んですが、書式設定で一発で、というのはちょっと私では判らないでつ・・・
236名無しさん@そうだ選挙にいこう:04/01/20 15:19
>>235
ちなみに数式は
編集したい値=2.5がセルH3に入っていた場合として、
=LEFT(H3,FIND(".",H3,1)-1)&"年"&MID(H3,FIND(".",H3,1)+1,99)&"ヶ月"
の式を隣辺りのセルに入れれば、「2年5ヶ月」と表記されますよ
237名無しさん@そうだ選挙にいこう:04/01/20 15:30
>>234

難しい・・・・

#,###"年".##"ヶ""月"

としてみたら 2.3が 2年.3ヶ月 となり、.が邪魔になるけど。
うーん、難しい
そもそも、入力方法が違ってるような
マクロで置換すりゃ済むことだと思うが
横槍でスマソ

○年×ヶ月や、△時▲分などを計算から求めるのではなく
データは既に紙面などにあり、それを単にエクセルなどに
入力する場合は、キーボードのテンキーのみで4.6など
小数点で区切りを表示するというルールを前提にすれば
一番早い入力方法であると思う
いちいち「4年6ヶ月」とか「12:15」など、「年」「ヶ月」「:」
などを入力していると時間がかかる。
テンキーだけでも、区切りとして小数点(.)キーではなく
/とか−とかを用いても、指の長い人以外は結構負担
もちろんエクセルなんかで、年をA列にヶ月をB列にと
分けるのは、愚の骨頂
但し、これらのデータを使って別の計算に使うのであれば
そうではないが・・・

おそらく>>234さんの所では、前述のとおりのやり方で
データを入力していたのであろう
でも上司の言うことも一理ある
で、書式を設定すれば事足りると私も思ったが・・・

難しいよ、ほんとに難しい
241名無しさん@そうだ選挙にいこう:04/01/20 16:33
>>240
だから、数値の入ったセルだけで済まそうとすると難しいので、書式設定をあきらめて、
隣のセルとかに数式入れてコピーすれば、表記上はキレイになると思うんだけど・・・
242名無しさん@そうだ選挙にいこう:04/01/20 16:35
>>241自己レス 
送信しちゃった、スマソ。

ということで、>>236の数式を値の入ったセルの隣に入れればどうかな?と思った訳です。



マクロ組めばすぐ、と言われても、そんなにマクロをほいほい組める人も多くないし、数式なら判るかなぁ、と・・・
243名無しさん@そうだ選挙にいこう:04/01/20 16:39
>>232
1)編集/置き換え
  検索文字[.]→置換文字[年] に置き換える。データーは文字列になる
2)セルの書式設定/ユーザ定義
  @”ヶ月”
2’)または、隣のセルに =A1&"ヶ月" とし、値複写する

232に質問 N年1ヶ月とN年10ヶ月の入力はどうしてるの?
244名無しさん@そうだ選挙にいこう:04/01/20 17:27
  A .B C
1│3 1 2      1位=5P 2位=3P 3位=2P 4位=1P 5位=0P
2│2 5 4
3│4 2 1
計 .6 8 9

エクセルで
順位を入力するだけで合計ポイントを計算してくれる式ってどうやるんですか?
245名無しさん@そうだ選挙にいこう:04/01/20 17:28
EXCELXP WindowsXPを使っています。
質問です

商品マスタのバーコードブックをを作りたいのですが
JANコード13桁の数字をバーコードで表示する方法を教えていただけませんか。

よろしくお願いいたします。
>>245
JANコード用のバーコードフォントをインストールしてフォントに指定する
247名無しさん@そうだ選挙にいこう:04/01/20 18:54
EXCELでShiftキーを10秒くらいおし続けてたらアクティブセルが固定されてしまいました
どうやったら解除されますか?

終了してみたらマルチ
>>247
[コントロールパネル]→[ユーザー補助のオプション]
→[固定キー機能]のチェックボックスをオフ
>>244
choose関数つかってはどうです?
D1=choose(A1,5,3,2,1,0)
E1=choose(B1,5,3,2,1,0)
F1=choose(C1,5,3,2,1,0)
これを同列行い、
合計を
A4,B4,C4にSUM関数使えばどう?
D〜Fを非表示にすればお手軽に要望完成。
>>250がスマートだと思うけど

>>244
もし、途中結果をセルにださないことにこだわるなら


●意味をわかりやすく書けば
=COUNTIF(A1:A3,"=1")*5+COUNTIF(A1:A3,"=2")*3+COUNTIF(A1:A3,"=3")*2+COUNTIF(A1:A3,"=4")*1+COUNTIF(A1:A3,"=5")*0

●短く済ませたいなら論理圧縮して
=COUNT(A1:A3)*5-SUM(A1:A3)-COUNTIF(A1:A3,"=1")

とか・・・
なんかいまいちなのでsage

>>251

しょうもないうえに間違えた・・・

"誤"
=COUNT(A1:A3)*5-SUM(A1:A3)-COUNTIF(A1:A3,"=1")

"正"
=COUNT(A1:A3)*5-SUM(A1:A3)+COUNTIF(A1:A3,"=1")
253名無しさん@そうだ選挙にいこう:04/01/20 22:14
>>244
250-252が理解できたら「配列」を調べてみな
自称エクセルマスター御用達「配列」
よろしくね〜
調べてみな って


は い れ つ て い ど で え ら そ う で す ね
傍観していたのですが、

配列つかって
>>244
って簡単にできるの?
どなたか、もう少し検索キーワードをください。
257名無しさん@そうだ選挙にいこう:04/01/20 23:57
同じくろmなんだが
正直>>244の質問の意味がわからんの解説希望
244の表は、単位が書いてないので判りにくいんだよな。
数字の羅列だけで、説明が全くない。

表のの中の数値は、右側に書いて有るとおり「得点」
追記:
縦の「1」〜「3」というのは、恐らく回数だと思う。
と思ったけど、4Pという順位の割当はないな。。。。

ということで、やっぱ判らんわ・・・・出しゃばってスマソ
261名無しさん@そうだ選挙にいこう:04/01/21 08:34
>>257-259
みんな頭固いね >>244 の例は
表内の数値が順位で合計欄は順位に対応した点数の集計値
たとえば C列は 2位 4位 1位 で、それに対応した点数が
3点 1点 5点 で、合計が 9点となる。

>>244 250以降で答えは出てるよね。後は自分の好みで
式を組めばいいんじゃないの、方法はたくさんあるから
262名無しさん@そうだ選挙にいこう:04/01/21 10:13
教えてクンでつ

ハイパーリンクで他のエクセルファイルを呼び出す際に、シートまで指定できるのでしょうか?
現在手元にあるエクセルAファイルからだと、エクセルBファイルまでしか呼び出せず、目的のシート
(エクセルBファイル内の)までは一発で呼び出せないのですが・・・
263244:04/01/21 10:51
教えてくれた人本当に感謝です
あと質問の意味がわかりにくくてすみません。
単位書いておけばよかったですね。
264名無しさん@そうだ選挙にいこう :04/01/21 11:09
関数の質問ですwin98のex2000を使ってます

顧客リストから常連客は誰かを探す関数なのですが
開店1年目〜3年目の名簿があり
その中から2回以上記載されてる人を探します

自分でやると
1列目に名前群からcountifで記載回数を数え
2列目にifで 1<2列目 で名前を参照し
最後に2列目でリストアップされた名前をまとめ・・あれ?と

このシートの右上に常連名を見栄え良く並べるというのが出来ません。
そして出来れば、1・2列目のまどろっこしい探し方も改善したいです。
宜しくお願いします。
265名無しさん@そうだ選挙にいこう:04/01/21 11:15
>>264
ピボットテーブルを使うんじゃダメなの?
266名無しさん@そうだ選挙にいこう:04/01/21 11:46
>>265
レスありがとうございます
ピボットは使いなれてない(自分含む)スタッフが多いのと、
名簿の更新時にそれもいじる必要がありそうなので
エラーが判りやすい関数で、ぜがひに作りたいと思ってます。
267264:04/01/21 15:55
なんとなく解決しますた
>>262


エクセルBのファイルのシートBのセルA1を呼び出すとすると
ハイパーリンクの設定で直書きで、

./エクセルB.xls - シートB?A1

で行けそうな気がしますた。
268です。
268の方法ですが、できませんでした。
すみません。
270名無しさん@そうだ選挙にいこう:04/01/21 18:02
愚問とお笑いください。
賢明なる2チャンネラー様お願いします。

sheet1の結果をsheet2で反映させるのは
どうしたら?
sheet2でsheet1(d2)のような感じがしますが???


271名無しさん@そうだ選挙にいこう:04/01/21 18:14
あるブックのあるシートのあるセルの値を引数をして得たい時、
どうするのか忘れてしまいました。
Dim DataCount As Integer
DataCount = Value.[Workbooks"1工事部出来高支払New.xls".Sheets(木部).L1]
どうすればよいのでしょうか?
272名無しさん@そうだ選挙にいこう:04/01/21 18:18
>>270
sheet2の任意のセルで = を入力した状態で
sheet1の適当なセルをマウスで選びEnterキーを押す
=の式がどう表示されたか見れば書式が分る
273名無しさん@そうだ選挙にいこう:04/01/21 18:44
すいませんが聞いてください。
イルカが死にました。
今日の4時ごろ、いつも通りエクセルを開いたところ、
いつもはキューと鳴きながら登場するはずのイルカ君が何故か無言で出てきたんですね。
あれっと思って見てみたら、イルカ君、画面右端でうつ伏せに倒れてしまったんです。
そのあと何度もクリックしてショックを与えて蘇生しようとしたのですがダメでした。
ついにイルカ君は動かなくなってしまったのです。
いつも陽気だったイルカ君を思い出すと、今でも涙が止まりません。
明日葬式を挙げてやります。喪主はオレ。お墓も作ってあげようと思う。
今までありがとうイルカ君。安らかに眠れ。
274名無しさん@そうだ選挙にいこう:04/01/21 18:58
↑駄作 もう来なくていいよ
275名無しさん@そうだ選挙にいこう:04/01/21 19:28
「行のタイトル」みたいなのを、上にもしたにもつけることは可能?
>>271
DataCount = Workbooks("1工事部出来高支払New.xls").Sheets("木部").Range("L1").Value
2 名前:名無し組 投稿日:2004/01/21(水) 20:57 ID:???
痛いCAD関連ホームページはけーん!
http://acesekkei.com/

3 名前:名無し組 投稿日:2004/01/21(水) 21:05 ID:???
こっちの方が面白いよ
http://www.acesekkei.com/programming/vba/index.htm
278名無しさん@そうだ選挙にいこう:04/01/21 22:14
このスレに常駐してる勘違い先生よりマシだよ。
>>278
あれのことは、そっとしておいてやれ。
>>273
駄作かつみごとに百済ねえからつられてみるか。
ヘルプファイルを再インストールすれ
>>280
お前もそっとしておいてやろうw
282271:04/01/22 10:12
>>276
ありがとうございました。早速やってみます。
283名無しさん@そうだ選挙にいこう:04/01/22 10:45
>>262でつ

>>268
アリガd!やってみます
284名無しさん@そうだ選挙にいこう:04/01/22 10:46
>>283
・・・ってダメだって書いてあるじゃん。スレ全部読まなかったからか・・漏れ、アフォ。

ってことは、できないのかなぁ?
引き続き、どなたか教えてください。

>>262再掲しまつ。
ハイパーリンクで他のエクセルファイルを呼び出す際に、シートまで指定できるのでしょうか?
現在手元にあるエクセルAファイルからだと、エクセルBファイルまでしか呼び出せず、目的のシート
(エクセルBファイル内の)までは一発で呼び出せないのですが・・・
>>284
ファイル名#シート名!セル番号

の形式でハイパーリンクを記述する

ex)
c:\hoge.xls#Sheet2!A1

286質問です:04/01/22 14:56
質問です 例えば、

   いちご
   みかん
   ばなな
   いちご
   りんご
   ばなな

というレコードで、文字列の種類の数を示す(この場合は4種類なので4)
という関数はあるでしょうか?

この文字列は実際には氏名のため、
全リストを用意してCOUNTIFをする等のことができません。

テーブルの並べ替えで重複を表示しない等で一応は可能ですが…

よろしくお願いします。
>>286
見出しをつけてソートした後「データ」メニューの「集計」機能で一発だぞ
詳しくはヘルプを見ろ
288名無しさん@そうだ選挙にいこう:04/01/22 16:21
この場所に「見積り式無し保存.xls」という名前のファイルが既にあります。置き換えますか?
とメッセージ出て「名前をつけて保存」ができません!
>>288
それで?
>>288
だから?
>>273
涙が止まらないわりに、イルカの名前知らないみたいだね。
>>288
やあやあそれは剣呑、一大事。諸君、小林少年に相談しようではないか
なんでもExcelでやろうとする無能な上司をどうにかしたいのですが
どうしたらいいでしょうか?
>>293
マクロウィルスを投入
295名無しさん@そうだ選挙にいこう:04/01/22 21:08
質問です。 ※WInXP,Excel2002

家計簿を作ってるのですが行が足りなくなった場合に
ボタンひとつでマクロによって行が追加できると聞いたんです。

オートフィルが一番早いのですがなにぶん相手がエクセルを使えない方で
できるだけ、簡単にしたいんです。

どなたかご存知の方ご教授ください。
>>295
情報を小出しにするのは止めましょう。マクロで行の挿入するだけならかあちゃんに挿○するより
簡単だけど・・・・・
>>293
何でもExcelでやらせようとしないだけマシじゃないの?
298名無しさん@そうだ選挙にいこう:04/01/22 21:36
すみません、質問があります。

縦のAのセルに入っている300個ぐらいのテキストを、
B、C、D……と、横に四個ずつ並べていきたいのです。
この場合、どのような操作をすれば一括で移動できるでしょうか?
説明がうまくできなくてすみません……。
299295:04/01/22 21:55
>>296
すみませんでした。。

はい。そうです。
マクロを使ってボタン?を押すと10行追加などができるような感じなんです。

ttp://www.vector.co.jp/soft/win95/home/se183249.html

ちょうどこの家計簿の10行追加ボタンみたいな感じのを
やりたいんです。

どなたかご教授お願いします
>>298
そんなもん、テキストエディター使った方が早くないか?

というよりも、ソートさせたりしなくてはいいのかい?
>>298
こういうこと?
1
2
3
4
.
300

というのを別のシート上で↓にしたい・・とか

1 2 3 4
5 6 7 8
9......
289.300

1.マクロを使う
2.ちょっと工夫してindirect関数を使う
3.ちょっと工夫してvlookup関数を使う
4.ちょっと工夫してindex関数を使う

どれが好みかな?
>>299
あなたが手作業で10行追加することができるならそれをマクロで記録して見ましょう。
あとは多分セル参照を相対化すれば良いだけだと思いますから、そこで分からない事があれば
また質問してくださいね。
303名無しさん@そうだ選挙にいこう:04/01/22 22:05
>>298
マクロの記録。相対参照にしておく。

カーソルをA1においておく。

マクロの記録開始

A2にカーソル
A2の内容を、マウスでドラックして、B1へ。
A3にカーソル。マウスでドラックして、C1へ。
A4にカーソル。マウスでドラックしてD1へ。
2から4行目を削除。
A2にカーソル。

記録終了。

マクロをショートカットキーに割り当てて、何回か実行させる。
304300:04/01/22 22:11
多分一番簡単なのは4じゃないかな。一次元の表を二次元にするだけだから
横の見出しに1・2・3・4 縦に0・1・2と数値を置いて次の式で一発だね
=INDEX(Sheet1!$A:$A,$A2*4+B$1)
>>298
マクロの例
(1) [ALT] + {f11] で VBAエディタを表示。
(2) プロジェクトの当該シート(Sheet1 とか)をダブルクリック
(3) 下記をコピペ
(4) シート上でダブルクリックすると実行。
元には戻せないから、バックアップをとったた上で実行してください。

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Excel.Range, Cancel As Boolean)
Dim i As Long
Dim j As Long
i = 1
j = 1
While Range("A" & i) <> ""
Range("B" & j) = Range("A" & i)
Range("C" & j) = Range("A" & i + 1)
Range("D" & j) = Range("A" & i + 2)
Range("E" & j) = Range("A" & i + 3)
i = i + 4
j = j + 1
Wend
End Sub
For〜Nextで多重ループさせた方が数倍早いよ。
307名無しさん@そうだ選挙にいこう:04/01/22 23:10
本当に本当に初めてエクセル開いた者です。
会社でレポート提出を求められたのですが、
ワードでなく、エクセルで作ってこいと言われたんです。
エクセルで文書って作れるんですか?
A1にずっと打っていこうとすると、改行したとき次のセルに行っちゃうんですけど。
本当に何もかもわからないので教えてください…
>>307
メモ帳に打ってコピペしろ
309307:04/01/22 23:14
>>308
即レス感謝します!!!
そうですよね…
やってみます ありがとうございました
>>297
ですが、やる気まんまんで社内のありとあらゆる書類を片っ端から
エクセルに置き換えて、ワード、一太郎のファイルをすべて統一しよ
うとしているのです。

なんか、昔マルチプランを使っていたころは... とか言って居るんです。

それって裏を返せばそれ使わざるを得ない僕たちはエクセルでやら
されていると言えなくもないのでしょうか?
>>307
好きなやり方で

1.セルの横幅を必要なレポートの幅にしてセルの書式設定-配置タブ-折り返して全体を表示する
2.編集-フィル-文字の割付を使う
3.テキスト入力BOXを使う
4.ワードで文章を作ってエクセルにオブジェクトとして貼り付ける

4.がお勧め
312308:04/01/22 23:23
>>309
素直な奴だなw
結局おんなじことだが。
文句があるなら、本人に直接言えよ。
愚痴りたいならスレ違い。
>>310
>>307もそうだけど、生産性って事を全く考えてない上司の元で働かされる人は気の毒だなぁ・・・
>>314
そのことをちゃんと説明して
翻意を促す能力のある部下を
持てない上司も気の毒だな。
隣接した値1,5を選択してオートフィルすると1,5,9,13・・・となりますが
式a1,a5を選択してオートフィルしてもa1,a5,a9,a13・・・となってくれません。

どうすれば上手くいくのでしょうか?
>>316
Excelのバージョンは? うちのExcel2002 sp1ではちゃんとそうなるぞ
318286:04/01/23 02:28
>>287
言葉が足りなかたみたいでごめんなさい
これが関数だけで出来ないか?という質問でした。

319名無しさん@そうだ選挙にいこう:04/01/23 08:31
>>286
そんな関数はない。
ユーザ関数で作れるかな?
>>318
じゃあもっと条件を書いてケロ。ユーザー定義関数を使って良いなら簡単だけど
「そんなの嫌」とか言われちゃうとたまらないからね
321287,320:04/01/23 08:59
自分で作りたい場合の為にヒントを書いておくとVBAの配列の要素数は動的に再定義できるから
極めて原始的に新しい氏名が見つかる毎にそれをテーブルに追加していって、セル単位で
最小添字〜登録された配列要素の最大までなめていっても今のPCだと一瞬で終わるよ。
322名無しさん@そうだ選挙にいこう:04/01/23 09:43
>316
過去スレで教わった方法

アポストロフィを付けて文字データとしてオートフィル
データ→区切り位置→完了
323名無しさん@そうだ選挙にいこう:04/01/23 09:51
質問です。
株価のデータを作っているのですが
例えばA1>A2の場合A1のセルを赤くさせたいのです。
そういった関数なんてありますか?
>>316
数式(=A1,=A5)としてじゃなく文字列(A1、A5,)としてオートフィルさせてから
A を =A で置換って手もありそう
>>323
書式>拡張書式
↑訂正 「条件付き書式」の間違い
327名無しさん@そうだ選挙にいこう:04/01/23 11:51
すいません、、、
エクセルのワークシートをHTMLのWebページにテーブル形式で表示したい。
どうすばいいですか?
328名無しさん@そうだ選挙にいこう:04/01/23 14:39
>>327
ファイルメニューから「Webページとして保存…」をするだけでは?
329323:04/01/23 15:24
>326さん
出来ました。
激しく感謝します!
しかも即レスで!
ありがとうございました。
2003のバージョンでシートの切り替えを短縮ボタンでできませんか?
または登録できませんでしょか?
追加。
全部のシートを同じ拡大で見たいんですが、いちいち変えて選択しないと
ダメデつか?? シートめちゃあるんですけど〜。
332名無しさん@そうだ選挙にいこう:04/01/23 16:11


Dim 引数 As String
引数 = どっかのセル.Value

あるセルの値を引数として設定
あるデータ範囲をコピーして

  Sheets("どれか").Select
Range("A" & "10 + 引数").Select
Selection.Copy

あるシートの一列目、引数に10を足した行に貼り付けたい
のですが、
Range("A" & "10 + 引数").Select
の部分がエラーになります。
どうすればよいのでしょうか?
333331:04/01/23 16:12
すいません。SHIFT選択でできますた。。。
>>332
"10 + 引数"の""とってみたら?
335名無しさん@そうだ選挙にいこう:04/01/23 16:36
Range("A" & 10 + 引数)

引数を計算に使うのに何故String宣言?
エラーにはならないけど。
>>332
Cells(10 + 引数, 1).Selectにすれば?

ほんとだ…。なぜStringで宣言してるのだろう…。
空白の「行」だけを削除するには
VBAじゃないとやっぱり無理ですか??
>>337
開いてる列の全てのセルに適当なデータを入れて、
オートフィルタかけて、端から空白セルを選んでいって、
データが全てなくなった時点で現れた空白行を削除すればできるけど。VBAじゃなくても。
339名無しさん@そうだ選挙にいこう:04/01/23 17:34
>>337
俺なら、適当な列に連番ふって、空白のある列で並び替え。
んでもって、空白行をまとめて削除して、また連番にしたがって
並び替え。。。。

関数の書き方で、
「もし、セルに書いてある数字が1なら、隣のセルに空白のセルを挿入する」
ってどうしたらつくれますか・・・。
関数じゃ無理                                                    と思う
>>340
どうやったらつくれるんでしょうねぇ…。
もうちょっと具体的に説明してくれない?



ただ、いわゆる「セルの挿入」のことを言ってるなら、絶対無理。
343名無しさん@そうだ選挙にいこう:04/01/23 17:59
>>340
=いふ(せる=1,隣のセル””,名無しさん@そうだ選挙にいこう)
今日も乱調気味のエクセルスレですw
345名無しさん@そうだ選挙にいこう:04/01/23 21:44
質問させてください。
Win2000でエクセル2000を使っているのですが、シート1とシート2のG列全ての数値の合計をA列の1のセルに表示したいのですが、どうすればいいのでしょうか?
ちなみにG列は金額です。
お願いします。
346名無しさん@そうだ選挙にいこう:04/01/23 21:56
>>345
=SUM(Sheet1!G:G)+SUM(Sheet2!G:G)
表示したいA1のセルに、

=SUM(Sheet2!G:G)+SUM(Sheet3!G:G)

と入力。

シート名を変更してる場合は、上のSheet2、Sheet3のところをその名前に変えてください。
あ、1と2だった。
>>346のやつでお願いします。
349345:04/01/23 22:02
すいません。346さんのように入力したのですが、SUM(Sheet1!G:G)+SUM(Sheet2!G:G)から何もかわりません。
どうすればいいでしょうか?
イコールつけて。
351349:04/01/23 22:13
レスありがとうございます。ですがREFのエラーがでてしまいます。
もう少し具体的に言うとG列の2行目から200行目までを計算したいのですがこの場合数式はどうすればいいのでしょうか?
お願いします。

=SUM(Sheet1!G2:G200)+SUM(Sheet2!G2:G200)

にすればいいんだけど、たぶんREFは出ると思うよ。

シート名を変更してるか、数式のシート名にスペルミスない?
353349:04/01/23 22:38
できました。ありがとうございました。
354名無しさん@そうだ選挙にいこう:04/01/23 23:45
【関数の質問】

セルの色情報を取得する関数ってありますかね?

VBAならColorindexがありますが・・・
どーしてみんなSUMを2つ使うの?

ま、どーでもいーけど。
357名無しさん@そうだ選挙にいこう:04/01/24 12:56
>>356
SUMを2つ?
意味分んない、もっと詳しく知りたい。 お・し・え・て!!!
=SUM(Sheet1!G2:G200)+SUM(Sheet2!G2:G200)
          ↓
=SUM(Sheet1!G2:G200,Sheet2!G2:G200)

こういうことじゃね?
こういう書き方も
=SUM(Sheet1:Sheet2!G2:G200)
361名無しさん@そうだ選挙にいこう:04/01/24 16:53
【セルの分割の質問】
既に有る表組みで一行のある列のみを2行にするやり方を
教えていただければと思い書き込み致しました。
作業しなければいけない表が膨大なので
まとめて分割するやり方があればより助かります。

参考までに
http://home.att.ne.jp/sigma/asady/excel.htm

以上よろしくお願い致します。
>>361
行を二行にしてから削除していった方が早くないかな。
マクロを自動登録することで、簡単に行けそうな気がするけどね。
>>361
表を一旦Wordに貼り付けて、Wordでセルの分割をし、再度Excelに貼り付ける・・・とか
1行おきに行を挿入して2コづつセルを結合。
マクロの自動記録とfor〜next
>>361

(1) [ALT] + [F11] で VBAエディタを表示。
(2) プロジェクトの当該シート(Sheet1 とか)をダブルクリック
(3) 下記をコピペ
(4) シート上でダブルクリックすると実行。
(5) 実行後、貼り付けた VBA を削除。
元には戻せないから、バックアップをとったた上で実行してください。

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Excel.Range, Cancel As Boolean)
Dim i As Long
For i = 2 To Rows.Count Step 2
If Range("A" & i) = "" Then Exit Sub
Rows(i & ":" & i).Insert Shift:=xlDown
Range("A" & i & ":A" & i + 1).Merge
Range("B" & i & ":B" & i + 1).Merge
Range("C" & i & ":C" & i + 1).Merge
Next i
End Sub
>>361
見て思い出したんだけど
結合したセルを、分解するのってできますか?

┌──┬──┐
├──┤  │
├──┤  │
└──┴──┘
    ↓
┌──┬──┐
├──┼──┤
├──┼──┤
└──┴──┘

いつも、どこか使ってない場所に結合セルをドラッグ&ドロップして
その列毎(行毎)削除していて、わりと面倒だと感じています。
VBAでもいいですが、できればシート上の操作で行いたいです。
よろしくお願いします。
>>366
ツール>ユーザー設定>コマンドタブ>書式から
「セル結合の解除」ボタンをツールバーの任意の場所にD&D
368名無しさん@そうだ選挙にいこう:04/01/24 19:42
>>366 こりゃ完全に釣りですな
>>367
2002以降なら、セルの統合のボタンを押せばいいだけ。
結合セルを選択して右クリック→セルの書式設定。
配置タブにある「セルを結合する」のチェックを外す。
知らない人が結構いたりする。
「右クリック→セルの書式設定」は、メニューバーからでも、Ctrl+1でも。
371369:04/01/24 19:55
>> 367
これが知りたかったんです。どうもありがとう

>>368
いや・・・本当に悩んでいました・・・・

>>369
バージョンを書き忘れていました。すいません。
私は、2000を使っているのでこの方法はだめでしたが
ご回答ありがとうございます。


>>370
こんな方法もあったのですね
367の方法とあわせて適宜活用していきます。
ありがとうございました。

内容でおわかりかと思いますが
>>372の書き込みをしたのは、>>366です。
374948:04/01/25 00:03
A〜C列にデータが入っていて、D1に計算式が入っています。
その計算式をデータが入っている最後の行までコピーするマクロは
どう書くのでしょうか?
1シートだけなら手作業出来るけど、何百ファイルもあるし、
しかもデータの行数も全てちがうのです。
マクロで最後の行数を判断させるというのがどうしてもわかりません。
よろしくお願いします。
>>374
D列の最終行、つまりD列65536行目にカーソルを持ってくる(Ctrl+矢印で
一気に端までいけるね)→そこでマクロの記録開始→Ctrl+上で最終行に飛ぶ
→マクロの記録終了。
今「選択されている行」が最終行。
Do Until Worksheets("***").Cells(L, 1) = ""
---中略---
L=L+1
loop

ではどうか?

>>376
えらい略しかただなw
>>376
途中に空白行があったらどうするのか。
全シート6万行くらいだったら何時間かかるのか。
>>376
完全な答え出てから出す案じゃないなw
ワラタ。若手が案出すと散々だなw
批判してるやつは代替案だして提案してみろよ
382名無しさん@そうだ選挙にいこう:04/01/25 03:04
グラフを作っているのですがX軸上にある文字を縦書き(例;B-76)にしようとすると
"-"の部分が横書きで縦書きになってくれません。

B
-
76

↑こんな感じです。。。

ググッテみると、"-"をハイフンに替えると良いと意見が書いてあったので
ハイフンに替えたところ今度はハイフン以下が横書きに戻ってしまいます。
何かいい解決法ないでしょうが。ご教授お願いします。
383382:04/01/25 03:05
何かいい解決法ないでしょうか。の間違いでした。。。
384名無しさん@そうだ選挙にいこう:04/01/25 03:06
>>374
何百かのファイルを1ファイルにまとめる訳にはいかないのかな?
それが出来れば色々楽になるんだけどな。
FileSystemObjectかDir関数と組み合わせて
開く→編集→保存→閉じるを繰り返せばいいじゃん。
usedrangeとか無かったっけ
>>374

sub 計算式を最後の行までコピー()

dim saigo as integer

saigo = range("a1").currentregion.rows.count

range(cells(1, 4), cells(saigo, 4)).filldown

end sub

こんな感じでどうでしょう?
とりあえず、空白行はないものとして作りましたが、
空白行があるんだったら、range("a1").currentregionを
activesheet.usedrangeに変えて、空白行のDのデータを
clearcontentsにするマクロでも書いてください。
まあ、ループ使ってもいいけど。
388387:04/01/25 08:26
>>374

でも、ふと思ったんだけど、
わざわざマクロ組まなくても、
D1のセルの右下あたり(フィルハンドル)でダブルクリックすればいいと思う。
389名無しさん@そうだ選挙にいこう:04/01/25 09:35
質問です。バージョンは2002です。

A1に文字列ABCDEFを入力し、フォントをABCの部分はVerdana、DEFの部分はTahomaに設定します。
B1に1を入力します。

A1に条件付書式を次のように設定します。
 条件1 : 数式が =B1=1
 書式 : 文字色…赤

そうすると、ABCの部分は正しく赤になるのですが、DEFの部分は黒のままです。
セル内のフォントを統一すれば全部赤になりますが、
フォントを統一せずにDEFの部分も赤で表示させるためにはどうしたらいいですか?
>>379-382
この流れが最近のスレを象徴しているな。

別にここは、エクセル学習推進してるわけじゃないし、
いろんな答えが出たほうが面白いんだよ・・・・

人の答えのアラ探す奴も、けちつけられて切れる奴も
自意識過剰の相が出ているから気をつけなよ。w
>>389
セル内で書式が変わっている場合は条件付き書式がうまく
働かないことがあるよ。
VBAならちゃんと変わるので、ループさせてガーっと変える。

>>381
>>375で俺が完全な答え書いてるってば。
>>390
スレはどうか知らんけど、俺は学習を推進しているよ。
すまんね。
>>389
A1列にABCDEF、B1に1、C1に=left(A1,3)、D1に=right(A1,3)。
C1とD1にそれぞれ条件付書式設定。

というのはどうだ?
>>392
別に謝ることはないさ。
自意識の調節さえうまくやってくれればいいんだよ。
>>394
答え書けと言う流れ作っているのは君を含む質問者(含初心者)側だけだと
思っているが、このスレで俺がそんなに主張している形になっているかね。
書かれたヒント通りに進めると勉強になるように書いてる。
空いたセルがあったら出来ないような間違った答え書くよりましだと思うがね。
396389:04/01/25 11:10
>>391 >>393
ありがd。VBAに挑戦してみます。
境目が固定なら>>393でいいのですが、実際はバラバラなのでうまくいきません。
ふむー、以前にもこういうの言い合ってたが、漏れも
やればできる形まで書く形のヒント書く方が良いと思うなぁ
ある程度分かってる側の意見だからかもしれんけど・・

次々に質問を増やすような事より、質問する人を減らす努力の
ほうが、よっぽど建設的かなーと
>>395
俺こんなとこで質問したりしないよ。ついでに言えば、答えを書こうが
書くまいがどうでもいいと思ってる。

俺がここ見るのは、主に他の人の仕事の仕方を見たいからだよ。
中には目からうろこの手法もあるんでね。

で、時々質問にも答える。質問の内容が
興味もてるようなものなら自分で確かめてみるからついでにだけど。

エクセルを学びたいというんなら、とりあえず、このスレ来てもあんまし効果ないよ
って言うのが一番親切なんだと思うがw
399名無しさん@そうだ選挙にいこう:04/01/25 11:36
私は初級の上みたいなレベルだとおもいます。VBAの勉強中です。
”答え”をいただければ、それはそれで嬉しいですし、
ヒントいただければ、それなりに調べてやってます。
全く分からないタイプのヒントだった場合は、
それについて根気強くもう一度質問しています(たいてい叩かれますがw)。
上の件については、>>375さんが初心者にもやれば出来る程度に道筋を
示してくれていますし、>>374さんは少しVBAも出来る様に見えるので
我々勉強者としては、とても助かる回答です。
>>375さんはキレるような事はしていないと思います。
学び取りたいようなスキルを持った人がいるとは思えんが。
俺がここにくる理由はただひとつ。
暇つぶしにアフォなやり取りを見にくるだけ。
シンプルな理由だよ。
401387:04/01/25 11:50
>>391

完全な答えって?
D1のデータをコピーしたいんだよねえ。
そしたら、D2以下はずっと空白じゃん?
そしたら、そのマクロ実行すると、D1がアクティブになるだけだよねえ?

>>初心者にもやれば出来る程度に道筋を 示してくれていますし

そうかなあ…
んー?自称中級の漏れは勉強になってるがなぁ
他人の回答も、ヒントもね

暇つぶしで適当な事言うヤシは必要ないんじゃねーかな
そんなスキル持ってる人は、もっと適当な
面白いスレ見りゃいいんじゃないすかね
VBAの間違えた記述の仕方にに頭からケチつけるやついるけど
すぐに間違えを指摘できるわけだし、ソースを書かないで質問するヤツより数段マシだとおもわん?
404375:04/01/25 11:53
藻前等、俺が悪かった。
もう意見つけなくていい、お腹いっぱいっだよ。。


↓次の質問ドゾー
405375:04/01/25 11:55
>>401
うわ、ホントだ。
AでもBでもCでも好きな最終行のある列でやってけれ。
ループでなくEnd(xlUp)使うのが一般的だってのは間違いない。
すまん、よく見て無かった>>374
406名無しさん@そうだ選挙にいこう:04/01/25 12:09
みんな!覗いてごらん
目くそ鼻くそがウンコについて議論してるよ
パーフェクト!!
408名無しさん@そうだ選挙にいこう:04/01/25 12:18
>>382
横書きにして90度回転させるというのはどう?
409387:04/01/25 12:19
>>405
もちろん、空白セルとかの影響をうけないために、
最終行からEnd(xlup)ってのは間違いないよ。
ただ、その答えだけで、D1のデータを最終行までコピーする
ことの役には立つ?
完全な答えっつーなら、そこから最終行の数字を出すまでの
答えくらいまでは、書かないと、何の助けにもならなくないか?
別に最終行に移動するマクロが知りたいわけじゃないんだし。
つーか、>>387-388じゃダメなのか?

>>406
耳くそは黙っといてね。
410名無しさん@そうだ選挙にいこう:04/01/25 13:23
エクセルシート上に印刷ボタンをつけたいのですがどのようにしたら
良いのでしょうか。

完成のイメージでは sheet2の情報を sheet1につけた印刷ボタンで
印刷できるようにしたいのですが・・・。

一応自分で思うには、コマンドボタンでボタンを作るのかなあとは思う
のですがそこから先がわかりません。

よろしくお願いします。
>>387
Integer は符号つき16bit だから
シートの半分までしか数えられない。
行のカウンターは Long を使いましょう。
32bit Long の方が処理も速いと思います。
412名無しさん@そうだ選挙にいこう:04/01/25 13:27
オッ!過敏に反応したのは>>409(387)だけか
>>410
自動記録して、記録したマクロをボタンに登録。
HELPも読んで、やってみて、不都合があれば再質問して。
>>389
(1) [ALT] + [F11] を押して VBA エディタを開く。
(2) プロジェクトの当該シート(Sheet1とか)をダブルクリック。
そこに下記のコードをコピペする。
(3) B 列に1が入るとA列の文字色を変えます。
  Target.Column = 2 がB列(2番めの列) を表わします。
  Target.Value = 1 で、値が 1 かどうかを判定します。
  色は vbRed, vbYellow などで指定できます。

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
If Target.Column = 2 Then
If Target.Value = 1 Then
Cells(Target.Row, Target.Column - 1).Font.Color = vbRed
End If
End If
End Sub
>>389
[つづき]
既にB列に値が入力されている場合。

(1) [ALT] + [F11] を押して VBA エディタを開く。
(2) プロジェクトの当該シート(Sheet1とか)をダブルクリック。
  そこに下記のコードをコピペする。
(3) ツール→マクロ→マクロから、Sheet1.MACRO_FontColor
  を選択して実行。
(4) Range の"A"とか"B"が列を表わしています。

Sub MACRO_FontColor()
Dim i As Long
Dim LastRow As Long
Range("B65536").Select
Selection.End(xlUp).Select
LastRow = Selection.Row
For i = 1 To LastRow
If Range("B" & i) = 1 Then
Range("A" & i).Font.Color = vbRed
End If
Next i
End Sub
>>389
俺だったら文字色でなく、セルの背景色を変える条件付書式にする。
できないものは仕方ないので、代替方法で楽してるわけだが。
>>416
そうしないのは>>389のやりたい事に何か壮大な意図があるからだとオモタ
418名無しさん@そうだ選挙にいこう:04/01/25 16:31
質問です。
エクセルの表組みをフロントページに貼り付けると表組みはちゃんと
コピーできているのですがセル内の文字に妙なルビが振られてしまい
上手くコピーしきれません。どうしたら良いのか教えてください。
419名無しさん@そうだ選挙にいこう:04/01/25 16:44
【アホの】ミスターパーフェクションがどんな問題も完璧に解決【チャンピオン】
http://pc2.2ch.net/test/read.cgi/bsoft/1073895316/l50
エクセルで点検表でチェックを意味する「へ」を上下ひっくり返したような記号な記号が入力できずに困ってます。教えれ。
>>419
お前も自意識過剰の口か?
他の板でやれよ・・・
422名無しさん@そうだ選挙にいこう:04/01/25 17:45
>>420
√(ルート)で代用するか、欧文フォントなどでその記号があるのを探す。
びそ板最古ー
アフォの吹きだめ♪
レ点も知らんのか。。。
??
・・・だめだ・・・こういう展開になると
いつもの調子であおりを入れたくなるが・・・・・

ここの板でやると自己嫌悪に陥るから辞めとこう・・・・
427再質 よろ:04/01/25 18:19
質問です。
エクセルの表組みをフロントページに貼り付けると表組みはちゃんと
コピーできているのですがセル内の文字に妙なルビが振られてしまい
上手くコピーしきれません。どうしたら良いのか教えてください。
428再質 よろ:04/01/25 18:21
>>427
バージョンは2000です
いいかげん気に入らない香具師排除の方針やめようよ。
「へ」を上下ひっくり返したような記号
・・・だめだ・・・こういう展開になると
いつもの調子であおりを入れたくなるが・・・・・

ここの板でやると自己嫌悪に陥るから辞めとこう・・・・
>√(ルート)で代用するか、欧文フォントなどでその記号があるのを探す。
アフォ?
久々
 
435名無しさん@そうだ選挙にいこう:04/01/25 18:56
>>374はどういう性質のデータなんだろ?
同じ形式のファイルが何百もあるってのが不自然に感じる。
1日1ファイルを作って、それが何百日分もたまってるとかだったら、元のファイルの設計から見直した方がいいと思う。
436名無しさん@そうだ選挙にいこう :04/01/25 19:09
エクセルで行列を入力するにはどうしたらいですか?
>>436
そんな難解な専門用語使わないで、
もうちょっと実際にやりたいことがわかる質問にしてくらさい。
438名無しさん:04/01/25 20:15
エクセル2000をWindowsXPにインストール可能でしょうか。
問題なく使用できるでしょうか。
正規品なら問題ありません。
>>439
ライセンス分以上にインストロールしてもいいでつか?
>>440
つまんね
442名無しさん@そうだ選挙にいこう:04/01/25 23:49
このスレはネタと煽り専用にするということで、
新たなスレを建てようと思いますがよろしいですか?
最初からネタスレな罠
・・・だめだ・・・こういう展開になると
いつもの調子であおりを入れたくなるが・・・・・

ここの板でやると自己嫌悪に陥るから辞めとこう・・・・
445名無しさん@そうだ選挙にいこう:04/01/26 00:13
>>444 それ流行らないよ。
446名無しさん@そうだ選挙にいこう:04/01/26 00:28
ExcelでもWordでも、全くの空白ページが出来てしまった場合にページごと消すのはどうやるんですか?
行や列の削除みたいな。
いちいち印刷の設定で空白ページだけ飛ばすのは面倒臭いです。
でもそうしないと空白ページが印刷されてしまう。。。。
[表示]メニュー→[改ページプレビュー]で青い線をドラッグして調節
通常の画面に戻すには[表示]メニュー→[標準]

Wordの場合は文書の最後に無駄な改行が入ってるんじゃないの?
448名無しさん@そうだ選挙にいこう:04/01/26 08:56
オートフィルで抽出したセルだけに貼り付けをしたいんだよ。
できねぇよ。
449名無しさん@そうだ選挙にいこう:04/01/26 10:55
>>448
ドラッグだとできないけど、普通にセル選択して貼り付け、ならできると思うが、どうか?
450名無しさん@そうだ選挙にいこう:04/01/26 11:28
既に値が入力されているシートで
各行の間に、1行づつ挿入するにはどうすればいいでしょうか?

例えばA1〜A100まで入力されておりその各行の間に空の行を挿入したいのです。
451名無しさん@そうだ選挙にいこう:04/01/26 11:47
>>450
定番の質問だね!     「エクセル技道場」より

 データ A1:A100
1.セルB1に 1 と入力、セルB2に 2 と入力
2.B1:B2を選択して、フィルハンドルをダブルクリック
→B1:B100が選択された状態
3.Ctrl+C (コピー)
4.セルB11でCtrl+V (貼り付け)
5.B1:B20内のセルどれか一つを選択して、[標準]ツールバーの[昇順で並べ替え]ボタンをクリック
6.B列を選択してDeleteキー
【解説】
 フィルハンドルとは、選択範囲の右下隅にある黒い四角形のことです。
 マウスポインタをこのフィルハンドルに合わせると白抜きの太い+の形から細い+の形に変化します。
 細い+にしてからダブルクリックします。
452450:04/01/26 12:10
>451さん
即レス有難うございます。
無事出来ました!
453名無しさん@そうだ選挙にいこう:04/01/26 12:59
>>427
それはおそらくエクセルのセルにふりがなデータが含まれているからです。
漢字のデータでもアイウエオ順にソートできるのはそのためです。
そのセルにふりがなデータが含まれているかどうかは、phonetic関数を使えば分かります。

そのセルをコピーして「形式を選択して貼り付け」の「値」で貼り付ければ、ふりがなデータは保持されません。
(同じセルに貼り付けてもだめです。)
そう言うことで、後は適宜応用してください。
454名無しさん@そうだ選挙にいこう:04/01/26 13:12
>>451
教えてクンでスマソ
今ちょうどやりたかった作業をお答えしてくれていたので、参考にやってみたんだが
うまく行かないです。
A列の値がマージされるだけで・・・

>2.B1:B2を選択して、フィルハンドルをダブルクリック
>→B1:B100が選択された状態

だと、B1:B100に、それぞれ1〜100の連続値が入りますよね?
で、それをコピーしてB11にペースト???

まことに申し訳ないんですが、もうちょっと詳しくヨロシクお願いします(´・ω・`)
455名無しさん@そうだ選挙にいこう:04/01/26 13:17
通りすがりのものですが

セルB1に「1」、B2に「3」、セルB101に「2」、B102に「4」
それぞれ100セル分引っぱって、昇順ソートでしょ。
451のやり方ではできないと思いますが。
456>>454:04/01/26 13:23
>>455
ヒントいただきました
ということで、
セルB1に1、B2に3と入れてフィルハンドルをダブルクリックし、B100まで値を入れ、それをコピーし
セルB101以降にペースト、で、>>451の”5.”以降をやれば一行おきができました

アリガdですた!
457名無しさん@そうだ選挙にいこう:04/01/26 13:35
なるほど、「2」「4」は必要ないんですね。
一つ勉強になりました。
458名無しさん@そうだ選挙にいこう:04/01/26 13:36
だから、「1」「2」で良かったんだ。
B1に1,B2に2 Ctrlを押しながらやりましょう♥
460名無しさん@そうだ選挙にいこう:04/01/26 13:43
>>334,>>335,>>336さん達、ありがとうございました。
さっそくやってみます。
string宣言に関しては、インテジャやらバリアントやら使い分けてた頃の記憶が
失せ、適当に入れたもんです。XPになってヘルプの見方もわからなくなり、
浦島太郎です・・・。
461450:04/01/26 13:45
質問したものですけど、
451さんのところは
A1:A100ではなくてA1:A10で見ればいいということです。
当然2の項目はB1:B10で。
462名無しさん@そうだ選挙にいこう:04/01/26 13:49
要は、B列の値を、B11にペーストじゃなくて、B101にペーストだったんだね〜
463名無しさん@そうだ選挙にいこう:04/01/26 15:44
書式⇒条件付き書式について教えて下さい。例えば
A  B
10  30 
20  15

となっている場合、B列がA列より大きい値なら赤字としたいのです。
そこでまずB1で書式を「$A$1より大きい場合」と設定し
それをB2にコピー又は書式のコピーをするとB2のセルでもA1を参照してしまいます。
当然B2のセルもA2のセルとの対比をしたいのです。
どうしたらB1の書式をうまくコピー出来ますでしょうか?

ちと文章分かりづらいですかね・・
464名無しさん@そうだ選挙にいこう:04/01/26 15:47
>>463
「$A$1より大きい場合」ではなく、$A1より大きい場合で指定すれば無問題。
行まで固定にしちゃってるから、常にa1セルを見に行く条件になっちゃってるんですよ
埼玉
東京
千葉
というリストがあり、

もう1つに
埼玉 5
東京 3
茨城 3
千葉 1

というリスがあった場合、
Aのリストの県名の横の列に、Bのリストから一致する県の数値だけ持ってくる関数を設定する場合にはどうすればよいですか?
まー、Access使っちゃえばいいんですが、関数で解決するならそのほうが手っ取り早いので・・・・

466名無しさん@そうだ選挙にいこう:04/01/26 17:25
>>465
VLOOKUP
質問です。

   いちご
   みかん
   ばなな
   いちご
   りんご
   ばなな

とあったとき

りんごをかじると
歯茎から血がでませんか?
列A
鈴木
鈴木
佐藤
鈴木
伊藤
伊藤
佐藤

このデータから何人の人がいますか?というのを調べる場合、何か良い方法はありますか?
ちなみにこの場合、3人。

よろしくおねがいしますです。

あと便乗質問なんですが、>>465でVlook使った場合、同じデータがあった場合どうなりますか?
例えば、
埼玉 5
東京 3
茨城 3
千葉 1
埼玉 3

一番上のデータを返すんでしたっけ?
469463:04/01/26 18:11
>464
うおおおお・・・
激しく有難うございます。
勝手に$A$1になっちゃってたんですよ。
>>468さんの回答待ちに割り込みすみません。
印刷設定のことで教えてください。
 
 A     B     C     ・・・・K
*****  *****  *****      *****

のようにそれぞれのセルに、かなり長い文字列が入力された表があります。
そのままではA3横に印刷しきれないので
印刷設定で縮小し、セルの書式設定で
それぞれの列を
「セルを折り返して表示する」にチェックしました。
しかし、プレビューで表示されていても
印刷すると文字列の後ろの部分が入りきれてなくて印刷されません。
文字列の後ろに2、3文字分の空白を余分に入力すると印刷するのですが
それ以外に良い方法をご存知でしたら教えて欲しいのですが・・・。
>>468
COUNTIF
>>468
DISTINCT
473名無しさん@そうだ選挙にいこう:04/01/26 19:06
>>468
> Vlook使った場合、同じデータがあった場合どうなりますか?
どうなるか自分で試してみろよ!
>>472
COUNT関数にSQL使う場合って、実際にどうすればいいんですか?
>>468
EXCELじゃ無理。
>>474
SELECT DISTINCT A FROM SHEET1 ORDER BY A
477名無しさん@そうだ選挙にいこう:04/01/26 19:30
>>468
(1)名前でソートしておく
(2)1行目は空行にしておき、B2に次の式を入力してB3以下にコピー。
=IF(A2=A1,0,1)
こうすると、名前の変わり目で1になるのでその数をCOUNTで数えればいい。
質問させてください。
Win98SE+Excel2000で、
列A      列B
あけぼの    あ け ぼ の
もうだめぽ   も う だ め ぽ

といった感じで、列Aの文字列データに、文字と文字との間全角スペースを入れたものを列Bに作りたいのですが、どうしたらよいのでしょうか。
>>476
それってExcelだけでできるんですか?
>478
考えられる最大の文字長を6文字とすると
C列〜H列の1行目に
=MID($A1,COLUMN()-2,1) & " "
B列に
=TRIM(C1&D1&E1&F1&G1&H1)
2行目以降はこれをコピー
481468:04/01/26 20:31
レスどうもです。
どうもExcelじゃ難しいようですね。
フィルタかけた時にプルダウンで出た数を数えるのが一番確実でしょうか?
オートフィルタでできているんだから、関数でもできそうなものですが・・・・
482名無しさん@そうだ選挙にいこう:04/01/26 21:32
日付を"2004/01/26"という形で表示していたのに、
ある日突然、"2004 01 26"と"/"が消えてしまった。
どうしたらもとに戻るんでしょうか?

全部消えてないなら書式設定
484478:04/01/26 22:24
>480
どうもありがどございました。
これで仕事片づきそうです。
485482:04/01/26 22:32
普通、セルの書式設定で「日付」を選ぶと、"/"を使ったいくつかの書式が示されますね。
ところが、その書式からも"/"が消えてしまっているのです。
ユーザー書式で無理矢理に"/"を入れることはできますが、
本来"/"を使っていたはずの書式が現れず、その代わりにスペースになってしまうのです。
>>485
excel再起動→OS再起動→excel再インストール→OS再インストール
駄目なら順に進むべ。
487名無しさん@そうだ選挙にいこう:04/01/26 22:39
>>470
それは、エクセルの仕様だそうです。文字の幅を正確に計算すると処理に時間がかかるので、
大体のところでやっているのです。(バグと言いたいが、先方も分かってやっているので)

そこで、セルにちゃんと表示されてもプレビューでおかしくなり、
プレビューで確認しても印刷ではおかしくなると言う具合です。
今のところ、そのような工夫をするしかないようです。
488名無しさん@そうだ選挙にいこう:04/01/26 22:41
>>485
システムフォントが壊れてるって事はない?
489482:04/01/26 22:43
ひえ〜、それはご勘弁を。(再起動ではだめですだ)
なんか、ほかにええ方法はないもんかのう?
Excelの再インストールは常套手段だろ。
491482:04/01/26 22:45
>>488
エクセルのこれ以外で、表示がおかしいとか、文字化けすると言うことはないようです。
フォントのことですだ。
492482:04/01/26 22:52
>>490
ずっと前にも一度そうなって、その時はよく分からない内に直ってしまったのですが、
確か、エクセルの再インストールまではしました。
それでも直らなかったような気が・・・
493482:04/01/26 22:55
なお、エクセル2000です。
ここでも同じ症状あるなぁ
http://winfaq.power.ne.jp/logs/9x/0369.html

>コントロールパネルの「地域」→「日付」タブで「区切り記号」が現在
>何も入っていない→半角スペースになっていると思われます。
>そこにスラッシュ / を入れて適用しましょう。
これ試してみましょう
495482:04/01/26 23:06
>>494
やってみました。一発で直りました。どうもありがとうございます。
ご紹介いただいた記事の中で、結局ここがポイントのようですね。

>Excelの区切り記号は、地域のプロパティに依存しています。
http://arena.nikkeibp.co.jp/tec/excel/gaz/46/

どうもみなさんありがとうございました。
496名無しさん@そうだ選挙にいこう:04/01/26 23:48
>>487さん、470です。
やはり今のところはどうしようもないのですね、
どうもレスありがとうございました。
ご回答頂けて安心しました〜。
「お前の印刷設定のせいじゃ!」と言われそうだったもんで。
キーボードのカーソルキーでアクティブセルが動かせなくなっちゃいました。
Excel2002なんですがどっか設定変えてしまったのでしょうか?
498名無しさん@そうだ選挙にいこう:04/01/27 10:44
>>496
印刷の件ですが、裏技(っつうか逃げ技)でこういうのがあります。

例えばA1:D50までが印刷範囲としたら、同じセルの空いている箇所で同じ行の処(例えばG1:J50)に、
A1:D50のデータの内容をコピーし(以下ダミーデータという)、ダミーデータのフォントを、A1:D50のデータよりも
2ptほど大きいサイズのフォントに設定すると、高さ的には切れることなく印刷できます。

乱暴な技ですが(w

遅レスでスマソ。今朝出社して過去ログ読んだもんで・・・
質問なんですが、

1.246 → 1.25
0.1332 → 1.33E-01
0.003599 → 3.60E-03

というように表示したいのですが、どうやればいいのでしょうか?
教えてください。
500名無しさん@そうだ選挙にいこう:04/01/27 13:01
場違いな質問かも知れないので申し訳ないのですが、
別ブックのセル値をファイルを開かずに得る方法は
ありませんか?
エクセル2000を使用です。
>>499
書式で指数表示にできるよ
502499:04/01/27 13:23
>>501
ありがとう。助かりました。
503名無しさん@そうだ選挙にいこう:04/01/27 13:27
>>500
たとえばBookB.xlsからBookA.xlsのセルA1を参照するなら、

='C:\My Documents\[BookA.xls]Sheet1'!A1

というような式になります。BookA.xlsを開いている状態なら、

=[BookA.xls]Sheet1!$A$1

式で言えばそうなりますが、操作としては、2つのブックを同時に開いて、
マウスで操作するのが簡単でしょう。

もちろん、こういう単純な参照だけでなく、vlookupを使ったりいろいろできます。
504名無しさん@そうだ選挙にいこう:04/01/27 13:29
$A$1
この$は別に意味ありません。マウス操作で参照すると、最初は絶対参照になります。
会社のあほうが住所録を縦一列に並べて保存していたんですが、

  A
1 郵便番号
2 住所
3 名前
4 
5 郵便番号
6 住所     ・・・こんな感じで。

並んでる順番は同じなんですけど、これをひとりづつの情報を
横1列にする方法ってありませんか・・。
セル指定の 足し算なんかでできたりするもんですかねぇ?
506名無しさん@そうだ選挙にいこう:04/01/27 14:27
A2から下をコピー、B1に貼付
    ↓
A3から下をコピー、C1に貼付
    ↓
D1に1、D5に2を入力、D1:D8を選択してオートフィル
    ↓
列Dをキーに並べ替え
    ↓
不要なデータを削除
関数で出た戻り値をそのまま他のデータに使えるように
するのはどうやったらいいんでつか・・?
検索で調べようにもどんな単語で調べたらいいのか;;
508名無しさん@そうだ選挙にいこう:04/01/27 14:39
>>505
「形式を選択して貼り付け」の「行列を入れ替える」ではだめなんですか?
もう少し複雑なケースなら、hlookupを使うという手もありますが。
509名無しさん@そうだ選挙にいこう:04/01/27 14:41
あ、これはケースが違う。
ごめん、良く読んでませんでした。
510名無しさん@そうだ選挙にいこう:04/01/27 14:44
If・・・Then・・・Else・・・End Ifなんですが
複数条件の場合、
If・・・Then
 If・・・Then
 ・・・
 End If
End If
で、AND(且つ)条件ですが
OR(または)条件はどう書きますか?
511名無しさん@そうだ選挙にいこう:04/01/27 14:50
>>505
ごめん、やり直しです。

この場合なら、B1に"=A5"と入れて、それを必要なだけ縦横方向にコピー。

これで、1列に1名のデータという形ができますから(4行目以降は削除)、
これをコピー、値で貼り付け、あとは508に書いたとおりです。
512名無しさん@そうだ選挙にいこう:04/01/27 15:25
初心者ですが、どなたか教えてください

エクセル2003でソースを編集して、HTMLファイルを作りたいんですが、
「Webページで保存」にするとソースがそのままブラウザに表示されてしまいます。
(常識でしたら失礼)

じゃあということで、エクセルからテキストファイルで一旦保存しようとすると、
タグや文字列の前に余計な「”」がたくさんくっついてきます。

Web上の特定のJPEGへのリンクが沢山(数千)あり、
それを表示させるページを作りたいので、
アドレスを編集するのに、エクセルを使わないと甚だ非効率なんです

詳しい方、教えてください。お願します

(類似スレから転載)
513505:04/01/27 16:47
>>506-511
即レスサンクス。
似たようなやり方でキレーにしてやりました。
顧客数が少ないほうで助かったけど、
ほんと、こーゆーバカな管理をする人が多くてかなりムカつく感じです。

お答えくださった皆様。ありがとでした!
>>512
何のサイトだよ。
考え付くところアダルト系?
だと考えるのすら嫌。
515名無しさん@そうだ選挙にいこう:04/01/27 17:01
>>512
「WEBページで保存」にしたらその表示がブラウザで
出るように保存されるのだからソースが表示されて当たり前です。

ちなみにテキストファイルで保存しても
こっちでは「”」などつかないよ。
テキスト(タブ区切り)で保存してる?
このスレ(ってかこの板自体)初めて来たんだけど、
質問に答える場合、マクロを使った答えでもいいの?
>>514
リンクしたいのはヤフーファイナンスのチャートで例えば、
http://tchart.yahoo.co.jp/c/1y/7/7221.t.gif
の/1y/7/7221.tの部分を企業ごとに変えてリンクさせたいんです
エクセルだと変更部分だけ別セルにして、コピペ・関数等で編集できるものですから...
ちなみに、
1y=一年、7=証券コードの一桁目、7721=証券コード、t=上場市場(この場合東証)
>>512
言ってることがよくわからんから、的外れなこと言ってるかもしれないけど、
その場合はスルーして。

エクセル開く>タグとか余計なこと書かないでアドだけ貼る>Webページで保存


・・・でも仮にやりたいことがこれだとすると、エクセル使うほうが非効率ちゃうんかと。
519518:04/01/27 17:18
最後一行撤回


でもどっちみちHTMLファイルにする時は別のソフト使ったほうがいい気はする。
>>515
はい。テキスト(タブ区切り)で保存してます
どこかの設定がおかしいのかなぁ

>>518
感謝!です
テキストファイルで一部実験してうまくいっていたので、
エクセルでそいつを読み込んで編集していたから駄目だったんですね
エクセルで書く場合、タグなんかつけないで良いんですか?

本当はエクセル使いたくないんですが、
上記の理由でリンク先アドレスの一部だけ変更させて
各企業のチャート一覧表示させたいんで、
普通のエディタだと非効率かと思っています

なにかいい方法があるのでしょうか
実際使ったこと無いから知らんけど、Webページで保存は
HP作成ソフトとかと一緒だったはず。
保存した画面のままブラウザで表示される。・・・はず。
>>522
やってみましたが、駄目でした
html形式で保存すると、
リンク先のJPEGがダイレクトに
表示されずに、アドレスしかでないようです

それ直リンしていいのか?
525名無しさん@そうだ選挙にいこう:04/01/27 17:54
>>524
あくまでも私用です
アップするつもりはありません
526名無しさん@そうだ選挙にいこう:04/01/27 18:28
私用で使うんだったら、WEBページで保存しなくても、エクセルのままで使えるけどね。
エクセルからリンク先に飛び、「戻る」でエクセルに戻れる。
どこかのページからリンクをコピーして貼るのなら、一番簡単。

エクセルでソースを編集する場合は、エクセルの画面をコピーして、
そのままエディターに貼り付ける。
目的によっては、初めからhtmlエディターでつくるよりずっと能率的。
>>526
ありがとうございます!

自分としては各企業のチャートを業種別に
一覧表示して(ハイパーリンクをクリックすることなしに)
トレードに役立てようとしておりますので、
ブラウザで数百社のチャートが一目瞭然!って感じにしたかったのです。
ですから、エクセルのままだと使いずらいのです

エクセルの画面をそのままコピーしたら、
問題なくテキストファイルに載りました。
TXT形式で出力しようと、難しく考えすぎていたようです

助かりました。お礼に明日から短期爆上げの銘柄を(笑)
http://quote.yahoo.co.jp/q?s=8473&d=b
イートレード証券再上場です




img srcタグ使ってないってオチだったり?
529名無しさん@そうだ選挙にいこう:04/01/27 18:56
>>510
If a = "a" Or a = "b" Then
とできるよ。もちろんOrをAndにもできる。
>>510

If (条件1 And 条件2) Then
 処理
End If

If (条件1 Or 条件2) Then
 処理
End If

And や Or はたくさんつなげてもよい。
(条件1 And 条件2 And 条件3 ・・・)
531名無しさん@そうだ選挙にいこう:04/01/27 20:45
ソフトウェア板からきました。

excelについて、教えてください。
環境:win2k office2k 104キーボード(usb ps/2 の 2つ)
spは全てあててある。
現象: セルに入力するとゴミが出る。

例: 例えば、マウスのシングルクリックであったり、tab,enterでセルの移動をし
   フォーカスが任意のセルに移った状態で日本語入力をします。例えば、
  「い」 とローマ字変換で入力しenterで確定させると、そのセルには 「い?」 と
  いった具合でゴミがついてしまいます。(?は実際には 特殊記号のようで読み方すら
  わかりません。「え」の場合は パイプで使う 「|」 がゴミでつきます。)
  
106キーボードでは、問題なかったため104キーボードのドライバ関係なのかなと、
思うのですが、googleやmicrosoft等で検索しても、かかりませんでした。
なお、1度クリーンインストールも試してみたのですが、同じ症状が表れています。
(追記。昔、win98環境のときxkeymacsを使用すると106キーボードでも、同様の
症状が出た事がありました。ただし、今はxkeymacsは使っていません。
xkeymacs・・・フリーソフトでemacs風なショートカットが使えるようにできる
お手軽ソフトです。)

101キーを使用している環境の方で、うちは問題ない等の報告もあわせて
解決方法を知っている方、どうぞよろしくお願いします。

追記です。
セルをダブルクリック、もしくはセルがフォーカス状態のときに "F2"を押し
カーソルがセル内で点滅している状態にすると、ゴミはつきません。
入力モードが、全角のときにゴミがつきます。つまり、半角英数やカタカナだと
大丈夫です。

よろしくお願いします。
532名無しさん@そうだ選挙にいこう:04/01/27 21:17
【うっとうしいイルカを永久に消したい】

イルカが出てきたとき、「オプション」で「アシスタントの使用」を消すと、
一応出なくなるのですが、何かの?マークを押したりすると、また出てきます。
しつこくてしかたがありません。
「表示する」を選択しない限り、永久にイルカを出さない方法はないでしょうか?
>>532
アプリケーションの追加と削除>変更>機能の追加/削除>Officeツール>Officeアシスタント>カイルくんを削除
534名無しさん@そうだ選挙にいこう:04/01/27 22:03
>>533
さっそくありがとう。
なるほど、インストールで選択できるのですね。確かに一切出なくなりました。
ところが今度は、ダイアログボックスの「?」マークを押しても、ヘルプが働かない。
これでは良し悪しで、そういう仕様だからしかたがないですね。
535カイル:04/01/27 23:08
こんなに嫌われるとは・・・・・・・
もう南洋に帰るYO

キュキュキューッ
イルカたんは、VBAで操作することが、できる。
>>531
Excel再インスコしてみた?
>>537
ご返答、ありがとうございます。
しました。もちろんoffice丸ごとですが。
さらに、OSごと再インストールしてみたのですが、結果は同じでした。
書き忘れたのですが、IMEはIME2Kです。
引き続き、情報よろしくお願いします。
>>538
IMEは何使ってるの?

あともう一つ。イマイチ読めなかったんだけど、件のキーボードは、usb直結タイプなのか
usbのアダプター付けてps/2にさせてるのか。。。どんな感じなの?
>>539
ありがとうございます。

IMEは、上に書いたように2000です。
キーボードは、PS/2タイプ USBタイプの2枚もっています。
ものは、
http://thelefthand.com/thelefthand/lefwinkey.html
です。

引き続き、よろしくお願いします。
間違えました。
usbは
http://thelefthand.com/thelefthand/lekewiusb.html
ps/2は
http://thelefthand.com/thelefthand/lefwinkey.html
の、WINDOWS PS2 (02-05) - STANDARD です。
すみませんでした。
542名無しさん@そうだ選挙にいこう:04/01/28 04:03

 A B C D E F G H I J K L M N O P Q R S

1│35│ │60│67│ │55│96│66│66│ │45│34│56│78│23│91│ │44│ │

2│39│ │50│62│66│35│ │61│56│ │34│ │77│ │27│60│ │ │67│

3│35│ │ │67│ │54│ │ │46│ │ │34│56│ │ │91│ │94│67│



このような感じで、
C〜Pの範囲で左から7個の数字の合計値(数字が6個以下の場合はその合計値)
を求めるにはどうすればよろしいでしょうか?
空欄は数値無しです。
どうかご指導よろしくお願いいたします。
543542:04/01/28 04:05
すいません。ズレまくりました。
544542:04/01/28 04:12
A B C D E F G・・・・・P Q R S
1)7 9 - 8 - 8 3 5 - 6 4
2)2 - 8 - 5 4 2 4 6 - -
3)- - 4 - 6 - - 9 3 - 5

このような感じで、
C〜Pの範囲で左から7個の数字の合計値(数字が6個以下の場合はその合計値)
を求めるにはどうすればよろしいでしょうか?
『-』は数値無しです。
どうかご指導よろしくお願いいたします。

545542:04/01/28 04:13
結局ズレまくる・・・スレ汚しすいません
>>544
VBAじゃないと無理だと思う。
for〜loopで3(C)から16(P)までループさせ、あとはifで判断して
必要なら足し、カウンタ用意して7になったらexit forで抜ける。

関係ないけど、HTMLの仕様として、
・行頭の半角スペースは表示時に削除される。
・連続した半角スペースは表示時に1つにまとめられる。
ズレる最大の理由はこれら。
547名無しさん@そうだ選挙にいこう:04/01/28 08:19
>>542-545
関数で一番単純な例(1行目の合計式)
=IF(COUNT(C1:P1)<8,SUM(C1:P1),IF(COUNT(C1:O1)<8,SUM(C1:O1),IF(COUNT(C1:N1)<8,SUM(C1:N1)
,IF(COUNT(C1:M1)<8,SUM(C1:M1),IF(COUNT(C1:L1)<8,SUM(C1:L1),IF(COUNT(C1:K1)<8,SUM(C1:K1)
,IF(COUNT(C1:J1)<8,SUM(C1:J1),SUM(C1:I1))))))))
548名無しさん@そうだ選挙にいこう:04/01/28 08:56
日付の書式記号のことだけど。

たとえば、"aaa"なら「月」"aaaa"なら「月曜日」というようなの、
昔(W3.1の頃)はヘルプで調べられたんだけど、今はヘルプのどこに出てくるのか分からない。
"g"(h), "gg"(平), "ggg"(平成)というのもヘルプで見つからない。

どなたか、こういうのがヘルプにあるかないかご存知ですか。
>>548
他は知らんが、少なくても書式はVBAのFormat
関数と同じだと思うので、Format関数の関連項目
で日付、時刻の書式〜みたいなのがあれば
それでみれると思うよ
>>548
2003だと「表示形式で使われる書式記号」にのってるよ
551名無しさん@そうだ選挙にいこう:04/01/28 12:25
0.0256 → 2.6E-02

って表示しているのですが

0.0256 → 2.6*10(上付-2)

と表示させることはできませんか?できるならやり方を教えてほしいのですが
552名無しさん@そうだ選挙にいこう:04/01/28 13:14
>>551
文字列にすればできるが、数値だとできない

>>546に一言
よく知りもしないことを簡単にできないなんて断定的な表現をするな
質問者に迷惑だ!
553名無しさん@そうだ選挙にいこう:04/01/28 13:30
セルの結合のショートカットキーは存在するのですか?
554名無しさん@そうだ選挙にいこう:04/01/28 14:22
VBでいうところのselect文みたいのは、エクセル関数にはないの?
IF関数で作ったら、ネストが深すぎてエラーになっちまったよ。
555名無しさん@そうだ選挙にいこう:04/01/28 14:51
すいませんが聞いてください。
ボクのイルカが死にました。
今朝の9時時ごろ、いつも通りエクセルを開いたところ、
いつもはキューと鳴きながら登場するはずのイルカ君が何故か無言で出てきたんですね。
あれっと思って見てみたら、イルカ君、画面右端でうつ伏せに倒れてしまったんです。
そのあと何度もクリックしてショックを与えて蘇生しようとしたのですがダメでした。
ついにイルカ君は動かなくなってしまったのです。
いつも陽気だったイルカ君を思い出すと、今でも涙が止まりません。
明日葬式を挙げてやります。喪主はボク。お墓も作ってあげようと思う。
今までありがとうイルカ君。安らかに眠れ。
556名無しさん@そうだ選挙にいこう:04/01/28 14:57
カイル君、南の海にカイル。
典型的な駄作コピペ
558名無しさん@そうだ選挙にいこう:04/01/28 15:10
>>553
ないんじゃないかなあ。ctrl+1とalt+Mの間に、操作が一つ入るみたい。
ツールバーにセル結合のアイコンを置くことはできるけれど。
559名無しさん@そうだ選挙にいこう:04/01/28 17:50
>>498さん、>>496です。こちらこそ超々遅レスすみません。なぜだかアク菌だったもんで・・。
おぉっ!使える、使えますその技!どうもありがとうございます!
空白を入れたくなかったもので、
いちいち印刷切れを画面でチェックしていたのですよー。
ホント助かりました。
先の>>487さんといい、皆様ご親切にありがとうございました!
>>552の自分に向けた一言ワロタ
>>546の言った
簡単に=スマートに、クレバーにって事だろ。
少なくともほかの先生のアップしたレスはダサいとしか言いようがないと思う
のは共通の意見だと思うけど。
質問者がどのレベルの回答を求めてるかにもよるけど。
個人で使うならともかく、販売もしくは配布(社内のみだとしても)されてるフ
ァイルでそんな処理されてるのみつけたら即アボーンだが。
>>552の理屈で言えば
>>>551
>文字列にすればできるが、数値だとできない
も「簡単に」できるわけだが。

>>552に一言
よく知りもしないことを簡単にできないなんて断定的な表現をするな
質問者に迷惑だ!

っていってもいいいでつか?
564552:04/01/28 21:42
国語辞典を引きながらあおり文句を作成中です
プリーズ ウェイト...
>>564
悔しいのは分かるが、自分が悪い。
リアル厨房じゃないならスレの為に我慢しる。


---------------仕切り直し----------------


  次の質問バッチコイ!  v(´・c_・`)

・・・だめだ・・・こういう展開になると
いつもの調子であおりを入れたくなるが・・・・・

ここの板でやると自己嫌悪に陥るから辞めとこう・・・・
568名無しさん@そうだ選挙にいこう:04/01/28 21:50
では…
例えば一枚目のシートに

 A B
1)a d
2)b e
3)c f

二枚目のシートに
 A B
1)a h
2)c e
3)n m

とあった場合、二枚のシートを比較して
a、cをリストアップする事は可能でしょうか?
またその方法等お教えいただければと思います。
(一枚目を元に、A列が同じ物を抽出したいのです。)

いきなりの不躾な質問で恐縮ですが、何とぞ一つ知恵をお貸しください。
>>567
(・∀・)エライ!!
570名無しさん@そうだ選挙にいこう:04/01/28 22:14
>>567
いつものコピペ

  あ  き  た
Σ(´Д`;)| ̄|_←568氏
並び替えて総当たりの力技以外で重なりチェックなんて無理じゃないの?
573名無しさん@そうだ選挙にいこう:04/01/28 22:37
>>568
VLOOKUP
574名無しさん@そうだ選挙にいこう:04/01/28 22:52
質問させてください(excel2000)

A1に入力されている住所の都道府県名のみB1に分離したいので
B1に =MID(A1,1,FIND("都",A1,1)) の関数を組み入れました
これで"都"は分離できるのですが"道","府",""県"はどのように
判別させたら良いのでしょうか?

     ,,、
    (・_・) <アレテキタ?
    .゚しJ゚
>>571
い、いえいえ(つД`)

>>572
やはりそうなってしまいますか…
シート1、2とも千行以上あったのでそれだけは避けようと
願っていたのですが…すいません…

>>573
申し訳ありません、質問の形が間違っていたかもしれません…
リストアップしたいのはB列ではなく、A列に関してのみなのです…
ただその数が膨大なために、お力をお借りしたいと…
>>568にあげた例でいうとd、e、f、h、m、はこの場合関係ありませんです)
>>574
B1に
=RIGHT(A1,LEN(A1)-4+SUM((MID(A1,3,1)={"都","道","府","県"})*1))
C1に
=LEFT(A1,LEN(A1)-LEN(B1))

これでC1に都道府県名だけ抜ける予感。
外してたらスマソ。1セルで出来なくてスマソ。
578名無しさん@そうだ選挙にいこう:04/01/28 23:16
>>574
それだと「京都府」はどうなるでしょうか?
「東京都」「京都」では統一がとれませんね。
県を処理してから、県がなければ(#VALUE!)
3文字ということで良いのではありませんか?
(あまりエクセル的解決ではありませんが。)
579名無しさん@そうだ選挙にいこう:04/01/28 23:19
>>576

2枚目のシートの1行目(どの列でもいい)に、

=IF(ISERROR(VLOOKUP(A1,Sheet1!A:A,1,FALSE)),"なし",A1)

って書いて、下までドラッグして、

オートフィルタその列の「なし」の行を削除すればできると思います。
>>578
581名無しさん@そうだ選挙にいこう:04/01/29 00:18
count(B1:x1){xは変数、x=Q→BK}で、
1)count(B1:x1)=16になるときはsum(B1:x1)を返す
2)count(B1:x1)≠16のときは次へ
3)count(B1:BK1)≠16の場合はsum(B1:BK1)を返す
となる場合、VBEではどのように記述すればよろしいでしょうか?
つまり、
count(B1:Q1)
=16→sum(B1:Q1)
≠16
 ↓
count(B1:R1)
=16→sum(B1:R1)
≠16
 ↓
count(B1:S1)
=16→sum(B1:S1)
≠16
 ↓
count(B1:T1)
 ・
 ・
 ・
count(B1:BI1)
=16→sum(B1:BI1)
≠16
 ↓
count(B1:BJ1)
=16→sum(B1:BJ1)
≠16→sum(B1:BK1)

こんな感じなのですが…
よろしくお願いいたします。
582578:04/01/29 00:26
574の処理だと、「東京都」「京都」「栃木県宇都」などが分離される。
つまり、「『都』が見つからなければ」という処理は不可。
まず県名を分離しておいて、「県」が見つからなければ、
「北海道」「東京都」「大阪府」「京都府」のどれかだから、
3文字を分離すれば終わり。式にすると次のようなもの。

=IF(ISERROR(FIND("県",A14)),LEFT(A14,3),LEFT(A14,FIND("県",A14)))

577の方が配列を使っていて高級だが、それでも3文字以上の県名はないという前提。
どちらも、実際の都道府県名の知識に依存しているわけ。
つか府中とか、県郡とかありますが。
584578:04/01/29 00:58
この場合最初の「県」を探すので、「〜県」の「〜」の中に「県」という字がなければ十分。
>>584
〜府県村とかだったら?
586名無しさん@そうだ選挙にいこう:04/01/29 01:06
全都道府県のリストを作っておいて、それと照らし合わせて分離するとか。
587578:04/01/29 01:41
ごめん、わかった、ダメだった。
都、道、府のあとに「県」のつく地名が来たら、そこまで分離してしまう。
やっぱり577の処理で行くか。1セルなら、次の式で良いわけだな。

=IF(SUM((MID(A1,3,1)={"都","道","府","県"})*1)=1,LEFT(A1,3),LEFT(A1,4))

ただし、最初に都道府県名が書いていなかったら、知らん。
都道府県名が確実に表記されているなら
最初に4文字だけ抜いといて検査。
なら、いい線いく。ま、本来は県のコードなりで
処理する設計が一番いいんだが。

現実にはなかなか・・・・役所のバカヤロー



愚痴でスタ。
578の件は、vb使わん限り、無理な気がするんだが?
590578:04/01/29 10:04
都道府県名は、3文字か4文字という知識を前提に考えるならば、これで良いと思います。
「〜府(都、道)県〜」という地名が存在しないと仮定すれば、処理はもっと簡単で、
4文字目が「県」なら4文字取り出し、そうでなければ3文字取り出すだけで良いのですが。
どっちにしても、県名が書いてなくていきなり市から始まるとか、そういうデータが混在している場合は、
データベース作って照合していくしかないでしょうね。

そこまでしないなら、3文字目だけでなく、4文字目も調べて、「県」が見つからなければエラーを返す。
後は手作業で。
それにしても、郵便番号ぐらい入っていないのかな?
591578:04/01/29 10:21
つまり、たとえば次のように書けば、都道府県名の書いていないデータははねてくれますから、
後は手作業でデータを訂正する。

=IF(SUM((MID(A1,3,1)={"都","道","府","県"})*1)=1,LEFT(A1,3),IF(MID(A1,4,1)="県",LEFT(A1,4),false))
592名無しさん@そうだ選挙にいこう:04/01/29 10:35
教えてクンでつ。

セルに、例えば「最低価格」という言葉が入っていたら、そのセルの文字を太字にする、という事は可能ですか?
条件付き書式だと思うのですが、どう設定して良いのか今イチ判らず苦戦中・・・(´・ω・`)
593名無しさん@そうだ選挙にいこう:04/01/29 10:48
「数式が」"=(FIND("最低価格",A1))"でできてしまいました。
エラー関数を使わなければならないと思ったのですが。
これで良いんでしょうか?
594593:04/01/29 10:50
数式が 次の値に等しい ="最低価格"
でいいんじゃねえの
595594:04/01/29 10:51
>593
だったスンマソ
596名無しさん@そうだ選挙にいこう:04/01/29 10:51
>>592
自己レス
エクセル技道場で見つけました

失礼しました!
597592:04/01/29 10:53
>>594
それでできなかったので・・・・

技道場見たら、=COUNTIF(A1,"*最低価格*") を入れる、でした
598592:04/01/29 11:00
>>593
find関数でもできるんだ・・・ってそうか(w
文字を認識してくれればいいんですよね

アリガdございました!
599名無しさん@そうだ選挙にいこう:04/01/29 11:07
>594 ?!


>591
最終形と思いますが、オラのようなシロートには
ISERR(FIND(MID(A1,3,1),"都道府県"))
の方が判りやすい。IFの真偽は逆になりまつが。
600591:04/01/29 11:53
なるほど、発想を逆にして、3文字目が"都道府県"の中に見つかるかを調べるのですね。
より単純なものがより優れている。
勉強になります。
601名無しさん@そうだ選挙にいこう:04/01/29 12:06
>>574 遅レスですが参考までに
これは以前、質問と同様の事を1シート2000件のデータ20シート分
処理した方法です。1日で処理できました。
1.編集/置換 で以下のように変換します。
   県→県,
  北海道→北海道,
  東京都→東京都,
  京都府→京都府,
  大阪府→大阪府,
2.データ/区切り位置 のカンマ位置で分割します。これでほぼ完了。
  (出力位置は隣の列を指定します)
3.地名内に「県」があるデータは、その位置でも分割されているので
   これは手作業で直しますが、大して手間のかかる作業ではありません。
以上で作業完了です。
手順は面倒な感じですが、やってみると意外に簡単です。
602名無しさん@そうだ選挙にいこう:04/01/29 12:13
質問です、win98の97です、
200→198→196・・・のオートフィルができないです。
なんとかならないんでしょうか、
それともできないんでしょうか。
603名無しさん@そうだ選挙にいこう:04/01/29 12:31
1群150個の2群間のデータのt検定をする場合、
TTEST(A1:A150,B1:B150,1,1) でいいのですが、
データが1群あたり1列で150個並んでいては扱いにくいので、
1群を50個ずつ3列にして計算しようと思いました。そこで
TTEST((A1:A50,B1:B50,C1:C50),(D1:D50,E1:E50,F1:F50),1,1)
としてみたのですが計算されませんでした。
やはり1群あたり1列に並べるしか方法はないのでしょうか。
604591:04/01/29 12:57
>>599
=IF(ISERR(FIND(MID(A1,3,1),"都道府県")),IF(MID(A1,4,1)="県",LEFT(A1,4),FALSE),LEFT(A1,3))
これで最終形ですか。
605574:04/01/29 13:05
>>577,578,582,583-591,599-601,604

皆さんたくさんのレスありがとうございました
今、職場からなので家に戻ってから整理したいと考えています
>604
念を押されるとチョトね、例えば
栃木県足利市県町… が市から入力されてたらFALSEにならない。 (w
まあ機能と簡略さのバランスはいーと思います。おしまい。
607名無しさん@そうだ選挙にいこう:04/01/29 13:38
データの検索や条件付き書式で、半角のアスタリスク(*)を、データとして抽出したりできますか?
例えば=COUNTIF(A1,"*") など・・・・

1バイトの*が入っているセルを探したいのですが・・・(´・ω・`)
>603
TTEST(A1:C50,D1:F50,1,1)
609568:04/01/29 14:13
>>579
遅レスですが本当にありがとうございます・゚・(ノД`)・゚・。
関数をもっと知らねばなりませんね…
いつかここで少しでもお役に立てるように精進させていただきます。
ほんとうに感謝です。
それでは、失礼いたしました。
610名無しさん@そうだ選挙にいこう:04/01/29 14:18
質問です。(EXCEl2000)
A1のセルに VLOOKUP(B1,$J$2:$K$10,2,FALSE)と式を入れました。
でも「あっ、IFもつけなきゃダメじゃん」と気づいた時に、後から関数を入れていく裏技みたいなのはありますか?
初めからなら簡単ですが、後からはチマチマしていてやりにくいのです。
611610:04/01/29 14:19
あっ、セル名は適当なんで気にしないで・・・・。
基本的なことで申し訳ないですが、親切な方教えてください。

資料と名づけられたファイルの中に500ぐらいのxlsシートがあります。
これらのシートの形式は全く同じです。
その一覧表を別にエクセルで作りました。
その一覧表はA列にずらっとシート名が並んでいるようなかたちです。
で、今したいのは、一覧表のB列に各シートの中のA1セルの内容を表示したいのです。

マクロが全く判らなかったんですが何とかモノの本を見ながらここまで組んでみました。

Range("B2").Select

With Selection
.FormulaR1C1 = "='C:\WINDOWS\デスクトップ\資料\[××]Sheet1'!R1C1"
.Copy
.PasteSpecial Paste:=xlValues
End With

Application.CutCopyMode = False

ここから先、繰り返し作業をするためにはどうすればいいでしょうか?
あるいは、こういったことが実例として書いてある書物を教えて頂ければ幸いです。
613603:04/01/29 14:50
>>608
どうもありがとうございます。できました。
ついでに、1群のデータがこのように並んで3列(A列、B列、C列)になっておらず、
もし離れて3列になっていたら(A列、C列、E列など)計算可能ですか。
>>612
要はファイルの一覧が取得したいということね。

FileSystemObjectを使って、その特定のフォルダを
GetFolderメソッドでFolderオブジェクトを取得すれば
FolderオブジェクトのFilesプロパティでファイルの一覧
を参照できます

その一覧分、上のコードをFor Each Nextでループさせる
# ファイル名の判断はおまかせします

>>612自体のコードの検証はしてないけど、ループは
こんな感じ
615名無しさん@そうだ選挙にいこう:04/01/29 15:21
EXCEL2000で特定のセルをクリックしようとしても
幾つもの複数が範囲指定され青くなってしまい、
入力できません。どうすればいいですか?
>613
名前定義でやってみたけどダメでした。
不連続はムリなようですね。
617607:04/01/29 15:42
誰か教えてぇぇぇ>>607

無理なら無理で諦めます・・・(´・ω・`)
618名無しさん@そうだ選挙にいこう:04/01/29 15:50
>607

エクセル2000のヘルプ(ワイルドカードの項)より

~ (チルダ) (?、*、または ~ の前に入力) 疑問符、アスタリスク、またはチルダ
たとえば、「fy91~?」と入力すると "fy91?" が検索されます。
>607
条件付書式で =FIND("*",A1)>0
A1は設定する範囲で水色反転していないセル番地。
620名無しさん@そうだ選挙にいこう:04/01/29 16:01
>>614
お答えありがとうございます。

早速FileSystemObjectをキーワードに検索しました。
なんとなくそれっぽいソースが見つかりましたので、
積上げていきたいと思います。

あと単純な質問なんですが、
"='C:\WINDOWS\デスクトップ\資料\[××]Sheet1'!R1C1"
の××は文字型の変数は代入できないのでしょうか。
いろいろやったんですが#REF!を吐き出してしまうんですが。
621名無しさん@そうだ選挙にいこう:04/01/29 16:09
>607
COUNTIFとFINDでは検索の方法が違い、FINDは純粋に文字列として見るようです。

=FIND("*",A1)>0

は可能ですが、

=COUNTIF(A1,"*")

だと、どんな文字列が入っても条件に当てはまってしまいます。
>>614
>>612 はフォルダ掘ってファイルを調べるのではなく、
ひとつのブックの中のたくさんのシートを調べたいのではないか?


623607:04/01/29 16:37
>>618
>>619
>>621
アリガdございますた

この辺を使って、条件付き書式を構築したいと思います
具体的には、1バイトアスタリスクが入っているセルには、網掛けせず、その他のセルのうち
比較元セルの値と比較して10以上上なら網掛け、5以上上なら太字、という書式を設定したいのです・・・

もしできなかったら、また質問させて頂きます
624名無しさん@そうだ選挙にいこう:04/01/29 17:04
遅レスだけど>>601は感心しました。
ややこしく考えなくても、ちょっと発想を変えれば目的の事が達成出来るもんなんですね。
>>615
ctrlが押されっぱなしになっているのでは?
とりあえず、ctrlを連打!
626603:04/01/29 17:18
>>616
検討して下さり、どうもありがとうございました。
627名無しさん@そうだ選挙にいこう:04/01/29 17:24
複数シートに渡って、えらくたくさんあるテキストボックスの中をがーっと検索したいのですが、
なんかいい手段はないでしょうか?
当方VBAはまったくやったことがないです。
又はそういうツールがあったら教えて下さい。
628612:04/01/29 17:26
>>622

お気遣いいただきありがとうございます。
それもそうなんですよ。
ただファイルの名前の列挙もやらなければとは
思っておりましたので・・・
手打ちで打っていたんですが、バイトの子に
やらせるまでもないなと思っていたので
正直助かりました。
629614:04/01/29 17:46
>>622
あっ本当だ。よく読まずにレスしてしまったみたいね。
ゴメンネ>>612

>>628
ファイルの列挙もしたいって事は、結局外部Excelファイル
の中身をExcelのマクロで触りたいってことだよね

勘違いしたのでお詫び。。。

Sub hoge()
  Dim objWorkbook As Excel.Workbook
  Dim objSheet As Excel.Worksheet
  
  ' ファイル名は適当にFileSystemObjectで探してね
  Set objWorkbook = Application.Workbooks.Open("hoge.xls")
  
  ' Sheetの検索
  For Each objSheet In objWorkbook.Worksheets
    ' SheetX(数字1つ)のシート名判定 ↓ Likeの後はは適当に変えてください
    If objSheet.Name Like "Sheet#" Then
      objSheet.Cells(1, 1).Value = "hoge"
    End If
  Next
  ' ファイルの保存
  objWorkbook.Close True
End Sub


まだチョト違う気が、、、
631612:04/01/29 18:13
>>629-630

あぁ、ごめんなさい。私の聞き方が悪かったんです。
どうもすいません。

したかったの事は不特定多数のブックから特定のセルの内容を
その不特定多数のブックを開くことなく、リストアップしたいと思ったんです。

とりあえず、今は>>620の問題を解決したいと考えているんですが・・・
どなたかお知恵を拝借できれば・・・
632名無しさん@そうだ選挙にいこう:04/01/29 18:24
パソコン一般板で反応がなかったので、こちらで教えて頂いて宜しいでしょうか
WindowsME、IE6、Office2000使っています
先日再インストールしました。
以前はHPを右クリックでエクセルにインポートできたんですが、
右クリックしても、エクセルにインポート出来なくなってしまいました
どこかの設定を変えると可能になりますか?
もしスレ違いでしたら誘導よろしくお願いします
>>624
ほんとビックリ、100件程度の住所録を>>601のやりかたで
試しにやってみたんだけど、簡単にできちゃった。
どうやらオレはVBA依存症になってたようだ。
じゃあチョト強引だけど>>542の代案
編集⇒ジャンプ⇒空白⇒削除⇒左にシフト⇒左から7個のSUM
コピーのデータを使ってね。
635578:04/01/29 19:07
あくまでもこだわってみる。

47都道府県名だけのデータベースをつくっておいて、これに「都道府県名」という名前を付けておく。

北海道
青森県
岩手県
秋田県
 ・
 ・
 ・

=VLOOKUP(IF(MID(A1,4,1)="県",LEFT(A1,4),LEFT(A1,3)),都道府県名,1,FALSE)

上記で、返された名前がデータベースにあるかどうか調べる。
なければ、#N/Aが返されるので、その部分のデータは手動で修正。
切り出しは単純にやって、そのあと正しいデータと比較する。
636614:04/01/29 19:30
>>630-631
あぁ〜またしても勘違い。。。そろそろリアルで顔赤くなってきた

>>620
>"='C:\WINDOWS\デスクトップ\資料\[××]Sheet1'!R1C1"
>の××は文字型の変数は代入できないのでしょうか。
文字列型の変数の代入ってのが良くわかりませんが
# 自分の勘違いを棚に上げてますが
xxにファイル名を入れる方法がわからないってことですか?

Visual Basicのヘルプで & 演算子の使用例等を
みてください

違ったらごめんなさい

上の問題ではないですが>>629も全く役に立たないわけで
はないかもね・・・Cellsのヘルプも見てみるといいかもね
637名無しさん@そうだ選挙にいこう:04/01/29 20:11
【質問】

質問です。 ※EXCEL2002 WindowsXP

Excelで一つのセルに改行(Alt + Enter)を入れて、複数行文字を入力させます。

こうして作成したExcelシートをプリントアウトすると、Excelの印刷プレビューでは
表示仕切れていたのに、紙で見ると最終行の文字が下半分くらい欠けてしまうことが
良くあります。

余裕を持って行の高さを設定すればイイのですが、
これを毎回行うのも非常に手間がかかるし、
基準があいまいなのでそれをを複数行にわたって行うと
見栄えが悪くなったりします。

複数行編集したセルがプリントアウトしてもきちんと表示しきれるようにさせる
お手軽な操作は無いものでしょうか?
638名無しさん@そうだ選挙にいこう:04/01/29 20:21
>637
それ、最近出た話題だね。
559が解決編なので、そこからたどって。
>>637
無いっス。
このへんとか見てみると、
ttp://support.microsoft.com/default.aspx?scid=kb;ja;400271&Product=xlw2kINT

印刷に非常に弱い造りになってるようです。
ずーっと前からこんな状態なので、MSも直す気が無いのか、もう直せないかという
末期的な状態なのだと思われます。

あと、
http://support.microsoft.com/default.aspx?scid=fh;JA;KBHOWTO
でExcelで「印刷」をキーワードに色々みてみてください。
Excelの印刷機能を信頼するのは危険がいっぱいな事が分ります。
セル幅広めに取っておくのが一番簡単で安全なようです。
641名無しさん@そうだ選挙にいこう:04/01/29 20:25
>>637
1セルに複数行の文字入力を多用するような表だったら、Wordで作る事も検討してはどうかな?
642名無しさん@そうだ選挙にいこう:04/01/29 20:34

盛り上がっているところすみません!
>>632はスレ違いですか??

神奈川県は?
644637:04/01/29 20:44
>>638 >>639 >>640 >>641

レスありがとうございます。
確かにExcelの本来の機能は表計算だから
それとは外れたことをしているわけでしょうがないかな。。
(バグだと思うんだが・・)

640さんと641さんのレスに従うほかは無さそうですね。
645637:04/01/29 21:17
すいません、 >>638 さんのレスをよく読まずにレスしてしまいました。

>>498 の技は非常にイイ (・∀・) ですね。
本文を修正したらダミーデータも修正しなければ
いけないのが難点ですが、たいした手間じゃないし。
作業が大分楽になりそう。

ありがとうございます。
646名無しさん@そうだ選挙にいこう:04/01/29 21:29







盛り上がっているところすみません!
>>632はスレ違いですか??







>>642 >>646 氏ね
648名無しさん@そうだ選挙にいこう:04/01/29 21:50
セルをクリックしようとしても複数のセルが範囲指定されて
青くなってしまい、入力出来ません
なんででしょうか?
649名無しさん@そうだ選挙にいこう:04/01/29 21:51
●質問です。  (WinXP&Exl2000

参照用の表に3つのフィールド、ID(数字)、名前(文字)、金額(数字)がありまして
一つのセルにIDか名前のどちらかを入力しても対応した金額を返すような方法はありますでしょうか?
よろしくおねがいします。
650名無しさん@そうだ選挙にいこう:04/01/29 21:58
>>648
625は読んだの?
ctrlとかshiftを連打したら、たいていもとに戻るよ。
651名無しさん@そうだ選挙にいこう:04/01/29 22:03
>>649
IDを1列目にした範囲名(仮に"ID")と、名前を1列目にした範囲名(仮に"名前")を設定。
vlookupでまず"ID"を参照、isnaでエラー値かどうか調べて、
エラー値だったら、今度は"名前"を参照。
>>649
名前は重複する恐れがあるから、使わない方がいんじゃね?
少なくとも重複する場合は候補から
選択させるようにしないとまずいと思うよ

回答は>>651といいたい所だが・・・・・・
lookup系は元データが照準で並んでいることが
前提なのでNGですな・・・・
>>652
VLOOKUPの最後の引数にFALSEを入れとけば昇順で無くてもOK
654名無しさん@そうだ選挙にいこう:04/01/29 22:26
昇順?で並んでいなくても、次のようにすれば良いでしょう。
FALSEを忘れたらダメです。

=IF(ISNA(VLOOKUP(A1,ID,3,FALSE)),VLOOKUP(A1,名前,2,FALSE),VLOOKUP(A1,ID,3,FALSE))

名前が重複していたらダメというのはその通りです。
>>653
ふーん。そうなのか・・・・・メモっておくYO

クエリ使ったことないから試してみようと
思ったけどめんどそうなので止めてみたw
656649:04/01/29 22:37
>>651,>>652,>>653,>>654
早々の回答どうもありがとうございました。
今回は重複しない名前のリストに通し番号を付けただけのものでしたので問題ナシでした。
IS関数は今回初めて知りました。詳しく調べてみようと思います。
どうも有難うございました。
657574=605:04/01/29 23:23
都道府県名での住所分割の件で皆さん回答ありがとうございました。

今回は時間が無いのでとりあえず>>601氏ほ方法を参考にさせていただきました。
現在excel勉強中なので他の皆さんの方法も試してみたいと思います。
昼休み中に図書館からexcel関連の本を借りてきたのでそれを見ながら気長に
勉強してみます。
都道府県飽きた。
659名無しさん@そうだ選挙にいこう:04/01/30 01:04
Excel2000使ってます。
外部データの取り込みでAccessから浮動小数点の数値を読み込むと

28とかだとそのまま28に、
28.1とかだと28.10000036とかになってしまいます。
どこかの設定を間違っているのでしょうか。
よろしくお願いします。
>>647
VAKA
661名無しさん@そうだ選挙にいこう:04/01/30 09:23
誰かぁぁぁぁぁぁ
>>627です、教えてください!!
662名無しさん@そうだ選挙にいこう:04/01/30 09:55
よく使う機能にショートカットキーを割り当てたいのですが、エクセル技道場を見ても、やり方が
どうもよく判りません。
技道場では、
(6)追加された状態のボタンをクリック、[選択したボタンの編集(M)]
ボタンを押し、詳細を設定します。[名前(N)]ボックスには、
追加したコマンドの名前が表示されています。今回の例の場合には
「値の貼り付け(&P)」となっており、「(&P)」の部分がショート
カットキーを表しています。これを、他のキーと重複しないものに
変更してください。さらに、[テキストのみ表示(T)]にチェックを
入れます。
とあるんですが、「他のキーと重複しないものに変更してください。」の、具体的な変更の仕方が
よく判らないのです。
どなたか、具体的な変更の仕方を教えて頂けないでしょうか?
663名無しさん@そうだ選挙にいこう:04/01/30 09:57
>>661
もっと具体的に書きな(使用環境も含めて)
664627:04/01/30 10:01
>>663

エクセル2000で、エクセルで報告書を書いています。
1ファイル1章・1頁1シートの形式で、1ファイルの中には、数十頁分(=数十シート分)が入っています。
報告書の文章部分を、テキストボックスに入れているのですが、語句変更をしなくてはならないので、
その変更する語句が、どのファイルのどのシートに入っているか、検索したいのです。
勿論、置換ができればもっと助かります。

vbaには明るくないので、できればそういう裏技か、ツールなどがあれば、その辺で何とかしたいのですが・・・
665名無しさん@そうだ選挙にいこう:04/01/30 10:20
=TEXT(A1,"000")で001と表示されているセルをCSVで保存すると
1となってしまいます。001として保存するにはどうしたらいいでしょうか。
666名無しさん@そうだ選挙にいこう:04/01/30 11:36
Excel2000を使用しています。
作成したファイルを同時に3人で開けるようにしたいのですが、
可能でしょうか?
どなたか方法を教えて下さい。
宜しくお願い致します。
>>665
TEXT関数の入っているところを[コピー]
→[形式を選択して貼り付け]→[値]で上書きする。
>627
あまり時間がないので取り出すだけ。
ホントは別のブックから実行すべきだけどそれもゴメンして。
元データは大切に保存して、コピーファイルに下のマクロ埋込み。

実行するとアクティブシートのA列にテキストボックス番号
B列にシート番号、C列に内容が入るから、影響のないように
新しいシートを挿入して、そこから実行するのが吉。

あとフォローよろしこ。

Sub moge()
i = 1
For j = 1 To Sheets.Count
For Each sh In Worksheets(j).Shapes
  If sh.Type = msoTextBox Then
     Cells(i,1)=i
     Cells(i,2)=j
     Cells(i, 3) = sh.TextFrame.Characters.Text
     i = i + 1
  End If
Next
Next
End Sub
>>628
[ファイル名の抽出]
(1) スタート→プログラム→アクセサリ→コマンドプロンプトを実行。
(2) > の右に、ファイルのあるドライブ名にコロンをつけて入れて [ENTER]。
  例 > D: [ENTER]
(3) CD \フォルダ名 [ENTER] でファイルのあるフォルダに移動する。
  例 > CD \〜\〜 [ENTER]
(4) DIR で、ディレクトリリストを表示する。
  XLS ファイルだけを表示するには *.XLS と指定する。
  例 > DIR *.XLS [ENTER]
(5) 次のようにすると、FILELIST.TXT として保存される。
  例 > DIR *.XLS > FILELIST.TXT [ENTER]
(6) FILELIST.TXT を 固定長データファイルとして EXCEL に読み込んで
  ファイル名のところだけ取り出す。
>>612
[同じブックの中のシートを参照する]
ブック中のシート名を A 列に、各シートの A1 セルの内容を
B 列に表示する。

(1) ブックに新しいシートを追加する。たとえば INDEX という名にする。
(2) [ALT] + [F11] で VBA エディタを起動する。
  プロジェクトの追加された新しいシート(INDEX)をダブルクリックして、
  そこに下記のコードをコピペする。
(3) EXCEL のウィンドウで、追加したシートを表示。
  シート上をクリックして Active にしておく。
(4) ツール→マクロから、MACRO_SHEET_INDEX を選択して実行。

Sub MACRO_SHEET_INDEX()
Dim SheetName As String
Dim i As Long
For i = 1 To Worksheets.Count
ActiveSheet.Range("A" & i) = Sheets(i).Name
ActiveSheet.Range("B" & i) = Sheets(i).Range("A1")
Next i
End Sub
671名無しさん@そうだ選挙にいこう:04/01/30 14:45
いま仕事で詰まってます。XPを使用しています。

複数のセルにそれぞれ入力されたテキストを、一つのセルにまとめたいと
思っています。
例えばA1に「あああ」B1に「いいい」C1に「ううう」となっているものを、
A1に「あああいいいううう」とまとめたいわけです。
(「あああ(改行)いいい(改行)ううう(改行)」となればなお嬉しいです)

数が何千かあるので、手直しだと辛いっす。。。
アドバイスよろしくお願いします!

672名無しさん@そうだ選挙にいこう:04/01/30 14:55
>>671
セルの文字データをつなぐのは「&」
 =A1&B1&C1・・・・・
1つの文字列にしたいなら
上記式のセルを コピー/値の張付け する
673名無しさん@そうだ選挙にいこう:04/01/30 14:57
>>671
D1に =ikuといれてみな、気持ちよく出来るよ。

&でやれは簡単にいくだろう。
674666:04/01/30 15:11
エクセルではやっぱり無理でしょうか…?
>>671
1. D列に下記の式を入れて下までコピー
=A1&CHAR(10)&B1&CHAR(10)&C1
2. データをコピーしたところを選択して、[書式]メニュー→[セル]→[配置]
  →[折り返して全体を表示]にチェックを入れる
3. [編集]メニュー→[コピー]、[形式を選択して貼り付け]→[値]で上書き
4. A〜C列削除
676668:04/01/30 15:19
>627
GetTextBox でテキストボックスの内容を取出す。
⇒取出したC列の内容を自分で編集する。(他の列は編集しない)
⇒PutTextBox でテキストボックスに戻す。
異なるブック間には未対応。

Sub GetTextBox()
i = 1
For j = 1 To Sheets.Count
For Each sh In Worksheets(j).Shapes
  If sh.Type = msoTextBox Then
     Cells(i, 1) = i
     Cells(i, 2) = j
     Cells(i, 3) = sh.TextFrame.Characters.Text
     Cells(i, 4) = sh.Name
     i = i + 1
  End If
Next
Next
End Sub

Sub PutTextBox()
i = 1
Do While Cells(i, 4) <> ""
  Worksheets(Cells(i, 2)).Shapes(Cells(i, 4)).TextFrame.Characters.Text = Cells(i, 3)
  i = i + 1
Loop
End Sub
>>674
3人がアクセスできる共有フォルダはあるの?
678671:04/01/30 15:26
>>672-673
できました!ありがとうございます!
助かりましたー。

「値の張り付け」含め、
知らなかったことをいくつも同時に知ることができました。
本当にありがとうございます!
679675:04/01/30 15:33
(;_;)
680名無しさん@そうだ選挙にいこう:04/01/30 15:34
>>669
これは懐かしい。いにしへの技だね。
WINDOWSは便利なようで、MS-DOSで簡単にできたことができない。
681671:04/01/30 15:35
>>675
それに加えて、改行方法までありがとうございますー!
ほんと、一気に色んなことが勉強になりました。
Excelって面白いんですね。昔やっていたBASIC思い出しましたよ。
勉強してみようかと思います。
CONCATENATE関数で連続するセルを扱えればもっと使える関数になるのにな
683666:04/01/30 15:58
>677
社内LANです。共有フォルダあります。
ファイルを共有かけて、3人で見ようとしたら
1人目は見れるのですが、2人目からはロックがかかって
読み取り専用じゃないと見れないんです。
読み取り専用じゃなく、フルアクセスできるようにしたいのですが…
>>666
>>674
3人で同時に開いて編集したいってこと?
普通に共有ブックじゃ駄目なの?

http://www.1147mono.com/Excel/katsuyou_25.htm

>4前半の方法を使いExcel2000(9.0.6926)で、緯度経度のd:mm:ss.ss←→d.dddddd
変換等しようとしましたが、180:33:29.99の様な1秒未満を含む値を入力すると、数値
ではなく文字列になってしまいます。

http://support.microsoft.com/default.aspx?scid=kb;ja;416854
JP416854[XL2001] 時刻の表示形式で1/10秒以下を指定すると文字列となる
 該当: ExcelX, Excel2001, Excel98 非該当:Excel5.0, Excel97
これが同じ問題の様ですが、Excel2000に関しては言及されていませんでした。
また、↓を見た感じでは、Excel2002ではこの問題は無さそうです。
ttp://www.epark.co.jp/pcriyou/excel2002_02/

Excel2000の場合、↓な具合に文字列→数値にしないと駄目なんですかね?
=IF(ISERROR(SEARCH(":",A1),A1,LEFT(A1,SEARCH(":",A1)+5)+MID(A1,SEARCH(":",A1)+6,LEN(A1))/24/60^2
それとも、設定が拙い?アドイン不足?
686名無しさん@そうだ選挙にいこう:04/01/30 16:29
Excel2000(9.0.6926 SP3)を使っていますが、上記の現象は見られませんでした。
687名無しさん@そうだ選挙にいこう:04/01/30 16:37
>>685
シリアル値を使い、セルの書式設定を次のようにする
 [h]-mm-ss.00 

質問の意味と違ってたらスルーして!
688名無しさん@そうだ選挙にいこう:04/01/30 16:50
>>682
お前の頭が使えねー
690685:04/01/30 17:48
>686
Excel2000自体の問題では無く、私の環境固有の問題でしたか…
取り敢えず、慌ててExcell2002を買いに走らずに済みました

>687 >シリアル値を使い
この意味が分かりませんでしたが、書式設定を[h]-mm-ss.00にしても、

  入力    →     セル表示      → 数式バー表示   → =VALUE(A1)
139:59:59.99 →  139:59:59.99 (左寄せ) → 139:59:59.99    → #VALUE!
139:59:59   → (右寄せ) 139-59-59.00 → 1900.1.5 19.59.59 → 5.833321759

となってしまいます(´・ω・`)
>>688
お前がかわいそう
692名無しさん@そうだ選挙にいこう:04/01/30 18:18
>>690
[h]-mm-ss.00は時刻の書式設定を利用したものです。
例題の場合シリアル値に換算した値を入力します。
139度→139/24
59分→59/24/60
59秒→59/24/60/60
つまり
=139/24+59/24/60+59/24/60/60 が139:59:59のシリアル値になります
>>664
回答じゃないけど、そういう報告書みたいなのはWordで作ればいいのになぁ・・・
694名無しさん@そうだ選挙にいこう:04/01/30 19:05
CONCATENATE関数もまあ便利みたいですね。(今まで知らんかった)
&を使う以上の意味は特にないようですが、操作は楽です。(処理は&が速い?)
もちろん引数として、A1もCHAR(10)も使えます。
695名無しさん@そうだ選挙にいこう:04/01/30 19:14
>>693
確かに。
しかもセルを使うなら、文書の性質によっては意味があると思うが、
テキストボックスを使う意味が分からないです。
なんかみんな集まって、なに凄い事しているのかと思えば、
なんだ、たいしたもんだねカエルのションベンってヤツだコリャww
>>685
[思いつき]
セルの値は 文字列 ??:??:??:?? としておいて、別途
(1) この文字列を 1/100秒単位の値に変換する関数 STRTODEG(引数:文字列)と
(2) (1) の値を ??:??:??:?? 形式の文字列に変換する関数 DEGTOSTR(引数:数値) を
  ユーザ定義関数として作る。
計算に使う場合は STRTODEG(セル)で 数値に直すと、
加減乗除ができる。
結果はDEGTOSTR()で文字列としてセルに書戻す。
698名無しさん@そうだ選挙にいこう:04/01/30 21:19
>>690さん >>692の訂正だす
シリアル値の構造を説明したかったのですが、換算した値を入力するは
間違いです。入力は139:59:59.99でかまいません。
(数式ハバーには1900/1/5 20:00:00と表示されます)
この値は日時のシリアル値を利用しているので三角関数の計算に使う
場合には注意が必要です。加減乗除はそのまま使えます。
いま仕事で項目数のべらぼうに多いデータシートを作ってたんですが、
列数が最大のIV(255)まで来てしまいました。
行数もそれ以上あるので横にするわけにも行かないし…。
何とか拡張する方法は無いのでしょうか?
使っているのは2000なのでXpとかになれば解消出来ているのでしょうか?
どなたかご存知ありませんか?よろしくお願いします。

>>699
仕様です。
次のシートへ移動してください・・・・・・

つか、何かソフトの使い方が間違ってる気がするが・・・
リンクで他のブックからセルの情報をコピーで入力するときファイル名を変数にすることは出来ないでしょうか?
たとえばあるセルに ='0.xls'!$B$16 と入力します。その下のセルにオートフィルをかけたとき ='1.xls'!$B$16 
='2.xls'!$B$16というようにファイル名が変わっていくようにしたいのです。
バージョンは2003 OSは2000になります。
>>701
for-nextあたりでまわすのが手っ取り早いかと。
>>701
indirect関数使えばできるぞ。カラムヘッダーにシート名を入れておいてセルリファレンスと&で繋いでね。
704名無しさん@そうだ選挙にいこう:04/01/31 09:18
>>704
それだと、単に"='1.xls'!$B$16"等の「文字列」ができるだけでは?
705666:04/01/31 09:22
>684
これです!これがしたかったんです!
どうも有り難うございました!
706703:04/01/31 09:32
>>704
=indirect("セルリファレンスを表す文字列")つう使い方だよ、冴子先生に尋ねてみてね。
707名無しさん@そうだ選挙にいこう:04/01/31 11:16
ハイパーリンクを作る時に、セルを右クリックして登録するのではなくVBA等を利用してファイルをドラッグ&ドロップしたらそのファイルへのハイパーリンクが登録される。ってなことをしたいのですが、可能ですかね? 当方EXCEL2002,WinXP
708704:04/01/31 11:33
>>703
何となく分かった。
"=indirect()"の()の中で、&とか使ってセルリファレンスを表す文字列を作ってみ、
と言うことかな?
709666:04/01/31 11:35
すみません。また質問が…
共有しているファイルをリアルタイムでみれるように
自動更新みたいな設定にしたいのですが、どうすればいいですか?
データの更新という項目があるけど、やっても更新されないんですが…
>>707
昔ドラッグ&ドロップやったなぁ。
API。DragQueryFileだったか。
711704:04/01/31 12:07
>>703
参照そのものはできたのですが、リンク元のファイルが開いていないと#REF!
を返します。
数百のファイルを参照しているので、いちいち開くわけにはいかないんです。
何かいい方法があるでしょうか?
712703:04/01/31 12:16
>>711
あはは、それがindirectの欠点なのよね。相手ファイルの数が割と少なく参照先が多い場合なら
例えば列ごとに「置換」しちゃう手もあるけど、数百の外部ファイルを参照するような構造自体
言っちゃ悪いけど○×△□だと思うな。
713704:04/01/31 12:19
>>703
ぎゃふん
714704:04/01/31 12:21
(気を取り直して)
でも、まあそういう特別の場合は別にして、これはいろいろ使えそうです。
勉強になりました。
715707:04/01/31 12:23
>>710 すいません。もう少し詳しくお願いできますか?レベル低いんでわけわかめでつ。
716703:04/01/31 13:04
>>714
もう一点気をつけなくちゃいけないのはindirectを使った場合挿入・削除等で参照間の相対的位置関係が
変わってもそれが反映されないという点ですよ。これは少し面倒な方法で回避することが可能だし
一つのbookをばらして再編成するなどでは逆に役に立つテクニックですけど注意しないとドツボに
はまりますからね。
717名無しさん@そうだ選挙にいこう:04/01/31 13:57
教えてください。
数ヶ月前に作成したEXCELファイルにパスワードをかけたのですが、
すっかり忘れてしまい開けなくなってしまいました。
なにか良い方法はないですか?

Excel2000を使っています。
>717
ネギを喰え。
719703:04/01/31 14:16
>>717
鰯も良いぞ
>>717
あきらめてください。
パスワードが分からないのに開く事が出来たら、パスワードの意味がありません。
721703:04/01/31 15:12
722703:04/01/31 15:16
と思ったら駄目でした。チャンチャン
723名無しさん@そうだ選挙にいこう:04/01/31 16:09
>>703 うざい
>>717
有償だが、Excel Password Recovery というのがある。
http://lastbit.com/excel/default.asp
725名無しさん@そうだ選挙にいこう:04/01/31 21:28
A B
1 1
3 2
4 3
9 1
5 2
6 3

B列が「1」の行だけ抜き出してグラフ作りたいんですけど、
良い方法ありますか?
726名無しさん@そうだ選挙にいこう:04/01/31 21:46
>725
オートフィルターでB列の1を選択して、PF11を押下する
727701:04/01/31 21:47
>>702,702
有難うございました。頑張ってやってみます。
728725:04/01/31 21:58
>>726
出来ました。有難うございました。
複数sheetの同一セルにある数字(や文字)の個数は
どうやってカウントすればいいんですか?
countifでできると思ったらエラーになりました。

要するに回答欄に1が何個書かれているか2が何個書かれているか
カウントしたいんですが
730729:04/02/01 00:33
串刺し計算(統合)では算術計算ができるだけなんですね
複数sheetの同一セルにある数字(や文字)のカウントはどうすれば?_?
731名無しさん@そうだ選挙にいこう:04/02/01 01:18
さきほど出てきたindirect関数を使えば、
複数シートの同一セルを同一シートの複数セルに展開するのは簡単にできそうですね。
同じフォーマットの別シートにダイレクトに集計するのは難しそうです。
3D参照でも、使える関数は限られていますし。
732名無しさん@そうだ選挙にいこう:04/02/01 01:44
ある一つの数値がわかっている場合に、
それが複数のどの数値の合計かを割り出せる関数はあるでしょうか?
A列に20〜40ほど数値があって、そのうちいくつか(不明)の数値の合計なのは確かですが、
どの数値の合計か手計算で探しだすのは大変だなぁと思ったのですが。
無理なら無理ということが知りたくてご相談します。よろしくお願いします。
733名無しさん@そうだ選挙にいこう:04/02/01 02:00
質問です。 下のようなデータで、それぞれの値の比を求めたいのですが、どのような式でできますか?
 A1に対応したB1の値を、そのほかそれぞれ。
 使う計算式は、Bの列の値=20*LOG(Aの列の値/400) ですが、どんな式を打ちこめばいいか教えて下さい
 
  A    B
1 200
2 212
3 333
4 323
734733:04/02/01 02:08
>>733 やってるうちに自己解決しました。ごく単純な思いこみですいませんでした。
>>732
sheet上で計算させてるなら簡単なんだけどね。
関数云々よりも、ゾルバーとか使うしかないんじゃないかな?
剃る婆
737名無しさん@そうだ選挙にいこう:04/02/01 08:40
>>732
前スレの17〜19あたりに同じ質問があった
いろんな解決策が出てたよ
738名無しさん@そうだ選挙にいこう:04/02/01 11:24
>>729
もう少し具体的に書くと、
たとえばsheet1からsheet8のa2からa10にデータがあるとする。
sheetXのA列からH列の項目名をsheet1!〜sheet8!として、
=indirect(a$1&etc.)で、sheet1!a2,sheet2!a2等々を参照できる。
etc.の部分は、address(row(),column())を適当に工夫すればよい。
複数列に展開したものを1列から参照する場合も、範囲指定に
indirect(address(row(),column()):address(row(),column()))を使用できる。

ほかにもっと良いやり方があるかも知れないけれど。
739名無しさん@そうだ選挙にいこう:04/02/01 11:29
訂正
a2からa10に→a2に

もちろん、この式をコピーすればa10でも何でも行けるという意味。
740732:04/02/01 13:20
>>735,737
こういうことも可能なのですね!
ありがとうございます。
調べてみます。
>>729
[串刺しカウントのユーザ定義関数]
(1) [ALT] + [F11] で VBA エディタを開く。
(2) 挿入→標準モジュールを選択。
(3) プロジェクトに Module1 が追加される。
(4) ダブルクリックして、下記のコードをコピペ。
(5) VBA エディタを閉じる。
(6) 集計用に新シートを作って、TOTAL という名をつける。
(7) セルに集計指示を書く。セルは " " で括る。
  = KUSHI("セル",カウントする値)
  カウントする値が数値のときはそのまま、文字列のときは " " でくくる
  (例) =KUSHI("A1",7) ← A1セルが 7 である個数を数える。
  (例) =KUSHI("B3","MA") ← B3 セルが "MA" である個数を数える
(8) ユーザ定義関数は「自動計算」の対象にはなっていないので、
  値を変えたときは、そのつど「手動更新」してください。

Public Function KUSHI(Target, Hikaku)
Dim i As Long
Dim Counter As Long
Counter = 0
For i = 1 To Worksheets.Count
If Sheets(i).Name <> "TOTAL" Then
If Sheets(i).Range(Target).Value = Hikaku Then
Counter = Counter + 1
End If
End If
Next i
KUSHI = Counter
End Function
742名無しさん@そうだ選挙にいこう:04/02/01 14:29
>>741
=KUSHI("A1",7)という式は、結局絶対参照なので、
セル毎に引数を書き換えなければならない。
このままでは、実用的にどうか。
どうせなら、関数の貼り付けられたセル位置に応じて"Target"を取得するとか。
743741:04/02/01 15:40
>>742
Excel97 なのですが、Function の引数として
Target As Excel.Range でセル位置が取得できなかったのよ。
744709:04/02/01 15:57
Excelでこういう機能は無理でしょうか?
どなたか教えて下さい。
>>744
HELP で「共有」「ブックの共有」などを
調べましょう。
746名無しさん@そうだ選挙にいこう:04/02/01 16:26
エクセルファイルを開いたままサスペンドモードになって復帰後にカーソルの十字が
白色から緑色に変わってしまうのは漏れだけでしょうか?
ちなみに、Excel 2000 9.0.6926 SP-3です
>>746
97だけど、ならない。
748名無しさん@そうだ選挙にいこう :04/02/01 18:29
エクセルを開いた時に出てくる一番上のタイトルバーが表示されなく
なってしまいました。

現在、一番上にメニューバーが表示されているんですが、これは
どうやったら初期に直りますか?

よろしくお願いします。
>>748
表示→全画面表示
750名無しさん@そうだ選挙にいこう:04/02/01 19:11
>749

直りました!!!
ありがとうございました!!!
751名無しさん@そうだ選挙にいこう:04/02/01 22:01
テキストボックスの削除はどうしたら良いのでしょうか?
OSは98SE、EXCELは2000です。よろしくお願いします。
>>751
デザインモードにして テキストボックスを右クリック>切り取り
753名無しさん@そうだ選挙にいこう:04/02/01 22:16
クリップボードに余計なのが溜まると、不便なときもあるので、
切り取りするより、DELETEキー押したほうがいいと思う。
754751:04/02/01 22:20
>>752-753
ありがとうございます。が、削除キーで消えません。その他の頁の同じ位置に
あるテキストボックスは消えたのですが、その頁の物だけが消えません。
テキストボックスがある範囲を行削除しても消えません。同じ位置に
もう一個テキストボックスを重ねてみましたが、これは普通に消す事が
出来るのに、、、、、何らかの保護がかかっているのでしょうか、、、、
>>751
なんだか分からんがシートごと削除したらいんでね
756753:04/02/01 22:43
>>754
テキスト編集モードになってるんでは?
カーソルがチカチカしてると消えないよ。
テキストボックスの枠線辺りを一度クリックして
カーソルがなくなってからデリート押してる?
図形描画ツールバーの中の
マウスカーソル型アイコンクリックすれば
図形選択モードになるから

その状態でテキストボックスをバシシ
758751:04/02/01 22:51
>>755-757
うーん、やはり消えません。メールで何度も転送したり、バージョンの違う
エクセル間でやりとりしているのがいけないのでしょうか、、、、
とりあえず、枠線を消してサイズを小さくして、いらない頁の片隅に放り込んで
急場はしのぎました。引き続き、いい知恵があれば、賜りたく、、、、
>>758
だけんシートごと消せ!
760名無しさん@そうだ選挙にいこう:04/02/01 23:55
>>732
↓のページでどうでしょうか。
ナップザック問題をExcelで解く
http://www.geocities.co.jp/SiliconValley-Oakland/8139/

分からなかったら再度質問するか、このページの作者にメールして下さい。
761教えてください。:04/02/02 00:40
質問ですが、
保存していたファイルを開いたら、
計算した数字は出てきているのですが、
関数がセルをクリックしても見れなくなって
いるのですが、どうしてでしょうか?
excel2000でユーザー定義関数内にfind(←この場合メソッドっていうのかな?)を
使うのはダメですか?
XPだと、見つけてくれますが、2000だと見つけてくれません。
ちなみに関数ではなくマクロにすれば、ちゃんと見つけてくれるので、
現在は、マクロとして使っていますが・・・。
ですので、緊急性も無いし困っているという程でもないのですが、
ホントは使えるのかどうなのか・・・私のレベルが低いから使えないだけなのかどうなのか・・・
そこのところを知りたくて。
>751はひょっとして
コントロールのテキストボックスじゃないのか?
だったらデザインモードでないと消えない。

>761
保護がかかってる。
>>762
やってから聞けばいいのに・・・・・。

それより、
>XPだと、見つけてくれますが、2000だと見つけてくれません。
の部分の意味が分からん。
>764 おぃぉぃ
766名無しさん@そうだ選挙にいこう:04/02/02 10:19
石が飛んできそうだが(笑)都道府県問題

都道府県のリストを作っておいて、「都道府県」とか範囲名をつけておく。
A1に住所が入っている。

=IF(COUNTIF(都道府県,LEFT(A1,3))=1,LEFT(A1,3),IF(COUNTIF(都道府県,LEFT(A1,4))=1,LEFT(A1,4),0))

都道府県名が書いていなかったり、字が間違っていたら、0になる。
これで本当におしまい。
767名無しさん@そうだ選挙にいこう:04/02/02 11:17
2000を使用しています

自分が普段使う画面ズームの倍率を、ユーザボタンにする、という事はできないのでしょうか?
ズームのボタンはあるけど、いきなり200%になってしまうので不便です。
200%程大きくならなくてもいいから、ちょっと拡大したい、という時に、いちいちズームの倍率を手入力するのは
面倒なので・・・

無理でしょうか?(´・ω・`)
>>767
VBA使え
769名無しさん@そうだ選挙にいこう:04/02/02 11:33
>>768
初心者で、VBAは見よう見まねで作れるんですが、それをショートカットキーに設定する方法が
判らないんです・・・(´・ω・`)
>>769
↓にかいてあるマクロを標準モジュールにコピペして保存してからブックを開き直すとか
(personal.xlsに組み込むのは任意で)
http://www001.upp.so-net.ne.jp/excel/personal/personal2.htm
>>769
ホイールマウスを使ってるなら、ctrlキーを押しながらコロコロすると
拡大縮小するでよ。
>>762
エクセルで用意されている関数をマクロから使うには
WorksheetFunction.を付けるのでつよ。
773767&769:04/02/02 12:59
>>770
マクロ組み込みました!
アリガdですた!

>>771
ホイールマウスだと、100%までしか拡大してくれないので困ってたんです。
でも、解決したようです。
アリガdですた!

774名無しさん@そうだ選挙にいこう:04/02/02 15:14
アンケートで各項目について4段階評定ををしてもらったデータ処理についてなんですが、

   Q1  Q2  Q3
a   4   3   2
b   3   3   3
c   3   4   2
d   4   4   2
e   4   3   3
f   3   2   3

abc…は回答者サンプルでQがアンケート項目、
これについてピボットテーブルを作成してから
バブルチャートで表示する方法がうまくいきません。

現在のバブルチャートでは
X軸に4段階の目盛りとY軸に度数が表示されてしまいます。
私がバブルチャートで表したいのは
横軸、縦軸ともに4段階の目盛りで
クロス集計表を表すバブルチャートを表示したいのですが、
どうすればいいんでしょうか?

775名無しさん@そうだ選挙にいこう:04/02/02 15:15
すいません、今グラフを大量に整理しているのですが
グラフの縦横の幅がまちまちになってしまい
見栄えが悪くなり困っています。
一括で整形できるようないい方法はないでしょうか…。
776名無しさん@そうだ選挙にいこう:04/02/02 16:12
>>775
オブジェクト(=グラフ)を全部選択した上で、大きさを揃えるマクロを組んでおいて実行・・・かな?
漏れはその位しか思いつかない・・・スマソ
777名無しさん@そうだ選挙にいこう:04/02/02 16:21
なるほどー、やっぱマクロ組むしかないっすか…。
初心者なんで1から勉強します(´・ω・`)
778774:04/02/02 16:59
自力でできました。
が、めちゃくちゃめんどくさかったです。
779名無しさん@そうだ選挙にいこう:04/02/02 17:35
AやBのセルに書いたときに右にスクロールすると見えなくなります。
これを右にスクロールしても画面からはずれないようにするには
どうすればいいのですか?
780名無しさん@そうだ選挙にいこう:04/02/02 17:36
VBAProjectの保護(プロジェクトを表示用にロックする)は
(ツール→VBAProjectのプロパティでの保護)VBAでコード
にできますか?
手でやるしかないですか?
781779:04/02/02 17:36
バージョンは2002です。
782名無しさん@そうだ選挙にいこう:04/02/02 18:19
>779 ウインドウズ枠の固定 または 分割
>>779
列単位に表示を固定したいなら、固定したい列を選択して
「ウィンドウ」→「分割」をやった後、「ウィンドウ」→「ウィンドウ枠の固定」
を実行

やり方は他も一緒
・行単位だったら行を選択〜
・行列固定したいなら固定行列が交差したセルを選択〜
784名無しさん@そうだ選挙にいこう:04/02/02 18:24
Excel97を使っています。
ある商品の重量を20個測定し、その中から
100グラム以上
100〜90グラム
90〜80グラム
80〜70グラム
70〜60グラム
60グラム未満
のそれぞれの個数をカウントしたいのですが、どのように
式を書いたらいいのかわかりません。
どなたか教えて下さい。

試しに
=COUNTIF( B5:B24 ,(<100) * (>=90) )
などとしてみたのですが、エラーになってしまいました。

>>784
アドインの「分析ツール」の中にヒストグラムがあるからそれで。
ヘルプにも乗ってた気がする
786784:04/02/02 18:34
>>785
アドインが必要なんですね。ありがとうございます。
787784:04/02/02 18:40
いまヒストグラム使ってみました。
計算された結果が数値データとして出力されるんですね。。。

これは式で書く事はできないのでしょうか。
毎回分析ツールのヒストグラムを実行しないとならないのかな。。。
もう少しだけお知恵を拝借させて下さい。
789名無しさん@そうだ選挙にいこう:04/02/02 18:50
>>784 >>787
複数条件のデータ抽出は =DCOUNT を使えばできる
790名無しさん@そうだ選挙にいこう:04/02/02 19:01
>>784 こんなのもできるよ
=COUNTIF(B5:B24,"<100")-COUNTIF(B5:B24,"<90")
=COUNTIF(B5:B24,"<90")-COUNTIF(B5:B24,"<80")・・・・・

>>783 正しいですか?
>>784
縦横の表にしてみては?

B1:60 C1:70 D1:80 E1:90 F1:100
A2から下に重量データ
B2:=IF($A2<B$1,1,0) B列にコピー
C2:=IF(AND($A2>=B$1,$A2<C$1),1,0) C〜F列にコピー
G2:=IF($A2>=F$1,1,0) G列にコピー

これで各データが属する階級の列が1になるので、
あとは縦方向に合計を出してやればいい。
792名無しさん@そうだ選挙にいこう:04/02/02 19:46
↑困った子だね、しっかりしなさい。
793763さん:04/02/03 00:22
ありがとう。わかりました。
それで、保護はどのように解除すればよろしいのでしょうか?
>>793
それくら調べろよ
795名無しさん@そうだ選挙にいこう:04/02/03 02:56
はい。
なんかワロタ
797685:04/02/03 11:11
>685が、解決しますた!!!
【原因】NT5.0のintl.cpl(地域のオプション)で、日付区切り記号を"."に変更してた為
【対策】","に変更後、139:59:59:999がシリアル値として入力出来る様になりました
そういえば、NSW2002のサポートが
年末終わりましたな・・・
Excel2000 Osは98です。

(c2*d2)+(c3*d3)+(c4*d4)・・・
という風に、積の合計を出したいのですが、
どういう風に式を書いたらよいか、よろしければ教えて下さい。
800799:04/02/03 11:52
すみません。
SUMPRODUCTで解決いたしました。スレ汚し失礼しました。
801798:04/02/03 12:03
誤爆・・・スマソ
802名無しさん@そうだ選挙にいこう:04/02/03 14:13
excel2000 WindowsXPです

次のような6枚のシートにまたがる6x約500人のデータのうち氏名ごとに大きい値
のもの四つを取り出して合計を出すという作業をしたいのですがどのようにすれば
いいでしょうか.

単純に合計を出すには統合を使えばいいのは分かったんですが,このような標準
的ではない計算をするにはどのようにすればよいかどうかまったく分かりません

氏名 Sheet1 | Sheet2 Sheet3 Sheet4 Sheet5 Sheet6
佐藤 17 | 16 11 18 16 18
山田   11 | 10 x 12 11 10
鈴木 7 | 6 9 x 10 x
 ・
 ・
 ・
(約500人)

実際のシートにはシートごとに氏名と数値および他のデータも入っています.また
x印はそのデータが氏名ごとないことを示しています.つまり人数はシートごと
に異なっています.



佐藤  [18+18+17+16=]69
山田  [12+11+11+10=]44
鈴木 [10+9+7+6=]32
      ・
      ・
      ・
という結果が最終的に欲しいのですがよろしくお願いします.
803802:04/02/03 14:17
>>802
> 氏名 Sheet1 | Sheet2 Sheet3 Sheet4 Sheet5 Sheet6
> 佐藤 17 | 16 11 18 16 18
> 山田   11 | 10 x 12 11 10
> 鈴木 7 | 6 9 x 10 x
>  ・
>  ・
>  ・
> (約500人)
>

すみません 表がずれましたけど 一つ目の数値がsheet1 二つ目がsheet2 三つ目が3....です.
>>803
LARGE関数のヘルプ見れ
805名無しさん@そうだ選挙にいこう:04/02/03 14:51
Excel2000です

各シートの1〜5行目の内容を、新規シート(又はファイル)にはき出す、というのは、VBA組まないとできないでしょうか?
806803:04/02/03 15:03
>>804
どうもありがとうございます

large関数を使うにはデータが一枚のシートになっている必要があると思うのですが,
項目の異なるシートを一枚にするにはどうすればいいんでしょうか?

あるいは複数のシートにそのままでるのでしょうか?
>>806
もっとスマートな書き方あるかもしれないけど
各シートB1に佐藤さんのデータがあると仮定してこんな感じでできると思う
=LARGE(Sheet1:Sheet6!B1,1)+LARGE(Sheet1:Sheet6!B1,2)+LARGE(Sheet1:Sheet6!B1,3)+LARGE(Sheet1:Sheet6!B1,4)
808名無しさん@そうだ選挙にいこう:04/02/03 16:01
グラフの種類の株価の一番左上グラフの

高値 安値 終値→最大値 最小値 平均値と見立てて

さらに、平均値を折れ線でつないだグラフがつくりたいんですけど
どうすればいいのでしょうか?

>>805
新シートの各セルに
=Sheet名!セル でぺたぺた貼りつけていくのじゃダメなの?
810805:04/02/03 16:50
>>809
ファイル数が100以上あって、一つのファイル辺りシートが20〜30ある、という代物なので・・(´・ω・`)

とりあえず社内のVBAの得意な人が対応することになりました。
アリガd
B100がNULLならB99、B99がNULLならB98・・・と、100ほど見て行き、
NULLでない値をセルに表示させる場合はどのようにすればいいでしょう?
IFのネストは7つまでしかできないし・・・
812803:04/02/03 19:27
>>807
なるほどlarge関数は複数シートに使えるのですね.
ありがとうございます. 

ただ,シートごとに人数が違うと書いたように,
佐藤さんがすべてのシートにあるとは限らないのです.
(ただし,同一シートに複数の同じ氏名の人はいません)
813812:04/02/03 19:36
>>802の表ではx印のところが,そのシートにその氏名が存在しない
(もちろん数値も)ことを示しています
814ひろろpc ◆M0i27MQ8U. :04/02/03 19:57
2つ質問です
確率何パーセントという計算はどうしたら良いでしょうか
VLOOKUPで二箇所以上を参照するにはどうするんですか
>>812
じゃあ、まずは>>802のような表を7枚目のシートに作るところから
始めれば?規則性があればシートごとの個人の値を並べるのも
関数でできるでしょ。
規則性が無ければ、そもそも関数やマクロで集計することが無理。
あきらめて手作業でやったほうが早いね。
816ひろろpc ◆M0i27MQ8U. :04/02/03 21:20
>>814バージョンは2002です
817812:04/02/03 21:26
>>815
そうですねぇ それを行うことが問題だったんですよ
それはvlookup関数でするんですよね 多分
図書館でも本を借りてきたりしてちょっと分かってきました

表集計ソフトを使ったことがなかったので四苦八苦しながら
やってます

多分VBAなんか使えば余計なことを考えないでいいんでしょうが
シートの値の参照の仕方さえ分からないのでなかなか大変です

818ひろろpc ◆M0i27MQ8U. :04/02/03 21:40
あの確率計算の方法はたとえば10回中3回当たったので何パーセント
というやつです
>ひろろpc ◆M0i27MQ8U
1.確率計算の方法 : 算数を勉強しなおしな

2.VLOOKUPで二箇所以上を参照
LOOKUP系の関数は1つの検査値に対して同じ並びの値を
返すものだから出来ないね。
820名無しさん@そうだ選挙にいこう:04/02/04 00:00
>803
シート毎のセルのアイテムがすべて同じならば、
アクセスに取り込んで、クエリーで名前のグループ集計するのが早い
>>811
あまり汎用性はありませんが、

(1) [ALT] + [F11] で VBA エディタを開く。
(2) 挿入→標準モジュールを選択。
(3) プロジェクトに Module1 が追加される。
(4) ダブルクリックして、下記のコードをコピペ。
(5) VBA エディタを閉じる。
(6) セルに関数を書く。
  = NotNull(調べ始める最初の行)
  例では100行めから上に見ていく。
  [例] =NotNull(100)
(7) B列以外を対象としたいときは
  Range("B" & i) の "B" を "C" とか "AC" とかにする。
  2ヵ所とも変更すること。

Public Function NotNull(Start As Long) As Variant
Dim i As Long
For i = Start To 1 Step -1
If Range("B" & i) <> "" Then
Exit For
End If
Next i
NotNull = Range("B" & i).Value
End Function
>>812
500人×6枚程度なら、1枚のシートにまとめて
名前で SORT してから考えれば?
>>814
意味がわからん。確率の定義を知りたいのか?
具体的に何をしいのか書かないと誰も答えられないよ。
たぶんアレだ、814は意味も分からず質問してるんだ。
つまり、vlookupの意味も知らないし、百分率も知らないヤツなんだ
826812:04/02/04 03:01
>>822
項目数が異なるシートをまとめる方法を教えて欲しいのです
シートの統合でできる作業であれば簡単なのですけど・・・
>>826
集計に必要なデータのある列以外を削除してから、一つのシートにコピペすればいいだけじゃない?
828812:04/02/04 03:10
>>820
ありがとうございます アクセスは97しかもってなくってインストールしてないので
エクセルでどうしてもできそうもなければアクセスでやってみます
829812:04/02/04 03:32
>>827
>>802>>812で書いたように人数自体が違うのです
実際には約500人ですがここでは5人にして書くと次のようなシートが6枚あるわけです

Sheet1(5人)
氏名 数値
佐藤 17
山田 11
鈴木 10
前田 16
加藤 19

Sheet2(4人)
氏名 数値
佐藤 18
鈴木 11
前田 12
加藤 18

Sheet3(4人)
氏名 数値
佐藤 15
山田 11
前田 16
加藤 20
830名無しさん@そうだ選挙にいこう:04/02/04 05:17
普段は関数で自動的に入力し、
たまに直接入力する必要があるんですが
この関数を消さない方法ってないんですか?
>>812
822さんが言ってる通りにまずはやってみたら?
今まで出たアイデアをまとめれば、方針としては

1.>>822さんの方法で全ての名前のリストを作成
2.Vlookupで各シートごとの点数を表示
  A列に名前のリスト、B列に1枚目のシートでの数値、C列に2枚目、以下略
  あんたが最初に提示した形式だね
3.Large関数を使って上位4項目を集計

のようにすればいいんじゃないでしょうか?
それとも、馬鹿っぷりを晒して完全な答えを書いてもらえるまで粘着しますか?
頭悪すぎ。
832811:04/02/04 09:59
>>821
VBAッスか・・・やっぱり関数じゃ無理ぽいですか・・・
ともあれ、丁寧にご解説いただきありがとうございます。
>>832
B1:B100を対象にするとして、データが詰まって入力されている
(途中に空白が無い)場合だったら、最後の位置のセルから
B1:B100の中の空白セルの個数分だけ上に移動したセルを
返せばよいので、こんな感じ?途中に空白あったらアウト。

=OFFSET(B100,-COUNTIF(B1:B100,""),0)
834名無しさん@そうだ選挙にいこう:04/02/04 10:37
>>831
あのー802さんが書いてるのもう一回ちゃんと読んだ方がいいと思いますよ
何回も書いてるのに全然理解してないじゃないのはあなただと思います
日付書式で曜日まで出す方法はないですか?
>>835
yyyy"年"m"月"d" ("aaa")"ってな感じ
日が消えてた・・
yyyy"年"m"月"d"日 ("aaa")"
838名無しさん@そうだ選挙にいこう:04/02/04 10:45
Excel2000です
#N/Aの項目の値を0にする一番簡単な方法はなんでしょうか?
>それとも、馬鹿っぷりを晒して完全な答えを書いてもらえるまで粘着しますか?
>頭悪すぎ。

ここも殺伐としてきたな。
>>838
=IF(ISERROR(計算式),0,計算式)
841838:04/02/04 11:05
>>840
ありがとうございます
842835:04/02/04 11:09
>>837
ありがとうございました。
843名無しさん@そうだ選挙にいこう:04/02/04 12:09
Excel97です。

VBAで新しいブックを開いてSheetをコピーして
セルの値でファイル名で保存できたのですが
その新しいブックに標準モジュールもコピーしたいのですが
VBAでどうやるか教えテクださい。
844名無しさん@そうだ選挙にいこう:04/02/04 12:27
ThisWorkbook_SheetChangeでいくつかSheetがあるのですが
どのSheetが変更されたかVBAで得て処理する方法は
どんな感じでしょうか?
>>844
Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
引数の Sh がシートオブジェクトだから、Sh.Name でシート名が参照できる。
2000初心者です。
時刻であるhhmmssをランダムに表示する方法はRAND関数使えばいいと思いますが、
時間のみhhを指定して、mmssのみランダムで、
別のセルにhhmmssを表示させる方法はありますか?

     A      
1    乱数 
2  乱数をmmss表示(仮に3451だとすると)
3  指定時間を入力(例えば15時の場合は 15)
4  153451  ←結果

 理想はこうなるといいんです。最終的にA4をコピペしたいので。
A3に好きな時間を入れられるようにしたいのですが、
こんなのって無理ですかね??
847名無しさん@そうだ選挙にいこう:04/02/04 15:04
>>846
結果を日時データとして欲しいのか、ただの数値として欲しいのか
良く分らない。
エクセルでの日時の扱い方(シルアル値)を理解してから
質問やり直してね。
ただの値として(時刻のみを固定した)6ケタの数字が欲しいのみです。
結果はメモ帳にコピペしてくだけなので。
=A3 & 0〜59の乱数1 & 0〜59の乱数2
850名無しさん@そうだ選挙にいこう:04/02/04 15:17
>>846
     A      
1    乱数 
2  =A1*"1:00:00"
3  指定時間を入力(例えば15時の場合は 15)
4  =A3&TEXT(A2,"mmss")  ←結果
851名無しさん@そうだ選挙にいこう:04/02/04 15:19
>>846
A4 =TIME(A3,0,0)+A1/60
表示形式は hhmmss
ありがとうございます!できました^^感謝^^
853名無しさん@そうだ選挙にいこう:04/02/04 15:54
VBAで計算結果を小数点以下第一位を四捨五入して
結果ゼロの場合1にする方法どうするる?
>>853
「VBA 四捨五入」 でぐぐってみれ
あとはif文でなんとでもなるだろ
855名無しさん@そうだ選挙にいこう:04/02/04 16:50
856名無しさん@そうだ選挙にいこう:04/02/04 17:05
番号 氏名  質問A 質問B 質問C 質問D
1   Aさん   1   エ          4
2   Bさん   3   ア    1     2
3   Cさん   2   ア    3     
4   Dさん   1        2     3
5   Eさん   2        2     2



というようなデータが500件ある(というか,いまから400件入力
するのですが)のですが,各質問ごとの回答の頻度を集計する
にはどのようにすればよいのでしょうか.
(例えば,質問Aなら「1」が20回,「2」が30回,,,空白が10回の
ような感じです)
>>856

COUNTIF関数

セルの条件付き書式設定で

// コメントです

みたいなコメント文のときや

<html>

みたいなタグの時に文字色や背景色を変化させたいのですが
半角記号のためかうまく行きません。
どうすればいいでしょうか?
859名無しさん@そうだ選挙にいこう:04/02/04 21:13
VBAで標準モジュールのコピーはどうやる?
ブック毎コピーするしかない?
860名無しさん@そうだ選挙にいこう:04/02/04 22:46
質問です。

A1に入力した数値をB1で 関数ROUNDDOWN(A1/2,0)を使って算出。
C1にはB1ででた数値の(仮に5555とする)100の位から切り捨てて
5000にする。

このときにC1に入力する計算式を教えて下さい。
よろしくお願いします。
A1からB1への流れを書いた意味が分からんw
>>860
ROUNDDOWN関数の2番目の引数を色々変えて試してみれ
863860:04/02/04 23:38
>860
2番目の引数というのがよくわからないのですが
C1にもROUNDDOWN関数を入力するのでしょうか?

C1にROUNDDOWN(B1,100)とか入れてるんですけど
うまくいかないです。
せっかくヒントを下さったのに申し訳ないです。
>>863
ヘルプでRoundDownを見てみれ。
そこ、100なんか入れるところか?
865名無しさん@そうだ選挙にいこう:04/02/05 00:22
>>859
えくすぽいんぽ
866名無しさん@そうだ選挙にいこう:04/02/05 11:00
すみません。質問です。
formのtextbox内で改行した文章をセルに入れると改行した部分にかならず
「・」(改行文字?)が入ります。
これを回避する方法はないですか?


 cells(1,1) = textbox1.text

 セルには

あいうえお・
かきくけこ
 
 と表示。
867名無しさん@そうだ選挙にいこう:04/02/05 11:38
>>866
それって改行コードが表示されているんだよね
改行しなきゃ出ないよ・・・
改行の代わりにスペースを入れるとか、そういうのじゃダメなの?
868名無しさん@そうだ選挙にいこう:04/02/05 12:02
>>866
そのケースに当てはまるかどうか分かりませんが、
セル内で改行すると、自動的に書式設定が「折り返して全体を表示する」になり、
そのチェックを消すと、「・」(改行文字?)が表示されます。

あいうえお・
かきくけこ

の場合、書式設定はどのようになっているでしょうか?
869866:04/02/05 12:07
>>867
レスありがとうございます。
出来れば改行したいんですよねぇ
例には「あいうえお」とか書いてますが、箇条書きのような形のものがはいります。

やっぱムリかぁ...
870866:04/02/05 12:12
>>868
確かにセルに直接入力で改行して「折り返して全体を表示」の
チェックを外すと「・」が表示されます。
が、textboxへの入力をセルへ代入?し「折り返して〜」のチェック
を外すと
(チェック外す前)
あいうえお・
かきくけこ
(チェック外した後)
あいうえお・・かきくけこ

となってしまいます。
改行コードが2回はいってるのかな?
フォームの改行コードはCRとLF、セルはLF。
フォームからセルへ転記する場合はvbCrを削除する。
>>866
cells(1,1) = Replace(textbox1.text, vbLf, "") でどう?
873866:04/02/05 12:43
>>871
やはり二つのコードがあったのですね。

>>872
やってみましたが、「Replace」のfunctionが定義されていませんとでました。

なんとなく意味合いはわかりました。
とりあえずvbLfを削除ですね。
がんがってみます。

初心者でも申し訳ありませんでした。
どうもありがとうございました。
>>873
Excel 97 だと Replace は使えません。
Excel 2000 以降は使えます。
875866:04/02/05 14:11
結果。できました。

>>874
なるほど。確かにこちらExcel97です。

最終的にReplaceつかってます。
872氏の記述のままではできなかったのですが、
Helpで調べてなんとかなりました。

vbCrの削除でしたね。
ほんとありがとうございました。
876名無しさん@そうだ選挙にいこう:04/02/05 15:03
質問させてください。
OS:2000
EXCEL:2000

グラフを作成して線の種類を点線や破線にしても、きれいな縦線、
あるいは横線でなければ線の太さを問わず実線同様に表示されて
しまいまし。
これを解決するような手段はないのでしょうか?

もしそのような手段がないとしても、白黒印刷しても散布図など
のデータが区別できるようなアイデアがあれはよいのですが、
お答えいただけるのを待っています。
877名無しさん@そうだ選挙にいこう:04/02/05 15:37
WinNT4.0
Excel97

Excelからノーツメールで配信できる?
>>877
何をしたいのかイマイチ分からんが。

添付ファイルとして送るって事か?
879名無しさん@そうだ選挙にいこう:04/02/05 16:13
Excel2000 Win98SEです。

   A   B   C
1 山田  高   鼻
2 佐藤  低   耳
3 田中  中   指

というリストがあって、これらの順番を入れ替えたりするのですが、
コピー(カット)&ペーストをする時に必ず「山田 高 鼻」をセットで使いたいのです。
イメージとしては図形のグループ化のような感じです。
気を付けていても繰り返しているうちに「山田 中 指」となってしまう事もあるので、
そうならないようにするにはどの様な方法があるでしょうか?
>>879
入れ替える前にコピペしてやれば良いだけでは?
881876:04/02/05 18:09
すみません。
さきほどの問題をもっとよく調べてみたら、斜め線のときがだめなのでは
なく、データ数が多いときはだめだということがわかりました。
どうやら、データが存在する座標においては必ず線があるようにする機能
が働いているようです。
この機能、やめてちゃんと点線にしてもらいたいのですが、解決法を知っ
ている方いますでしょうか?
>>879
セルを三つ選択するのではなくて、
行番号をクリックして行ごと選択してから
コピペする。
883名無しさん@そうだ選挙にいこう:04/02/05 18:42
Excelxpで作った何ら特殊なことをしていない表データは
Excel98・95で読み込んであつかえますか?

OSは
Excelxpはwinxpで
Excel98・95はwin98・win95
884名無しさん@そうだ選挙にいこう:04/02/05 19:56
>>878
そう、定型文つけて、アドレスと添付ファイルのパスより
VBAで自動送信。
885名無しさん@そうだ選挙にいこう:04/02/05 20:51
質問です。

マクロを動作させる「ボタン」をワークシートに貼り付けたいとき、
ツールバーのメニューから

・「フォーム」 → 「ボタン」
・「コントロールツールボックス」 → 「ボタン」
という、
一見ソックリだけどそれぞれ別の用途のボタンがあると思います。
前者はいわゆる「マクロ」のために使うボタンで、
後者はActiveXをどうさせるためのボタンです。

困っているのは
後者のActiveX版のボタンを、MAC版のエクセルで使用したいのですが
ツールバーの中に
「フォーム」はあるのですが、「コントロールツールボックス」がありません。
これは
「MAC版のエクセルではActiveX機能は使えません。」という意味なのでしょうか?
それとも別の名前で同機能があるのでしょうか?

MAC版ということもあって詳しい方のご指導を受けられず正直困っております。
どなたか、ヒントでも構いませんのでお返事をお願いいたします。
886名無しさん@そうだ選挙にいこう:04/02/05 21:05
どなたか教えてください

例)1. test!C3+test!D3+test!3+E3 ←これはOKだが
   
   2.test!SUM(test!C3:test!E3)+B4 ←これはだめらしい

例2のように 別のファイルの
C3からB3を足したいのですが 

例1以外のやり方はないでしょうか?(簡単に+方法)



887名無しさん@そうだ選挙にいこう:04/02/05 21:08
上修正

例)1. test!C3+test!D3+test!E3+C3 ←これはOKだが
   
   2.test!SUM(test!C3:test!E3)+C3 ←これはだめらしい

例2のように 別のファイルの
C3からE3を足したいのですが 

例1以外のやり方はないでしょうか?(簡単に+方法)
エクセルで作った表をjpg、gif等に変換したいのですが、
どうやればよいのでしょうか?
>>885
ActiveXはwinのみです
>>886
ヒント:数式配列
891753:04/02/05 22:06
>>887
=SUM(test!C3:E3)+3
で行けると思うけど。

>>890
どこに配列数式を使うの?
892753:04/02/05 22:11
あ、間違えた。
わかると思うけど、最後「+C3」ね。
>>888
適当な大きさに表示させてから
[ALT] + [PrintScreen] でクリップボードにコピーして
画像ソフトで編集・保存。
894名無しさん@そうだ選挙にいこう:04/02/05 23:09
>>889
判りました。
残念ですが諦めます。
895名無しさん@そうだ選挙にいこう:04/02/06 00:06
質問です

EXCEL2002 WINXP

累積実績を求めたいのですが
どの関数を使えばいいのか分りません
教えてください
>>895
累積実績ってなに?

聞いた感じでは足し算すれば出る気がするが。
もうちっと具体的な質問にしないと、
先生チェックが入って荒れるぞ。
897名無しさん@そうだ選挙にいこう:04/02/06 08:39
すいません、ちょっとお聞きしたいのですが…
今、出力データを正規分布で表現させようとしているのですが
要素数があまりに膨大だったために
本来
-255 -128 -128 -127 -5 0 0 0 0 125 188 …
と出すところを

-255 1
-254 0
-128 2
-127 1 ・・・

と「○○がいくつ」、と言った感じに出力しました。(csvで,区切りです)
何とかこの状態から正規分布を作り出す方法はないでしょうか
使用しているのは
excel2k winXPです

教えてください。
898名無しさん@そうだ選挙にいこう:04/02/06 09:35
数式とかまったく関係ないのですが教えてください。。
印刷の改ページプレビューをすると、
何も書いていないところまで範囲が広がって
勝手にページ数が1枚増えてしまいます。。
1枚で収めたいのに2枚で出てきてしまうのです。
選択されている範囲を行ごと削除しても範囲は変わることはありません。
この解除の仕方を教えてください。。
Excel 2003 でXPで使ってます。
899名無しさん@そうだ選挙にいこう:04/02/06 10:44
Excel2000でセルに何らかの値を入力すると、
セルの背景色が変わるようにしたいんですが、
どうすればいいでしょうか?
>>899
全セルを選択して 書式>条件付き書式で
「セルの値が」 「次の値に等しくない」 「=""」
書式>パターン>色を選択
>>898
改ページの縁をマウスでドラッグして変更すれば?
902名無しさん@そうだ選挙にいこう:04/02/06 11:02
>>899
条件付き書式を使うといいよ。
たとえばA列に設定したければ、A列全体を選択して、
メニューから書式−条件付き書式
[数式が]   =NOT(ISBLANK(A1))
として、さらに[書式]ボタンから好みの書式を設定してOKをクリック。
(これ、以前まぐまぐのメルマガで仕入れたネタ。www.mag2.comへ行って
 Excel と入れて検索すると結構出てくる。ま、玉石混交で、ひっでぇの
 も多いけどね。。。)
903名無しさん@そうだ選挙にいこう:04/02/06 11:07
あ、負けた。。。しかも >>900の法が簡単、、、出直してきます。。。ショボン
904名無しさん@そうだ選挙にいこう:04/02/06 11:52
エクセルにカンマテキスト(CSV)をよませると
1,2,1-2
の場合は、1,2,1月2日
と「なってしまします。1-2をダブルクォーテーションでくくっても同じです。
1-2などをそのまま文字をして認識させる方法を教えてください
905名無しさん@そうだ選挙にいこう:04/02/06 12:01
>>904
拡張子を .TXT に変更してから読み込みます。
すると読み込み時に列の書式の設定ができるので、該当の列を「文字列」にします。
906名無しさん@そうだ選挙にいこう:04/02/06 12:10
>>905
お答えありがとう
txtにすると行はカンマや”も全て表示されるようになってしまいます
むぅ、どうすれば・・
>>906
「テキスト ファイル ウィザード」の画面は表示されなかった?
>>897
意味がよく分からんが、
平均と標準偏差を計算すれば
正規分布で近似できるのでわ?
909名無しさん@そうだ選挙にいこう:04/02/06 13:04
>>907
いえ表示されなかったですね。D&Dでアレしたからかな
910名無しさん@そうだ選挙にいこう:04/02/06 13:04
>>897
「正規分布で表現させようとしている」というのは、
散布図かヒストグラムでってということ?
それとも標準偏差を求めたい?
911899:04/02/06 13:12
>>900-903

助かりました。
有難うございました。
912名無しさん@そうだ選挙にいこう:04/02/06 13:19
>D&Dでアレしたからかな
そうだと思います。
913名無しさん@そうだ選挙にいこう:04/02/06 13:38
コマンドボタン名はどこで確認ですますか?
あとボタン名は変更できますか?
>>913
プロパティから
915名無しさん@そうだ選挙にいこう:04/02/06 14:22
>>913
ツール ユーザー設定 コマンド を選択。
ボタンを右クリック。
916名無しさん@そうだ選挙にいこう:04/02/06 14:48
Excelで行き詰まり、このスレの存在を知り、質問させて頂きます。

作業工程の終了日をそれぞれ記入する表を制作中なのですが、
ボタンを作り、セルを選択してボタンを押すとその日の日付が入力される様に
したいです。そこでの問題点なのですが・・・
今日の日付ボタン =today()のセルのコピー
範囲を選択して貼り付けボタン =ActiveSheet.Paste Link:=xlAllExceptBordersを
登録して使用しています。

ですが、Ctrlを押しながらセルを選択して貼り付けボタンを押すと、実行時エラー1004
複数の選択範囲に対してそのコマンドは使用できません。と出ます。

工程A    工程B 表はこんな感じです、2と3を選択して貼り付け出来る設定を
1 1/1 1/3     教えていただけると助かります。
2
3  1/1
4

環境はWin XPで2000使用です、宜しくお願いいたします。


>>916
その日の日付はCtrl+; で出来るけど。。
>>917さんありがとうゴザイマス。
このやり方も知らなかったですので活用させて頂きます。
でも、出来れば一括でまとめて入力出来ないものかと思って・・・
>>918
Ctrlを押しながら入力したいセルを選択してから
Ctrl+;>Ctrl+Enter
>>919さんありがとうです。
Ctrl+;>Ctrl+Enter をマクロに登録して
ボタンひとつで日付貼り付けできるようになりました。

これで作業が楽になります、助かりました。
どうしてもボタンにこだわるのならこんな感じでいいんじゃ・・・

Sub 当日日付()
Selection.Value = Format(Now(), "mm/dd")
End Sub
922名無しさん@そうだ選挙にいこう:04/02/06 17:52
For ixRow = 10 To ws.Range("A65536").End(xlUp).Row

何かの処理

1行ずつのコピー
ws.Rows(ixRow).Copy wsTo.Range("B65536").End(xlUp).Offset(1,0)

Next

で、コピー元wsはixRow行目のB列からN列を
コピー先wsToへ25行目以降に同じ範囲で
1行ずつコピーしたいのですが
上のをどう直したら良いでしょうか?
かお願いします。
ws.Rows(ixRow).Copy

ws.Range(Cells(ixRow, 2), Cells(ixRow, 14)).Copy

なんでもいいけどおもろいコード書くね。
よく言えばテクニカル、悪く言えばなんだなw
>>904
データ→外部データの取り込み→データの取り込み
Hashを使いたいんです。
Keyを使ってValueが得られるって感じで。
VLOOKUPで代用するのが一番楽ですか?
ソートしなければならないってのが、ちょっと鬱ですが。
質問です。
値貼り付けを自動化したくて、
  Sub PasteValue()
    Selection.PasteSpecial Paste:=xlValues
  End Sub
こんな感じに書きますた。
がしかし、これでは複数セルを選択して実行した時にエラーが出ます。
複数セル時にも対応させようと思ったら、どんな風にすりゃいいでしょうか。
927名無しさん@そうだ選挙にいこう:04/02/07 08:43
あのさ、ピボットテーブルって何?
どういうときに使うんだ?
929名無しさん@そうだ選挙にいこう:04/02/07 12:15
EXCELの市販ガイドブックでお勧めの本ありませんか?
関数について詳しく、分りやすいのが良いでつ。
>>929
関数の事、ヘルプの見方、Web検索の仕方などある程度分かってるなら、
「関数辞典」「300の技」などという系統の本がありゃ十分。
「どういう関数があるか」が分かればWebで解説してる所いくらでもあるから。
931929:04/02/07 12:42
関数の基礎理解できてないです
>>931
何をやってもダメだわw
933929:04/02/07 13:02
頼む!仕事がかかってるんだ。

覚える、学習する気はある!

紹介してくれ!
>>933
やる気はあってもねぇ、、、
関数の考え方知らないのなら、中学生の数学からやり直した方が良いよ

つーか、ここでこんな事言ってる暇があるなら、自分の足使って見に行けば?
何でも人に決めてもらわないと
行動できない受身の人には、
アビバとかがいいんじゃねーの?
(どんなところか知らないけど)
936929:04/02/07 13:45
本屋行ったけどイパーイあって
どれが良いのか分らないからここで聞いてるんだが。

あと、中学「二次関数」くらいなら知ってます
まったくだ。
超図解とか、かんたん図解とか好きなの買え。
つか、そんなのはExcelの質問じゃねー。
938929:04/02/07 13:47
何でも、とか言って決め付けないでくださいよ
ただ、本が決められないというだけなのに
939929:04/02/07 13:49
超図解とか、かんたん図解は見ましたが
基本操作などのところにページ割きすぎ

しかも巻末にキーボードキー配置一覧みたいなの載ってるし
見てられなかった
>>939
「見てられる」の探して買え。

つーかよ、「Excelの」質問したい人、質問したけど、
まだ回答が得られていない人がいるんだ。
「無駄に」レスを流すな馬鹿。
もう回答得られないって理解しろ。つーことで、消えろよ。
関数辞典みたいな本
何冊か、手にとって見て
一番読みやすいものを買えばいい


もっと、具体的な質問ができるようになったら
ここで質問すればいい。
942929:04/02/07 13:56
はいはい、じゃあ123ドロンで消えます

1

2


3



ドロン!
確かに無駄にレスが流れたなぁ。

>>950
↓次スレよろ。
>>929
交通費+1時間1万円も払ってくれれば
俺がお前の所に行ってマンツーマンで分かりやすく教えてやるよ。
945929:04/02/07 14:06
>>944
キモいので結構です。
>>898
印刷範囲を指定しる。
>>926
複数セルの場合はコピー元とコピー先の形が違ってたらエラーになるから、
その時は左上セルに貼るとか。

Sub Macro1()
 On Error GoTo Er
 If Application.CutCopyMode = xlCopy Then
  Selection.PasteSpecial Paste:=xlValues
 End If
Exit Sub
Er:
 '失敗の場合は領域の左上のセルにあわせる
 Err.Clear
 Selection.Cells(1).PasteSpecial Paste:=xlValues
End Sub

エラーの内容についてはまったく吟味していませんが。
948名無しさん@そうだ選挙にいこう:04/02/07 17:12
EXCELでサイトのLINKを開くとIEで開かれるのですが、
これを別のブラウザに設定することはできますか?
>>947
別にエラー処理で捕らなくても、

Dim Rg as Range
For Each Rg In Selection
  Rg.PasteSpecial Paste:=xlValues
Next Rg

こんなので解決じゃないの。
あとは適宜正しい意味でのエラー処理をドゾ。

>>948
ハイパーリンクだと、確か出来ない仕様。
Shell "C:\********\Netscape.exe " & Range("A1")
こんな感じで無理矢理やるしかないかと。
950名無しさん@そうだ選挙にいこう:04/02/07 19:20
>>922
>>923

実行時エラー1004
Rangeメソッドは失敗しました_Worksheetオブジェクト

になる。
あとコピー先の25行目以降にコピーするには?
951名無しさん@そうだ選挙にいこう:04/02/07 19:29
htm, htmlの拡張子を他のブラウザに関連付けすればいい。
なんでもいいからフォルダのツールのフォルダオプションで設定する。
ただ、リンクとかファイルは全てそのブラウザで開くようになってしまうが。
>>951
>>952
たぶん、>>948へのレスかと。

>>951
せめてやってみてから回答しようね。
あ、ハイパーリンクで開くブラウザは俺も会社で引っかかった事あるわ。
ソフト側でIE指定して開いてるみたいで、htmlの関連付けとか関係ない。
Excel97の時代だったが、今もそうなのか。Microsoftの独占商法には参るな。
データベースソフトのアクセスはバージョンにより根本が変わるようで
変換機能はあるようですが、特にVB等を使っていると変換後も不具合
等が発生しやすいようです。

エクセルはバージョン95と97では大きな違いがあるようで(セルの結合
機能等)95で作ったファイルを97で読み込むことはできても
97で作ったファイルを95で使うのは不可能(97側で95形式にすれば
可能だが)と思われます。
しかし2000バージョンと97バージョンは十分互換性があるようです。

では、97/2000バージョンとXPバージョンではどうなのでしょうか?
最近XPバージョンのエクセルが普及してきたようで、このまま97バージョン
で作成しててもとりあえずいいのか不安で・・・
>>955
97で作ったファイルを2000/2002(XP)で使う分には問題ないと思います。
ただし2000でVBAの文字列操作関数の強化と
モーダレスフォームが作成できるようになったので
2000/2002で作成されたVBAを使ったファイルを
Excel97で使用するときは注意が必要です。
957955:04/02/08 04:16
>>956
ありがとうございました
958名無しさん@そうだ選挙にいこう:04/02/08 12:52
作業中のブックのパスはVBAでどうやって得る?
960811:04/02/08 14:04
>>833
わぁ、まさかこれ以上答えがあると思わず、
遅レスになってしまってすいません。
OFFSET関数、バッチリでした!こんなの存在すらしらなかった・・・
ありがとうございます!
>>950
コマンドボタンで実行でつか?
「1-2」をテキストファイルからコピペでエクセルに貼り付けると
1月2日(1/2)になってしまう。
セル先頭に「'」をつけ「'1-2」とするとそのままコピペできるのは
知っているのですが○-○の形が100、200個あるので
個々のセルに対し「'」をつける作業はとてもできません・・・
しかも13-29や1-52など、3-2-12や42-2-89などもあり
全て同じ形式じゃ無いだけに更に面倒で・・・

そこでテキストからコピペでエクセルに貼り付けた時自動変換されないよう
つまり常に標準形式で貼り付けられるようには出来ないのでしょうか?
>>962
>>173からの流れやね。また競馬関係か。
漏れ的にはあえて日付にしてから、VBAで月日を取得するのが
もっとも簡単で(・∀・)イイかと思う。
対応出来ない所は、テキストファイルに貼って、テキストエディタ側で
置き換えでアポストロフィ付けてからExcelで読む。
>>963
あ、同一スレで同じ質問が・・・
検索はしたんですが抜けていました。
本当にすいません。
それなのに答えていただきありがとうございました。
>950

ws.Range(ws.Cells(ixRow, 2), ws.Cells(ixRow, 14)).Copy wsTo.Range("B" & ixRow + 15)

Or

ws.Range("B" & ixRow).Resize(1, 13).Copy wsTo.Range("B" & ixRow + 15)
966>>948です。:04/02/08 21:49
返事をくれたかたありがとうございました。
やむをえないので、ハイパーリンクではなく、
先頭をけずることで、コピペして普段使うブラウザで開くことにしました。
では。
>>965
CellsならCellsで統一しないと気持ち悪くね?
余談だけど、RangeよりCellsのが早い。
969名無しさん@そうだ選挙にいこう:04/02/09 11:27
モジュールのインポートで「応答なし」になる
NT4.0 Excel97

With wb.VBProject.VBComponents
.Rmove .Item("Module1")
.Import "myPath & Module1.bas"
End With
970sage:04/02/09 13:00
>>925
Dictionaryをぐぐってみな
ん?
>>925
具体的には、

Dim hasn As Object
Set hash = CreateObject("scripting.dictionary")
hash.Add key:="MEGUMI", Item:="デカパイ"
hash.Add key:="ラスプーチン", Item:="デカマラ"
hash.Add key:="ジャイアント馬場", Item:="デカ足"
MsgBox hash("MEGUMI")

なんてやればよい。
エクセルならループを回して格納していけばいいだろう。
>969

"myPath & Module1.bas" で正しいのか?

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

Q.列名がA,B,C,D,Eではなく、1,2,3,4,5になってしまいました。
 アルファベットに戻すにはどうしたらいいですか?
A.ツールメニュー:「オプション」 -「全般」タグで
 『R1C1 参照形式を使用する(C)』のチェックを外せば直ります。

975FAQ改訂してみた:04/02/09 21:47
Q:印刷プレビューではセル内に収まっていた文字が
 実際に印刷してみるとはみ出してしまうのですが、
 何とかなりませんか?
A:「印刷プレビューと印刷結果が一致しない」のは
 昔からのExcelの弱点で、どうにもなりません。
 セルの幅や高さに余裕を持たせるか、
 書式設定で「縮小して全体を表示する」にチェックを入れましょう。

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

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

976FAQ改訂してみた:04/02/09 21:47
Q.例えば、一つのセルに1803329と入力すると
 180度33分29秒と表示されるようにするには
 どうすればいいのでしょうか?
 ついでに計算もしたいです。
A.「1803329と入力すると180度33分29秒と表示される」
 というのと、計算できるというのを両立させるのは無理。
 書式を
 [h]:mm:ss や [h]"度"mm"分"ss"秒".00
 などにしておき、入力するときには
 180:33:29.99
 などとすれば、表示も計算もできる。

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