Excel総合相談所 48

このエントリーをはてなブックマークに追加
1名無しさん@そうだ選挙にいこう
▼━ 答えやすい質問のしかた ━━━━━━━━━━━━━━━━
★1 質問するときは環境や条件はきちんと書いてね。情報後出しはダメ。
★2 要望は具体例や図を使って明確かつ具体的に。
★3 質問前に>>2-1000あたりの注意書きやQ&Aも読もう。
★4 質問テンプレは必須じゃないけど、
   OSやExcelのバージョン、VBAの可否など(下記テンプレ1〜4の情報)は必須情報。
   これを書かなかった場合は、以後まともな回答が付かなくても文句言わないでね。

▼━質問テンプレ (出来れば使ってね) ━━━━━━━━━━━━
【1 OSの種類         .】 Windows**
【2 Excelのバージョン   】 Excel**
【3 VBAが使えるか    .】 はい・いいえ
【4 VBAでの回答の可否】 可・否
【5 検索キーワード     】 Googleやヘルプでの検索キーワード

※【4】は、VBAはわからないけどコード書いてくれるならVBAでもいいって場合は「可」
  VBAを使うのは避けたいって場合は「否」にしましょう。
2名無しさん@そうだ選挙にいこう:2006/08/20(日) 03:44:32
▼━質問時の注意・決まり事 ━━━━━━━━━━━━━━━━━
・1 現行スレ内で既出の質問が無いか、ページ内検索をしよう。(Ctrl+F)
・2 図やコードを書く場合、TABや連続する半角スペースは無視されるので注意
・3 VBAコードを貼る場合は、部分的に伏せたり省略したりせずに全て貼りましょう。
・4 2回目以降の質問では名前欄に初回質問の番号を入れよう。
・5 回答内容でわからない部分があっても、すぐに聞き返さずにヘルプやGoogleなどで検索しましょう。
・6 バグ・動作上の不都合・仕様に関する質問などはマイクロソフトのサポートを受けましょう。
  ここは技術的な質問のみで。
・7 VBAはプログラム言語のVisualBasic(6以前)に近い処理が可能で Excelに関係ないことも出来ます。
  Excelの操作に関係ない部分は、スレ違いなのでここで聞かずにVB言語やAPI、COMについて自分で勉強し、
  どうしてもわからない部分はVBスレやAPIスレなどの該当スレで質問しましょう。
  但し向こうはプログラマのスレなので、構文規則などの最低限の事は覚えてから質問しましょう。
  ここみたいに丸投げはダメですよ。
・8 うまくいかなかったにしても自分でやってみたこと(組んだ数式やコード)は書きましょう。
  例えエラーになる式やコードでも、何をやりたいのかを的確に把握する手がかりになります。
  その上で、どううまくいかないのかを具体的に書きましょう。
  エラーが出るなら、何処でどういうエラーが出るのか、
  想定外の結果が出るなら、条件と想定上の結果、実際の結果などを詳しく書いてください。
・9 マルチはダメ。
・a テキストボックス(エディトボックス)、コンボボックス(ドロップダウンリスト)、リストボックス、コマンドボタン、
  チェックボックス、オプションボタン(ラジオボタン)、スピンボタン、スクロールバー、等の質問をするときは、
  ユーザーフォーム、コントロールオブジェクト、フォームオブジェクトのどれなのかを必ず書くこと。
3名無しさん@そうだ選挙にいこう:2006/08/20(日) 06:24:36

★注意1

テンプレを使わないのも、情報を出さないのも自由です。
ただし後出しの情報に延々と付き合っていたら他の質問者に迷惑が掛かるので
回答は最初に出された条件のみを元に行われることもあります。
指摘されてから質問し直しても無視されることがあるので、
そういう扱いをされるのが嫌なら、きちんと情報を書きましょう。


★注意2

VBAを知りたてでプログラミングまでは出来ない人は、
VBAが高機能なのをいいことに、いろんなことをVBAでやろうとする傾向がありますが、
Excelのブック、シート、およびシート上に配置されたオブジェクトの操作以外は
スレ違いなのでここで質問しないでください。
ユーザーフォームについても、VBとVBAで違いがある部分以外はVBの分野です。
4名無しさん@そうだ選挙にいこう:2006/08/20(日) 06:24:45

★ Excelで出来ないこと、仕様上の制限 (括弧内は代用法)

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

 ▼操作
  ・ ファイラーの右クリックメニューからの新規作成で、Excelで設定したシート数のブックを作る (任意のシート数のテンプレートを作成)
  ・ 複数シートを選択して入力規則やシートの保護を設定する (VBA)
  ・ オートコンプリート機能を、別列や離れたセルで動作させる (VBA)
  ・ 選択範囲から一部を除く、Ctrlを押しながらの複数選択で一部を取り消す (VBA)
  ・ 優先キーを3つ以上指定しての並べ替え (優先度の低い方から順に並べ替える)
  ・ 1セルを分割 (分割したいセル以外を結合)
5名無しさん@そうだ選挙にいこう:2006/08/20(日) 06:24:50

★ Excelで出来ないこと、仕様上の制限 (括弧内は代用法)

 ▼数式・関数
  ・ 表示形式以外の書式の取得設定、書式情報を条件とする数式 (ユーザー定義関数)
  ・ 関数式でセルの選択状態を取得する (VBA)
  ・ セルの値でパスを補完して、開いてないブックのセルを参照する (VBA)
  ・ 入力したセルに結果を返す (VBA)
  ・ 範囲を引数にしての文字列連結 (ユーザー定義関数)
  ・ 値の書き換え、値の保持 (VBA)
  ・ 複数の結果を抽出、不定な数の結果を返す (VBA、結果の最大数が解っていれば最大数以上の式を論理式で組む)
  ・ 空白のセルの部分を上詰め、左詰めなどで表示する (作業セルを使って別セルに詰めて表示なら可能、それ以外はVBA)
  ・ VLOOKUP,HLOOKUP,MATCH等の関数で、検索語を全半角両方にマッチさせる (ユーザー定義関数)

 ▼VBA
  ・ ExecuteExcel4Macroの参照で空セルと0値を区別する
  ・ セルの値や変数値で直接変数名を指定する (配列、コレクション)
  ・ VBのコントロール配列と同じような操作をしたい
   (イベント以外ならコントロール名を「同名+連番」にしてControls(名前 & インデックス)で処理、イベントはクラスでWithEvents)

 ▼ユーザーフォーム
  ・ フォーム上から変更したプロパティ値の保持 (シートや外部ファイルに書き出して、次回読み込む)

 ▼グラフ
  ・ 棒グラフでひとつだけ突出したデータがあった場合に波線を入れて位置を合わせる
   (オートシェイプなどで見た目だけそうなるように弄る、別アプリでグラフを作り、オブジェクトとして挿入)
  ┌┐
  〜〜
  ||
6名無しさん@そうだ選挙にいこう:2006/08/20(日) 06:24:56

上記 「Excelで出来ないこと、仕様上の制限」 は、一般的に出来ないとされていること、出来ないと思われるものです。
間違いがある可能性もあるので、上記に挙がってるもので「コレはこうすれば出来るよ」というものがあったらご指摘ください。

また、ここに書かれてないことでも、Excelで出来ないことはたくさんあります。
ここに書かれてないからといって必ず出来るはずだなんて思わないように。
7名無しさん@そうだ選挙にいこう:2006/08/20(日) 08:21:36
8名無しさん@そうだ選挙にいこう:2006/08/20(日) 10:31:02
消費期限前3日前になると文字を赤くする方法を教えて下さい
9名無しさん@そうだ選挙にいこう:2006/08/20(日) 10:42:11
>>8
条件付き書式
使い方はヘルプ参照
10前スレ986(常用対数):2006/08/20(日) 12:31:16
993氏の方法で解決できました。
ありがとうございました。
11名無しさん@そうだ選挙にいこう:2006/08/20(日) 13:20:30
A1に価格、B1に数量、C1にその積を表示させます。
B1が空欄でもC1にA1の数値が入ってしまうのですが
B1が空欄のときC1に0と表示させる方法はありませんか?
12名無しさん@そうだ選挙にいこう:2006/08/20(日) 13:34:49
嘘をいっちゃあイカン。
1311:2006/08/20(日) 13:43:18
>>12
A1とかじゃなくてA3ですけどもうpしました
http://www.borujoa.org/upload.php
http://www.borujoa.org/upload/source/upload7250.jpg
14名無しさん@そうだ選挙にいこう:2006/08/20(日) 13:58:41
A1*B1でどうして0にならないのかと思ったら
product使ってたのか、嘘と言ってスマン
15名無しさん@そうだ選挙にいこう:2006/08/20(日) 14:00:21
質問が2つあります。
@A1にaをいれたらB1にb
A1にcをいれたらB1にd
とするようにはどうすればいいですか?

AA1にaを入れたらB1にb
A1に何も入れなかったらc
とするようにはどうすればいいですか?
16名無しさん@そうだ選挙にいこう:2006/08/20(日) 14:03:14
>>15
IFを使う
使い方はヘルプか前スレFAQ参照
17名無しさん@そうだ選挙にいこう:2006/08/20(日) 14:03:51
>>14
ありあとうございます。
その方法があったんですね。
18名無しさん@そうだ選挙にいこう:2006/08/20(日) 14:04:03
みんな、if文のお勉強しようね
19名無しさん@そうだ選挙にいこう:2006/08/20(日) 15:09:29
vlookupの検索が下記のようなパターンで上手くいきません。

   A     B    C     D     E
1 検索内容     名前  weight   VAT
2 organic      orange   1000   200
3             apple  10000   300
4           organic  243500   400
5           omega  100000   500
6            ampan   3300   600
7 結果  3300

  B7=vlookup(A2,c1:e6,2)

結果は本来ならば24500なはずですが、誤動作しています。
原因と対策を教えてください。
20名無しさん@そうだ選挙にいこう:2006/08/20(日) 15:18:03
>>19
どうやってもならないだろ
それと、データは昇順に整列してないとだめだ
21名無しさん@そうだ選挙にいこう:2006/08/20(日) 15:29:12
×=vlookup(A2,c1:e6,2)
○=vlookup(A2,c1:e6,2,false)
昇順ソートしなくても、ちゃんと引数設定すれば問題ない。
つーかヘルプにも書いてあるんだからちゃんと読もうよ。

それと「本来ならば」なんて言葉は、関数の仕様も知らずに軽々しく使うな。
式が間違っている故に、希望通りの結果にならないだけで、式は本来通りの結果を返してるんだから。
本当に式が正しくて本来通りの結果を返さない場合はここで質問してもほとんど無意味だから。
そういうのはMSにバグ(本来の動作をしない部分)の修正のパッチをだしてもらわにゃならんからな。

ついでに24500なんてどこにもないぜw
22名無しさん@そうだ選挙にいこう:2006/08/20(日) 16:09:31
言葉を知らない子だね、反感買うだけだよ
これじゃ君の知識がもったいない
2319:2006/08/20(日) 16:54:06
>>20-21
レスサンクスです。引数指定でOKでした。
24名無しさん@そうだ選挙にいこう:2006/08/20(日) 17:28:10
直後にこういうのが来ると
なんか22が哀れな子って感じだなw
25名無しさん@そうだ選挙にいこう:2006/08/20(日) 19:31:33
お願いします。
エクセルでグラフを作る時に軸の設定で「表示形式」で「日付」とありますが、
項目の中に「年」のみの項目がありません。
「1990 1995 2000 2005年」でX軸を設定するにはどうしたら
よいのでしょうか?よろしくお願いします。
26名無しさん@そうだ選挙にいこう:2006/08/20(日) 19:44:57
大変失礼しました。出来ました。申し訳ないです。
27名無しさん@そうだ選挙にいこう:2006/08/20(日) 22:50:29
23のレスで救われたと勘違いしてる子がいるな
28名無しさん@そうだ選挙にいこう:2006/08/21(月) 05:46:27
>>27
見苦しい
29名無しさん@そうだ選挙にいこう:2006/08/21(月) 11:42:54
( ´,_ゝ`)プッ  
この子、確実に反応するな
30名無しさん@そうだ選挙にいこう:2006/08/21(月) 11:54:31
そうだな
他人のふりしてまで
自分を擁護する奴と
同じくらい
確実に反応するな

両方消えてくれ
31名無しさん@そうだ選挙にいこう:2006/08/21(月) 12:31:46
テンプレに付けくわえとけよ

・このスレにはテンプレ厨、馬鹿回答厨が住み着いています。
・24時間体制で俺SUGEEE回答を付けられる質問がこないかを
 待ち構えては俺SUGEEEと自分に酔っています。
・俺SUGEEEEEE的な回答をされても許してあげてください。
・下手に構うと自作自演のテンプレを使ったQ&A、質問者に
 なり済ましてのお礼レス等をつけはじめてうるさいです。
 無視にご協力を。
32名無しさん@そうだ選挙にいこう:2006/08/21(月) 17:11:50
こういう場で相手を「子」と呼ぶのは違和感があるなあ。
まあ内容が伴っているから、さもありなん なんだが。
33名無しさん@そうだ選挙にいこう:2006/08/21(月) 19:42:06
エクセルの勉強するためにここに来て、他人の質問見て自分も勉強してる厨もいるよ
回答が初心者的でもしょうがないじゃない
34名無しさん@そうだ選挙にいこう:2006/08/21(月) 20:03:43
関数についてご教授ください。
A列とB列があって、各行のA列とB列の値が
いずれも○だった場合に数を数える関数は
どのようにしたらよいでしょうか?
35名無しさん@そうだ選挙にいこう:2006/08/21(月) 20:11:55
>>34
配列数式かユーザー定義関数で。
使い方は自分で調べよう。
36名無しさん@そうだ選挙にいこう:2006/08/21(月) 20:34:55
>>33
ノシ
3734:2006/08/21(月) 21:05:27
ありがとうございました。
=SUMPRODUCT((A:A="○")*(B:B="○"))
で出来そうです。
38名無しさん@そうだ選挙にいこう:2006/08/21(月) 22:50:56
ドングリの背比べ
39名無しさん@そうだ選挙にいこう:2006/08/22(火) 02:59:24
tst
40名無しさん@そうだ選挙にいこう:2006/08/22(火) 11:02:01
朝から「挿入」とか「結合」とかいやらしい
41名無しさん@そうだ選挙にいこう:2006/08/22(火) 13:07:58
FAQだからしかたない。
42名無しさん@そうだ選挙にいこう:2006/08/22(火) 20:00:16
誰が(ry
43名無しさん@そうだ選挙にいこう:2006/08/22(火) 21:13:43
基本的な質問ですがお願いします。
書式で「 #,### 」と「 #,##0 」はどう違うんでしょうか?
44名無しさん@そうだ選挙にいこう:2006/08/22(火) 21:35:19
>>43
0.5未満の数値で、#,###は『』(空文字)になり#,##0は『0』になる
45名無しさん@そうだ選挙にいこう:2006/08/22(火) 22:33:26
WINXPSP2 EXCEL2003にてセル内で郵便番号変換で入力できないのですが
どのように設定すれば入力できるようになるのでしょうか
たとえば111-1111を変換すると111-1111と111-1111の二つしか
選択肢に出てきません

他のソフトでは問題なく住所に変換されます
46名無しさん@そうだ選挙にいこう:2006/08/22(火) 22:54:08
アドイン
47名無しさん@そうだ選挙にいこう:2006/08/22(火) 22:59:49
>>45
> 他のソフトでは問題なく住所に変換されます
もう少しがんばろうね
48名無しさん@そうだ選挙にいこう:2006/08/22(火) 23:01:22
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 いいえ

同一ブック内のシートの動きを同期?させることは可能ですか?
シート1を下にスクロールするとシート2も同じように下に動くとか
上下動だけでいいんですけど
49名無しさん@そうだ選挙にいこう:2006/08/22(火) 23:04:28
>>47
現在コピーペーストで対処してるのですが
なかなかやりにくくて難儀しております
50名無しさん@そうだ選挙にいこう:2006/08/22(火) 23:09:10
>>46
IMEにて変換入力をしたいのです
51名無しさん@そうだ選挙にいこう:2006/08/22(火) 23:19:09
>>50
IME側の辞書や変換モードの設定辺りの問題かもね
52名無しさん@そうだ選挙にいこう:2006/08/22(火) 23:33:58
>>45
嘘を言っちゃあイカン
他のソフトで 111-1111が、どのような住所に
問題なく変換されたのか報告して三田前。
53名無しさん@そうだ選挙にいこう:2006/08/23(水) 00:32:24
Excelっていうか、IMEに郵便番号辞書を入れればいいんじゃね?
54名無しさん@そうだ選挙にいこう:2006/08/23(水) 00:59:42
55名無しさん@そうだ選挙にいこう:2006/08/23(水) 06:56:12
皆さんありがとうございます

>>52
その数字は例としてあげただけです
>>53
IME用の辞書は導入済みです
>>54
エクセル上で単にIMEの住所変換するだけでそのアドオンが必ず必要ということでしょうか?
56名無しさん@そうだ選挙にいこう:2006/08/23(水) 07:43:11
>>55
OfficeUpdateにいって落とせよ
57名無しさん@そうだ選挙にいこう:2006/08/23(水) 07:44:46
Excel 郵便番号 で検索ぐらいしようね
58名無しさん@そうだ選挙にいこう:2006/08/23(水) 08:24:18
俺も知りたい
アドオン無しだとIMEで住所変換できないのか?
別に自動的に住所を注入とかしなくて良いんだけど
59名無しさん@そうだ選挙にいこう:2006/08/23(水) 08:27:03
たとえば、
A1に「FALSE」と表示されている場合だけ
A2に入力規制をかけたいときに
入力規制の項目の数式欄には
どのような数式を入れれば良いのでしょうか?


チェックボタンにチェックを入れた場合のみ、その隣のセルに書き込み可能にしたいのです。

アドバイスやらしくお願い致します!
60名無しさん@そうだ選挙にいこう:2006/08/23(水) 08:57:26
>>59
いきなり
たとえば・・・って、オィ
61名無しさん@そうだ選挙にいこう:2006/08/23(水) 09:15:17
すんません笑。

教えて頂けませんか?
62名無しさん@そうだ選挙にいこう:2006/08/23(水) 09:54:51
>>61
お譲ちゃんはいったいどんなことをしたいのかな(*´Д`)ハァハァ

チェックボックスクリック時に
シートのホモとセルのロックを制御してやればできるでそ
>>1-3よんでね
63名無しさん@そうだ選挙にいこう:2006/08/23(水) 10:44:49
んー…

入力規制のウィンドウを開かせたいので、
A1にFALSEが表示しているときのみ
A2にエラーメッセージが出るようにしたいです。

何度もすみません。
64名無しさん@そうだ選挙にいこう:2006/08/23(水) 11:00:08
▼━ 答えやすい質問のしかた ━━━━━━━━━━━━━━━━
★1 質問するときは環境や条件はきちんと書いてね。情報後出しはダメ。
▼━質問テンプレ (出来れば使ってね) ━━━━━━━━━━━━
【1 OSの種類         .】 Windows**
【2 Excelのバージョン   】 Excel**
【3 VBAが使えるか    .】 はい・いいえ
【4 VBAでの回答の可否】 可・否
【5 検索キーワード     】 Googleやヘルプでの検索キーワード


>>63
> んー…
> 入力規制のウィンドウを開かせたいので、
入力規制のウィンドウって何だよ

> A1にFALSEが表示しているときのみ
> A2にエラーメッセージが出るようにしたいです。
↓矛盾してねえか?
> A1に「FALSE」と表示されている場合だけ
> A2に入力規制をかけたいときに
> 入力規制の項目の数式欄には
> どのような数式を入れれば良いのでしょうか?
> チェックボタンにチェックを入れた場合のみ、その隣のセルに書き込み可能にしたいのです。

日本語でないと回答無理
65名無しさん@そうだ選挙にいこう:2006/08/23(水) 11:10:57
>>63
お前がその嫌がるA2を無理やり選択して舌舐めずりしながら
入力規則のダイアログを開いて、「らめぇ」と泣き叫ぶA2の声を
無視しながら入力規則を「=OR(A1=FALSE,A1<>"")」としてやれば
あんなに嫌がっていたA2もA1がFALSEになるとなんでも受け
入れるように調教できるんじゃないでしょうか。僕には良くわか
りません。でも「らめぇ」はいいと思います。いえ、やっぱりわかりません。
66名無しさん@そうだ選挙にいこう:2006/08/23(水) 11:12:29
あ、=AND(A1=FALSE,A1<>"")でした
ごめんなさい。でも「らめぇ」はやっぱりいいと思います
いえ、なんでもありません
67名無しさん@そうだ選挙にいこう:2006/08/23(水) 11:33:06
お願いします

【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2002
【3 VBAが使えるか    .】いいえ
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 データの自動更新 セルの変更 ピボット

ピボットテーブルのデータ更新を
あるひとつのセルの変更のたびに自動で行えないでしょうか
変更するセルと、ピボットテーブルは別シートにあります
68名無しさん@そうだ選挙にいこう:2006/08/23(水) 11:43:53
>>66
わー!出来ました!
本当にありがとうございます!
助かりました!
69名無しさん@そうだ選挙にいこう:2006/08/23(水) 11:50:54
自分がわからない事は日本語じゃないんだなwww
70名無しさん@そうだ選挙にいこう:2006/08/23(水) 11:59:30
Excelのグラフ作成をする際、凡例文字の編集ってできるんですか?
71名無しさん@そうだ選挙にいこう:2006/08/23(水) 13:04:17
系列の名前でできます
72名無しさん@そうだ選挙にいこう:2006/08/23(水) 13:31:58
>>65

肉まん吹いた。。。
73名無しさん@そうだ選挙にいこう:2006/08/23(水) 13:33:43
初めて質問します。よろしくお願いします。

【1 OSの種類         .】 Windows xp
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 最大値 検索 など

何百ものテストを何十人もの人が
受けた試験結果に対し、
そのテストの最高点を誰が出したのかを
テストごとに表示できるようにしたいと考えています。

テストの名称を行に、被験者の番号を列に配置し、
その交点のセルにそれぞれの得点を記入してあります。

MAX関数でテストごとの最高得点を表示することはできますが、
誰がその最高得点を出したかを表示することができず
悩んでいます。

HLOOKUP関数は数字が昇順や降順に
並んでいなければ使えないようですし。

なにか良いアイディアはないものでしょうか。
よろしくお願いします。
74名無しさん@そうだ選挙にいこう:2006/08/23(水) 13:43:25
>>73
検索の型を設定する
75名無しさん@そうだ選挙にいこう:2006/08/23(水) 14:00:14
>>74
お答え頂きありがとうございます。

HLOOKUP関数の検索の型を
FALSEにするということでしょうか?
やってみます。
76名無しさん@そうだ選挙にいこう:2006/08/23(水) 15:08:45
マクロについて質問です。

With Selection.Validation
.Delete
.Add Type:=xlValidateCustom, AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:="=AND(BP20=TRUE,BP20<>"""")"
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = "注意!"
.InputMessage = ""
.ErrorMessage = "選択項目にチェックを入れてください"
.IMEMode = xlIMEModeNoControl
.ShowInput = False
.ShowError = True
End With

というマクロの
AND(BP20=TRUE,BP20<>"""")"
の部分の数字「20」を
マクロを指令するセルの行番号とリンクさせたいのですが
できますでしょうか?
77名無しさん@そうだ選挙にいこう:2006/08/23(水) 20:07:57
【1 OSの種類         .】 Windows xp
【2 Excelのバージョン   】 Excel2002
【3 VBAが使えるか    .】 少しぐらいならなんとか
【4 VBAでの回答の可否】 お願い

a列に日付が
2006/1/1
2006/1/2
2006/1/3

といった感じでだら〜と続いています。んで月の第2金曜日の時に
その横に*印を付けたいんですけど、VBAでどういう風に書けば良い
んでしょ。教えてください〜。
78名無しさん@そうだ選挙にいこう:2006/08/23(水) 20:24:43
まず条件で金曜日出して
次にmonthの日数を7で割って答えが1の時にってやればいいんじゃない?
79名無しさん@そうだ選挙にいこう:2006/08/23(水) 20:35:06
>>76
できます。
「マクロを指令するセル」というのが76のオレ用語で意味不明ですが、
文字列とプロパティを繋げたいときは&で。

"文字列" & Range().Row


>>77
とりあえず何日が第二金曜日になるかを出すのは、Weekday関数さえ使えば
あとはExcelもVBAも関係ない算数の問題なので自分で考えよう。
*を付ける方法は、日付がA列の1行目から入ってるなら
Rabge(第二金曜日の日付, 2).Value = "*"
横ってのが隣のセルってことではなく、日付文字列の横ってことなら話は別だが
その辺の情報は隠してるので、こっちも知らん。
80名無しさん@そうだ選挙にいこう:2006/08/23(水) 20:39:45
>>78,79
あ、なるほど。
ありがとです〜
81名無しさん@そうだ選挙にいこう:2006/08/23(水) 21:07:03
>>56
エクセル上で単にIMEの住所変換するだけでそのアドオンが必ず必要ということでしょうか?
82名無しさん@そうだ選挙にいこう:2006/08/23(水) 21:20:11
http://www.uploda.net/cgi/uploader2/index.php?dlpas_id=0000020493.zip
ダウンロードパス:1

上記のようなシフト表を作っているのですが、19時まで残る人で、かつ出勤している人を
出勤人数のすぐ下のセルに入れたいのですが、どのような関数を入れれば可能なのか
思い浮かびません。印刷して渡す予定なので、出勤のところは空白のままにしておきたいです。

出勤のところを勤務時間によってマークをかえれば、countif関数ですぐ可能なのですが、
今回はどのようにしていいかわかりません。教えてください。よろしくお願いします。
83名無しさん@そうだ選挙にいこう:2006/08/23(水) 22:30:31
わけのワカンネーやつが作ったファイルなんて気持ち悪くて
ダウンロードできねぇよ
>81
アドオン、アドオン、ってウルセーよ。自分で調べろ
84名無しさん@そうだ選挙にいこう:2006/08/23(水) 22:45:56
>>83
あはは
お前実際に分からないのに何でこのスレに常駐してるんだ?
85名無しさん@そうだ選挙にいこう:2006/08/23(水) 23:12:48
   A    B   C     D      E
1りんご      赤い    橙      緑
 みかん      甘い  酸っぱい  水っぽい
 すいか  

というデータが各セルに入っています
A1はリストでりんご・みかん・すいかが選択可能になっていて
B1には
データの入力規則でリストを指定し
元の値には
=INDIRECT(A1)と指定してあります

C列の『赤い・甘い』は挿入→名前→定義でりんご
D列は同様にみかん
E列はすいかと名前を定義してあります。

こうすることで
A列でりんごを選択するとB列で赤い・甘いをリストから選択する事ができるのですが
A列でりんごを選択した後に、みかんを選択すると
A1にはみかんが表示されるのですが
B1には赤い・甘いのリストが表示されたままになってしまいます

ここで質問なのですが
A1でリストから他のデータを選択したときにB1をクリアすることは可能なのでしょうか?
86名無しさん@そうだ選挙にいこう:2006/08/23(水) 23:24:09
>>85
リストにはF1:F2を設定して
それがA1の値によってC1:E2を参照するようにしてはどうでしょう?
87名無しさん@そうだ選挙にいこう:2006/08/24(木) 00:02:14
【1 OSの種類         .】 WindowsXP Pro
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 はい
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 VBA ファイル出力 上書き確認

Private Sub CommandButton1_Click()
Const cnsTITLE = "CSVファイル出力処理"
Const cnsFILTER = "CSVファイル (*.csv;*.dat),*.csv;*.dat"
Dim xlAPP As Application
Dim intFF As String
Dim strFILENAME As String
Set xlAPP = Application
xlAPP.StatusBar = "出力するファイル名を指定して下さい。"
strFILENAME = xlAPP.GetSaveAsFilename(InitialFileName:="作成ファイル.csv", _
FileFilter:=cnsFILTER, Title:=cnsTITLE)
If StrConv(strFILENAME, vbUpperCase) = "FALSE" Then Exit Sub
intFF = FreeFile
Open strFILENAME For Output As #intFF
Dim a As String
a = Change()
Print #intFF, a
Close #intFF
xlAPP.StatusBar = False
MsgBox "ファイル出力が完了しました。"
End Sub

このように記述してファイルを出力しようとしています
同名のファイルがあった時に上書き確認を表示させたいのですが
どのようなコードをどこに追加すればよいのでしょうか?
88名無しさん@そうだ選挙にいこう:2006/08/24(木) 01:03:47
Const cnsTITLE = "CSVファイル出力処理"
Const cnsFILTER = "CSVファイル (*.csv;*.dat),*.csv;*.dat"
Dim xlAPP As Application
Dim intFF As String
Dim strFILENAME As String
Dim flag As Integer
flag = 1

Set xlAPP = Application
xlAPP.StatusBar = "出力するファイル名を指定して下さい。"
strFILENAME = xlAPP.GetSaveAsFilename(InitialFileName:="作成ファイル.csv", _
FileFilter:=cnsFILTER, Title:=cnsTITLE)
If StrConv(strFILENAME, vbUpperCase) = "FALSE" Then Exit Sub
intFF = FreeFile
Set F = CreateObject("Scripting.FileSystemObject")
Target = strFILENAME
If F.FileExists(strFILENAME) Then
If MsgBox("上書きする?", vbYesNo) = vbYes Then
flag = 1
Else:
flag = 0
End If
End If

If flag = 1 Then
Open strFILENAME For Output As #intFF
Dim a As String
Print #intFF, 1
Close #intFF
xlAPP.StatusBar = False
MsgBox "ファイル出力が完了しました。"
End If
89名無しさん@そうだ選挙にいこう:2006/08/24(木) 01:15:28
Target = strFILENAME は意味無いんで消しといてください…。
これコピペ改変でし。
ttp://www.officetanaka.net/excel/vba/filesystemobject/filesystemobject.htm
9087:2006/08/24(木) 07:06:38
>>88
>>89
回答ありがとうございました
早速試してみようと思います。
91名無しさん@そうだ選挙にいこう:2006/08/24(木) 09:36:41
>>84
暇つぶしだよ
9276:2006/08/24(木) 09:54:13
>>79
=AND(BP20=TRUE,BP20<>"""")"
の部分を
=AND(BP&Range().Row=TRUE,BP&Range().Row<>"""")"
としてみましたがエラーが出てしまいました。

マクロの指令を出すときに、選択されているセルの行番号と
マクロのなかのBPのあとの行番号をリンクさせたいのです。

再度、アドバイスお願いいたします。
93名無しさん@そうだ選挙にいこう:2006/08/24(木) 11:42:03
>>56
エクセル上で単にIMEで住所変換するだけでもそのアドオンが必要なのでしょうか?
94名無しさん@そうだ選挙にいこう:2006/08/24(木) 13:09:33
教えてください。今マクロやってるんですけど、マクロで記憶したやつの流れを
を繰り返したいんですけど、わかる人いますか?
95名無しさん@そうだ選挙にいこう:2006/08/24(木) 13:15:05
教えてください。今マクロやってるんですけど、マクロで記憶したやつの流れを
を繰り返したいんですけど、わかる人いますか?
96名無しさん@そうだ選挙にいこう:2006/08/24(木) 13:51:40
よろしくお願いいたします。

【1 OSの種類         .】 Windows XP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 excel タブ 多段

excelで請求書管理をしているのですが、シート数が多く(一画面に入りきらない)
なりすぎて難儀しています。
タブを多段にすることか可能でしょうか?
また、そのように対応できるソフト等があれば教えてください。
97名無しさん@そうだ選挙にいこう:2006/08/24(木) 15:27:00
>>93
第一点 IMEだけではどこのIMEか分からん どのIME使ってるか指定しろ
第二点 辞書を所持していてもセットに組み込んで読み出せる状態でないなら使えない
第三点 ATOKなら補助変換だが、読みは全角で入れないと変換できない。
98名無しさん@そうだ選挙にいこう:2006/08/24(木) 15:30:07
半角英数固定から始めても変換可能みたいだよ、スレ違いみたいだけど。
99名無しさん@そうだ選挙にいこう:2006/08/24(木) 15:58:03
エクセル2003を使って住所録を作成しているのですが、
1つのセルに文字数制限をつけて、
さらに住所の番地を半角を入力しても全角になるようにしたいのですが、
入力規則のところで簡単にできないでしょうか?
お願いします。

例:●●市●●町5番地1-1 → ●●市●●町5番地1−1

↑こんな感じに変換できて、さらに文字数制限が出来ればいいのですが・・・。
100名無しさん@そうだ選挙にいこう:2006/08/24(木) 16:13:18
【1 OSの種類         .】 Windows98
【2 Excelのバージョン   】 Excel97
【3 VBAが使えるか    .】 はい
【4 VBAでの回答の可否】 可

【質問】マクロが終了するまで「処理中です。暫らくお待ち下さい」と表示できるようにしたい。

現在複数のブックから値をコピーして、集計用のブックに値を張付けるマクロを組んでるのですが
画面がチカチカして気分が悪くなることがあります。
とりあえずコードの最初と最後に画面の最小化と最大化で表示しないようにしたのですが

「処理中です。暫らくお待ち下さい」みたいな形で別の画面を表示させておくことはできないでしょうか?

わかる方がいらっしゃったらよろしくお願いします。

Sub 集計変換マクロ()
Application.WindowState = xlMinimized

集計変換処理

Application.WindowState = xlMaximized
MsgBox ("集計変換が終了しました。" & vbCrLf & "CSVファイル名" & ALL_DAT & "です。")
End Sub
101名無しさん@そうだ選挙にいこう:2006/08/24(木) 16:36:25
複数のセル毎に、一つの文字しか入力できないようにするため、

入力規制→ユーザー設定→「=COUNTA($A1:$A4)=1」

と設定しているのですが、
この作業を合計100以上行いたいのです。

この方法だと、いちいちセル範囲を書き換えていかなければならないですし、
マクロを組んだ場合、
「=COUNTA($A1:$A4)=1」のセル範囲をどのように書き換えれば
スムーズに行えるでしょうか?
102名無しさん@そうだ選挙にいこう:2006/08/24(木) 17:04:46
>>87
MSIMEです
辞書は有効になってますテキストエディタで確認キチンと変換出来ます
エクセルだけで変換不能
103名無しさん@そうだ選挙にいこう:2006/08/24(木) 17:06:22
追加です
全角入力にて作業してます
104名無しさん@そうだ選挙にいこう:2006/08/24(木) 17:08:13
>100
フツーに処理の始めにUserFormXX.Show終わったら.Hideで良いんでね。
(ShowModalプロパティはFalseに汁)
それと、チカチカするのはコピーしてペーストしているからだと思う。
ペースト先=コピー元 で直接代入すればチカチカしない。
105名無しさん@そうだ選挙にいこう:2006/08/24(木) 17:11:19
>>101
入力規制→文字列→文字数を「1以下」でいいんじゃね?
106名無しさん@そうだ選挙にいこう:2006/08/24(木) 17:21:40
>>101
面倒だが、1行目から4行目までは1行づつ設定しなければならない。
あとは4行選択して、下へオートフィル。
107100:2006/08/24(木) 18:07:27
>>104
両方組み込んでみて試してみます。
回答ありがとうございました。
108名無しさん@そうだ選挙にいこう:2006/08/24(木) 19:09:58
>>100
セルデータ直はもちろんだが
サブルーチンの最初に
Apprication.Screenupdating = False
は入れているよな?
109名無しさん@そうだ選挙にいこう:2006/08/24(木) 20:04:54
エクセルの関数で例えば、数値がA A A Aなら1 A A A Bなら2
A A A Cなら1と言ったようにAとBとCの個数によって返す値を変える
ようにするにはどのような関数になりますか。色々と試してみたのですが
出来ません。教えてください。
110SAGE:2006/08/24(木) 20:10:34
>>99
別セルでいいなら、=JIS(セルを指定)で全角にできる。
入力規則じゃたぶん無理
ってかテンプレ嫁
111名無しさん@そうだ選挙にいこう:2006/08/24(木) 20:33:42
>>109
> どのような関数になりますか。
文字列解析と条件分岐と演算。

意味不明な例だけで、仕様を一切書いてないから
あとはご自分で考えましょう。
112109:2006/08/24(木) 20:42:38
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 いいえ
例が悪くて申し訳ありません。 例えば、AAAAというAの個数が4個なら
点数が5点 AABBという組み合わせなら4点 ABBCという組み合わせなら3点
といったように複数のセルの中にあるA,B,Cの組み合わせによって返す値を
変える関数がわかりません。教えていただければ幸いです。説明が悪くて
申し訳ありません。
113名無しさん@そうだ選挙にいこう:2006/08/24(木) 20:50:05
>>101
管理維持が大変だから単純に入力規則を設定するのをマクロでやりたいのなら
対象列・列の開始行・列の終了行を配列で指定して変数で文字列を生成する
"A1:A4"の部分を生成
"=COUNTA($A$1:$A$4)=1"の部分を生成

単純羅列なら
With Range("A1:A4").Validation
.Delete
.Add Type:=xlValidateCustom, AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:="=COUNTA($A$1:$A$4)=1"
End With
114名無しさん@そうだ選挙にいこう:2006/08/24(木) 21:08:41
>>112
>>3★注意1
115名無しさん@そうだ選挙にいこう:2006/08/24(木) 21:28:16
注意とか以前にどういう基準で点が付くのかわからん
116名無しさん@そうだ選挙にいこう:2006/08/24(木) 21:53:59
>>109の頭の中では厳然としたルールがあるんだろう www
117名無しさん@そうだ選挙にいこう:2006/08/24(木) 22:18:45
とんちなのか
1+1=3
118名無しさん@そうだ選挙にいこう:2006/08/24(木) 22:21:53
>>96
多段はしらないけど
シート名の左側の三角をShift+右クリ

VBAが可なら簡易メニュー的なシートを一つ作って選択できるようにすれば?
複雑なのは無理としても、これは単純だから便利だお

フォームのボタンか図形にマクロ指定して
Sub 伝票1_Select()
Sheets("伝票1").Select
End Sub
119名無しさん@そうだ選挙にいこう:2006/08/24(木) 22:29:14
エクセルでセルに
1億と入っていたら
数値化するにはどうしたらいいですか?
1億なら100000000としたいのですが
120名無しさん@そうだ選挙にいこう:2006/08/24(木) 22:31:21
A30に=concatenate("TOTAL/",counta(A1:A29))
みたいに入ってるんだけど、
このtotal行、30の時もあれば、50の時もある、
を検索させて.rowの値を変数 ttlに入れたいのです。

どのように書けばよいでしょうか?
121名無しさん@そうだ選挙にいこう:2006/08/24(木) 22:34:23
>>119
置換で"億”を00,000,000に変えてみたら全部いっぺんにかわるのかな?

122名無しさん@そうだ選挙にいこう:2006/08/24(木) 22:45:40
でも単なる置換じゃうまくいかなさそう

おそらくVBAでセルに億って入ってるのを検索して、億を””に置換して
1億倍の数字を掛けるみたいな、そしてそのセルの書式を”億”に変えるみたいな。
そうすると元通りにも出来るし、全部数字で10000000みたいにも出来るみたいな。
マクロなら一発だろうけど、俺みたいな馬鹿にはわからん。
123名無しさん@そうだ選挙にいこう:2006/08/25(金) 02:37:00
セルのプロパティで同じようにロック設定をしても
シート保護をした際にロックできているセルと
ロックできないセルがあります。なぜでしょうか。
124名無しさん@そうだ選挙にいこう:2006/08/25(金) 03:32:59
OSはXPsp2でexcel2003です。
シート印刷時にページが複数枚になる場合
「ファイル」→「ページ設定」で「シート」の「列のタイトル」に
表示したい列を書けば全ページで反映されますが、これを特定のページのみ無くしたい場合はどうすれば良いでしょうか?
例えば3枚印刷のうち2枚目だけ反映されないようにする事って出来ますか?
よろしくお願いします。
125名無しさん@そうだ選挙にいこう:2006/08/25(金) 04:05:24
UserFormで指示画面つくってマクロで印刷
126名無しさん@そうだ選挙にいこう:2006/08/25(金) 04:56:54
ワンペア・・・3点
ツーペア・・・4点
フォーカード・・・5点
違うかなぁ
127名無しさん@そうだ選挙にいこう:2006/08/25(金) 05:45:53
【1 OSの種類       .】 Windows XP
【2 Excelのバージョン .】 Excel 2002 SP3
【3 VBAが使えるか    .】 はい
【4 VBAでの回答の可否 】 可
【5 検索キーワード    】 VBA マクロ カット ペースト

全角五文字が入ってるセルを選択して実行すると、最初の三文字をそのセルに残して
残りの二文字をカットして右隣のセルにペーストするマクロを作りたいのですが、
VBA初心者のため分かりません。どうかよろしくお願いします。
128名無しさん@そうだ選挙にいこう:2006/08/25(金) 06:10:06
>>127
右隣のセル.Value = Mid(そのセル.Value, 4)
そのセル.Value = Left(そのセル.Value, 3)
129名無しさん@そうだ選挙にいこう:2006/08/25(金) 11:35:30
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2000
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否

データをエクセルに変換した際に日付が
20060825
20060826
20060827
(↑文字列から数値の変更はできます。)
としか変換できないのですが、これを一括で
180825
180826
180827
もしくは
060825
060826
060827
のように変換できる関数は無いのでしょうか?
130名無しさん@そうだ選挙にいこう:2006/08/25(金) 11:53:15
>>129
20060825 → 180825 なら、1880000をマイナスする。
20060825 → 060825 なら、2000000をマイナスして、text関数で書式指定
131名無しさん@そうだ選挙にいこう:2006/08/25(金) 11:54:48
1880000は19880000だった。
132名無しさん@そうだ選挙にいこう:2006/08/25(金) 12:05:49
VLOOKUPとHLOOKUPでFALSEとTRUEの使い分けの方法がわかりません。
参考書とかぐぐったりしたけど、理解できなくて・・・
一目瞭然簡単な使い分け方を教えてください!
133名無しさん@そうだ選挙にいこう:2006/08/25(金) 12:05:54
>>129-131
全部text関数で出来る。

A1に変換対象の日付データがあるとして
060825 にするには =TEXT(A1,"yymmdd")
180825 にするには =TEXT(A1,"eemmdd")
134129:2006/08/25(金) 12:32:06
>>130>>131>>133
ありがとうございました。
135名無しさん@そうだ選挙にいこう:2006/08/25(金) 13:03:45
【1 OSの種類         .】 WindowsXPhome
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 excel グラフ 2変数

(1,20), (5,25), (20,30), (50,60)の4点を結ぶ折れ線描くにはどうすればいいのでしょうか。
1,5,20,50
20,25,30,60
を選択して折れ線を書くと横軸が一定(1,2,3,4)で2本の折れ線ができてしまうのですが。

VBAでしか実現できないのであれば、VBAでもかまいません。
136名無しさん@そうだ選挙にいこう:2006/08/25(金) 13:15:01
>>135
グラフの種類を「データポイントを結んだ散布図」とかにすればいいんじゃね?
137名無しさん@そうだ選挙にいこう:2006/08/25(金) 13:17:11
>>132
完全に一致する値しか許さないのがfalse
近い値でもまあいいか、と許すのがtrue
138名無しさん@そうだ選挙にいこう:2006/08/25(金) 13:19:15
>>123
新しいブックでもそうなるならExcel再インストロールしたほうがいいかも
そのブックのそのセル範囲だけだったらどっかに違いあるんじゃないの
139名無しさん@そうだ選挙にいこう:2006/08/25(金) 13:22:47
>>120
たぶんセルA1選んで[ctrl]+[↓]で選べる範囲だろうから、
そうすると
ttl=range("A1").end(xldown).row
でいいんじゃね?
140124:2006/08/25(金) 14:00:59
>>125
マクロとかあまりわからないので、もっと簡単にやる方法ってないでしょうか?
シートが10枚くらいあり印刷時のサイズなどは一緒なのですが、
列を表示する、しないはシート毎に異なるので
出来ればそれに対応出来る機能ってないんでしょうか?
シート1は2枚目だけなし。シート2は3枚目だけなしって感じです
よろしくお願いします。
141名無しさん@そうだ選挙にいこう:2006/08/25(金) 14:20:12
ないのう。
紙のほうに新聞紙でも貼るしかないのう。

それかいったん無しで印刷して、あとからもう一度
その紙に見出しだけ印刷するとかかのう。
142135:2006/08/25(金) 14:43:16
>>136
出来ました。
ありがとうございます!
14396:2006/08/25(金) 15:21:11
>>118
VBAは全くいぢったことがありませんが、便利そうなので頑張って
勉強してみます。
ありがとうございました。
144100:2006/08/25(金) 16:07:36
>>104 >>108
昨日は回答ありがとうございました。
でもエクセルのバージョン97と古いためか両方ともできませんでした。

104さんの
>>(ShowModalプロパティはFalseに汁)
なんですがエクセル97のユーザーフォームプロパティの動作項目にはShowModalが存在せず

108さんの
>>Apprication.Screenupdating = False
コードの頭に持ってきたのですが反応せず、本当に命令が実行されてるか

Apprication.Screenupdating = False
stop

と止めてコード上にマウスを当てて値がどうなってるか確認したのですがtureと何故か表示されます

現在の状態
Sub 集計変換マクロ()
Application.ScreenUpdating = False
Stop
'Application.WindowState = xlMinimized
UserForm1.Show

集計変換処理

UserForm1.Hide
Application.ScreenUpdating = True
'Application.WindowState = xlMaximized
MsgBox ("集計変換が終了しました。" & vbCrLf & "CSVファイル名" & ALL_DAT & "です。")
End Sub
会社の環境では97を使うしかなく他に回避方法がありましたらよろしくおねがいします。
145名無しさん@そうだ選挙にいこう:2006/08/25(金) 19:00:03
>>137
falseとtrueの件、ありがとうございました!
146名無しさん@そうだ選挙にいこう:2006/08/25(金) 19:22:14
数式の入った列をコピーして挿入すると、
数式が参照するセルもズレてしまいます。
形式を選択で数式を選択してもズレてしまいます。
ズレないようにペーストする方法はありますでしょうか。
147名無しさん@そうだ選挙にいこう:2006/08/25(金) 19:25:40
>144
UserForm使った方がアプリっぽくてカックイイかなと思っただけで、
別にエクセルのシートに「只今処理中。。。」とか書いといて
それをMAX表示(コピー元コピー先はMIN表示)
しておけば同じ訳で、ScreenUpdatingは、チットは速くなるだろ
というオマジナイだから、要はコピーするたんびに
ActivateとかSelectionとか使わなければ桶。
148名無しさん@そうだ選挙にいこう:2006/08/25(金) 21:40:11
>>146
絶対参照と相対参照を調べなさい
149名無しさん@そうだ選挙にいこう:2006/08/25(金) 22:34:31
【1 OSの種類         .】 WindowsMe
【2 Excelのバージョン   】 ??どうやって調べるのかわかりません。。ごめんなさい。
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否

簡単な表を作って各セルの書式や計算式を設定しました。
表の右端のセルでエンターを押すと自動的に次の行ができて、
次の行の左端のセルに移動するように設定するにはどうしたらよいのでしょうか??

よろしくお願いします。
150146:2006/08/25(金) 22:45:13
>>148
(1)
数式が入力されてるセルをオートフィルしたいのです。
$A$10 というようにしてしまうと、オートフィルしたときに
$10 の方が$11 にならないのでこれは困ってしまうのです。

(2)
ちなみにオートフィル機能をショートカットで使う方法はありますでしょうか。
Excel ショートカット オートフィル でぐぐったのですがわかりませんでした。

指の関節が腱鞘炎になりかけていて、キー入力はまだいいのですが、
マウスのボタン操作が痛いのです。
(1)(2)がわかるとかなりありがたいのですが。
よろしくお願いいたします
151名無しさん@そうだ選挙にいこう:2006/08/25(金) 22:58:42
>>150
絶対参照と相対参照を調べりゃスグわかる
 $ ← これがポイント
152名無しさん@そうだ選挙にいこう:2006/08/25(金) 23:00:12
>>150
1.$A10
2.Alt+E > I > S か マクロ
153146:2006/08/25(金) 23:45:16
>>152
ありがとうございます!

> 1.$A10
灯台下暗しでした。わからずに時間ばかり経ってしまっていました。

> 2.Alt+E > I > S か マクロ
メニューとか殆ど使ったことがなかったので、ググってしまいました。
メニューを注意深くみればよかったのですね。すいません。
マウスを掴む回数が減ると本当に助かります。
本当にありがとうございます
154名無しさん@そうだ選挙にいこう:2006/08/26(土) 00:35:35
【1 OSの種類         .】 Windows2000
【2 Excelのバージョン   】excel2003
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 可

100円+200円=300円というような
文字を含んだセルの、数字部分の足し算をすることはできないでしょうか?

指定したセルから数字を抜き出し、計算した後その数字を返し単位をつける・・・
とか考えたのですが思うようにいきません。

実際の作業の中では、相手から受け取ったデータを計算して出力するという流れです。
155名無しさん@そうだ選挙にいこう:2006/08/26(土) 00:39:19
>>149
自動的に罫線を引きたいの?(あるいは書式を設定しないの?)
156149:2006/08/26(土) 00:43:18
>>155
自動的に罫線も引きたいですし、書式も引き継いでほしいです。
一つ上の行の書式や計算式を引き継いだ行が自動的に増えるようにしたいのです。
わかりにくくてすみません。
157名無しさん@そうだ選挙にいこう:2006/08/26(土) 00:46:50
>>154
ユーザー書式設定で
#,##0"円"
では?

>>156
入力前に余分にオートフィルやコピペしとけばいいんじゃないの?
158154:2006/08/26(土) 01:02:45
>157
相手から受け取ったデータには、円をつけて入力してあり
自分はそれらの値を整理して合計を出して送り返します。
そこで、作業を単純化するために関数を入力したシートを用意し
受け取ったデータを貼り付けたら合計が出るようにしました。
数字のみであれば合計した金額が出るのですが、円などの文字列が
あったら空白のままになってしまいます。
ユーザー定義で、単位を設定してみましたが無理でした。

うまく説明できなくてすみません。
159名無しさん@そうだ選挙にいこう:2006/08/26(土) 01:47:33
>>158
では、"円"を置換して全て消してはどうですか?
その上で"円"がいるのであれば、書式設定で #,##0"円" にすればいいかと。
160名無しさん@そうだ選挙にいこう:2006/08/26(土) 02:07:32
>>158
LEFTとFINDで数字だけ抜き出せ
161名無しさん@そうだ選挙にいこう:2006/08/26(土) 03:04:34
データの張り付けをしようとしたとき、『クリップボードを空にできません』というメッセージがでて張り付けることができません。どうしたら解決できるかおわかりになる方いましたら教えてください。


162名無しさん@そうだ選挙にいこう:2006/08/26(土) 03:14:57
>>161
会社でそういう状況になったのですか?
それとも今その状況なのですか?
PC立ち上げ直してもダメですか?
163124:2006/08/26(土) 04:57:05
>>141
遅くなりましたがありがとうございます。
わかりました。
164名無しさん@そうだ選挙にいこう:2006/08/26(土) 07:19:16
結合してしまったA1,A2のセルを上下に分割するときはどうすればよいですか?
165名無しさん@そうだ選挙にいこう:2006/08/26(土) 07:35:58
解除すればいいと思うけど・・
166164:2006/08/26(土) 07:40:54
言い方が悪かったです。
A1のセルをA1,A2のように上下に分割するときはどうすればよいですか?
167名無しさん@そうだ選挙にいこう:2006/08/26(土) 07:56:24
B1とB2、C1とC2・・・・A以外を必要なだけ結合
1行目と2行目の行の高さを半分
でいいのかな?
168名無しさん@そうだ選挙にいこう:2006/08/26(土) 09:21:33
すみません、ひとつのエクセルファイルの中で2個のワークシートを使っているのですが、
一枚目のワークシート(Worksheet1)に二枚目のワークシート(Worksheet2)のひとつのセルを
同期させたいのですが・・・。

同一ワークシート内では
=B19
などと書けばいいのだと思うのですが、別のワークシートのセルを持ってくるにはどういう風にすればいいのでしょうか?
お願いします。
169名無しさん@そうだ選挙にいこう:2006/08/26(土) 09:36:42
>>168
=を押したあとに下のタブでワークシートを切り替えてセルを選択したらわかる。
170149:2006/08/26(土) 10:02:56
>>157
そうします。
ありがとうございました。
171名無しさん@そうだ選挙にいこう:2006/08/26(土) 11:32:33
>>154
数字の抽出
=LEFT(A1,LEN(A1)*10-SUM(LEN(SUBSTITUTE(A1,{0,1,2,3,4,5,6,7,8,9},))))

計算結果に単位を付ける
数式でする場合 : A1+B1&"円"
書式設定の場合 : 0"円"とか#,##0"円"
172名無しさん@そうだ選挙にいこう:2006/08/26(土) 11:39:56
【1 OSの種類         .】 Windows2000またはxp
【2 Excelのバージョン   】 Excel2000または2003
【5 検索キーワード     】 Yahoo 地図情報 貼り付け HTML形式

Yahoo地図情報の地図をコピーしてExcel(2000/2003)上にペーストすると
表示されている図を選択できなくなり、移動や削除が出来ないのですが、何故でしょう。
「形式を選択して貼り付け」で、ビットマップを選べば大丈夫なんですが
HTMLがデフォルトになっているみたいで、これで貼り付けをすると前述の症状になります。
ちなみにWordで同じ操作をしても、きちんと削除できます。

整理するとこんな感じです。
Yahoo地図情報の地図画像 → HTML形式でExcelに貼り付け = 削除不可
それ以外の画像 → HTML形式でExcelに貼り付け = 削除可
Yahoo地図情報の地図画像 → HTML形式でWordに貼り付け = 削除可

173名無しさん@そうだ選挙にいこう:2006/08/26(土) 15:23:49
面白い事に気がついたね、今までもこんな症状あったのかな
オレはいつもBMPで貼り付けてたから関係ないわ
それじゃ、お元気で!
174名無しさん@そうだ選挙にいこう:2006/08/26(土) 16:23:17
>>172
普通に貼り付けると「HTMLImageコントロール」っていう普通の
画像とは違う物として認識されるみたい。これってVBAで使う
Pictureコントロールのweb対応版って感じの奴なのね。
初めて知った。

だからふつうの操作だと選択できなくなる。Pictureコントロールも
おんなじ。ってことは、Pictureコントロールを移動させたりする
時と同じように、「デザインモード」にしてあげると選択とか削除も
できるよ。

デザインモードへの移行は[ツール]-[ユーザー設定]で
[デザインモードの終了]出して、そのボタンで切り替えられるよ。
175名無しさん@そうだ選挙にいこう:2006/08/26(土) 19:21:12
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 マクロを切り張りするぐらい
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 vba 選択範囲
・やりたいこと
選択しているセルが、特定の範囲内の場合(B2:E5)にマクロを実行すると、そのセルを赤なる。

ttp://t_shun.at.infoseek.co.jp/My_Page/Excel-VBA/vba_page6.htm
選択範囲についての解説はありますが、選択範囲の条件は(よくわかんなかった・・)
試しにで作ってみたけど動作せず
If ActiveCell >= Range("B2:E5") Then
With Selection.Interior
.ColorIndex = 3
.Pattern = xlSolid
End With
End If
End Sub

おねがいします。
176名無しさん@そうだ選挙にいこう:2006/08/26(土) 20:40:20
>>174
ふつうの操作だと選択できなくなるというよりは
イベントを拾うようになるだけなんだがね。


>>175
Row、Rows.Count、Column、Columns.Count等で条件分岐、
又は、Intersectの戻り値判定

それと試すのもいいが、当てずっぽうは止めとけ。
試すんなら、少しは調べて多少なりとも根拠のもてる方法を試せ。
オマエはその1行目の条件式、オブジェクトのメンバも指定せず
不等式を書いた意味を説明出来るのか?
177名無しさん@そうだ選挙にいこう:2006/08/27(日) 02:30:24
Sub aaa()
Target = ActiveWindow.RangeSelection.Address
Set IRe = Application.Intersect(Range(Target), ActiveSheet.Range("b2:e5"))
If IRe Is Nothing Then
Else
 With IRe.Interior
  .ColorIndex = 3
  .Pattern = xlSolid
 End With
End If
End Sub
178172:2006/08/27(日) 11:31:07
>>174
デザインモードで出来ました。
ちょっと複雑に作り込んだシートにうっかり貼ってしまって
地図以外のすべてを他のシートにコピペして凌いでいたのですが
解決方法がわかって助かりました。
ありがとうございます。
179名無しさん@そうだ選挙にいこう:2006/08/27(日) 12:23:53
指定した範囲から特定の値を検索し、それに一致したセルの数を返すにはどのようにすればよろしいでしょうか?

例:
0 1 1 1 0 0 0(A1〜G1と仮定します)

0の数・・・4(←ここをどう処理するか)
1の数・・・3


よろしくお願いします。
180名無しさん@そうだ選挙にいこう:2006/08/27(日) 12:25:48
>>179
countifじゃ駄目なん?
181名無しさん@そうだ選挙にいこう:2006/08/27(日) 13:04:06
>>180
解決しました。ありがとうございました。
182名無しさん@そうだ選挙にいこう:2006/08/27(日) 15:17:29
ステータスバーの上のファンクションキーの説明バー?が消えてしまったんですけど、
どうすればまた表示させられるのでしょう?
EXCEL2003です。
183名無しさん@そうだ選挙にいこう:2006/08/27(日) 17:40:21
オススメの問題集ってないですか・・・?
184名無しさん@そうだ選挙にいこう:2006/08/27(日) 18:49:51
FOM
185名無しさん@そうだ選挙にいこう:2006/08/27(日) 23:02:58
EXCEL2000での質問なんですが

A1のセルに、ある数字が入っているとして
B1:C3の範囲の中で、A1の数字より大きいものの個数を
探すにはどうしたらいいでしょうか。

=COUNTIF(B1:C3,">A1")という式を作ったのですが
検索条件にはセルの参照ができないようで困ってます。
186名無しさん@そうだ選挙にいこう:2006/08/27(日) 23:36:10
EXCEL2003での質問です。

ピボットテーブルのタブをリストのタブみたいにいろいろ検索条件を
指定できる方法なかと?
187名無しさん@そうだ選挙にいこう:2006/08/28(月) 01:07:53
Excel2003をXP2でつかっています。
突然エクセルを起動しようとすると
メモリが不足しています。他のアプリケーションを終了してからもう一度行ってください。
とエラーメッセージが出て起動できません。
VBAのあるなし関係なくシートから起動しようとしても
本体からもどちらも無理です。
メモリ自体は(これまでも同じ環境だったので)十分あまっているようなのですが・・・
検索もしてみましたが同じような状況のものは見つかりませんでした。
どうしたらよいのか・・・どなたか教えてください!
188名無しさん@そうだ選挙にいこう:2006/08/28(月) 06:01:18
>>185
検索条件にはセルの参照ができないのではなく
検索条件でセルの参照を使う方法が解ってないだけ。

A1は文字列ではなく参照なんだから、文字列を指定するための""で囲っちゃダメ。
そして文字列、参照、数式の戻り値などといった別々の値を連結する場合は&。


>>186
VBAで出来ますよ。&>>3★注意1


>>187
>>2・6

まあ物理的に問題があったらOSすら起動できないだろうから、
おかしくなってるのはシステムだけで、OS再インスコすれば直ると思うが。
それが嫌なら>>2にあるとおりMSに聞いて。
189185:2006/08/28(月) 09:53:36
>>188
でも""をつけないとエラーになるんですが・・・
非常に困っています。
190名無しさん@そうだ選挙にいこう:2006/08/28(月) 10:02:30
>>189
君が間違ってなければエラーにはならないよ。
もしかして=COUNTIF(B1:C3,>A1)とかやってるんじゃないの?

俺は「A1」を参照として使いたいなら「A1」の""を外せとは言ったが
「>」の""まで外せと言った覚えは無いぞ。ちゃんと連結の仕方も書いたし。
191名無しさん@そうだ選挙にいこう:2006/08/28(月) 10:14:17
横槍スマソ
俺も苦労した事があるんだわこれ
簡単なようで実は結構高度な知識だと思う
=COUNTIF(B1:C3,">"&A1)
192185:2006/08/28(月) 10:36:55
うおお。。。できました。
>>190>>191ありがとうございます。
EXCELの本やネットで調べたんですが、載ってなかったです…
>>191さんに答えを書いてもらわないと、わからなかったかと思います…

なにせ =IF(B6>10,"あ","い") みたいなものは成立するものですから
なぜCOUNTIFでは連結する必要があるのか、よくわかりません。。
193名無しさん@そうだ選挙にいこう:2006/08/28(月) 11:12:04
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 rank small

A1=1.1
A2=-0.9
A3=1.3
のとき、A1:A3の中で2番目に小さい値は
=SMALL(A1:C1,2)
で求まるのですが、A1^2, A2^2, A3^2の中で2番に小さい値を求めるには
どのように入力すればいいのでしょうか。

可能であればA1^2, A2^2,...,Ak^2の中で2番目に小さな値を求める
式を教えてください。


194名無しさん@そうだ選挙にいこう:2006/08/28(月) 11:18:02
>>193
=SMALL(A1:C1^2,2)と入力して[ctrl]+[shift]+[enter]で
配列数式にすればいけるよ。
{=SMALL(A1:C1^2,2)}こんな感じになる。
195193:2006/08/28(月) 11:23:00
>>194
出来ました!
ありがとうございます!
196名無しさん@そうだ選挙にいこう:2006/08/28(月) 11:25:10
配列数式にしなくても=SMALL(A1:A3,2)^2でいいじゃん。
正数の二乗なら、対象値の順位は^2の前でも後でも変わらないだろ。
197193:2006/08/28(月) 11:52:41
>>196
負の数も含むのでそのやり方だとうまくいかなかったです。

>>194を使って、A1^2が2番目に小さいときに色をつけるために
条件付き書式設定で

数式が =A1^2={SMALL(A1:A3^2,2)}

としたのですが、エラーになってしまいます。

もっと一般的に (A1-1)^2, (A2-1)^2,...(Ak-1)^2の中で2番目に小さい数値に
色をつける方法を教えてください。

>>193が分れば自分で出来ると思ったのですが、うまくいかないのでお願いします。
情報が小出しで申し訳ないです。
やりたいことは、A1,...,Akの中で1との誤差が2番目に小さいものを知りたいです。
198名無しさん@そうだ選挙にいこう:2006/08/28(月) 12:01:58
>>197
配列数式の答えをどこかのセルに出しておいて、
条件付き書式はそのセルの値と同じだったら色を付ければいいんでない?
199名無しさん@そうだ選挙にいこう:2006/08/28(月) 12:13:13
またまた条件後出しで、作業セルは使いたくないとか言い出しそう。

というか、>>197の式、{ }を外して参照をきちんとすれば、、、
200197:2006/08/28(月) 12:14:14
>>198
ありがとうございます。
A1^2, A2^2,...,Ak^2の中で2番目に小さな値についてはそのやり方で出来ました。

(A1-1)^2, (A2-1)^2,...(Ak-1)^2の中で2番目に小さな値を求めるための
配列数式はどうすればいいのでしょうか。
201197:2006/08/28(月) 12:16:07
>>199
作業セルを使ってもかまいません。
202名無しさん@そうだ選挙にいこう:2006/08/28(月) 14:53:50
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2000
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否

文字列同士で2つのセルの文字を合体させたいのですが可能でしょうか?
また、その文字間のスペースを取り除くことは可能でしょうか?

例)
セルA1 東京都 豊島区
セルB1 池袋 1-1

だとA1とB1を合わせて最終的に
東京都豊島区池袋1-1

という風にしたいのですが・・・
203202:2006/08/28(月) 14:55:26
>>202に追記で申し訳ありませんが
何千行もあるので一気にできる方法があれば
教えて頂きたいのでお願い致します。
204名無しさん@そうだ選挙にいこう:2006/08/28(月) 15:48:58
=SUBSTITUTE(A1&B1," ","")
205202:2006/08/28(月) 15:59:24
>>204
ご回答ありがとうございます。
A1とB1の文字は合体させることができましたが、
A1の「東京都」と「豊島区」 B1の「池袋」と「1-1」の間のスペースを
消す方法はないのでしょうか?
206名無しさん@そうだ選挙にいこう:2006/08/28(月) 16:00:23
>>203
=CONCATENATE(TRIM(SUBSTITUTE(SUBSTITUTE(A1,"_",""),"_","")),TRIM(SUBSTITUTE(SUBSTITUTE(B1,"_",""),"_","")))

アンダーバー( _ と _ )は、それぞれ半角スペースと全角スペースに置き換えること。
207名無しさん@そうだ選挙にいこう:2006/08/28(月) 16:05:56
=CONCATENATE(A,B)
   AとBを結合

=TRIM(SUBSTITUTE(A,"あ","い"))
   セルAの中の「あ」を「い」に置き換える
  ↓応用
=TRIM(SUBSTITUTE(SUBSTITUTE(A,"あ","い"),"う","え")))
   セルAの中の「あ」を「い」に置き換え、更に、「う」を「え」に置き換える
208202:2006/08/28(月) 16:13:29
>>206
大変助かりました。ありがとうございました。
209名無しさん@そうだ選挙にいこう:2006/08/28(月) 16:15:38
失敬、これでいけたわ。>>204横からサンクス

=SUBSTITUTE(SUBSTITUTE(A1&B1," ","")," ","")
210202:2006/08/28(月) 16:16:08
>>207>>209
解説付で勉強になりました。ありがとうございました。
211204:2006/08/28(月) 16:17:58
>>205
>202の例でスペースが取り除かれるのを確認してから書き込んでいる。
それ以上の後乗せサクサク条件は、知らん。
212名無しさん@そうだ選挙にいこう:2006/08/28(月) 17:24:59
【1 OSの種類         .】 Windows98とXP
【2 Excelのバージョン   】 Excel97と2002
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 Excel 文字列 結合 不特定、Excel 文字列 結合

202の方と似ているのですが、
2つだけでなく行の文字列全てを結合させる事は出来ませんか?

 A B C D E F G
1 あ   い う   え お

上の様にシート1の1行目に不規則に入っている文字列(今後増える予定有)を
A1だけを無視してシート2のA1に一括表示させたいです。
(例だと"いうえお"と表示される事になります)

ここでは簡略化していますが、
本来の文字列は英数字・漢字・ひらがな・カタカナ全て混ざった物で、
A1に入る物は合計や商品名のような特定の題字になります。

出来ればお願いします。
213名無しさん@そうだ選挙にいこう:2006/08/28(月) 17:31:37
=CONCATENATE(B,C,D,E,F,G)

Aを対象に入れなければ良いだけかと。
214名無しさん@そうだ選挙にいこう:2006/08/28(月) 17:36:13
>>212
>>5
> ★ Excelで出来ないこと、仕様上の制限 (括弧内は代用法)
>  ▼数式・関数
>   ・ 範囲を引数にしての文字列連結 (ユーザー定義関数)

ここに書いて有るとおり、「行」という範囲を指定しての結合はVBA使わないと出来ない。
因って君のVBA否という条件では、回答は「不可能」だ。

範囲ではなく一つ一つを結合していけば、結果としてはお望みの形になるがな。
=CONCATENATE(B1,C1,D1,E1,F1,G1)
=B1&C1&D1&E1&F1&G1
これでもちゃんと"いうえお"と表示されるはず。
215名無しさん@そうだ選挙にいこう:2006/08/28(月) 17:36:29
>>212
めんどくさくてケツ毛がすべて白髪になる程の量じゃなければ
CONCATENATE関数で地道につないでけばいいんじゃない?
シート1のAA1にでも
=CONCATENATE(B1,C1,D1,E1,F1,G1,H1,...Z1)
とかして、シート2のA1には
=Sheet1!AA1
とかすればそれほど見にくくもないんじゃないかな
216名無しさん@そうだ選挙にいこう:2006/08/28(月) 17:41:17
ありがとうございます。
今はまだ量が少ないのですが、今後3ケタ以上に増えて行く予定なので
一括で出来たらよかったと思ったのですが、作業列が無いと無理みたいですね…。
増えて行く毎に地道に頑張ります。
217名無しさん@そうだ選挙にいこう:2006/08/28(月) 17:54:36
100のセルに対しては99の計算セル(2つは手入力、残りの97つは数式のコピペ)でいけるが、それでやるかい?
労力は少なくて済むけど、スマートじゃない。


A B C D E・・・・・・V W X Y・・・・

V に・・・ =(B&C)
W に・・・ =(V&D)
X に・・・ =(W&E) ←Wの数式をコピペ、以下同じ
218名無しさん@そうだ選挙にいこう:2006/08/28(月) 18:18:55
>>212
Sheet2のA1に =IV1、A2に =""&Sheet1!B1、 A3に =B1&Sheet1!C1
A3を選択してIV1までオートフィル。
1行目を選択して、好きな行数だけコピペ。

ただしメモリ不足になっても関知しない。
219名無しさん@そうだ選挙にいこう:2006/08/29(火) 12:01:34
エクセルの棒グラフをWEB保存し、gifファイルにしますが
かなり圧縮されているためでしょうか、グラデーション部分が
非常に汚い画像として保存されてしまいます。
棒グラフを、もう少し綺麗な画像で保存、もしくはjpgでの保存は
出来ないのでしょうか?
どなたかご存知の方、ご教授お願い致します。
220名無しさん@そうだ選挙にいこう:2006/08/29(火) 12:19:03
>>219
webページを保存するときの[名前を付けて保存]ダイアログの右上の方に
[ツール]ってとこがあるので、そこから[webオプション]ってのを選んで、
[ブラウザ]タブの[オプション]の「PNGをグラフィック形式として使用する」
にチェッキングすればPNGで書き出せるよ。
必要なぐらひくフィルタの入ってるExcel2003の話なのだけれどもね。
221219:2006/08/29(火) 13:23:58
220様
ご指南の通りに行いましたら問題解決しました。
大変有難う御座います。
222名無しさん@そうだ選挙にいこう:2006/08/29(火) 20:15:03
これを書くと答えが得られやすい

マルチなのは承知の上教えていただけたらと思います。
マルチなのは承知の上教えていただけたらと思います。
マルチなのは承知の上教えていただけたらと思います。
223名無しさん@そうだ選挙にいこう:2006/08/29(火) 20:41:46
uzee
224名無しさん@そうだ選挙にいこう:2006/08/29(火) 21:24:18
最近使い始めたので、説明ができないのですが、
あるセルの数値を変更した時に、その隣のセルに変更した日付を自動的に更新
するようにはできませんか?
そのセルをいつ更新したかを管理したいのでお願い致します。
225名無しさん@そうだ選挙にいこう:2006/08/29(火) 21:29:18
できます
226名無しさん@そうだ選挙にいこう:2006/08/29(火) 21:36:40
225様
どのように手順で行えばよいのでしょうか?
宜しくお願いします。
227名無しさん@そうだ選挙にいこう:2006/08/30(水) 00:27:09
>>226
隣のセルにやらないといけないかは知らないけど
『ツールー変更箇所の記録』
て機能があるよ、変更したら自動的に日付とコメントが入る

228名無しさん@そうだ選挙にいこう:2006/08/30(水) 00:36:11
=COUNTIF(A$1: A$11,">10")
=COUNTIF(A$1: A$11,">20")
=COUNTIF(A$1: A$11,">30")



=COUNTIF(A$1: A$11,">300")

という連続したセルを作りたいのですが、
">10"の部分がオートフィルしても">10"のままで変わらないのですが、
手入力しないとダメでしょうか
229228:2006/08/30(水) 00:42:43
>>191 を今読みました。別セルに連番振って参照でやってみます。すいません
230名無しさん@そうだ選挙にいこう:2006/08/30(水) 02:01:35
余りってどうやって計算するの?
たとえば
8を3でわったときの余りは2なんわけだけどどうするの?
231名無しさん@そうだ選挙にいこう:2006/08/30(水) 02:08:06
MOD(8,3)
232名無しさん@そうだ選挙にいこう:2006/08/30(水) 02:19:30
遅いのにありがとうございます。
233名無しさん@そうだ選挙にいこう:2006/08/30(水) 06:20:56
>>226
コメントでよければ>>227さんの方法で。
あくまで隣のセルに表示したいのであればVBAを使う

> 最近使い始めたので、説明ができないのですが、
これが気になるが、

シート名のタブを右クリ>コードの表示
以下のコードを貼り付けて、A列の内容を変更するとB列に今日の日付が表示されます。
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 1 Then '1はA列
Target.Offset(, 1).Value = Date '1は変更したセルの1つ右隣
End If
End Sub
234名無しさん@そうだ選挙にいこう:2006/08/30(水) 07:03:33
227様
233様
ありがとうございます。少し難しそうでが、やってみます。
ご説明ありがとうございました。
235名無しさん@そうだ選挙にいこう:2006/08/30(水) 08:47:02
>>228
頭にアポストロフィーを付けて文字列として入力
データ→区切り位置→完了
236初心者:2006/08/30(水) 09:17:33
>>235
すご・・・
EXCELはコツ覚えたら、いろいろできて楽しそう。
237ゴン:2006/08/30(水) 11:27:43
【1 OSの種類         .】 Windows98
【2 Excelのバージョン   】 Excel2000
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 エクセル コンボボックス コントロールタブ
 
 初めまして宜しくお願いします。
 質問:コンボボックスのコントロールの書式設定のタブにコントロールのタブが
    ないので、入力範囲が選択できずデータがコンボボックスに、入りません。
    どうすれば、コンボボックスにデータを入れられるのでしょうか?
    ご教授願います。
238名無しさん@そうだ選挙にいこう:2006/08/30(水) 13:32:50
Vistaで、Excel2000/2003は動作しそうですか?
また、Excel2000/2003から2007に移行する場合、既存のVBAプログラムは
大幅に書き直す必要がありますか?
239名無しさん@そうだ選挙にいこう:2006/08/30(水) 14:05:45
>>237
プロパティのListFillRange

フォームツールではなくコントロールツールの方は
本当はVBAから使う物なので、AddItemで追加するのが基本だがな。
初心者向けにListFillRangeとかLinkedCellとかのプロパティもある。


>>238
>>2・6
そういう動作環境とか互換性とかはMSに聞いて。
その辺の情報が公開されてるなら、自分で調べればいいだけだが
公開されてないから聞きに来たんだろうし、公開されてないならMS以外誰が知ってるってんだ?
まあ、どちらもほぼ答えは確定しているがな。
240名無しさん@そうだ選挙にいこう:2006/08/30(水) 14:26:24
【1 OSの種類         .】 WindowsXPpro2002 SP2
【2 Excelのバージョン   】 Excel2000
【3 VBAが使えるか    .】 はい
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 文字数制限

多くの文字が入力されたセルを別のブックへリンクする際、元となるブックが
開いている間は問題ないのですが、元のブックが閉じている場合は、全角255
文字しか表示されません。ただし、そうなってからでも元のブックを開けば、
256文字目以降も表示されます。
これでは意味がないのですが・・・。
リンク元のブックが閉じていても、一つのセルで255文字超表示させるように
するにはどうしたら良いのでしょうか?
ご教授下さい。お願いします。



241名無しさん@そうだ選挙にいこう:2006/08/30(水) 14:51:58
>>240
CreateObjectでExcel.Applicationのインスタンス作ってそっちから値を取得する。
厳密に言えば内部的にブックを開いてることになるが、表示は一切されないし、
開かないと256文字以上取得出来ない仕様なんだから仕方ない。
242名無しさん@そうだ選挙にいこう:2006/08/30(水) 15:48:33
すみません…
12シート分の個人情報を集計しているのですが。
一人一人に決まった有効期限があり、その有効期限で人数を集計したいのですがよくわかりません…。
例えば8月1日〜31日までの有効期限の人数を確認したい場合はどうしたらいいのですか?
すみませんがよろしくお願いします

243238:2006/08/30(水) 15:53:12
MSのExcel2003関連ページを見ても、Vistaについては書いてない感じです。
βで動かした人の情報があれば、うれしいです。

また、Excel2007βで下位バージョンVBAの移行テストした方の
情報を教えて頂ければと思い、カキコいたしました
244名無しさん@そうだ選挙にいこう:2006/08/30(水) 16:26:44
(省略されました・・全てを読むにはここを押してください)

「ここ」を押しても空白だけだとちょっと、ムッとします。
245名無しさん@そうだ選挙にいこう:2006/08/30(水) 18:00:37
>>242
具体例を書いて答えやすくしなさい
246240:2006/08/30(水) 20:20:47
>>241
そうですか、やはり仕様なのですね。
教えていただいた方法でやってみます。
アクセスからデータを飛ばしてまして・・・。
同時に他の方法も考えてみます。
ありがとうございました。
247名無しさん@そうだ選挙にいこう:2006/08/30(水) 21:13:57
無駄な改行なんてするから
いじわるな答え方されるんだよ
248名無しさん@そうだ選挙にいこう:2006/08/30(水) 21:33:28
001、002・・・・という順番に列をしたいのですが可能でしょうか?
excel2003使用です
249名無しさん@そうだ選挙にいこう:2006/08/30(水) 22:03:04
テンプレ嫁
250248:2006/08/30(水) 22:12:06
>>249
読んだけど、使用OSとか関係ないし、
質問用テンプレは使わなくてよい、と書いてるじゃない

それでも、ダメならメンドいからよその板できくよ
251名無しさん@そうだ選挙にいこう:2006/08/30(水) 22:21:58
>001、002・・・・という順番に列をしたい

日本語が変。きちんとどうしたいのかを説明できてない。
252名無しさん@そうだ選挙にいこう:2006/08/30(水) 22:27:55
2chに期待しすぎだな
253名無しさん@そうだ選挙にいこう:2006/08/30(水) 23:09:59
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 抽出

2番目シートにCSVデータを取り込んで、たとえば以下のようなデータがあるとします。

注文番号 購入商品
223     みかん
223     りんご
224     みかん
225     ハイライト
226     みかん
226     りんご
227     みかん

これを1番目のシートで 223 の注文番号で購入した顧客が
何を購入したかというのを1作業(注文番号を入れるだけ)で表示させるにはどうすればよいでしょうか?
vlookupを使っても表示されるのは1行目のみかんだけだと思うので、
何か解決策があればご伝授頂ければ幸いです。
254名無しさん@そうだ選挙にいこう:2006/08/31(木) 00:28:53
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2002
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 「Excel 関数 コピー」

関数を入力したセルをコピペしても、なぜか計算してくれません(´・ω・`)
コピーしようとしているのは「=PERCENTRANK(C$2:C$11,C2)」ですが、他の関数で試しても同様でした。
これを入力したセル(E2)ではきちんと値を返してくれますが、他のセル(E3〜E11)にコピーすると、最後のC2がC3〜11に変わりはするものの、C2のときの値が表示されます。

以前はこんなことなかったと思うのですが……。ご教授お願いします。
255名無しさん@そうだ選挙にいこう:2006/08/31(木) 01:00:48
>>254
F9押して再計算されるなら
「ツール」「オプション」「計算方法」「自動」
256名無しさん@そうだ選挙にいこう:2006/08/31(木) 01:05:01
すみませんが、助けてください。

A列とC列を足し算して、答えをF列に書かせるにはどうしたらいいですか?
380行くらいあるので、全部いっぺんに自動的にやらせたいです。
257名無しさん@そうだ選挙にいこう:2006/08/31(木) 01:08:46
>>256
f列の回答が入るところをマウスで全部選択。
一番上のセルに(2行目にデータが入ってる場合f2に)
=a2+c2
と入力して[Ctrl]+[Enter]
258名無しさん@そうだ選挙にいこう:2006/08/31(木) 01:14:18
>>257
できましたー!
ありがとうございました。感涙。
259名無しさん@そうだ選挙にいこう:2006/08/31(木) 01:37:36
>>255
出来ました。ありがとうございました。
見過ごしていたようで、本当にすいません。
260名無しさん@そうだ選挙にいこう:2006/08/31(木) 02:26:27
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 「Excel VBA マウス クリック」


ボタンをシートに配置。そのボタンをクリック

フォームが開く

フォーム内の「OK」というボタンをクリックするまで、
マウスで左クリックしたセルを「黒」で塗る。
もし、「黒」だったら、「白」で塗る。(消去)



できない。。宜しければどなたか教えて下さい。
261名無しさん@そうだ選挙にいこう:2006/08/31(木) 02:51:47
>>260
何がしたいか分からん
何をどこに配置するかしっかりかけ
262名無しさん@そうだ選挙にいこう:2006/08/31(木) 02:56:28
>>261
アホ?

>何がしたいか分からん
フォーム内の「OK」というボタンをクリックするまで、
マウスで左クリックしたセルを「黒」で塗る。
もし、「黒」だったら、「白」で塗る。(消去)

>何をどこに配置するかしっかりかけ
"ボタン"を"シート"に"配置"
263253:2006/08/31(木) 02:58:38
なんとか自己解決しました。
使用した関数は、vlookup,index,match,dcounta です
264名無しさん@そうだ選挙にいこう:2006/08/31(木) 02:59:17
あとif
265名無しさん@そうだ選挙にいこう:2006/08/31(木) 03:00:46
判るだろw

つーか、丸投げで教えろってか?
それなら、VBAでココまでできましたけど・・・位の気持ちもない奴には(ry
266名無しさん@そうだ選挙にいこう:2006/08/31(木) 03:32:44
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2000
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 x軸の設定 散布図

散布図を使い日をまたいで、お客さんがどの程度来ているかというのをグラフにしたいのですが
x軸を 21時 22時 23時 24時 1時 2時…という風にしたいのですが
グラフにして表示するとx軸が1時2時〜24時という風に出てしまいます。
24時が中心に来るようにするにはどうすればよいのでしょうか
267誰か教えて:2006/08/31(木) 05:02:37
Excelに画像を挿入する時に、
最初からサイズを指定しておくってのはできないのかな。
誰か教えてくれませんか
268名無しさん@そうだ選挙にいこう:2006/08/31(木) 07:05:53
>>267
テンプレ読んだ?
269名無しさん@そうだ選挙にいこう:2006/08/31(木) 07:06:00
>>266
日付を変えればいいだけじゃん。


>>267
画像を直接貼るんじゃなくて、
イメージオブジェクトを配置しておいて、
そいつに画像読ませればいいと思うよ。

具体的なやり方は自分で調べよう。
270名無しさん@そうだ選挙にいこう:2006/08/31(木) 08:53:28
今、エクセル2003をインスコしたんだけど、数式バーの=が無いだけど、
これを表示するにはどーすれば良いでしょうか
271名無しさん@そうだ選挙にいこう:2006/08/31(木) 09:31:37
>>270
ないのよ。
272名無しさん@そうだ選挙にいこう:2006/08/31(木) 10:05:39
>>270
ユーザー設定→コマンド→挿入
=の挿入
これを適当なツールバー(数式バーの上ぐらい)にドラッグ

これで我慢してね
273名無しさん@そうだ選挙にいこう:2006/08/31(木) 10:50:59
【1 OSの種類         .】 Windows2000
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 Excel UTF Unicode CSV
UTF-8のCSVファイルを開くと文字化けが発生してしまいます。
文字コードはどこで指定すればいいのでしょうか。

保存の仕方はあったのですが
開く際の指定が見つかりませんでした。
274名無しさん@そうだ選挙にいこう:2006/08/31(木) 12:13:50
>>273
[データ]-[外部データの取り込み]あたりから読み込むと文字コードが指定できたと思うy
275名無しさん@そうだ選挙にいこう:2006/08/31(木) 12:46:25
>>271-2

有り難うございました、2000に戻します
276名無しさん@そうだ選挙にいこう:2006/08/31(木) 13:47:34
>>275
そんな事でバージョン戻すなって
無いものは無いんだもの
277名無しさん@そうだ選挙にいこう:2006/08/31(木) 15:35:35
質問です

たとえば
=FLOOR(D6,"0:30")-D7-D8-D9
の演算結果がマイナスで「-1:30」とかなる場合、結果が
「##########」になってしまいます。これを「-1:30」又は赤字で表示できませんか?
278277:2006/08/31(木) 15:37:03
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2002
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否

です
279名無しさん@そうだ選挙にいこう:2006/08/31(木) 15:45:38
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 データの最大値 行毎に最大値を求める

A1〜A50000までの各セルにそれぞれ数値が入っており、
A1〜A250までの最大値をB1に、
A251〜A500までの最大値をB2に・・・と言うように、
250行単位でそれぞれの最大値を抜き出した列を作りたいのですが
一括で処理する良い方法はありませんでしょうか?
280名無しさん@そうだ選挙にいこう:2006/08/31(木) 16:03:40
>>279
範囲のセル番地をINDIRECT関数で間接的に指定する
281名無しさん@そうだ選挙にいこう:2006/08/31(木) 16:05:28
>>277
時刻(シリアル値)に負の概念は無いので、-符号は文字列として追加するしかありません。
IFで条件分岐して、値が負の場合は"-"と結果の絶対値(ABS関数)を&で連結するようにしましょう。


>>279
ROW、ADDRESS、INDIRECT、OFFSET等で、お望みの参照範囲を作り、あとはMAX。
1*250-249=1、2*250-249=251、3*250-249=501って感じで250行単位に出来るでしょ。
別に(行-1)*250+1でもいいし。あとは、それぞれの使い方はヘルプ参照。
282名無しさん@そうだ選挙にいこう:2006/08/31(木) 16:05:42
>>277
日付の初期設定を1904年からに変える
283名無しさん@そうだ選挙にいこう:2006/08/31(木) 16:15:15
>>281
時間計算は、毎回出てくるおなじみの質問
君!知らなかったの?
284名無しさん@そうだ選挙にいこう:2006/08/31(木) 16:15:21
>>227
計算方式を1904年からに変更

>>279
B1に=MAX(OFFSET($A$1:$A$250,(ROW()-1)*250,0))
で下ドラッグ
285284:2006/08/31(木) 16:16:02
あ、かぶった。282さんスマン
286名無しさん@そうだ選挙にいこう:2006/08/31(木) 16:23:59
287名無しさん@そうだ選挙にいこう:2006/08/31(木) 17:19:05
自分は過去ログ読まないんだなwww
288名無しさん@そうだ選挙にいこう:2006/08/31(木) 17:38:28
だ ・ け ・ ど 、、、回答したいんだね

アンタがこんな子になるやなんて、おかぁちゃん 情けないわ!
289名無しさん@そうだ選挙にいこう:2006/08/31(木) 20:27:58
質問:MSエクセルの致命的な不具合

**************************************************
本来、「複数のウィンドウを開くツール」は、個別にウィンドウを閉じる動作を原則とする。
たとえば、MSIEで「ヤフー」と「グーグル」を開いていると、ヤフーのウィンドウで「ウィンドウを閉じる」を実行
しても、ヤフーのウィンドウだけを閉じる。すべてのウィンドウをいっせいに閉じることは しない。また、そういっ
た きのうは求められていないので、導入されることもない。
MS office 2003 シリーズも同様である。たとえばMSワードで5つのウィンドウを開いていても、右上の「×」ボタン
(=ウィンドウを閉じる)を実行しても、該当のウィンドウを閉じるだけである。
しかし、MSエクセルにおいては、「×」ボタンを押すと、すべてのウィンドウを閉じてしまう。これは ほかのツ
ールとの共通性を無視しており、しかも、MSオフィス シリーズ内部でも一貫性のない仕様である。
さらに、タスク バーを右クリックして「閉じる(Alt+F4)」を選択すると、なぜか1つのファイルだけを閉じる

しかし、ウィンドウ上でAlt+ F4 を押すと、すべてのウィンドウをいっせいに閉じてしまう。エクセルの内部だ
けでも一貫性がなく、もはや その問題は致命的なプログラム不具合といえる。
**************************************************
質問です。上記問題を回復する方法を教えてください。

290名無しさん@そうだ選挙にいこう:2006/08/31(木) 20:31:18
Excel2つ立ち上げれば?
291名無しさん@そうだ選挙にいこう:2006/08/31(木) 20:34:16
>>289
Excelっつーかタスクバーのプロパティで同じアプリのグループ化を
解除しとけばいいんじゃないかな。
292名無しさん@そうだ選挙にいこう:2006/08/31(木) 20:54:58
>>289
> しかし、MSエクセルにおいては、「×」ボタンを押すと、すべてのウィンドウを閉じてしまう。これは ほかのツ
> ールとの共通性を無視しており、しかも、MSオフィス シリーズ内部でも一貫性のない仕様である。

押す×が間違ってるだけだと思うが。
一つのウィンドウだけ閉じたければ、一番右上の×でなく、ツールバーのあたりにある×を押せばよい。
他のツールとも共通してるはず。
293名無しさん@そうだ選挙にいこう:2006/08/31(木) 23:26:43
>>290

違いますよ。
294名無しさん@そうだ選挙にいこう:2006/08/31(木) 23:27:15
てきとーに書いてみた
ThisWorkbookに書いてXLAとして保存、アドインとして組み込み
Execl2000でチェック
何かとんでもない動作をしても知らん

Private WithEvents App As Excel.Application
Private Sub Workbook_Open()
Set App = Application
End Sub
Private Sub App_WorkbookBeforeClose(ByVal Wb As Workbook, Cancel As Boolean)
If Not (ActiveWorkbook Is Nothing) Then
If Wb.FullName <> ActiveWorkbook.FullName Then
Cancel = True
ActiveWorkbook.Close
End If
End If
End Sub
295名無しさん@そうだ選挙にいこう:2006/08/31(木) 23:30:20
>>291

違いますよ。
296名無しさん@そうだ選挙にいこう:2006/09/01(金) 07:57:08
>>289
本来、「複数のウィンドウを開くツール」は

エクセルは、該当しないという落ちじゃないかね。
297名無しさん@そうだ選挙にいこう:2006/09/01(金) 08:45:59
そもそも日本語がわからん
>上記問題を回復する方法を教えてください。
298名無しさん@そうだ選挙にいこう:2006/09/01(金) 09:34:22
Excelを2つ立ち上げ、それぞれファイル(F)→開く(O)でブックを開く。
299名無しさん@そうだ選挙にいこう:2006/09/01(金) 09:49:38
確かに不便っちゃ不便だし統一性がないけど、タブブラウザみたいなもんだと考えればいいんじゃね?
一つのアプリ窓に複数の書類も開けるけど、エクセルを複数起動して別々に開くことも出来るっちうことで。
一番わかりやすいのはもちろんMacみたいなスタイルなんだろうけど。
300名無しさん@そうだ選挙にいこう:2006/09/01(金) 10:03:39
うぜえ
301名無しさん@そうだ選挙にいこう:2006/09/01(金) 10:05:04
セルに二段で、漢字-アルファベット-数字という並びで保険番号を
入力したいのですが、漢字は上でそれ以外は下となってしまいます。
なんでですか?ウィンドウズ98です。
302名無しさん@そうだ選挙にいこう:2006/09/01(金) 10:12:44
いま実際にどういう状態で表示されているか具体例を書き、
本当はどうしたいのかを具体的に書いた方がいいのでは?
303名無しさん@そうだ選挙にいこう:2006/09/01(金) 10:16:10
第ABDE0369‐1と上下二段でいれたいんですが、第以外は下になってしまうんです。
304名無しさん@そうだ選挙にいこう:2006/09/01(金) 10:19:36
だから「具体的に」って言ったじゃん・・・

例えば、今は

>第
>ABDE0369‐1

と表示されてしまうけど、本当は

>第ABDE
>0369‐1

というふうに表示させたい、とか。
どういう状態なのをどういう状態にしたいのかを書かないと解決策もクソもないだろ。
305名無しさん@そうだ選挙にいこう:2006/09/01(金) 10:20:35
すみません教えてください。
Aのセルの数値が2000以上か
Bのセルの数値が1000以上の条件で
Cのセルに1
それ以外はCのセルに2と入れたい場合の

Cのセルに記述する関数文を教授ください
306名無しさん@そうだ選挙にいこう:2006/09/01(金) 10:25:18
>>305
=IF(AND(A1>=1000,B1>=2000),1,2)   ※A1,B1は一行目の場合
307名無しさん@そうだ選挙にいこう:2006/09/01(金) 10:28:03
>>306
ありがとうございます。
308303:2006/09/01(金) 10:31:10
>>304
失礼しました。第ABDEを上段に、0369-1を下段に表示したいのです。
309名無しさん@そうだ選挙にいこう:2006/09/01(金) 11:00:10
>>308
第ABDE と 0369-1 の間に半角スペースを入れればOK
もし3行に分かれてしまったらセル幅を調整する
310名無しさん@そうだ選挙にいこう:2006/09/01(金) 11:16:10
>>303
改行したい位置で
[Alt]+[Enter]
311303=308:2006/09/01(金) 11:25:34
>>309.310
目からウロコです。ありがとうございます。
312名無しさん@そうだ選挙にいこう:2006/09/01(金) 11:40:12
こんなに便利なスレがあったんですね。
今までググったり本を買って読んだりしてたけど、このスレがあることを知っていれば・・・
313名無しさん@そうだ選挙にいこう:2006/09/01(金) 11:52:53
>312
まづは自分で調べる事が一番
知ったかぶりして中途半端な答え書くヤツもいるから注意してね!!
314名無しさん@そうだ選挙にいこう:2006/09/01(金) 12:36:40
>>313
×まづ → ○まず(先ず)

知ったかぶりして中途半端な日本語を書かないように!
315名無しさん@そうだ選挙にいこう:2006/09/01(金) 12:43:27
それは やぼ というものよ
316名無しさん@そうだ選挙にいこう:2006/09/01(金) 12:57:50
>>314
おぢさんはやぼでこまる
317名無しさん@そうだ選挙にいこう:2006/09/01(金) 14:51:50
そうか これが やぼ だったのか
318名無しさん@そうだ選挙にいこう:2006/09/01(金) 22:02:57
セルの数値をパラメーターとしたSQLを発行する方法はないのでしょうか?
イメージとしては以下のようなことをしたく思います。
select * from asdf where jkl = A1;

MicrosoftQueryを含むことで多少スレ違いかも知れませんが、どうかお願いします。
319名無しさん@そうだ選挙にいこう:2006/09/01(金) 22:03:08
>>299
> 確かに不便っちゃ不便だし統一性がないけど、タブブラウザみたいなもんだと考えればいいんじゃね?
> 一つのアプリ窓に複数の書類も開けるけど、エクセルを複数起動して別々に開くことも出来るっちうことで。
> 一番わかりやすいのはもちろんMacみたいなスタイルなんだろうけど。

タブ ブラウザは、タブを使うかウィンドウを使うか選択できますよ。
そもそもAlt+ F4 でウィンドウを閉じているので、タブ ブラウザみたいなもんだと考えればいいんじゃねくありません。
320名無しさん@そうだ選挙にいこう:2006/09/01(金) 22:13:52
そういうことじゃないだろ、わからんちん
321名無しさん@そうだ選挙にいこう:2006/09/01(金) 22:25:27
>>318
まずはやってみれ
322318:2006/09/01(金) 22:38:07
>>321
>>318のままのSQL文ではセルA1の内容を渡すことが出来ず、A1がデータベース側のカラム名として扱われてしまいます。
そしてデータベースにA1というカラムが存在していないとそのままカラムがないと言われます。
なんとかセルの内容をデータベース側に渡すことは出来ないでしょうか?
323名無しさん@そうだ選挙にいこう:2006/09/01(金) 23:01:25
MSエクセルが無能だといってるんですよ。
MSの独占市場じゃなければ、こんな不具合だらけのツールが売れるはずが ありませんからね。
324名無しさん@そうだ選挙にいこう:2006/09/01(金) 23:05:59
>>323
わかったけど、ここはそういうスレじゃないから。
よそにお逝き。
325名無しさん@そうだ選挙にいこう:2006/09/02(土) 00:19:05
いや、おれは>>323に同意。
326名無しさん@そうだ選挙にいこう:2006/09/02(土) 00:24:13
ピボットテーブルのような集計されたタテヨコに項目が伸びてる票があります

これを逆に、1つの表(ピボットを使う時のようなリスト)
に戻すようなのってどうやります?

なんか賢い方向あるんでしょうか?

行方向の項目は40,列方向は30あります。

VBAでアイディア貰えたら使えるレベルです。

しこしこデータを戻すのを書けば、出来ない事はないんですが
行方向列方向とも項目数が一定でないのと量が多いので
何か賢い方法があればと。
327名無しさん@そうだ選挙にいこう:2006/09/02(土) 00:53:06
手作業で可能だと言うならそれをそのまま機械化すればいい
328名無しさん@そうだ選挙にいこう:2006/09/02(土) 03:28:06
【1 OSの種類         .】 WindowsXP プロ
【2 Excelのバージョン   】 Excel2002だと思う
【3 VBAが使えるか    .】 使えません
【4 VBAでの回答の可否】 否

ある一定の数値以下の数字をセルに貼り付け(入力)したときに
そのセルに対して文字列を返すことは可能ですか?

例えば、0.1以下の数字をセルのA1に貼り付けると
『<0.1』がセルA1に対して返ってくるみたいなイメージなんですが。
329名無しさん@そうだ選挙にいこう:2006/09/02(土) 03:53:13
>>328
何故同じセルなの?
一括で何らかのデータをコピペすると推測して、別のシートや隣の表じゃダメなの?
330328:2006/09/02(土) 04:40:11
>>329

>一括で何らかのデータをコピペすると推測して
その通りです。

入力用の別シートとかを作りたいのはヤマヤマなのですが
仕事上の事情で作れないんですよ・・・
331名無しさん@そうだ選挙にいこう:2006/09/02(土) 04:49:27
仮想的にやればいいだけ
クライアントを一つつくってバックグランドで処理させる
332名無しさん@そうだ選挙にいこう:2006/09/02(土) 05:23:43
>>328
やりたいことを具体的に言ってくれ
例だと単にセルの書式でいいんじゃね?
333名無しさん@そうだ選挙にいこう:2006/09/02(土) 05:24:15
>>322
まじめにやれ

ちなみに、A1の値をA2に貼り付けるのをVBAでやってごらん
334名無しさん@そうだ選挙にいこう:2006/09/02(土) 06:13:13
>>330
▼━ 答えやすい質問のしかた ━━━━━━━━━━━━━━━━
★1 質問するときは環境や条件はきちんと書いてね。情報後出しはダメ。
★1 質問するときは環境や条件はきちんと書いてね。情報後出しはダメ。
★1 質問するときは環境や条件はきちんと書いてね。情報後出しはダメ。
★1 質問するときは環境や条件はきちんと書いてね。情報後出しはダメ。
★1 質問するときは環境や条件はきちんと書いてね。情報後出しはダメ。
★2 要望は具体例や図を使って明確かつ具体的に。

終了
335名無しさん@そうだ選挙にいこう:2006/09/02(土) 10:07:49
>>330
作業用のシート作って、終了したらコピペでいいやん
336名無しさん@そうだ選挙にいこう:2006/09/02(土) 10:23:38
>>328

セルの書式として以下のような表示形式をユーザ定義。

[<0.1]"<0.1";">=0.1"

すると、この書式を定義したセルに0.1未満の値を入力すると、
「<0.1」と表示されるし、0.1以上の値を入力すると、「>=0.1」
と表示される。
これでいいのかな?
337名無しさん@そうだ選挙にいこう:2006/09/02(土) 12:08:45
使い方が判らん奴に教えても、第三者が迷惑するぞ
338名無しさん@そうだ選挙にいこう:2006/09/02(土) 12:49:32
コピペで書式が消されるというオチでつか?
339名無しさん@そうだ選挙にいこう:2006/09/02(土) 13:57:23
教えてください
表示したくないセルがあってセルを非表示にして事足りたんですが、
たとえば行を何行か閉じて、クリックしたら開くような設定って
ありませんでしたか?昔使ってた記憶があるんですがやり方を忘れました・・。
340名無しさん@そうだ選挙にいこう:2006/09/02(土) 14:06:43
>>339
データ→グループとアウトラインの設定
341名無しさん@そうだ選挙にいこう:2006/09/02(土) 14:09:49
使ってたのとなんか違うけどできた。
ありがとう。>>340
342名無しさん@そうだ選挙にいこう:2006/09/02(土) 14:42:45
【1 OSの種類         .】 WindowsXP SP2
【2 Excelのバージョン   】 Excel2002
【3 VBAが使えるか    .】 使える
【4 VBAでの回答の可否】 否

左揃えを維持したまま文字列の先頭を隠す事はできますか?
好きな順でソートする為のものなので見た目として隠れていればどんな方法でもいいのですが、
文字列の先頭が不自然に空いてしまう状況は避けたいです。
よろしくお願いします。
343JJ:2006/09/02(土) 15:15:12
【1 OSの種類         .】 Mac OS X Tiger
【2 Excelのバージョン   】 Excel2004
【3 VBAが使えるか    .】 使えない
【4 VBAでの回答の可否】 否

生まれて初めてExcelを使うド素人です。文字を丸で囲むやり方がわかりません。
履歴書の有・無などを丸で囲みたいのです。
どうか教えてくださいませんか。 
344名無しさん@そうだ選挙にいこう:2006/09/02(土) 15:16:05
>>343
ヒント:図形
345JJ:2006/09/02(土) 15:29:15
>>344
有り難うございます。
囲みたい文字のあるセル選択→挿入オートシェイプ→図形選択→丸を選択し対象文字にドラッグ。

→円グラフのようなでかい円出現→小さくしても丸で文字が隠れる。微妙に楕円になってしまい。
相手側のExcelで読めるか心配。

以上、現在の状況です。もう1つアドバイスお願い致します!!!

346名無しさん@そうだ選挙にいこう:2006/09/02(土) 15:35:51
>>345
shiftキー
347名無しさん@そうだ選挙にいこう:2006/09/02(土) 15:59:52
>>342
___BBB
___FFF
__AAA
__DDD
__GGG
_CCC
_EEE
こんな感じのソートを、 _ の表示無しにやりたいってことか?
ならば
BBB  1
FFF   1
AAA  2
DDD  2
って感じで、隣のセルに優先グーループ順の数値入れて、その列を非表示にし
その列を第1キー、AAA、BBBなどのデータ列を第2キーにしてソートすればいいよ。
どうしても1列で賄いたければ、非表示にするのはたぶん無理なので、
___BBBに対して「@」、
__AAAに対して「_@」
_CCCに対して「__@」
と書式を変えてやれば、空白は入るが位置は揃うので不自然にはならない。
348名無しさん@そうだ選挙にいこう:2006/09/02(土) 16:30:58
【1 OSの種類         .】 Windowsxp
【2 Excelのバージョン   】 Excel2002
【3 VBAが使えるか    .】 はい
【4 VBAでの回答の可否】 可

名簿があるのですが、その名簿の人名をア行〜ワ行で分けた
別リストを作ろうとおもうのですが、ア行の人名の取得方法が
分かりません。今は、手動でやっているのですが、出来たら
VBAで簡単にしたいと思ってます。
何かいい関数などありましたら、教えてください。
349名無しさん@そうだ選挙にいこう:2006/09/02(土) 17:01:54
ふりがなで並べ替える
350名無しさん@そうだ選挙にいこう:2006/09/02(土) 17:09:24
>>348
ワークシート関数のPHONETIC(WorksheetFunction.PHONETIC)か、
VBAのGetPhonetic(Application.GetPhonetic)メソッド。

PHONETICはシートの入力からフリガナを取得するので、きちんと手入力したデータなら確実な読みが取得出来るが
手入力ではなく、コピペや外部データ読み込みだったりすると、漢字がそのまま返るし
変換するために本来の読みとは違う入力を行った場合は正しく取得できない。

Application.GetPhoneticはIME辞書を利用して読みを返すので、入力状態に関わらず一応読みを取得できるが
辞書利用故に、複数の候補を返すことがあり、基本的には1つ目を利用するが、1つ目の読みが間違っている可能性もある。
351名無しさん@そうだ選挙にいこう:2006/09/02(土) 17:11:17
Win me
Excel 2002
恥ずかしながらVBAは使えません。

1 - 1
1 - 2
1 - 3





といった連番を入力する方法を教えてください。
352名無しさん@そうだ選挙にいこう:2006/09/02(土) 17:16:27
>>351
@
入力:="1 - "&ROW(A1)
フィルコピー

A
入力:1
表示形式:「"1 - "0」
フィルコピー
353名無しさん@そうだ選挙にいこう:2006/09/02(土) 17:19:32
>>352
ありがとうございます。
354名無しさん@そうだ選挙にいこう:2006/09/02(土) 17:22:06
>>349-350
即レスありがとうございます。
とりあえず、ひらがなになおしてからなんですけど、
変数に、あ〜おの人の数を入れようとしたら、
leftで1文字目を取得して、ifとdo loopで変数に+1していく
とかいう方法しか思いつかないんですけど、
それだとかなり冗長になりそうなので、簡単な方法とかないですか?
何回もすいません。
355名無しさん@そうだ選挙にいこう:2006/09/02(土) 17:52:00
何がしたいか分らない
356名無しさん@そうだ選挙にいこう:2006/09/02(土) 18:26:13
>>351
>恥ずかしながらVBAは使えません。
使えない人もいっぱいいますよ
それでも仕事になってるんだし恥ずかしくも何ともないですよ
あなたは失礼な人ですね
357名無しさん@そうだ選挙にいこう:2006/09/02(土) 18:32:37
あるひとつのシートに入力した値を別のシートに自動で
コピーされるようにすることはできますか?
たとえばシート1にA店の売り上げ、客層などを入力
シート2にB店の…というように入れていけば
シート50に全店の売り上げが自動で入力される
という状態にしたいのですが
358354:2006/09/02(土) 18:36:24
すんません。
読み返したら、言葉全然足りてなかった。

リストの人名+数字を別のシートに横にア行とかで表示したいんですよ。
例えば、
阿部さん 2
麻生さん 3
近藤さん 4
佐藤さん 1

というのを

ア行 阿部さん 2 麻生さん 1
カ行 近藤さん 4
サ行 佐藤さん 1
というように別のシートに横書きにうつしたいんですけど、人名の件数が増えるので
相対性に強いVBAでと思ったんですよ。
359名無しさん@そうだ選挙にいこう:2006/09/02(土) 18:45:32
>>354,358
>>2・8

とりあえずどういうコードを冗長だと言ってるのか
そのコードを書いて、ここに貼ってみな。
360354:2006/09/02(土) 19:27:35
Range("b2").Select
MyA = 0
Do Until Selection = ""
Mystr = Selection.Value
Mystr = Left(Mystr, 1)
If Mystr = "あ" Or "い" Then
MyA = MyA + 1
End If
Selection.Offset(1, 0).Select
Loop

↑elseifでワ行まで。
今急いで、書いたのでちょっと違うのになるけど、
あ〜おだったら、ア行の変数に+1して数をとって
最終的にア行カ行・・・の行の範囲とって別シートに
列にして表示させようかと。
当方初心者に毛が生えたくらいなもんなんで、
こんなんしか思いつかないんですよ。
361名無しさん@そうだ選挙にいこう:2006/09/02(土) 22:24:39
とりあえず
> If Mystr = "あ" Or "い" Then
は構文として間違ってるが、まあそれは良いとして
1文字判定なら=演算子ではなくLike演算子使って文字クラスとのマッチを見た方がいいな。
でも、普通こういうのは文字コードで処理するもの。文字コードを返すのはAsc、AscW関数だ。
あとは各セルの先頭1文字を取得するのに
 Range("b2").Select
 Do Until Selection = ""
  Mystr = Selection.Value
  Mystr = Left(Mystr, 1)
  ' 処理
  Selection.Offset(1, 0).Select
 Loop
これだけのコードを使ってるが、ここは
 For i = 2 To Cells(65536, 2).End(xlUp).Row
  Mystr = Left(Cells(i, 2).Value, 1)
  ' 処理
 Next i
で事足りる。Ascで文字コード取得するなら、先頭1文字切り出す必要は無いが。
あとは自分で頑張ってみよう。またアドバイスが欲しかったら、
今度は「今急いで、書いたのでちょっと違うの」ではなく、きちんと書いて
>>2・3 VBAコードを貼る場合は、部分的に伏せたり省略したりせずに全て貼りましょう。
ってことでよろしく。
362名無しさん@そうだ選挙にいこう:2006/09/02(土) 23:12:24
ひらがなにしてあって「あ行」だったら「『あ』以上『か』より下」の条件でフィルタかければいいよ。
そんでコピー。
まくろだとautofilterだね。名簿(?)からあ行を抽出してsheet2に転機

Set targetRange = Range(Range("B1"), Range("B1").End(xlDown))
targetRange.AutoFilter Field:=1, Criteria1:=">=あ", Operator:=xlAnd, Criteria2:="<か"
targetRange.Copy Worksheets("Sheet2").Range("B1")
363名無しさん@そうだ選挙にいこう:2006/09/02(土) 23:49:51
質問です。
エクセルだけ、タスクバーに「Microsoft Excel」と左から表示されています。
そのせいで、ファイル名が ほとんど見えません。
タスク バーの表示が「Microsoft Excel - 家計簿.xls」の場合、「Microsoft Excel - 家」という表示になっています。
しかし、普通はツール名を優先表示しません。
MSIEなら「google - Microsoft Internet Explorer」となり、タスク バー上には「google - Mic」と表示され、どのタスク バーが どのファイルなのかが明確です。
質問です。
なぜエクセルだけツール名を左に表示しますか。
ビル ゲイツは死んでください。エクセルの開発者も全員死んでください。
大学で習う「インタフェイス工学」の基礎の基礎の基礎を勉強したあとに全員自殺してください。
あなた方の存在自体が社会の迷惑です。by 世界中の人間全員
364名無しさん@そうだ選挙にいこう:2006/09/02(土) 23:59:54
>>363

エクセルを使わなければ解決。
俺って天才じゃね?
365名無しさん@そうだ選挙にいこう:2006/09/03(日) 00:00:47
Adobe Reader 6.0もそうだな
ファイル名などを先に持ってくるよりアプリ名を主張するほうが重要であるとの思想なのだろう
366名無しさん@そうだ選挙にいこう:2006/09/03(日) 00:24:08
>>365

Adobe Readerを使わなければ解決。
俺って天才じゃね?
367名無しさん@そうだ選挙にいこう:2006/09/03(日) 00:56:52
両方のツールに共通の性質。
それは「市場が独占状態にあること」。
要するにビル ゲイツが死ねばいいだけです。
368名無しさん@そうだ選挙にいこう:2006/09/03(日) 05:16:21
>>361-362
遅いけど、ありがとうございました。
すごい参考になりました。
なんとかやってみます。
369名無しさん@そうだ選挙にいこう:2006/09/03(日) 07:48:45
入力フォームで入手したデータをCSVにして取り込んでいるのですが
CSV化するときにどうしても改行を入れても半角スペースになってしまいます。
半角スペースを改行に置き換えたくSUBSTITUTE()使おうとしているのですが
改行コードみたいなのを入力することは不可能でしょうか。\nとか\rでいけると思ったのに。
370名無しさん@そうだ選挙にいこう:2006/09/03(日) 07:58:36
>>369
改行コードはコードでしかないので、文字コードを文字にする関数使って
改行コードを改行文字にしないと意味無いよ。
改行文字の文字コードと、コードから文字を返す関数くらいは、すぐ見つかるはずだから自分で調べよう。
VBAなら定数のvbCr(\r)、vbLf(\n)、vbCrLf(\r\n)が使えるし、RegExpを参照して"\r"や"\n"自体も使えるけどね。
371名無しさん@そうだ選挙にいこう:2006/09/03(日) 08:34:43
>>369
置き換え機能で「検索する文字列」に半角スペース、
「置換後の文字列」で[ctrl]+[J]で置き換えればいいよ
372名無しさん@そうだ選挙にいこう:2006/09/03(日) 14:05:55
ビル ゲイツとエクセル開発者は全員 今すぐ死んでください。by 世界中の人間
373名無しさん@そうだ選挙にいこう:2006/09/03(日) 14:13:12
エクセルでつくったグラフを、ワードに挿入
したい。
可能ですか?
374名無しさん@そうだ選挙にいこう:2006/09/03(日) 14:28:50
可能です。
グラフを作る部分はExcelの話ですが、Wordに挿入する部分はWordの話なので、
それぞれ解らない部分に適したスレで質問しましょう。
375名無しさん@そうだ選挙にいこう:2006/09/03(日) 14:39:39
ありがとうございました
376名無しさん@そうだ選挙にいこう:2006/09/03(日) 15:54:51
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel 2003
【3 VBAが使えるか    .】 いいえ

    A    B     C
1   9/3   8/1   9/5
2  10   15    30
3 品名A   品名B  品名A

1行目に日付,二行目に個数,3行目に品名を入力して
他のセルにSUMIF(IF関数も使う?)を使って特定の条件の合計を出したいと思うんですが
日付の月が8月とか9月とか混ざってるので9月なら9月だけ及び特定の品名の合計
を出したいんですけど9月だけっていう出し方はどうすれば良いんでしょうか?
377名無しさん@そうだ選挙にいこう:2006/09/03(日) 16:25:58
日付はシリアル値?それとも文字?
378名無しさん@そうだ選挙にいこう:2006/09/03(日) 16:41:13
えっ シリアル値?すんません よく分かりません(´・ω・`)
普通に9スラッシュ5と入力して日付表示形式で9/5とかで表示させてるんですけど・・
すんません
379名無しさん@そうだ選挙にいこう:2006/09/03(日) 16:48:32
ビル ゲイツさんへ。死んでください。
よろしくお願い致します。
380名無しさん@そうだ選挙にいこう:2006/09/03(日) 17:09:28
>>376
=MONTH(日付セル)=9
を条件にすればよし

ちなみにそのままではSUMIFでは出来ないので、SUMとIFを配列数式で使ってね。
配列数式の使い方は自分で調べること。

どうしてもSUMIFでやりたければ、作業行(列)に、
=MONTH(A1)&","&A3
と入れて、「"9,品名A"」を条件にSUMIF
あと、行列を入れ替えた方がいいよ。
381名無しさん@そうだ選挙にいこう:2006/09/03(日) 17:37:41
【1 OSの種類         .】 WindowsXP SP2
【2 Excelのバージョン   】 Excel2002
【3 VBAが使えるか    .】 使える
【4 VBAでの回答の可否】 否

ある範囲のなかで最も多く出現する項目を調べるためには、
各項目ごとにcountifして、それをソートするしかないのでしょうか?
なにかもっといい方法があったら教えてください。
382名無しさん@そうだ選挙にいこう:2006/09/03(日) 18:25:52
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 excel 関数 比較

A列とB列にデータがあり、B列のデータがA列に含まれているのか調べたいと思っています。
vlookupを使えばいいというのが何となくわかっていますが、具体的にどうすればいいのか
わからないです。

教えていただけますでしょうか?
383名無しさん@そうだ選挙にいこう:2006/09/03(日) 18:26:39

【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2000
【3 VBAが使えるか    .】 はい少し
【4 VBAでの回答の可否】 可

エクセルのブックを保存する際、複数あるシートのそれぞれのA1を確認し、
A1が空白ならそのシートは削除、A1が埋まっていればそのまま。
という条件を入れて保存したいと考えています。
そのやり方について教えてください。

一応調べて
If Sheets("Sheet1").Range("A1").Value = "" Then
Sheets("Sheet1").Delete
の段階まではわかったのですが、
シートの名前が違うとエラーが出ます。

条件なのですが、シートの名前は多種にわたり、毎回違うことを
前提にしたVBAで教えていただけないでしょうか?
つまりシートの名前や数がいくらのときでも対応できるような。
どうぞよろしくお願いします。
384名無しさん@そうだ選挙にいこう:2006/09/03(日) 18:37:24
>>381
項目ってのが数値ならMODE関数
文字列なら配列数式で。

>>382
COUNTIFで充分だよ。
0が返ったら含まれない、0以外が返ったら含まれると判断すれば良い。

>>383
Worksheetsコレクションに対してループ回せば良い。



ちなみに、これで解らないことがあっても、すぐに聞き返したりせずに
自分で調べる努力をして、それでも解らなかったら自分でやってみたことを書いた上で再質問しようね。
385381:2006/09/03(日) 18:41:22
>>384
ありがとうございます、配列数式について調べてみます
386名無しさん@そうだ選挙にいこう:2006/09/03(日) 18:49:08
【1 OSの種類         .】 WindowsXPProSP2
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 少し
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 ひとつのセル 複数のパターン


ひとつのセルのみで複数のパターンを適用させるには?

[具体例]
A1セルに「A/B/C」と入力されているとする。
ここでAを赤、/を色無し、Bを黄、Cを青と設定する方法が解らなかった。
387名無しさん@そうだ選挙にいこう:2006/09/03(日) 19:03:00
>>386
セルをダブルクリックするかF2押すかして編集モードにし、
書式の変更をしたい文字のみを反転選択して、
右クリックの「セルの書式設定」やツールバーなどから変更する。

但し、文字単位での設定が出来ない書式もあるので注意。
とりあえず文字選択状態での「セルの書式設定」に出てこないものは
セル単位のみの設定だと思えば良い。
388383:2006/09/03(日) 19:16:14
>>384
ありがとうございます。
何とか目的の動作にたどり着きました。


ここからは別の話になるのですが、
 >ちなみに、これで解らないことがあっても、すぐに聞き返したりせずに
 >自分で調べる努力をして、それでも解らなかったら自分でやってみたことを書いた上で再質問しようね。
べつにまぁその人の性格の問題だからどうしようもないんだけど、
こういうのって書くの辞めてもらえない?
別に>>374マクロ教わるために来てるわけでもなく、ただ単純に回答が欲しくて来てる人がほとんどだと思う。

何処のスレでもいるけれど、質問者のためになっていいとか、質問者に対して優位な雰囲気をかもし出したい、
などの意図などがあってか、ヒントを出して答えを出さないほうが良いんだって考えていない?

まぁ、個人の考えだからそれはそれでいいんだし、回答がわからなければわからないでいいと思うし、
でも最後の2行で締めくくるようなことは辞めてもらえない?他の善意ある回答者による回答までも妨げられる要因になるから。

とはいえ回答していただきありがとうございました。
389名無しさん@そうだ選挙にいこう:2006/09/03(日) 19:23:11
>>388
こういうのって書くの辞めてもらえない?
390名無しさん@そうだ選挙にいこう:2006/09/03(日) 19:24:58
稀に見るギスギス感到来
氷河時間帯に突入
391名無しさん@そうだ選挙にいこう:2006/09/03(日) 19:25:15
てかさ、387は>>1

・5 回答内容でわからない部分があっても、すぐに聞き返さずにヘルプやGoogleなどで検索しましょう。

これをやわらかく言っただけなんだよね
392名無しさん@そうだ選挙にいこう:2006/09/03(日) 19:26:09
間違えた、わかるとは思うけど訂正
387→384
393名無しさん@そうだ選挙にいこう:2006/09/03(日) 19:26:21
>>391
てかさ、テンプレにあるならわざわざ書くなよな。
毎回の回答でどっさりテンプレ書き直してちゃきり無いしな。
何のためのテンプレだと思ってんだろ。
394名無しさん@そうだ選挙にいこう:2006/09/03(日) 19:28:42
>>393
もう回答が得られたなら消えれ
これ以上は荒れる
言いたいこともわかる、が、ここは質問回答スレ。
回答者には回答者のやり方がある。
気に食わないなら質問すべきでない。
395名無しさん@そうだ選挙にいこう:2006/09/03(日) 19:29:23
【1 OSの種類         .】 WindowsXPHome
【2 Excelのバージョン   】 ExcelXP(2002)
【3 VBAが使えるか    .】 ほぼコピペするだけしかできません
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 置換

A1、A2、A3・・・・に文字列が入っており、それぞれに含まれる文字列を使って1行目、2行目、3行目、・・・のセルに含まれる固定の文字列の一部と置換したいと思います。

例えばこういったときに
A1=バナナ、B1=asdfでも食うか、C1=そんなasdf、D1=asdfasdf・・・・
A2=りんご、B2=asdfでも食うか、C2=そんなasdf、D2=asdfasdf・・・・


すべての行がこうなってほしいのです。
A1=バナナ、B1=今日は疲れたしバナナでも食うか、C1=そんなバナナ、D1=バナナバナナ・・・・
A2=りんご、B2=今日は疲れたしりんごでも食うか、C2=そんなりんご、D2=りんごりんご・・・・



どうかよろしくお願いします
396名無しさん@そうだ選挙にいこう:2006/09/03(日) 19:41:27
またかw
397名無しさん@そうだ選挙にいこう:2006/09/03(日) 19:43:53
いつになったら荒れるのは自分のオナニー回答のせいだってことを
まっすぐみつめられるのかね「この子」は
398名無しさん@そうだ選挙にいこう:2006/09/03(日) 20:17:58
cellsで範囲を指定したいのですが

Set 範囲 = Range(Cells(1, 1), Cells(2, 2))
Range(範囲).Select

とするとエラーがでます
どこがいけないのでしょうか?
399名無しさん@そうだ選挙にいこう:2006/09/03(日) 20:21:27
>>371
ありがとうございます。今はその方法でやってますが、
それを毎回やるのが煩わしいので自動で出来ないかと…。

>>370
CHAR(10)でやってみましたが、セルの書式設定で折り返しをつけないとダメなんですね。
もう少しやってみます
400399:2006/09/03(日) 20:32:19
出来ました。本当にありがとうございます。
substitute(元の文字," ",char(10)) セルの書式設定を全体の折り返しありに
これでいけそうです。

別の質問になってしまいますが、CSVデータを自動更新する際、
いちいちファイルダイアログが出てきて開くボタンを押さないとならないのですが
これはどうにもならないでしょうか。
401名無しさん@そうだ選挙にいこう:2006/09/03(日) 20:39:28
>>398
だからさ、エラーが出るっちゅうなら、どんなエラーが出るのかとかぐらい書けよ
402398:2006/09/03(日) 20:46:06
>>401
失礼、忘れてました

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

というエラーメッセージです
エラーの位置は

Range(範囲).Select

です
403sage:2006/09/03(日) 21:06:17
>>402
変数にRANGE入れてるのに、さらにRANGEがはいってる。
範囲.Select
で桶
404398:2006/09/03(日) 21:17:41
>>403
そうか
「範囲」は普通の変数かと思っていたらオブジェクトになってたんですね
ありがとうございました
405名無しさん@そうだ選挙にいこう:2006/09/03(日) 21:33:08
回答だけすればいいのに、いつも余計な一言を付けるアホがいるな
まぁ質問者も一日ぐらい気長に待つべし
406名無しさん@そうだ皮肉にいおう:2006/09/03(日) 21:34:29
回答者のほうが偉いんだからいいんじゃね?
407名無しさん@そうだ選挙にいこう:2006/09/03(日) 22:09:11
>回答者のほうが偉い

( ´,_ゝ`)プッ  ガキだなぁ
408名無しさん@そうだ選挙にいこう:2006/09/03(日) 22:54:52
まあ、上級者なら舌足らずの質問でもいくつかの状況が想定できる
けどな w
409名無しさん@そうだ選挙にいこう:2006/09/04(月) 01:44:09
エクセル ワードが上達する無料でお薦めのFREEソフトを教えてもらえますか
410名無しさん@そうだ選挙にいこう:2006/09/04(月) 03:20:50
>>409
マルチしね
411386:2006/09/04(月) 05:17:06
>>387
御教授通りに操作したのだが出来なかった。

[具体例]の場合、
手順1. A1セルを選択
手順2. 「A」のみ選択
手順3a. 「セルの書式設定」で「パターン」が出ず。
手順3b. ツールバーの「塗りつぶしの色」が設定出来ず。
412名無しさん@そうだ選挙にいこう:2006/09/04(月) 05:28:30
こういうことじゃないのか?
ttp://vista.xii.jp/img/vi5731526013.jpg
413名無しさん@そうだ選挙にいこう:2006/09/04(月) 05:35:20
>>411
なんでパターンでやりたいの?
414名無しさん@そうだ選挙にいこう:2006/09/04(月) 05:49:18
>>411
ヒント:下3行

>>412
文字色ではなく網掛けなんじゃないかと
網掛けの中でも2色グラデーションのみを指す特殊な物を「パターン」と呼ぶが
他にも「パターン」はあるので、「セルの網掛けのパターン」って言わないと正しくないんだけどね
387はその辺がハッキリしないから、一般的な書式設定方法と
網掛けなどはセル内全体を対象にしか使えないってことを書いたんだと思われ
まあ網掛けを個別にやりたければ、セルの逆結合(対象セル以外を結合する)ことで
視覚的に同じ効果を出せるし、そもそもこんなのは計算ソフトではなくワープロやDTPソフトの分野だしな
415名無しさん@そうだ選挙にいこう:2006/09/04(月) 08:03:27
答えを書かないならレスしなくていいよ
こんなことで優越感でも感じてるのか知らんがじゃまだ
416名無しさん@そうだ選挙にいこう:2006/09/04(月) 09:32:46
417名無しさん@そうだ選挙にいこう:2006/09/04(月) 09:52:34
>>415
質問した方が偉そうなのも???じゃないか?
ってか、漏れはヒントもらえるだけでも十分助かる。
荒れて回答が無くなったら困るから、消えてくれ
418名無しさん@そうだ選挙にいこう:2006/09/04(月) 10:17:58
A列に社員番号があります。このときB列に社員番号に対応した名前を表示させたいときはどうすればいいのでしょう。
もちろん全社員の番号と名前のリストはあります。
419名無しさん@そうだ選挙にいこう:2006/09/04(月) 10:39:23
HLOOKUPとかVLOOKUPとか。ヘルプ見たりググったりすりゃわかる。
そもそもAccess使っとけと言いたいが耐える。
420名無しさん@そうだ選挙にいこう:2006/09/04(月) 10:55:21
このスレをVLOOKUPで検索
421名無しさん@そうだ選挙にいこう:2006/09/04(月) 11:17:11
>>419
>>420
ありがとう御座います。EXCEL関数逆引き大全で見つけたところで冷や汗が出ています。
昨日はヘルプを探し回って見つからなかったのに・・・
初歩的な質問でスレ汚し済みませんでした。
422名無しさん@そうだ選挙にいこう:2006/09/04(月) 14:30:33
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel 2003
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否

    A      B     C
1  2005/1/15  仕入   500
2          仕入   400
3  2005/1/12  仕入   300
4          仕入   100
5          仕入   50

Aの列に日付が表示されてない行のC列の対象数字の合計を別のセルに出したいんですが、
どういう式を書けばいいか教えていただけないでしょうか。
初心者用のページとか色々見たんですけどわかりませんでした。
423名無しさん@そうだ選挙にいこう:2006/09/04(月) 14:38:29
>>422
SUMIFワークシート関数でいけそうな感じかな
その表だと「=SUMIF(A1:A5,"",C1:C5)」でC2,C4,C5の合計でるよ
424422:2006/09/04(月) 14:57:24
出来ました!
素早い回答ありがとうございました。
425名無しさん@そうだ選挙にいこう:2006/09/04(月) 14:57:56
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel 2003
【3 VBAが使えるか    .】 少し
【4 VBAでの回答の可否】 可
ワークシート1にあるリストをシート2に横に並べて表示
させたいのですが、横にすると長すぎるので、
5列くらいで切って、つぎの行の頭から続きを表示させたいのですが、

Sub test()
Dim i As Integer, MyE As Integer
Dim Myt() As String
MyE = Range("a65536").End(xlUp).Row
For i = 2 To MyE
ReDim Myt(i)
Myt(i) = Worksheets("sheet1").Cells(i, 1).Value
Worksheets("sheet2").Cells(1, i) = Myt(i)
Next
End Sub
上記で、横に一列で表示できるのですが、

あ         あいうえお  ←ここで折り返したい
い    →    かきくけこ
う          さしすせそ







という風にしたいのですが、どのようにしたらいいか皆目見当もつきません。
なにかいい方法がありましたら、教えて頂きたいのですが。
426名無しさん@そうだ選挙にいこう:2006/09/04(月) 15:20:32
>>425
5で割った答えと余りを求めて使う
427名無しさん@そうだ選挙にいこう:2006/09/04(月) 17:19:14
【1 OSの種類         .】 WindowsNT4.0
【2 Excelのバージョン   】 Excel97
【3 VBAが使えるか    .】 はい
【4 VBAでの回答の可否】 可

【質問】エクスプローラを実行した後、移動したフォルダの値をテキストボックスに表示したい

'UserForm1.TextBox2の値
'C:\WINNT\Profiles\PC01\デスクトップ\○○用データ\XLS

Private Sub エクセルフォルダ指定Button_Click()
XLS_PASS = UserForm1.TextBox2
ChDir XLS_PASS
Shell "explorer.exe /n,/e,"
End Sub

現在上記のようにボタンでエクセルのフォルダを開いてるのですが、他のフォルダに移動した場合
移動先のフォルダの値をUserForm1.TextBox2に入れたいのですがわかりません。

わかる方がいらっしゃったらよろしくお願いします。
428名無しさん@そうだ選挙にいこう:2006/09/04(月) 17:28:59
>>427
APIでガシガシ書けばいけるだろうが、とんでもなく面倒くさいはず。 (調べるのすら面倒)
つーかVBAでは不可能。
普通のUIなら、そういった動作はダイアログ開いて選択させるはずだが。
429とも:2006/09/04(月) 17:34:11
【1 OSの種類         .】 Windows98
【2 Excelのバージョン   】 Excel98?
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否

いきなりすみません。質問です。
エクセルで画像を取り込みトリミングしたいんですが
画像を思いのままに斜めに切ったりしたいんですが
無理でしょうか?縦・横の直線のカットは分かるんですが・・・
締切り間際で死ぬほど焦ってます。
神降臨お待ちしてます。

430名無しさん@そうだ選挙にいこう:2006/09/04(月) 17:35:03
>>426

X = MyE \ 5

として、この後この数字をどう使ったらいいですか?
色々考えたんですが、本気でわかりません。
431427:2006/09/04(月) 17:45:54
>>428
VBAじゃ無理なのか、、、
エクスプローラのアドレスをコピペで対応することにします。
432名無しさん@そうだ選挙にいこう:2006/09/04(月) 19:26:58
>430
5で割る必要なし。

Sub hoge()
  r = 1
  c = 1
  For i = 2 To Range("A65536").End(xlUp).Row
    Worksheets("sheet2").Cells(r, c) = Worksheets("sheet1").Cells(i, 1)
    c = c + 1
    If c > 5 Then
      c = 1
      r = r + 1
    End If
  Next
End Sub
433名無しさん@そうだ選挙にいこう:2006/09/04(月) 20:21:58
Sub omake()
  For i = 2 To Range("A65536").End(xlUp).Row
    Worksheets("sheet2").Cells((i + 3) \ 5, (i + 3) Mod 5 + 1) = Cells(i, 1)
  Next
End Sub
434名無しさん@そうだ選挙にいこう:2006/09/04(月) 20:45:36
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2000
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否

質問に対して○△×で回答を得て、○を3点、△を1点、×は0点として
合計を求めたいんです。
どのような数式を組めばいいでしょうか。
是非お力を貸してください。
435名無しさん@そうだ選挙にいこう:2006/09/04(月) 20:56:24
>>429
Photoshopのバッチのほうが早そう
436名無しさん@そうだ選挙にいこう:2006/09/04(月) 21:38:47
>>434
つ if
437名無しさん@そうだ選挙にいこう:2006/09/04(月) 21:42:03
=SUM((範囲="○")*3+(範囲="△")*1+(範囲="×")*0)
と打ち込んでctrl + shift + enter

ちなみに、「(範囲="×")*0」は省略可。
438437:2006/09/04(月) 21:42:53
>>434 です。
439名無しさん@そうだ選挙にいこう:2006/09/04(月) 23:38:06
配列数式は配列数式でなければ解けないときだけにすべきですね。
=COUNTIF(範囲, "○")*3+COUNTIF(範囲, "△")
440名無しさん@そうだ選挙にいこう:2006/09/04(月) 23:38:53
VBAの話なのですが
Cells(1,1) を "A1" と変換するコマンドは無いのでしょうか?
441名無しさん@そうだ選挙にいこう:2006/09/04(月) 23:51:07
>>440
痴女
442440:2006/09/05(火) 00:03:09
>>441
すいません
Googleでも「痴女」で検索してみたのですが、どうにも分かりません
もう少し詳しく教えていただけないでしょうか?
443名無しさん@そうだ選挙にいこう:2006/09/05(火) 00:12:48
>>442
ところで本当にやりたいのはどういう動作?
444名無しさん@そうだ選挙にいこう:2006/09/05(火) 00:18:29
Sub aaa()

a = Cells(1, 1).Address(RowAbsolute:=False, ColumnAbsolute:=False)
MsgBox a

End Sub

こんなんとか?
445440:2006/09/05(火) 00:24:58
>>443
セル位置を指定する為に、"A1"形式のほうがすっきり(文字数が少なく)するためです

>>444
うまくいきました
有難うございました
446434:2006/09/05(火) 04:12:59
>>436
>>437
>>439
ありがとうごさいます!明日会社で試してみます。
447名無しさん@そうだ選挙にいこう:2006/09/05(火) 10:38:05
>>432
遅くなってすいません。
ありがとうございました。
いまいち理屈が分からないんですが、コピペして
実行したら、完璧にできていたので、感謝感激です。
理解できるように勉強します。
448名無しさん@お腹いっぱい。:2006/09/05(火) 12:01:18
【1 OSの種類         .】 WindowsXPpro 【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 いいえ 【4 VBAでの回答の可否】 否
勤続年数を計算するのに下記の数式を使うと
@ =DATEDIF(G5,$J$1,"Y")&"年"&DATEDIF(I5,$J$1,"YM")&"ヶ月"
A =DATEDIF(G8,$J$1,"Y")&"年"&DATEDIF(I8,$J$1,"YM")&"ヶ月"
@20年6ヶ月 A20年1ヶ月と表示されます。入社日は@、A同じです。
J1には =TEXT(NOW(),"yyyy/mm/dd")と入れています。
日付はシリアル値です。
何が問題でしょう、よろしくお願いします。
449名無しさん@そうだ選挙にいこう:2006/09/05(火) 13:29:34
脳だな
450名無しさん@そうだ選挙にいこう:2006/09/05(火) 15:45:33
【1 OSの種類】 WindowsXPpro
【2 Excelのバージョン】Excel2003
【3 VBAが使えるか】いいえ
【4 VBAでの回答の可否】否

今、会社で上司からエクセルの使い方について質問されたのですが、
答えられず困っています。
上司は、一つのセルに (8/1〜8/8) と入力する時に
日付(8/1)を打ち込むだけで↑を全て表示されるようにしたいと
言っています。。。どのように数式か、書式を変えればできるのか?
また、不可能な事なのか。わかる方いますか?
451名無しさん@そうだ選挙にいこう:2006/09/05(火) 16:29:19
>>450
オートコンプリート機能じゃだめなのかね?
452名無しさん@そうだ選挙にいこう:2006/09/05(火) 16:31:54
>>450
方法は沢山あるが、使用状況が分らない
情報が少なすぎ!
453名無しさん@そうだ選挙にいこう:2006/09/05(火) 16:38:59
IMEの単語登録で8/1って打ったら8/1〜8/8に変換されるようにしとけ
454名無しさん@そうだ選挙にいこう:2006/09/05(火) 16:42:44
書式

セル

表示形式

ユーザー定義

#"/1〜8/8" と入力

OK

セルに8を入力
455名無しさん@そうだ選挙にいこう:2006/09/05(火) 17:28:59
>450
同じセルはだめ。
別のセルに =TEXT(A1, "m/d") & "〜" & TEXT(A1+7,"m/d")
456名無しさん@そうだ選挙にいこう:2006/09/05(火) 21:00:18
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 シート名参照 ハイパーリンク エラー

質問はふたつあります。

ワークシートの名称をSheet1は「X」、Sheet2を「Y」とします
「X」のセルA1の値が「Y」だったらセルA2に、「Y」のセルA1を返す。
というように、シート名自体を参照させてIF関数を作りたいのですが
うまくいきません。どうぞお願いします。

また、エクセルのファイルを作成したものと別のPCで開いた際、
ハイパーリンク(同じブック内)をクリックするとエラーになると言われました。
(XP機 管理者がどうとかいうメッセだそうです)
わかる方がいたらこちらもお願いします。
457名無しさん@そうだ選挙にいこう:2006/09/05(火) 21:02:16
>>455
上司には理解できないと思われ
マクロかなんかでどのセルでも出来るようにしたほうがいい
458名無しさん@そうだ選挙にいこう:2006/09/05(火) 22:01:46
>>456

=indirect(A1&"!"&"A1") 
459名無しさん@そうだ選挙にいこう:2006/09/05(火) 22:34:16
>>418
まず社員のリストをうp
460名無しさん@そうだ選挙にいこう:2006/09/05(火) 23:59:40
えと、上司が理解できないあほでも何でもいいんですが
入力した値自体が、同じセルで書き換えられる状況
というのは、裂けるべきだと思いますがね。
461名無しさん@そうだ選挙にいこう:2006/09/06(水) 00:05:49
エクセル97です。
他のブックにシートのコピーをするとき、数式はコピーされずに計算結果の数字だけがコピーされます。
数式を他のブックにコピーする方法はありますか?
462名無しさん@そうだ選挙にいこう:2006/09/06(水) 00:10:43
ない
463名無しさん@そうだ選挙にいこう:2006/09/06(水) 00:24:00
>>458
さっそく明日やってみます!ありがとうございました。
464名無しさん@そうだ選挙にいこう:2006/09/06(水) 03:00:26
mjdk
97では出来ないのか?( ..)φメモメモ
465461:2006/09/06(水) 04:09:51
>>462
ありがとうございます。出来ないんですか‥残念

>>464
97以降のヤツはどうやってコピーするのですか?
同じ方法で試して見たいのですが‥

466名無しさん@そうだ選挙にいこう:2006/09/06(水) 06:41:13
上のほうに式があるだろ
それをコピーすればいいんじゃね?w
467名無しさん@そうだ選挙にいこう:2006/09/06(水) 07:06:02
ワード経由でやれば無問題
468名無しさん@そうだ選挙にいこう:2006/09/06(水) 08:27:53
Excel2000ユーザーです。

新しく行を挿入しようとすると、選択した行の一つ上の行の属性が
新しく挿入した行にそのまま反映されてしまうのですが、属性を
反映させずに行を挿入する方法はあるのでしょうか。

例えば、A1の行の背景が黄色に色付けしてあった場合に、A2の行を
選択して「挿入」から「行」を選ぶと、新しく挿入された行までもが黄色く
色づけされてしまっているのです。文字の色や太さに関する属性も
そのまま挿入された行に反映されてしまいます。

マクロでいろいろな作業を自動化しているのですが、行を挿入するマクロを
実行したあと、上の行の属性が反映された結果をさらにもとに戻すマクロを
付加しなければならず、できればこの余計なコードをなくしていのですが。
469名無しさん@そうだ選挙にいこう:2006/09/06(水) 08:36:51
>>468
自己レスです。A1の行という言い方は変でした。
A1と指定した場合はセルという表現が適切でした。行といった場合はAは関係ないですね。
セルの場合でも症状は同じですが・・・。
VBAの知識はほんの少しだけあります。VBAを使った方法でのヒントでも構いません。
470名無しさん@そうだ選挙にいこう:2006/09/06(水) 09:13:47
>>469
一般の設定で切り替えられるかどうかは知らない(たぶん無い)んだけど、
VBAだったら単純に挿入した個所clearすればいいんじゃないかな?
こんな感じ
ActiveCell.Rows.Insert
ActiveCell.Rows.Clear
471名無しさん@そうだ選挙にいこう:2006/09/06(水) 10:32:05
こうだな
ActiveCell.EntireRow.Insert
ActiveCell.EntireRow.Clear
472名無しさん@そうだ選挙にいこう:2006/09/06(水) 11:41:31
俺も挿入したいな・・・
473名無しさん@そうだ選挙にいこう:2006/09/06(水) 11:45:06
65000行あたりの、まだ汚されていない行をコピーして挿入すれば?
474465:2006/09/06(水) 12:43:00
>>466-467
私へのレスでしょうか。

>上のほうに式があるだろ
97には無いのかも。

>ワード経由でやれば無問題
これも駄目でした。

数式を他のブックにコピーするのって、出来そうなのに駄目なんですね。
ありがとうございました。
475468:2006/09/06(水) 13:15:27
>>470 >>471
そのコードで解決しました。有難うございました。
476名無しさん@そうだ選挙にいこう:2006/09/06(水) 13:52:27
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 全く駄目
【4 VBAでの回答の可否】 否

A1〜A1000までの数値データを使って折線グラフを描かせる場合、
データの位置によってグラフの色を変えたいのですが、やり方がよくわかりません。
たとえば、A1〜A500までを赤で、A501〜A1000までを青でグラフを描かせる、といった具合です。
どなたか宜しくご教授願います。
477名無しさん@そうだ選挙にいこう:2006/09/06(水) 14:18:46
>>476
複数系列使えばいいよ。
というか、Excelのグラフは1系列内で途中から色変えたり出来ないから
そうでもしないと君の要望は実現しない。データは一つ重なるようにね。
元のデータを移動出来ないなら、参照使っても問題ないし。

A  B  C
3
8
2  2
.  4
.  9  9
     5
     1
478476:2006/09/06(水) 14:24:23
なるほど、わかりました!
やってみます、ありがとうございました。
479名無しさん@そうだ選挙にいこう:2006/09/06(水) 19:57:45
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel 2003
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否

A1に1を入力したらG10に○表示
A1に2を入力したらH20に○表示
A1に3を入力したらJ30に○表示

これやりたいんですけど、作業セルが必要ですか。
どうやったら良いでしょう?
480名無しさん@そうだ選挙にいこう:2006/09/06(水) 20:02:32
if(a1=1,"○","")
481名無しさん@そうだ選挙にいこう:2006/09/06(水) 20:07:47
G10=IF(A1=1,"○","")
H20=IF(A1=2,"○","")
J30=IF(A1=3,"○","")
482名無しさん@そうだ選挙にいこう:2006/09/06(水) 20:40:26
>>480-481
ありがとうございます。
すごいですね、2人の方が同じ答えを出してくる
ちょっと感動しました。
483名無しさん@そうだ選挙にいこう:2006/09/06(水) 20:55:41
>>482
エクセルをやるなら、IF文 だけは覚えておいたほうがイイ。
IF文だけでかなりのことができるし、IF文が使えれば他の関数にも手が出しやすい。
IF文の中にIF文を入れて使ったりしていれば、これもまた他の関数との組合せを理解しやすくなる。

>>479への回答ではないが
=if(A1=0,"○",if(A1=1,"△","□"))
という文を使ってみて、if文の仕組みを考え、理解してみるといい。
484名無しさん@そうだ選挙にいこう:2006/09/06(水) 22:32:52
▼━質問テンプレ (出来れば使ってね) ━━━━━━━━━━━━
【1 OSの種類         .】 Windows2000
【2 Excelのバージョン   】 Excel2000
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 Googleやヘルプでの検索キーワード

計算式を入力してあるセルが計算してくれなくなりました。
F2を押してエンター押すと計算してくれるのですが、どうしてでしょう
教えて下さい
485名無しさん@そうだ選挙にいこう:2006/09/06(水) 22:52:40
>>484
何らかの設定で保存するときに再計算されるようになったのかな。

ツール-オプションのどっかにあるはず。
486484:2006/09/06(水) 22:59:29
>>485
レスありがとうございます
やってみます
487名無しさん@そうだ選挙にいこう:2006/09/06(水) 23:01:32
ツール → オプション → 計算方法 → 自動


たまに外部からもらった書類を開けたはずみで、何故か自動が手動になってしまうことがある。
488名無しさん@そうだ選挙にいこう:2006/09/07(木) 00:39:21
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 日付計算 時間計算 周期

ttp://www.alib.jp/mabinogi/
ゲームに関するものなのですが、上記のサイトに掲載されているように
終了時刻を元に、個別のチャンネル(サーバー)毎に設定された周期で
次の出現日時を計算するものを作成したいです。
しかしながら、1回出現するごとに周期が決まった値で減少していきます。
(例:30時間周期、1m30s減少の場合→1回出現すると29h58m30s→2回目は29h57m00s)
さらに、周期が24時間を切ると、切った分が48hからマイナスされたものに変動します。

これらの条件等は、分かりやすく上記ページの
「出現周期」「出現周期に関する考察」の欄に掲載されています。


周期が一定の場合は終了時刻を元に次回時刻を計算するシートを作成することができたのですが、
周期が毎回減少するものについては、アプローチの方法が思い浮かびません。
皆様の助言をいただきたいのです。宜しくお願いします。
489名無しさん@そうだ選挙にいこう:2006/09/07(木) 01:11:55
>>488
秒で考えたら?
490名無しさん@そうだ選挙にいこう:2006/09/07(木) 04:38:52
できません。
491名無しさん@そうだ選挙にいこう:2006/09/07(木) 06:20:00
>>488
    A         B
初回出現時刻   00:01:30(周期短縮)
=A1+B2       30:00:00(周期)
            =MOD(B2-B$1,1)+1

「初回出現時刻」の位置がA1ね。
表示形式は、A列が「m/d hh:mm」、B列が「[h]:mm:ss」、
あとはA2とB3の式を下方にフィルコピーすればよし。

B列は非表示にしてもいいし、全く使いたくなければ
「周期短縮*(ROW()-2)」とかを補正値として使えば良い。
492名無しさん@そうだ選挙にいこう:2006/09/07(木) 08:04:08
周期の自動減少はVBA使わないと実現しないな
493名無しさん@そうだ選挙にいこう:2006/09/07(木) 09:32:58
すみません。
セルに入力した数値から自動的に定数を引いて表示させるのはどうしたらいいのですか?

例:100と入力したら自動的に-10して90と表示させたい。
494名無しさん@そうだ選挙にいこう:2006/09/07(木) 09:42:07
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 はい
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 VBA rows.count

Private Sub Worksheet_Change(ByVal Target As Range)
If (Target.Column <> 1) Then Exit Sub
'対象となるセルの値が変化した場合に右側のセルの値をクリアする
If (Target.Value = Worksheets("work").Cells(Target.Row, Target.Column)) Then Exit Sub
Target.Offset(0, 1).ClearContents
'Sheet2にセルの値を書き出しする
Worksheets("Sheet2").Cells(Target.Row, Target.Column) = Target.Value
End Sub

以上のコードで特定の列のセルに変化があった時に
Sheet2の値と比較して右側のセルの値をクリアしています。

ここで質問なのですが
セルを1つずつ選択してクリアさせる事は可能なのですが
複数選択して実行すると(例:A1〜A3)エラーになってしまいます
セルを複数選択しても実行させるにはどうしたらよいのでしょうか?
495名無しさん@そうだ選挙にいこう:2006/09/07(木) 10:29:39
>>493
例えば、別のセルに計算式を入力する
例えば、コピーの減算を使う
496名無しさん@そうだ選挙にいこう:2006/09/07(木) 10:31:43
>>494
とりあえず
For Each OneTarget In Target
でOneTargetに対して処理
497名無しさん@そうだ選挙にいこう:2006/09/07(木) 11:04:20
数字をうったら日付に変換されてしまうんですけどどうすれば元に戻せます?

123→xxxx/xx/xx

excel 2000
win 98
498名無しさん@そうだ選挙にいこう:2006/09/07(木) 11:08:43
497です。解決しました。
499名無しさん@そうだ選挙にいこう:2006/09/07(木) 11:11:57
もう一つ質問なんですがたとえばCTRL-; で日付をいれるとき月等が一桁の場合"つねに"デフォルトで0を前につけるようにするにはどうすればいいですか?

2006/6/6→2006/06/06

excel 2000
win98
500名無しさん@そうだ選挙にいこう:2006/09/07(木) 11:51:21
>>499
yyyy/mm/dd
501名無しさん@そうだ選挙にいこう:2006/09/07(木) 11:59:37
▼━質問テンプレ (出来れば使ってね) ━━━━━━━━━━━━
【1 OSの種類         .】 Windowsxp
【2 Excelのバージョン   】 Excel2002
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 offset

数値が縦にずらっと並んでいて、その平均を求めたいんですが
平均の期間を10個平均にしたり5個平均にしたり簡単に
変えられるようにしたいんです。で↓のようにしてみたのですが、
K3というのは数値が入っているところの一番上です。L$2は期間の数値です。

=AVERAGE(OFFSET(K3,L$2,0):K3)
これだと10個平均を求めたいときに9を入れなければダメで使いづらいです。
10個平均のときは10と入れれば良いようにしたいです。
よろしくおねがいします。
502名無しさん@そうだ選挙にいこう:2006/09/07(木) 12:14:29
>>501
=AVERAGE(OFFSET(K3,L$2-1,0):K3)
503名無しさん@そうだ選挙にいこう:2006/09/07(木) 12:21:40
おぉ!ありがとうございます>>502
504499:2006/09/07(木) 12:23:36
>>500
それはどこで設定すればいいんですか?
書式→セル→表示形式 からだとセルごとにしか設定できないようです。
また
書式→スタイル の表示形式をyyyy/mm/ddにかえちゃうと123ってうっても全て日付に変換されてしまいます。

とにかく日付の場合だけつねにどのセルでもyyy/mm/ddの形式に自動的になるように出来ないでしょうか?
505名無しさん@そうだ選挙にいこう:2006/09/07(木) 12:49:03
WEBクエリで株価を取得してますが、一度に50件くらい(HPに表示されている件数)
しかダウンロードできないんですけど、一回で一年分ダウンロードしたいのですが、
どうやるんでしょう。。。?
506名無しさん@そうだ選挙にいこう:2006/09/07(木) 13:01:36
>>505
まずはテンプレ嫁
507名無しさん@そうだ選挙にいこう:2006/09/07(木) 13:23:42
>>505
1年分表示できるようなwebページのアドレスがあればそこで取り込めばおk
そういうページが無いなら、1ページずつ読み込むようなVBAを作る。
508名無しさん@そうだ選挙にいこう:2006/09/07(木) 13:27:56
【1 OSの種類         .】 Windowsxp
【2 Excelのバージョン   】 Excel2002
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 抽出 オートフィルタ

A県 バナナ
A県 りんご
A県 みかん
B県 りんご
B県 ぶどう
B県 なし

このようなリストがあって、このうちA県にはない項目(ぶどう・なし)をすべて抽出するためにはどうしたらよいでしょうか。
509名無しさん@そうだ選挙にいこう:2006/09/07(木) 14:04:31
>>508
VLOOKUPとかCOUNTIFなどで判別したセルを用意する
あとはオートフィルタ
510名無しさん@そうだ選挙にいこう:2006/09/07(木) 16:11:39
>>504
"日付"等に標準で用意されてないものは、ユーザ定義で設定する。
511名無しさん@そうだ選挙にいこう:2006/09/07(木) 17:16:23
【1 OSの種類         .】 Windows98SE
【2 Excelのバージョン   】 Excel2000
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否

オートシェイプで矢印を書いたのですが線の色が出ません。
オートシェイプの書式設定で見ると線の色がなしになっています。
色を設定すれば色が出るのですが新たに矢印を書くと色なしに
なってしまいます。その他の図形も色がでませんでした。
どうしたら最初から色のついてる図形になりますか?
512名無しさん@そうだ選挙にいこう:2006/09/07(木) 17:35:49
>>511
「オートシェイプの規定値に設定」
こんなの見たことないかな?
513名無しさん@そうだ選挙にいこう:2006/09/07(木) 17:42:57
>>512
わかりました。ありがとうございます。
514名無しさん@そうだ選挙にいこう:2006/09/07(木) 18:10:32
【1 OSの種類         .】 Windowsxp
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否

同じスペックのパソコンが2台(AとB)ありまして、
Aでフロッピーに保存したファイルをBで開くと何枚か表示されないシートがあります。
保存の仕方はデスクトップにあるファイルをフロッピーにドラッグ&ドロップしてます。
何が原因なのでしょうか?よろしくお願いします。
515名無しさん@そうだ選挙にいこう:2006/09/07(木) 18:46:03
▼━質問テンプレ (出来れば使ってね) ━━━━━━━━━━━━
【1 OSの種類         .】 Windowsxp
【2 Excelのバージョン   】 Excel2002
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 WEBクエリ
WEBクエリで株価を取得してますが(ヤフーファイナンス)、一度に50件くらい?(HPに表示されている件数)
しかダウンロードできないんですけど、一回で一年分ダウンロードしたいのですが、
どうやるんでしょう。。。?
516名無しさん@そうだ選挙にいこう:2006/09/07(木) 18:52:24
>>514
> 何枚か表示されないシートがあります。
エラーで弾かれるのか?
それならそのエラーを書き込まないと、ここにはエスパーいないんだから回答は期待できないよ
517514:2006/09/07(木) 20:08:17
>>516
エラーとかメッセージは何も表示されません。
同じブックの6月と7月は表示されるのに8月と9月が表示されないとう感じなんです。
518名無しさん@そうだ選挙にいこう:2006/09/07(木) 20:09:53
【2 Excelのバージョン   】 Excel2003

下記のようにユーザーフォーム上のチェックボックスがABCDと4つある時、
各ボックスにチェックを入れた際にA列のセルに

未入力 → 0  例1) ABにチェックなら合計3
A□   → 1  例2) BDなら合計10
B□   → 2  例3) BCDなら合計14
C□   → 4
D□   → 8

のように、組み合わせの合計値を返して入力したいのですが、
どのような条件を設定すればよいのでしょうか?

判定自体は、Select Caseで0〜15までの各組み合わせを返せばいい事までは分かるのですが…。
何方か是非ご教示お願いしますm(__)m
519名無しさん@そうだ選挙にいこう:2006/09/07(木) 21:12:48
>>518
Function aaa()
a = (CheckBox1.Value = True) * (-1) + (CheckBox5.Value = True) * (-2) + (CheckBox3.Value = True) * (-4) + (CheckBox4.Value = True) * (-8)
Range("A1") = a
End Function


520名無しさん@そうだ選挙にいこう:2006/09/07(木) 21:16:12
>>518
Cells(1, 1) = (CheckBox1.Value = True) * -1 + (CheckBox2.Value = True) * -2 + (CheckBox3.Value = True) * -4 + (CheckBox4.Value = True) * -8
Select Caseは使っていませんがこれでOK
521名無しさん@そうだ選挙にいこう:2006/09/07(木) 21:18:02
CheckBoxの番号はご自分の環境に合わせてください

Private Sub CheckBox1_Change()
aaa
End Sub

519のコードを各チェックボックスが変更されたら呼び出すか、
「登録」とかボタンを作ってチェックボックスにチェックを入れた後、
登録ボタンを押して呼び出す。
522名無しさん@そうだ選挙にいこう:2006/09/07(木) 21:28:56
>>518
チェックボックスは2のn乗の加算で考えると楽だよ。数が増えてもループ処理でいける。
Checkbox1〜Checkbox4という名前で使ってると仮定すると、こんな感じ。

Dim i As Integer, result As Integer
For i = 1 To 4
result = result - Me.Controls("Checkbox" & i).Value * 2 ^ (i - 1)
Next
MsgBox result 'Range("A1").value = result

選択と同時に書き込みたいんならそれぞれのチェックボックスのchangeイベント
とかで上の処理をするサブルーチン呼び出せばいいんじゃないかな。
523名無しさん@そうだ選挙にいこう:2006/09/07(木) 21:45:23
>>515
> どうやるんでしょう。。。?
自分で考えて。

こういうのを自己解決出来ないレベルの奴に教えると
鯖の負荷も考えないような使い方しだすから、危なっかしくて教えられない。
自分で解決できる奴なら、そういうことを考慮する頭を持ってるだろうけど。
524名無しさん@そうだ選挙にいこう:2006/09/07(木) 22:07:05
病院行け
525518:2006/09/07(木) 22:23:24
>>519 >>520 >>521
皆さんありがとうございます!
やっぱり色々な記述方法があるんですねぇ…超文系の自分のセンスの無さを痛感します('A`)

>>522
目から鱗というか変な汁が出そうです(つД`)
やっぱループで回すからには、オブジェクトに変な名前つけたらいかんですね…。
通番とかで管理しないと、ループの括りに入れるだけで膨大な労力が…。
命名規則を根本から考え直すべきなんでしょうね(´・ω・`)

この方法でループさせた場合、組み合わせをチェックしてフォーム側に返す場合にも
何か効率のいい方法はあるんでしょうか?
下記のように、Select Caseで i のパターンを一つずつ地道に潰すのは死ねますので…。

Case 1: Checkbox1.Value = True
Checkbox2.Value = False
     Check(ry

(以下全パターンを網羅して記述 orz)
526名無しさん@そうだ選挙にいこう:2006/09/07(木) 22:32:54
>>483
読めました!
「もし A1 が 0 なら○を返す。A1 が 1 なら△、それ以外なら□を返す。」です。
早く書けるようになりたいです。
527名無しさん@そうだ選挙にいこう:2006/09/07(木) 22:36:10
>>525
ビット演算という考え方を使います。昔からの伝統的な方法で、
2進数で考えたときの任意のケタのビットが立っているかどうかを
and演算子で計算する方法です。
いきなり言っても分らんのやろうけど、興味があったら2進数とか
ビット演算で調べるといいよ。

で、具体的には各チェックボックスに割り当てた2のn乗の数値と
組み合わせの結果の数値をand演算子で計算して、0にならなけ
ればそのチェックボックスをオンにすればおk
簡単な方法だから、みんな2のn乗でふらぐ管理してるんだと思うよ

a = InputBox("数を入れてください")
For i = 1 To 4
Me.Controls("Checkbox" & i).Value = CBool(2 ^ (i - 1) And a)
Next
528518:2006/09/07(木) 22:56:47
>>527
解説と回答どうもありがとうございます!
今VBA大全でCboolの項目を読んで理解できました。これはかなり応用できますね。

一応ネットワーク関係者なので、2進数や16進数、基数変換というものは解るのですが
生来の理系センスの無さからVBAなどに応用できないもので…orz

ビット演算は奥が深そうなので地道にやっていきたいと思います。
(RAID5とかでちょっと齧った程度ですので…)
本当にありがとうございましたm(__)m
529493:2006/09/08(金) 01:04:08
>>495

>セルに入力した数値から自動的に定数を引いて表示させるのはどうしたらいいのですか?
>例:100と入力したら自動的に-10して90と表示させたい。
の質問のものですが、

>例えば、別のセルに計算式を入力する
>例えば、コピーの減算を使う

別のセルに計算式を入れてどの様に使うのですか?
それで空白セルに100と売ったら90と表示されますか?
どう入力すれば入力値−10のマクロになるのでしょうか?
530名無しさん@そうだ選挙にいこう:2006/09/08(金) 02:02:51
>>529
マクロ用ボタンつけるとか、手動でマクロ起動するなら手はあるけれど、
そういうのは無しで数字を-10はほぼ無理と思ったほうが良い。
531名無しさん@そうだ選挙にいこう:2006/09/08(金) 07:45:18
>>530
セル入力時にアクションおこせばいいだけでしょ
詳しくないならレスしなくていいよ
532名無しさん@そうだ選挙にいこう:2006/09/08(金) 08:12:07
>>493 >>529
君の場合まず入門書を読みなさい。

やり方は沢山ある、
例ではどこに-10の結果を表示させたいのか分らない
いちいち想像して回答してくれる人は少ないからね!
533名無しさん@そうだ選挙にいこう:2006/09/08(金) 09:20:24
>例ではどこに-10の結果を表示させたいのか分らない
これはどうでもいい
作業セルが使えるかどうかが重要
534名無しさん@そうだ選挙にいこう:2006/09/08(金) 09:21:39

同じ意味じゃないのか
535名無しさん@そうだ選挙にいこう:2006/09/08(金) 09:45:40
>>531
詳しいなら答えを教えてください(-_-)
536名無しさん@そうだ選挙にいこう:2006/09/08(金) 09:48:06
入力したセルで10引きたいんだろ?
できるけど、そういうことはあまりやらないほうがいいと思うよ。
まともなコードが書ける人はほとんどいないし。
ループがやっとまわせる程度の素人マクロならいっぱい書ける人いるが。
537名無しさん@そうだ選挙にいこう:2006/09/08(金) 09:50:34
すいません、会社のエクセルなんですが
確かに 100 と入力したはずなのに
知らない間に 90 になっています。
間違いの元なので、直したいのですが
どうすれば良いでしょうか。


という質問が出てくる悪寒。
538名無しさん@そうだ選挙にいこう:2006/09/08(金) 09:57:12
>>536
>できるけど、そういうことはあまりやらないほうがいいと思うよ。
余計なお世話じゃね?
539名無しさん@そうだ選挙にいこう:2006/09/08(金) 10:01:12
答えられる人がいないからってことじゃね?w
540名無しさん@そうだ選挙にいこう:2006/09/08(金) 10:12:17
>>493
A列の数値だけなら
Private Sub Worksheet_Change(ByVal Target As Range)
Dim rng As Range
Dim i As Range
Set rng = Application.Intersect(Target, Me.Range("a:a"))
If rng Is Nothing Then Exit Sub
Application.EnableEvents = False
For Each i In rng
If VarType(i.Value) = vbDouble Or _
VarType(i.Value) = vbCurrency Then
i.Value = i.Value - 10
End If
Next i
Application.EnableEvents = True
End Sub
541540:2006/09/08(金) 10:14:25
すまん、インデントが全然付いてなかった。
542540:2006/09/08(金) 10:24:16
>>540のコードは標準モジュールに書くんじゃないよ。
A列で10引きたいシートのシートタブを右クリック、(コードの表示)で出てきたモジュールに書くこと
543名無しさん@そうだ選挙にいこう:2006/09/08(金) 10:29:39
連続データ作成でもう一度-10される
544名無しさん@そうだ選挙にいこう:2006/09/08(金) 10:37:22
>>540
もうすこし基本を勉強したら?
素人レベルには十分すぎるけどさ。
545名無しさん@そうだ選挙にいこう:2006/09/08(金) 10:40:26
見せてもらおうか!
プロレベルのコードとやらを。
546544:2006/09/08(金) 10:43:07
最低でもi.Valueは変数に入れるのが普通だろ?
547名無しさん@そうだ選挙にいこう:2006/09/08(金) 10:50:58
>493と>540は今週のベスト・バカップルだな
548名無しさん@そうだ選挙にいこう:2006/09/08(金) 11:30:17
くだらね
549名無しさん@そうだ選挙にいこう:2006/09/08(金) 11:43:37
なに照れてんの、お似合いだよ
550名無しさん@そうだ選挙にいこう:2006/09/08(金) 11:44:34
釣れたよ。
551名無しさん@そうだ選挙にいこう:2006/09/08(金) 12:17:19
複数のシートが選択されている時(作業グループ時)にセルを編集すると、
警告ダイアログが出るようにできますでしょうか?

【OS:Windows XP Pro】
【バージョン:Excel 2003】
【VBAがつかえるか?:いいえ】
【4 VBAでの回答の可否:否】
【5 検索キーワード:複数のシート Excel 警告 】
552名無しさん@そうだ選挙にいこう:2006/09/08(金) 12:57:46
なぜ警告が出るか分かる?
553名無しさん@そうだ選挙にいこう:2006/09/08(金) 13:05:51
VBAなしで出来るのか?
554551:2006/09/08(金) 13:12:38
>>552
元々作業グループというのは複数のシートを同時に作業する為のものであるから
その作業をしている上であえて警告を出すのはおかしい と、言うことでしょうか?

実は、複数のシートを割付で印刷することが多く、
それらシートがとびとびで更に何パターンも出力することがあるので、
普段 「印刷対象」→「選択したシート」で出力をしています。

出力直後等にうっかり、作業グループにしたままセルの編集をしちゃったりしてしまうんです。
気を付けていればいい問題かもしれませんが、もし警告を出せるようにできたらと思ったのですが・・・。
555名無しさん@そうだ選挙にいこう:2006/09/08(金) 13:16:02
>>551
複数のシートを同時に編集したいの?
556名無しさん@そうだ選挙にいこう:2006/09/08(金) 13:22:28
>元々作業グループというのは複数のシートを同時に作業する為のものであるから
>その作業をしている上であえて警告を出すのはおかしい と、言うことでしょうか?
お前おもしろいなw
557名無しさん@そうだ選挙にいこう:2006/09/08(金) 13:27:36
テンプレの使い方が・・w
558名無しさん@そうだ選挙にいこう:2006/09/08(金) 13:46:29
VBA覚えなされ
指示画面つくれば印刷作業も楽になるだろうに

ところでexcelとかVBAの○投げスレ、どっかにあるのかな?
559名無しさん@そうだ選挙にいこう:2006/09/08(金) 19:17:01
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2000
【3 VBAが使えるか    .】 はい
【4 VBAでの回答の可否】 可
【5 検索キーワード     】

特定の文字のセルだけを選択したいのですが、方法がわかりません。
だれか教えて。
560名無しさん@そうだ選挙にいこう:2006/09/08(金) 20:39:18
【1 OSの種類         .】 Windows2000
【2 Excelのバージョン   】 Excel97
【3 VBAが使えるか    .】勉強中
【4 VBAでの回答の可否】 可
【5 検索キーワード     】

カーソルがセルを移動するたびに処理を行いたいのですが、どこにどのような記述をすればよろしいのでしょうか?
WORKBOOK SHEET CHANGEのカーソル移動バージョンです
561名無しさん@そうだ選挙にいこう:2006/09/08(金) 21:02:33
>>560
Worksheet_SelectionChangeでどうかな?
562名無しさん@そうだ選挙にいこう:2006/09/08(金) 21:05:40
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 インポート

ブラウザで表示した住所録などを抽出して、エクセルにインポートする方法がありましたら
教えて下さい。

例えばhttp://search.post.japanpost.jp/7zip/kanji2.cgi?ken=42&city=%93%EC%93%87%8C%B4%8Es&nt=1
こんな住所一覧をエクセルで住所録として管理したいです。
563名無しさん@そうだ選挙にいこう:2006/09/08(金) 21:07:14
質問です
エクセルです
保護のトラブルなんですが
コントロールボックス(コンボボックス)ありますよね?
あのプルダウンで項目を選ぶやつ。
この箇所を非保護に設定するのどうしたらいいんでしょうか?
それとも不可能なんでしょうか?
コントロールボックス(コンボボックス)の保護のロックを解除にしてもだめでした
どなたかしりませんか?
【1 OSの種類         .】 Windows2000
【2 Excelのバージョン   】 Excel2002
【3 VBAが使えるか    .】できない
【4 VBAでの回答の可否】 不可
【5 検索キーワード     】セルの保護
564名無しさん@そうだ選挙にいこう:2006/09/08(金) 21:11:13
>>561
こんなのあるんですか。試してみます。ありがとうございました
565名無しさん@そうだ選挙にいこう:2006/09/08(金) 21:26:40
>>562
そのままの機能があるでしょ
566名無しさん@そうだ選挙にいこう:2006/09/08(金) 22:10:10
よろしくおねがいします
エクセルで提案書を作成しているのですが,シートでは同じ大きさの
ヘッダーを使用していても,印刷すると(拡大・縮小するので)大きさ
や全体のバランスが不揃いになります

なんとか楽に提案書の体裁を統一する方法はないものでしょうか??

その一案としてpptのリンク貼り付けを考えているのですが,バックアップ
のためにファイルの名前を変更すると,当たり前ですがリンクが外れて
しまいエクセルでの値が反映されません
それだけが不満です

良案ないものでしょうか
567名無しさん@そうだ選挙にいこう:2006/09/08(金) 22:51:17
>>563
コントロールツールオブジェクト(コンボボックスとかチェックボタンとか)は
VBAで使うために存在するオブジェクトです。全ての操作はVBAで行います。
VBA使えない人はまだしも、VBA使いたくない人は、コントロールツールも使わないでください。


>>566
http://pc5.2ch.net/bsoft/kako/1025/10255/1025524380.html
568名無しさん@そうだ選挙にいこう:2006/09/09(土) 06:34:14
>>567
使いませんが
ところで非保護にはできなんでしょうか?
569名無しさん@そうだ選挙にいこう:2006/09/09(土) 07:42:06
ヒント:にくちゃんねる
570名無しさん@そうだ選挙にいこう:2006/09/09(土) 07:42:40
>>568
意味無くあげるのはよそうね
あと567のレスで理解出来ないなら
もう来ないでくださいね
571名無しさん@そうだ選挙にいこう:2006/09/09(土) 08:11:02
わかるわけねーだろ
572名無しさん@そうだ選挙にいこう:2006/09/09(土) 08:13:14
>>562
[データ]-[外部データの取り込み]-[新しいwebクエリ]でいけるかな
573名無しさん@そうだ選挙にいこう:2006/09/09(土) 08:14:26
出来ないでFAw
かえれ
574名無しさん@そうだ選挙にいこう:2006/09/09(土) 08:21:05
>>566
よくわからんけど、ヘッダだけあらかじめ印刷しとけばいいんじゃない?
575名無しさん@そうだ選挙にいこう:2006/09/09(土) 08:22:45
よくわからんけど、最初から紙に書けばいいんじゃね?
576名無しさん@そうだ選挙にいこう:2006/09/09(土) 08:27:26
>>568
移動とか大きさ変更とかの編集は「ロック」のチェック外しとけばできるはず
リストやリンクするセルがある場合には、そこもロック外しておかないと
駄目なんじゃね?
577名無しさん@そうだ選挙にいこう:2006/09/09(土) 08:28:46
>>573
おまえには出来ないんだろうな
578名無しさん@そうだ選挙にいこう:2006/09/09(土) 08:30:39
どだい保護のロックに言及してるのにActiveXコントロールと勘違いするような
VBA脳には無理な相談だったな
579名無しさん@そうだ選挙にいこう:2006/09/09(土) 08:35:28
>>578
おまえ、恥ずかしいな。
580名無しさん@そうだ選挙にいこう:2006/09/09(土) 08:55:06
>>570
意味無く上げて見ましたが
   な に か ?
581名無しさん@そうだ選挙にいこう:2006/09/09(土) 09:16:27
>>579
どこが?どう恥ずかしいのかご教授頂けませんか先輩。
ああ、もしかしたらVBAじゃないと解決できないっ☆って思い込んでるとこでしょうか。
それとも自分の脳内説明の前提は他人も理解してないとおかしいと思ってるとこかなあ?
もしかしたら、説明が否定されると人格否定されると思ってるとこかな?
わっかんないやー。悪いとこは直すから教えて大先生様
582名無しさん@そうだ選挙にいこう:2006/09/09(土) 09:17:54
>>581
糞質問者にヒントは出すなよ・・・
遠回しに煽って楽しむ流れだろうに・・・
583名無しさん@そうだ選挙にいこう:2006/09/09(土) 09:21:44
>>582
おまえ、恥ずかしいな。
584名無しさん@そうだ選挙にいこう:2006/09/09(土) 09:23:13
せめて質問の内容に答えてくださいよ大先生様wwww
585名無しさん@そうだ選挙にいこう:2006/09/09(土) 09:25:11
ああ、すみません。大先生の残りカスみたいなプライドまで奪うつもりはないんで。
てか、どうでもいいんで、この変で消えます。
スレ汚し失礼しました。
586名無しさん@そうだ選挙にいこう:2006/09/09(土) 09:27:29
空気読めない人は
読解力ないのかな
587名無しさん@そうだ選挙にいこう:2006/09/09(土) 09:28:28
お、逃げた
捨て台詞まで吐くとは負け犬根性全開だな
588名無しさん@そうだ選挙にいこう:2006/09/09(土) 09:31:54
質問です。

A2に「=A1」と入っています。
ここでA2にセルを挿入し、下方向にシフトしてA2がA3に移動します。

すると、A3はA2のときと同様「=A1」となります。
これを「=A2」と変化するようにしたいのですが、どうすればいいのでしょうか?
589名無しさん@そうだ選挙にいこう:2006/09/09(土) 09:38:11
説明補足

A1「」
A2「=A1」

A1「」
A2「」←行の挿入
A3「=A1」←A2の内容のまま
となるのを、
A1「」
A2「」←行の挿入
A3「=A2」←1行下にシフトした分、参照セルも1行下にシフト
になるようにしたいということです。

なぜこんなことをしたいかというと、
1行前のデータを参照する表を作っており、しかも行の挿入を行うことがあるからです。
590名無しさん@そうだ選挙にいこう:2006/09/09(土) 09:47:05
>>588-589
A2=OFFSET(A2,-1,0,1,1)で
591名無しさん@そうだ選挙にいこう:2006/09/09(土) 09:47:14
だったら最初から指定セルを参照する式ではなく
一つ上のセルを参照する式書けばいいじゃん。

どう書くのかとかは聞かないでね。ヘルプに載ってるから。
592名無しさん@そうだ選挙にいこう:2006/09/09(土) 09:47:27
┌───────────────────────────
│                              U
│グラフウィンドウ                     U
│         ここまでがモニタに表示される部分→Uこれより右は、画面の外
│                              U
│                              U
└───────────────────────────
├──┼──┼──┼──┼──┼──┼──U──┼──┼──┼
│データ│   │   │   │   │   │   U画面の外
├──┼──┼──┼──┼──┼──┼──U──┼──┼──┼
│データ│   │   │   │   │   │   U画面の外
├──┼──┼──┼──┼──┼──┼──U──┼──┼──┼
│データ│   │   │   │   │   │   U画面の外
├──┼──┼──┼──┼──┼──┼──U──┼──┼──┼
│データ│   │   │   │   │   │   U画面の外
├──┼──┼──┼──┼──┼──┼──U──┼──┼──┼
│データ│   │   │   │   │   │   U画面の外
├──┼──┼──┼──┼──┼──┼──U──┼──┼──┼
│データ│   │   │   │   │   │   U画面の外
├──┼──┼──┼──┼──┼──┼──U──┼──┼──┼

図が大きくてすみません。質問させてください。
A列にデータが縦に順番に入力される状態で、その値をグラフにプロットするというシンプルなシートがあります。
この状態でデータを入力していくと、やがてグラフは画面の外でプロットする状態になります。
これを常にプロットした点を追い続けるようにするにはどうすればいいでしょうか?
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2000
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 はい
593名無しさん@そうだ選挙にいこう:2006/09/09(土) 09:49:05
>>590
ありがとうございます。
簡潔なお答えいただき感謝です。
回答より薀蓄重視のレスで、しかも正答より亀レスな>*91氏もありがとうございました。
594名無しさん@そうだ選挙にいこう:2006/09/09(土) 09:52:40
頭の悪い奴ほど回りくどいし的確でない情報を連ねるからな。
キレる奴は一行の回答で十分。
595名無しさん@そうだ選挙にいこう:2006/09/09(土) 11:15:15
長ったるしい蘊蓄もアレだが>>593-594みたいなのはもっと哀れだなw
596名無しさん@そうだ選挙にいこう:2006/09/09(土) 11:27:18
自分の意見すらなく
他人をけなすだけの595よりはマシじゃない?
597名無しさん@そうだ選挙にいこう:2006/09/09(土) 11:35:52

毎度のパターンの後、必ずこの手のレスがつく
598名無しさん@そうだ選挙にいこう:2006/09/09(土) 11:43:14
> 自分の意見すらなく
> 他人をけなすだけ
そういう意味では少なくとも594は595と同じレベル。
あれが意見だというなら595も意見だし。
599名無しさん@そうだ選挙にいこう:2006/09/09(土) 11:49:02
結論
>590 >>>>>>>>>> 他
600名無しさん@そうだ選挙にいこう:2006/09/09(土) 12:07:14
煽るだけじゃなくて
回答も書けよ
601名無しさん@そうだ選挙にいこう:2006/09/09(土) 12:14:17
>>578
そうなんだよね。
VBAがつかる使えないとは別にして何か操作方法があるはずなんだけどねえ。
結局だれもわからないのかあ・・・
ググっても出てこないし困ったなあ・・
602名無しさん@そうだ選挙にいこう:2006/09/09(土) 12:21:04
>>589
自動再計算関数のOFFSETより名前の定義を利用した方がいいよ。
たとえばSheet1のB2にカーソルを置き、名前の定義で「上」と定義、参照範囲を=Sheet1!B1とすれば、
A2で=上とすれば2行目に行挿入してもA3の式の=上はA2を参照する。
603名無しさん@そうだ選挙にいこう:2006/09/09(土) 13:29:21
どうか教えてください。
Microsoft Office Excel 2003をWINの2000で使用しています。

毎月の売上を管理しているのですが、
小数点以下を切り捨てて計算をするにはどういう作業をすればいいのでしょうか?
0.00
→0.0
というボタンを押して隠して計算していたのですが、
隠れていた小数点以下の部分が足されて1円繰り上がったりして悩んでいます。
そんなセルには、結局電卓で計算して打ち込むという効率の悪さ…。

条件付書式の所もいじってみたのですが、上手くいかず…
データの入力規則の条件の設定を
・入力値の設定→小数点数
・データ→次の値以上
・最小値→0
にしてみたんですが、これで合っていますでしょうか???
604名無しさん@そうだ選挙にいこう:2006/09/09(土) 13:40:56
A1のセルに "バナナ" もしくは "リンゴ" もしくは "みかん" 以外の文字が入っていた場合、
A1のセルの背景色を変えるというマクロを教えてください。

バナナ以外の場合とした場合はこれで何とかいけました。
If Not Range("A1").Value = "バナナ" Then
Range("A1").Interior.ColorIndex = 10

バナナとリンゴとみかん以外の場合について、どうぞよろしくお願いします。
605名無しさん@そうだ選挙にいこう:2006/09/09(土) 13:41:53
>>603
切捨ては関数の INT,ROUNDDOWN などでどうぞ
606名無しさん@そうだ選挙にいこう:2006/09/09(土) 13:43:26
>>604
AndやOrを使うと良いです
素人的な質問で申し訳ないんですが
あるセルの値がマイナスであれば、その隣のセルに
ゼロを、正の値であれば隣のセルにそのままその値を
表示させたいんです。
この、前半の部分についてはIF関数を使って解決でき
たんですが、後半がやりかたがわかりません。

一応いま

=IF(任意のセル<0,"0","")

というふうにして、マイナスの値が出た場合は
強制的に一律ゼロを表示させるという部分はできて
いますが、正の数の場合、空欄になってしまいます。
仮に"任意のセル"とやっても、そのセルに入っている
数値ではなく、“T15”とかそのままストレートに
文字が表示されてしまいます。

後半の“正の値であれば隣のセルにそのままその値
を表示”させるというやりかたのわかる方は
ご教授願います。わかりにくくてすみません。
608名無しさん@そうだ選挙にいこう:2006/09/09(土) 13:48:29
「"任意のセル"」じゃなくて「任意のセル」でよろしく。
609名無しさん@そうだ選挙にいこう:2006/09/09(土) 13:50:17
, と " の置き場所がわかんない
>608
ありがとうございます。

=IF(任意のセル<0,"0",任意のセル)
で行け

ということでしょうか?
そうしたらFALSEと表示されてしまうんですが…。

611名無しさん@そうだ選挙にいこう:2006/09/09(土) 14:09:27
>>607
=IF(T15<0,0,T15)
=MAX(T15,0)
表示だけでよければ、表示形式をG/標準;"0"
607です。
ありがとうございました。でけました。
613名無しさん@そうだ選挙にいこう:2006/09/09(土) 15:15:00
初めまして。質問なのですが
行の幅を広げたときに、行番号の表示が幅の下に合わせて表示
されるのですがこれを中央(又は上)に表示したいときはどう
操作すればよいのでしょうか?

614名無しさん@そうだ選挙にいこう:2006/09/09(土) 15:45:30
【1 OSの種類         .】 Windows XP
【2 Excelのバージョン   】 Excel2000
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 可(他に方法がなかったら)
【5 検索キーワード     】 エクセル 並び替え アルファベット 優先 数字

普通に昇順で並び替えを実行すると数字が優先されますが、
数字よりもアルファべットを優先させたいのですが。

具体的には、上のセル→下方向へ
AA-AAAA
AA-AAAB
AA-AAAC
AA-AAA1
AA-AAA2
AA-AABA
AA-AAB1
といった順番に並び替えたいです。
何卒宜しくお願いします。
615名無しさん@そうだ選挙にいこう:2006/09/09(土) 15:48:01
>>613
セルの書式設定
616名無しさん@そうだ選挙にいこう:2006/09/09(土) 16:01:39
>>615
レスどうもです。
行の番号自体を中央に配置したいのです。1とか2とか3とか…
列なら表示がいつも幅の真ん中にありますが、これも移動することはできないのでしょうか?
617名無しさん@そうだ選挙にいこう:2006/09/09(土) 16:40:59
セルの内容をキーボードだけで移動させる事はできますか?
618名無しさん@そうだ選挙にいこう:2006/09/09(土) 16:45:38
>>614
英数字とハイフン7文字程度ならたとえば
=SUMPRODUCT(FIND(MID(UPPER(A1)&REPT("-",7),{1,2,3,4,5,6,7},1),"-ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789")-1,100^6*1/100^({0,1,2,3,4,5,6}))
などで別の並べ替え用の値に変換してそちらをキーに並べ替える
619名無しさん@そうだ選挙にいこう:2006/09/09(土) 16:52:16
>>616>>617
意味不明
620名無しさん@そうだ選挙にいこう:2006/09/09(土) 17:01:15
>>606
・5 回答内容でわからない部分があっても、すぐに聞き返さずにヘルプやGoogleなどで検索しましょう。

意味がわからないからすぐその意思表示。餓鬼かw

すぐ聞き返さずに調べろ。馬鹿。
意味がわからないのは、お前の頭に原因あり。
621名無しさん@そうだ選挙にいこう:2006/09/09(土) 17:02:11
【1 OSの種類         .】 windows2000
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 はい
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 VBA フォーム 伝票
伝票を作りたいのですが・・

番号 商品名  価格
1   牛乳    200
2   卵     100
3   コーラ   150

というような表があるとします。
VBAでテキストボックスを3つ、コマンドボタンを1つ配置し、
テキストボックスに商品番号を入力してコマンドボタンを押すと、残りのテキストボックスに
商品名と価格をだすようにしたいのですが、コードはどのように書けばいいでしょうか?
622名無しさん@そうだ選挙にいこう:2006/09/09(土) 17:06:17
>>616
見出しの番号は下固定なのよ
行見出し非表示にしてA列グレーに塗って番号振るとかしかないんじゃないかな
623名無しさん@そうだ選挙にいこう:2006/09/09(土) 17:08:39
>>617
ショートカットキーいろいろ使うとできるんじゃない?
とりあえずは[Ctrl]+[X]で切り取って[Ctrl}+[V]で貼り付けかな
他にもヘルプの「ショートカット キー」に書ききれないほど詳しく載ってるよ
624名無しさん@そうだ選挙にいこう:2006/09/09(土) 17:15:31
>>623
ありがとうございます、もっと勉強します!
625名無しさん@そうだ選挙にいこう:2006/09/09(土) 17:28:39
>>621
ブックのどこかに対応する表があれば、そこからひっぱってくるのがいいんじゃないかな?
VLOOKUPワークシート関数になれてれば、そのまんま

a = InputBox("番号を入れてください")
Set tableRange = Worksheets(シート名).Range(セル範囲)
b = Application.WorksheetFunction.VLookup(1, tableRange, 2, False)
c = Application.WorksheetFunction.VLookup(1, tableRange, 3, False)
MsgBox b & ":" & c

みたいな書き方でいいし、他にもいろいろな方法があるよ。findメソッドが楽かな。
かなりはしょって書くとこんな感じ

a = InputBox("番号を入れてください")
Set tableRange = Worksheets(シート名).Range(セル範囲)
b = tableRange.Columns(1).Find(a).Offset(0, 1).Value
c = tableRange.Columns(1).Find(a).Offset(0, 2).Value
MsgBox b & ":" & c

ただ、「見つからなかった場合の処理」も書いとかないとエラーで止まるかもね。
がんばって。
626名無しさん@そうだ選挙にいこう:2006/09/09(土) 17:31:19
あ、>>625の「VLookup(1, tableRange, 2, False) 」は「VLookup(a, tableRange, 2, False)」だった。
調べる値は変数(この場合はテキストボックスの値かな?) にしないと駄目だね。
ごめんごめん。
627名無しさん@そうだ選挙にいこう:2006/09/09(土) 17:32:51
>>625
ありがとうございます
VLOOKUP関数、使えるようにがんばってみます
628初心者:2006/09/09(土) 17:53:18
 初歩的な質問ですみません。Excel2002を使っています。

質問: 文字に○をつけるにはどうすればいいですか?

例:  「男・女」 女の方に丸をつけたい場合。
629名無しさん@そうだ選挙にいこう:2006/09/09(土) 18:00:31
>>620
意味不明
630名無しさん@そうだ選挙にいこう:2006/09/09(土) 18:04:33
>>628
>>1からはじまるテンプレ
631名無しさん@そうだ選挙にいこう:2006/09/09(土) 19:32:50
>>628
初歩的な質問なら
初心者でも努力すれば
自分でなんとかできるのでは?
632名無しさん@そうだ選挙にいこう:2006/09/09(土) 19:38:25
>>628
なんで無意味な改行をしてるの?
読む人のことを考えないのはなぜ?
633名無しさん@そうだ選挙にいこう:2006/09/09(土) 20:17:53
>>622
ありがとう。
行の見出しを非表示にするにはどうすればいいのでしょうか?
634名無しさん@そうだ選挙にいこう:2006/09/09(土) 21:17:54
よろしくお願いします。

【1 OSの種類         .】 Windows xp
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 Excel 印刷、Excel プレビュー など

編集画面上とプレビュー画面では全然違うのをどうにかできませんか?
やっと仕事終わった〜→印刷→うはwwwwセルに納まってねえやwwww
のコンボはもう沢山です(涙
635名無しさん@そうだ選挙にいこう:2006/09/09(土) 21:24:21
>>633
オプション
>>634
印刷範囲の設定
636名無しさん@そうだ選挙にいこう:2006/09/09(土) 21:25:01
>>634
どうにもなりません
セルの書式の「縮小して全体を表示する」をチェックする、とか
印刷前にプレビューよりさらにフォントを小さくする
などするとマシになります
637名無しさん@そうだ選挙にいこう:2006/09/09(土) 22:13:20
初歩的な質問ですがお願いします。

【1 OSの種類         .】 Windows xp
【2 Excelのバージョン   】 Excel2002
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 グラフ 変更 エクセル

職場でエクセルを使って月間データをグラフにしています。9項目のうち、一つが折れ線グラフで
残りは縦棒グラフです。このデータ(表)にもう一つ棒グラフの項目を増やしたいのですが、増やした
項目が折れ線グラフになってしまいます。どうすれば棒グラフに出来ますでしょうか?
638634:2006/09/09(土) 22:19:25
>>635>>636レスどうも

>>636 やはりどうにもならない症状なのですね・・・orz
     ありがとうございました
639名無しさん@そうだ選挙にいこう:2006/09/09(土) 22:26:26
プロが集まるスレとお聞きし参上しました。
↓お願いします。
http://pc8.2ch.net/test/read.cgi/bsoft/1156720017/54
640名無しさん@そうだ選挙にいこう:2006/09/09(土) 23:20:13
>>639
出来る人間はスレ違いなんかに嬉々として答えたりせんよ。
641名無しさん@そうだ選挙にいこう:2006/09/09(土) 23:31:27
>>640
嫌々で結構ですよ w
642名無しさん@そうだ選挙にいこう:2006/09/09(土) 23:57:14
VLOOKUP関数について質問です

A1に
=VLOOKUP(20,B1:B6,3,TRUE)
という式を入力、B4に20という数値が入っており、B4以外のB1〜B6には500という数値が入ってます
C〜F列の1〜10行全てに1000という数値が入ってる状態です
A1には#REF!とエラーがでてます。

この状態だとB列の1-6行を検索して20という数字があればその列を含めた3つ左の数字、
1000を返すと思うのですが、エラーがでてしまいます
エラーも調べて無効なセル指定をした場合のエラーということですが、これはどこが悪いのでしょうか?
643名無しさん@そうだ選挙にいこう:2006/09/10(日) 00:17:05
>642
=VLOOKUP(20,B1:F6,3,FALSE)
TRUEが使いたい場合は、
B列のソートが必要
644名無しさん@そうだ選挙にいこう:2006/09/10(日) 00:17:08
>>642
B1:D6
645名無しさん@そうだ選挙にいこう:2006/09/10(日) 00:31:44
>>643>>644
ありがとうございます!
やっとできました。。。
TRUEにした場合、検索値"未満"ということに気付かずに迷ってました
【1 OSの種類         .】 Windows 2000
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 はい (少し)
【4 VBAでの回答の可否】 可
A列
01
02
03
01
01
02
01
02
03
04
これを
A列  B列
01  1/3
02  2/3
03  3/3
01  1/1
01  1/2
02  2/2
01  1/4
02  2/4
03  3/4
04  4/4
とこんな感じでAがたまに1に復帰するのを、B列に分数表示させる方法教えてください。
647名無しさん@そうだ選挙にいこう:2006/09/10(日) 10:24:10
>>637
増やした折れ線グラフを選択して
データ系列の書式設定 〜 軸
648名無しさん@そうだ選挙にいこう:2006/09/10(日) 10:59:23
>>646
いきなりB列に結果を出そうと考えずに、条件(規則性)を分解して
考えてごらん。少しづつ答えが見えてくるよ!
例えば
1.値が大きくなる場合は処理A、違えば処理B
2.連続して値が大きくなっている範囲の各個数は
649名無しさん@そうだ選挙にいこう:2006/09/10(日) 11:55:50
【1 OSの種類         .】 Windows XP Pro
【2 Excelのバージョン   】 Excel 2002 Sp3
【3 VBAが使えるか    .】 はい
【4 VBAでの回答の可否】 可
【5 検索キーワード     】
VBA activesheet.paste 外部のデータ
VBA activesheet.paste エラー 
VBA activesheet.paste error
   他に 手持ちの関連書籍もみました。


WEBブラウザに表示されているう文字データを CTRL+Cで クリップボードに保持し、
その状態で、エクセルに戻り、マクロを実装するとactivesheet.pasteでエラーがでます。

デバッグ中は動作するので、なにかエクセルの外のデータ(この場合クリップボード)との
データのやり取りがなにかあるのかなと思いましたが、回答が見つかりません。

よろしくお願いします。
650名無しさん@そうだ選挙にいこう:2006/09/10(日) 12:06:28
>>649
クリップボードのデータとマクロを貼れ
651名無しさん@そうだ選挙にいこう:2006/09/10(日) 12:25:06
【1 OSの種類         .】 Windows XP
【2 Excelのバージョン   】 Excel 2000
【3 VBAが使えるか    .】 はい
【4 VBAでの回答の可否】 可

エクセルの機能にある、入力規則について教えてください。
入力規則のリストを用いたセルがあります。
├───┼
│     │▼
├───┼
▼のボタンを押すとリストに入った項目が表示されるとおもいます。
この表示のされ方なのですが、
8項目が表示されて、それ以上の項目はスクロールで表示させるというスタイルになっています。
(これはどのエクセルでもそうなのでしょうか?)

で質問なのですが、この表示の仕方を変更することは可能ですか?
具体的には10個の項目があった場合、
 現在:8個表示+2個スクロール
    ↓
 希望:10個表示+スクロールなし
にしたいと考えています。
どうぞよろしくお願いします。
652名無しさん@そうだ選挙にいこう:2006/09/10(日) 12:36:58
>>651
それは本来コンボボックスというものの役目なんだが、
入力規則のリストは、コレをシート上で手軽に使えるようにしたもの。
手軽さを追求した故に、面倒な設定はしなくていい代わりにしたくてもする事も出来ない。
細かい設定がしたければ、コントロールツールかフォームツールのコンボボックス使いましょう。
まあVBA使いこなせるなら、API使ってドロップダウンのサイズ変更してもいいけどね。
653名無しさん@そうだ選挙にいこう:2006/09/10(日) 12:37:27
>>652
なるほどリストじゃなくてコンボボックスですか。ありがとうございます。
654名無しさん@そうだ選挙にいこう:2006/09/10(日) 14:11:12
AutoFilterメソッドを使用して任意のキーでデータを抽出したあと、オートフィルタを解除せずに
全てを表示するように戻すには、どうすればよいのでしょうか?
(=▼のドロップダウンのオートフィルタで(すべて)を指定した状態にしたい)

AutoFilterMode = OFF ですと、オートフィルタそのものが解除されてしまいます。
655名無しさん@そうだ選挙にいこう:2006/09/10(日) 14:29:40
3列くらいなら
Selection.AutoFilter Field:=1
Selection.AutoFilter Field:=2
Selection.AutoFilter Field:=3
656名無しさん@そうだ選挙にいこう:2006/09/10(日) 15:06:56
>>655
なるほど。抽出キーが多数なら、Field:=の値をFor Nextで回せば一発で行けそうですね。
ありがとうございます。
657名無しさん@そうだ選挙にいこう:2006/09/10(日) 15:51:36
>>647
ありがとうございます。月曜出社してやってみます。
658名無しさん@そうだ選挙にいこう:2006/09/10(日) 16:49:49
VBA(マクロ)素人なのですが、Excel VBAの"リストBOX"は最大10列しか表示できない仕様なのでしょうか?
(20列ある入力データシートのリストをリストBOXに表示すれば見た目綺麗かなと思いまして........).
どなたか経験、又は知っている人はいますか?(ヘルプに最大列数の規定が出てこないです)
659名無しさん@そうだ選挙にいこう:2006/09/10(日) 17:30:16
>>658
つ ListView

使い方はVB6の解説を参照。
660名無しさん@そうだ選挙にいこう:2006/09/10(日) 18:02:19
>>658
ColumnCountプロパティで20指定すればいけるんじゃね?

ListBox1.List = Range("A1:T20").Value 'データ範囲指定
ListBox1.ColumnCount = 20 '列数指定
ListBox1.ColumnWidths = Application.Rept("20;", 20) '列の表示幅指定
661名無しさん@そうだ選挙にいこう:2006/09/10(日) 20:35:49
行(のみ)の見出しを非表示にするにはどうすればいいのでしょうか?
662名無しさん@そうだ選挙にいこう:2006/09/10(日) 20:52:46
>>661
マクロを使う
エクセルのバージョンすら書いてないので
コードは省略
663名無しさん@そうだ選挙にいこう:2006/09/10(日) 21:27:38
シートを他の人にイジられないように、ロックする方法って確かありましたよね?
セルをロックすることってできます?
他の人も触ることがあるんですが、一部のセルに入力した数式とかを保護しておきたい。
これはさすがに無理ですか?
664名無しさん@そうだ選挙にいこう:2006/09/10(日) 21:44:07
>>663
いい子だから質問する前にテンプレ読もうね
665名無しさん@そうだ選挙にいこう:2006/09/10(日) 22:03:32
すまんかった

【1 OSの種類         .】 Windows XP
【2 Excelのバージョン   】 Excel 2003
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】
【5 検索キーワード     】
666名無しさん@そうだ選挙にいこう:2006/09/10(日) 22:06:54
テンプレ使えってことじゃないだろ
▼━質問テンプレ (出来れば使ってね) ━━━━━━━━━━━━
667名無しさん@そうだ選挙にいこう:2006/09/10(日) 22:07:31
>>665
起動時にパス入力させるマクロでも組めばいいんじゃねw
668名無しさん@そうだ選挙にいこう:2006/09/10(日) 22:17:07
意地悪だなー
669名無しさん@そうだ選挙にいこう:2006/09/10(日) 22:39:55
>>663
右クリ→保護→表示しないにチェック
ツール→保護→シートの保護→上2つにチェックが入っていることを確認→
passは好きに汁
670名無しさん@そうだ選挙にいこう:2006/09/10(日) 23:07:04
意地悪だなー
671名無しさん@そうだ選挙にいこう:2006/09/10(日) 23:24:02
まねするなよ、ガキっぽいぞ
672名無しさん@そうだ選挙にいこう:2006/09/10(日) 23:46:59
え?質問の意味分かってないの???
673名無しさん@そうだ選挙にいこう:2006/09/11(月) 08:11:50
意味も無く敏感だね
674名無しさん@そうだ選挙にいこう:2006/09/11(月) 11:51:21
行(のみ)の見出しを非表示にするにはどうすればいいのでしょうか?
versionは2003です。
675名無しさん@そうだ選挙にいこう:2006/09/11(月) 11:57:56
「行の見出し」とは何を指しているのかな?
任意の行を非表示にするだけじゃダメなのかぇ
676名無しさん@そうだ選挙にいこう:2006/09/11(月) 12:08:54
>>675
レスどうもです。
「行の見出し」=「行番号」です。(一番左の1、2、3…ってやつです。)
ツール→オプション→表示→行列番号のチェックを外したとき行の1、2、3も…
列のA、B、C…も表示されなくなりますが、この行だけを非表示するようにしたいのです。

677名無しさん@そうだ選挙にいこう:2006/09/11(月) 12:12:17
それはダメだと思う。
678名無しさん@そうだ選挙にいこう:2006/09/11(月) 12:17:59
>>676
なぜそんなことがしたいんだ?
679名無しさん@そうだ選挙にいこう:2006/09/11(月) 12:26:03
Excel2003です。
ADDRESS関数で出したセル番地を例えばB7だとします。
それからその列全部を足す(B1からB7まで)関数ってありませんか?
SUMだとうまくいかなくて…よろしくお願いします。
680名無しさん@そうだ選挙にいこう:2006/09/11(月) 12:59:38
>ADDRESS関数で出したセル番地を例えばB7だと
そこでB7を出すのはいいとして

>それからその列全部を足す(B1からB7まで)
このB1がどこから出てくるのか、Accessには判断しようがない。
最初の行から全てとかの指定は、そういったロジックを人間が書く必要がある。
681名無しさん@そうだ選挙にいこう:2006/09/11(月) 13:14:32
>>679
INDIRECTワークシート関数を使うと文字列からセル参照できるよ。
B1固定ならこんなかな?

=SUM(INDIRECT("B1:" & ADDRESS(7,2)))
682名無しさん@そうだ選挙にいこう:2006/09/11(月) 14:41:00
EXCEL2000です、どうか教えて下さいまし。
30行くらいある表を他のある部分に食い込ませて挿入したいのですが、
1行ずつ「挿入」をクリックしながら空間を作らないとなりませんか?
他に方法ないでしょうか?
683名無しさん@そうだ選挙にいこう:2006/09/11(月) 15:18:05
シート1の1行目
シート2の1行目
シート1の2行目
シート2の2行目
    ・
    ・
    ・

としたいということ?

であれば、まずシート1、2、それぞれを1行空き状態にする。
データがそれぞれA〜Cの3列にあるとして、シート2のデータを1行ずらしてD〜Fに貼る。

シート1の1行目
           シート2の1行目
シート1の2行目
           シート2の2行目

そのあと、左のA〜C列の空いてる所をCtrlを押しながらクリックしていき選択。
最後に右クリックで削除を選び、左方向にシフト を選んで完成。
684名無しさん@そうだ選挙にいこう:2006/09/11(月) 15:50:22
【1 OSの種類         .】 Windows XP
【2 Excelのバージョン   】 Excel 2003
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】否
【5 検索キーワード     】 文字数制限 自動 次セル

一つのセルに一定文字数を入力した時点で
次のセルに移動させる事は可能でしょうか?
685682:2006/09/11(月) 15:50:36
>>682
シート2とかシート3とか使用した経験が無いのですが、
なるほど、そういう方法があるのですよね
データが100行くらいあるとすると「30行のデータA」を50行めから
食い込ませるには、
1.1〜49業をまずシート2に移行
2.シート2の50行めからに「30行のデータA」を移行
3.シート1の50〜100行めをシート2の81行目からに移行

 これでよいんですよね。シート1を表示されてる時に「上書き」すれば
 シート2、シート3も自動的に上書きされる、それで間違ってないでしょうか?
686名無しさん@そうだ選挙にいこう:2006/09/11(月) 16:11:16
>>685
ん???1行毎交互にデータを入れ込むんじゃないのか?
>>685の内容だったら100行あるデータの50行目から30行分、
若しくはそれ以上の空行を一気に挿入してしまって
そこに30行分のデータをコピペして、挿入しすぎてしまった空行は削除すればいいだけだと思うんだが。
687名無しさん@そうだ選挙にいこう:2006/09/11(月) 16:39:38
>682
同じ列にデータがあって、1行おきに差し込みたい時は
補助列にオートフィルで、差し込まれる側を 1,3,5…
差し込む側を 2,4,6… と入れておいて並び替え。

>683
空白を選択するときに、そんな面倒なことはしない。
範囲を選択しておいて、編集→ジャンプ→セル選択→空白セル
688名無しさん@そうだ選挙にいこう:2006/09/11(月) 17:06:23
>>684
文字数の制御は入力規則で可能。
但し、自動で次のセルに移動させるにはVBA必須。
689通りがかり:2006/09/11(月) 17:45:04
>>686
>30行分、若しくはそれ以上の空行を一気に挿入してしまって

 そんな事出来るんですか?
 どうやってするんですか?私も1行ずつしか挿入出来ないと思ってましたが。
690名無しさん@そうだ選挙にいこう:2006/09/11(月) 17:58:30
>>688
回答ありがとうございます。
VBAですか・・勉強してみます。
691名無しさん@そうだ選挙にいこう:2006/09/11(月) 18:05:31
>>576
正解でした。
コンボボックスの参照リンク先をロックをはずしたところ
セルを非保護にできました。
どうもありがとうございました。

結局VBAはまったく関係なかったですねw

692名無しさん@そうだ選挙にいこう:2006/09/11(月) 18:16:42
>>691
かわいそうな奴・・・
693名無しさん@そうだ選挙にいこう:2006/09/11(月) 18:18:35
なんだ、>>682 は1行おきじゃなかったのか。
それなら、挿入したい表をコピーして
挿入したい場所でコピーしたセルの挿入。

選択した行数だけ挿入されるのって知らないんだ。。。
694名無しさん@そうだ選挙にいこう:2006/09/11(月) 18:20:06
>>689
挿入開始行から下にマウスを引っぱって30行分選択して「挿入」する。
695名無しさん@そうだ選挙にいこう:2006/09/11(月) 18:57:36
【1 OSの種類         .】 Windows 2k
【2 Excelのバージョン   】 Excel 2003
【3 VBAが使えるか    .】 少しなら
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 VBA excel 連番 row

お聞きします。
VBAを使ってセルA7から(A6は見出し行)連番をつけたいのです。
VBAからセルに関数を入れるやり方ならできたのですが、セルを選んだ時に式が
そのまま見えて見栄えがよくありません。
VBAで連番(値)をつける方法を教えてください。
やろうとしてることは、ユーザーフォームでテキストボックスに入力されたら
それをセルB7に入力される。(これはできました)そしたらセルA7に番号が振られるという風に
したいです。データはどれだけ入力されるかはわかりません。
宜しくお願いします。
696名無しさん@そうだ選挙にいこう:2006/09/11(月) 22:21:37
連番なんか、最後に好きなだけフィルしたほうが速いだろ
何秒かかるんだ
697名無しさん@そうだ選挙にいこう:2006/09/11(月) 23:32:26

【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2000
【3 VBAが使えるか    .】 はい
【4 VBAでの回答の可否】 不可
【5 検索キーワード     】 セル 数値 代入 平均

一つお伺いしてよろしいでしょうか。
今、セルA1〜A4まで数値を入力してセルA5に1〜4の合計を表示させるという作業をし、その合計を含めた過去3回分で平均を取るという物を作っています。

説明ではいまいち上手く伝えられないので具体的に書くと
A
1 80
2 26
3 61
4 22
5 189(A1〜A4までの合計)
6
7 159(直前に行った時の数字)
8 144(2回前に行った時の数字)
9 164(過去三回分の平均)
このような感じです。

この後、A5に出た数字は次の試行時にA7に、A7の数字をA8に移して常に最新のデータで平均を取り続けたいのですが、どのように組めばそういったことが出来ますか?
VBAはなるべく使わないでやりたいです。
どなたかご教授お願いします
698名無しさん@そうだ選挙にいこう:2006/09/12(火) 00:06:11
ここんとこシートの作り方が悪くて
処理を難しくしてるケースが多い気がする

>>697
入力値は毎回セルA1〜A4に上書きしてるのかな?
だとしたら平均値を毎回「値複写」していくぐらいかな
699名無しさん@そうだ選挙にいこう:2006/09/12(火) 00:27:54
複数シートがあるブックがあるんですが、一つのシートを目次として、
ハイパーリンクまで張ってくれるフリーソフトってありませんか?
シェアではあったんですが。。。
700名無しさん@そうだ選挙にいこう:2006/09/12(火) 00:34:53
>>699
なら買えばいいでしょ
お前の節約のために周りを巻き込むなよ
701697:2006/09/12(火) 07:15:42
>>698
解答ありがとうございます。

「値複写」というのが少々分からないので、調べながら作ってみます。
702名無しさん@そうだ選挙にいこう:2006/09/12(火) 08:30:03
>>701
「形式を選択して貼り付け」→「値」 <値複写
のことでしょ。
703名無しさん@そうだ選挙にいこう:2006/09/12(火) 08:56:12
よろしくお願いします。

windowsxp office2003 vba 不可 否

012345
654321
415632
123624

とあるデータの一番右の数字が担当者を表しています(例えば1は山田、2は佐藤…などで、担当者は5人です。)
データのすぐ右に担当者名を表示させるにはどうしたらよいでしょうか?
以下、自分でやってみたことです。
1. RIGHTで一番右を取り出し、別セルに表示させ、数字と担当者名の
  表を作り、VLOOKUPで表示させる。
2. 1.をifでつなげる。

もう少し簡単な方法があったら教えてください。お願いします。
704名無しさん@そうだ選挙にいこう:2006/09/12(火) 09:07:13
>>730
別セル使わないで、関数をネストして一つの式で完結させるくらいかな。
つーか、IFは要らないじゃん。
705ドラゴン☆☆☆☆☆☆ ◆W8e3Jn6xpA :2006/09/12(火) 09:54:41
>>704
早々のご回答ありがとうございます。
ということは、数字と担当者の表を作業セルで作ってということですね。


作業セル自体を作らずに表示させるというのは難しい話でしょうか?
706名無しさん@そうだ選挙にいこう:2006/09/12(火) 10:20:04
>>705
たった5名くらいならCHOOSE関数で十分だろ?
あまり多いのであれば数字と担当者の表を作るのが普通だが。
707ドラゴン ◆W8e3Jn6xpA :2006/09/12(火) 10:37:18
>>706
ありがとうございます。
CHOOSE関数でやってみます
708名無しさん@そうだ選挙にいこう:2006/09/12(火) 12:27:51
データ整理に関してなのですが、
リンク元データを自動で並べ替えて表示する方法はありますか?
今までは、『データ→並べ替え』という方法でしてたのですが、
それだと時間と手間がかかるので…
何か良い方法を知ってる方、教えてください。
709名無しさん@そうだ選挙にいこう:2006/09/12(火) 12:43:22
例えばA1に春、夏、秋、冬が項目のリストがあるとして
夏を選択したら、特定のセル(例えばD22)に移動もしくはリンクすることは可能でしょうか。
春、秋、冬を選択しても同じように、別のセルに移動したいです。
710名無しさん@そうだ選挙にいこう:2006/09/12(火) 14:11:18
>>709
『夏』のセルを選択⇒右クリック⇒ハイパーリンク⇒ブックマーク
⇒【セル参照を入力してください】に『D22』と入力すれば
『夏』のセルを選択(クリック)した時にD22セルに移動できます。
711709:2006/09/12(火) 15:16:15
>>710
ありがとうございます。
・春を選択したらC10
・夏を選択したらD22
・秋を選択したらE30
・冬を選択したらF45
というように、それぞれ別のセルに移動したいのです。
710さんの方法では、1つのセルにしか移動できないみたいなので・・・。
712名無しさん@そうだ選挙にいこう:2006/09/12(火) 16:07:09
一つのセル内で、入力値によってジャンプ先を変えたいのか?
そりゃVBA必須だ。 Worksheetのchangeイベントに書いておけ。
If Not Target.AddressLocal = "$A$1" Then Exit Sub
select (target.value)

case "春"
target.worksheet.range("C10").activate
(↑こんな感じで夏秋冬も繰り返し)

end select
713名無しさん@そうだ選挙にいこう:2006/09/12(火) 16:32:26
1 OSの種類         .】 Windows2000
【2 Excelのバージョン   】 Excel97
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否

セル3個飛ばしのデータで折れ線グラフを描くと、点のプロットになりますが、線でつなぐ方法はありますか?
714名無しさん@そうだ選挙にいこう:2006/09/12(火) 16:37:50
すみませんが、教えて下さい。
エクセル(XP)で9ページほどの月ごとの集計表をつくり、次月の分は
前月のものを開いて修正し、「名前をつけて保存」をくり返していたの
ですが、データ量はほとんど変わらないのに、ファイルサイズは倍々
ゲームのように増えていき、最初は数百キロバイトだったものが今では
6メガバイトくらいにふくれあがっています。
原因はなんなのでしょうか?また、解決方法はあるのでしょうか?
715名無しさん@そうだ選挙にいこう:2006/09/12(火) 17:01:39
【1 OSの種類.】 WindowsXP
【2 Excelのバージョン 】 Excel 2003
【3 VBAが使えるか .】 いいえ
【4 VBAでの回答の可否】否
【5 検索キーワード 】 なんと検索すれば良いのか分かりませんでした。


高校3年の者です。
今、学校の授業でHP作成をやっているのですが、作品が完成し、自分以外の生徒の評価を付けるためにExcelで表を作りました。
その表は様々な点から点数を表に入れていき、足していくのですが自動的に計算できる方法がどうしても分かりません。
どうか教えて下さい。
長文すみません・・・。
716名無しさん@そうだ選挙にいこう:2006/09/12(火) 17:07:43
>>715
>様々な点から点数を表に入れていき、足していく

        技術  内容  表現   合計  ←様々な角度から評価し
鈴木一郎   19    15    18    52  ←点数を表に入れていき
                          ↑ここを自動計算させる

ということでしょうか?
であれば、合計点数を入れたいセルにカーソルを合わせ、
上のメニューにある Σ のマークのボタンを押し、そのまま合計したい範囲をマウスで選択し
最後にエンターを押すだけです。
717名無しさん@そうだ選挙にいこう:2006/09/12(火) 17:20:27
>>713
状況がよく掴めなかったのでハズしてるかもしれんが
グラフオブジェクトを選択(グラフシートを表示)した状態で
[ツール]-[オプション]-[グラフ]
 空白セルのプロット : プロットしない(空白を残す)
を値0とか補間とか変えてみれ
718名無しさん@そうだ選挙にいこう:2006/09/12(火) 17:20:28
【1 OSの種類.】 WindowsXP
【2 Excelのバージョン 】 Excel 2003
【3 VBAが使えるか .】 少し
【4 VBAでの回答の可否】 可

変更履歴以外で、セルの値を変更した時、値を変更したセルに
何か印をつける事ができますか?
例えば、セルの値が変わったら、セルの色が赤になる等。
719709:2006/09/12(火) 17:36:16
>>712
できました!ありがとうございました!

即答できるのがすごすぎ
VBA勉強しよう…
720713:2006/09/12(火) 17:42:47
>>717さん
補完してプロットする、でうまくいきました。
ありがとうございました。
721名無しさん@そうだ選挙にいこう:2006/09/12(火) 17:43:39
>>718
> セルの値を変更した時
に起きるイベント
つ Worksheet_Change

> セルの色が赤に
するプロパティと定数
つ .Interior.Color = vbRed
722名無しさん@そうだ選挙にいこう:2006/09/12(火) 18:08:12
>>716
>>715です。
こんなに早く、且つ分かりやすいアドバイスありがとうございます!!
>>716さんの言う通りにやって出来ました!!
本当に助かりました。
繰り返し感謝致します。
723名無しさん@そうだ選挙にいこう:2006/09/12(火) 20:31:16
コンボボックスのリストの内容を別のセルの内容によって変えることは出来ますか?
具体的にはA1のセルに銀行名を入れると、A2のセルにその銀行ごとに対応した支店名
(勿論支店のリストは事前に入力済みとして)をリスト表示させたいのですが・・
724名無しさん@そうだ選挙にいこう:2006/09/12(火) 20:41:29
すいません、事故解決しました
725名無しさん@そうだ選挙にいこう:2006/09/12(火) 22:03:55
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 no
【4 VBAでの回答の可否】 否

表の一部をいろんなシートから切り貼りして繋いでいくのですが
どのシートから切り取ってきたか解かるように
元のシート名も一緒に切り出したいと思っています。
シート名をそのシート内のセルに表示させる関数ってありますか。
726名無しさん@そうだ選挙にいこう:2006/09/12(火) 22:05:08
【1 OSの種類.】 Windows2000
【2 Excelのバージョン 】 Excel97
【3 VBAが使えるか .】 少し
【4 VBAでの回答の可否】 可

開いている全てのファイルのイベントをひとつのファイルのVBAで検知したいのですが、どのようなカラクリで実現できるのでしょうか?
強制的にVBAのコードを全部のファイルに潜り込ませるとかそういうのでもいいです
727名無しさん@そうだ選挙にいこう:2006/09/12(火) 22:33:20
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2000
【3 VBAが使えるか    .】 少しだけ
【4 VBAでの回答の可否】 可

A列に田中、山田、鈴木、田中、鈴木、井上・・
など文字列が順に入っている時、重複しているものを全て見つけるにはどうすればいいでしょうか?
(この場合は田中と鈴木)
上から順に検索しても見付かりますが、数が膨大なので一度に見つける方法を知りたいです・・・
728名無しさん@そうだ選挙にいこう:2006/09/12(火) 22:40:20
>>727
「excel 重複行削除」とかでググれ
729名無しさん@そうだ選挙にいこう:2006/09/12(火) 22:45:23
>>725
保存してあるという条件で
=CELL("filename",A1)
を加工
730名無しさん@そうだ選挙にいこう:2006/09/12(火) 22:46:11
>>727
とりあえず重複を問答無用で削除したり見えなくしたりするんじゃなくて「見つける」のが目的なら
A列全体を選択した状態で、メニューの書式から条件付き書式を選択
左端の「セルの値が」を「数式が」に変更して =COUNTIF($A:$A,A1)>=2 と入力
あとは書式ボタンをクリックして文字を赤くするなりなんなりお好きなように設定してOKを押す
731名無しさん@そうだ選挙にいこう:2006/09/12(火) 22:51:33
>>728>>730
ありがとうございます!
732名無しさん@そうだ選挙にいこう:2006/09/13(水) 12:06:10
>>721
ありがとうございます。
そこで、なんですが、targetに相対的なセルの変化のイベントを
起こさせるには、どうしたらいいでしょうか?
絶対的セルのイベントならできるのですが。
なんどもすいません。よろしくおねがいします。
733732:2006/09/13(水) 12:13:27
すいません。
自己解決できました。
734名無しさん@そうだ選挙にいこう:2006/09/13(水) 13:06:28
【1 OSの種類         .】 Windows2000
【2 Excelのバージョン   】 Excel2000
【3 VBAが使えるか    .】 はい(多少は)
【4 VBAでの回答の可否】 可

複数のメール(メーラーはOutlookExpress使用)に添付されたexcel内
(若しくはメール本文内)の決まった位置に入力されている値(氏名,数量 等)を
参照し、1つのEXCELシートに出力(氏名ごと数量一覧 等)する方法って
なにかありますでしょうか?

スレ違いかも知れませんが、ご助力お願い致します。
735名無しさん@そうだ選挙にいこう:2006/09/13(水) 15:53:49
【1 OSの種類      】 WindowsXP Home
【2 Excelのバージョン】 Excel2003だと思う
【3 VBAが使えるか  】 いいえ
【4 VBAでの回答の可否】 否

A1〜A10に数式が入っていて、条件を満たすと特定の文章が出て、満たしていないと空白になるようにしてあります。
それを印刷用にB列に写すのですが、A列での空白セルを省いて、上へ詰めて表示したいのですが、何かいい方法があるでしょうか?
736名無しさん@そうだ選挙にいこう:2006/09/13(水) 16:16:32
ジャンプで空白セルを選択して削除
737名無しさん@そうだ選挙にいこう:2006/09/13(水) 17:03:43
数式入ってるとジャンプの空白セルとしてカウントされないんじゃね?
手作業なら作業用の見出し行いれてオートフィルタ→空白以外のセルでコピー&ペースト→フィルタ解除
関数式はわかんね
738名無しさん@そうだ選挙にいこう:2006/09/13(水) 19:01:57
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 ExceL2003
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 可

A1のセルに1と打ったら『山田』 2と打ったら『鈴木』 3と打ったら『佐藤』と出るようにしたいです。
足がかりすら掴めてない状況です。どうかよろしくお願いします。
739名無しさん@そうだ選挙にいこう:2006/09/13(水) 19:05:40
Aの列でした。すみません。
740名無しさん@そうだ選挙にいこう:2006/09/13(水) 20:13:34
>>738
=CHOOSE()
=VLOOKUP()
etc.
741名無しさん@そうだ選挙にいこう:2006/09/13(水) 20:14:04
【1 OSの種類         .】 Windows**
【2 Excelのバージョン   】 Excel 2003
【3 VBAが使えるか    .】いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 Googleやヘルプでの検索キーワード

VLOOKUP関数についてお聞きしたいのですが、
本を見ると、「範囲内の列番号の列を垂直方向に検索する」とあります。

水平方向に検索することはできるのでしょうか?
またできる別の関数があればお教えください。
742名無しさん@そうだ選挙にいこう:2006/09/13(水) 20:14:36
別のシートでもどこでもいいけど、B列に1、2、3〜
C列に山田〜
A1に=vlookup(A2,b1:c6,2,false)、A2に1、2〜で
詳しくはvlookupでぐぐれ
743名無しさん@そうだ選挙にいこう:2006/09/13(水) 20:22:47
Excel2004@Mac OS X です

入力規制からのリストについてなんですが
任意のセルをクリックすると右に三角形がでてプルダウンできるようになりますが、
三角形をクリックせず、そのセルをクリックするだけでプルダウンできるようにしたいのです



青色帳簿というシェアウェア販売しているExcelの経理ファイルでそれを実現しており、Excelで
できるのは間違いないようです。ちなみにそのファイルは保護してありどういう風になってるのかは
わかりませんでした

↑の挙動としてはセルをクリックすると三角が右にあらわれ、もう一度セルをクリックするとプルダウン
しました。
744名無しさん@そうだ選挙にいこう:2006/09/13(水) 20:24:29
age
745名無しさん@そうだ選挙にいこう:2006/09/13(水) 20:36:21
>>740 >>742
ありがとうございました!
746名無しさん@そうだ選挙にいこう:2006/09/13(水) 21:03:34
>>741
HLOOKUP
747名無しさん@そうだ選挙にいこう:2006/09/13(水) 21:39:24
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2002
【3 VBAが使えるか    .】 多少
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 Excel 上付き ^ 変換 vba 

セルの値として,2^11+2^(2/3) を上付き文字で数式表現してあります.
これを 実際に ” ^ ”  を用いて「2^11+2^(2/3) 」表記に変換したいのですが,
どのようなコードが考えられるでしょうか?
よろしくお願いします.

 11 2/3
2 + 2

2^11+2^(2/3) 
に変換したいという意味です.
748名無しさん@そうだ選挙にいこう:2006/09/13(水) 21:58:54
>>747
こんな感じ?
Dim c As Characters, a As String, i As Integer, f As Integer
a = ""
f = 0
For i = 1 To ActiveCell.Characters.Count
Set c = ActiveCell.Characters(i, 1)
If f = 0 And c.Font.Superscript Then
f = 1
a = a & "^"
End If
If f = 1 And Not c.Font.Superscript Then
f = 0
'a = a & " "
End If
a = a & c.Text
Next
MsgBox a
749名無しさん@そうだ選挙にいこう:2006/09/13(水) 22:12:02
【1 OSの種類         .】 WindowsXP Pro
【2 Excelのバージョン   】 Excel2000
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否

宜しくお願いします。

ROUNDやROUNDDOWNに関してですが、上から○桁目で丸めるという
使い方はどうすればいいのでしょうか?
当方、できるだけ数式バーへの直接入力以外の方法で習得したいです。
750名無しさん@そうだ選挙にいこう:2006/09/13(水) 22:13:58
>>748
凄いです!
私は,全然違う方向でとてつもなく無駄な事を試していました.
ありがとうございました.

もし,よろしければ今まで使ってきたvbaの参考書籍を教えて頂きたいのですが.
751名無しさん@そうだ選挙にいこう:2006/09/13(水) 22:17:09
>>749
全体の桁数はわかるわけだから引き算で求まる
あとはヘルプを読む方法で習得してくれ
752749:2006/09/13(水) 23:16:10
>>751
レスありがとうございます。
小数点を基準としたやりかたはわかるんです。
ROUND関数を入力したセルをオートフィルで書式をコピー(相対参照で)
した場合に、それぞれの対象セルの総桁数が不揃いだとうまくいかないので
そのやり方を知りたいのです。
753名無しさん@そうだ選挙にいこう:2006/09/14(木) 00:19:21
【1 OSの種類         .】 WindowsXP Pro
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否

顧客データなのですが
A列に県名B列に地域住所に分かれています


 A        B
東京都    渋谷区
東京都    足立区

それを結合というか、そのままA列に合体させたいのですが

 A      
東京都渋谷区
東京都足立区

恥ずかしい質問なのですが宜しくお願いします
754名無しさん@そうだ選挙にいこう:2006/09/14(木) 00:25:26
>>753
Z1=A1&B1
ZをAに値のみコピペ
755名無しさん@そうだ選挙にいこう:2006/09/14(木) 00:28:04
>>753
C列とか使って
=A1&B1
出た結果をコピー→「値」を貼り付け
756名無しさん@そうだ選挙にいこう:2006/09/14(木) 00:41:21
>>752
状況がわかりません…。
1000で割ってround(a1/1000,3)とかしたあとに1000掛けるとか
こういうのではないよね?
757753:2006/09/14(木) 01:29:29
>>754>>755
こんなに早くレスが返るとは思いませんでした
解決しました、本当にありがとうございました
758752:2006/09/14(木) 01:32:18
>>756
説明がヘタで申し訳ないです。

A1に123456
B1に=ROUND(A1, この辺をなんとかして)

B1に123000(上から3桁で丸める)
という設定にしたいのです。

で、A1を相対参照にしておけば、オートフィルで書式をコピーし、
A2、A3等に数値を入れたときにB2、B3に上から3桁で丸めた数値
を返すようにということなんです。


759752:2006/09/14(木) 01:48:35
すいません。
自己解決?しました。

A1のセル:1234567890
B1のセル:=ROUNDDOWN(A1,3-LEN(INT(A1)))

B1のセルの値は「1230000000」になる。

これでいけますね。
ていうか、>>751はそういうことだったのかも。
そうだったら失礼しました。
760名無しさん@そうだ選挙にいこう:2006/09/14(木) 01:58:14
A  B  C
9  /  14

のとき、「=A1&B1&C1」 として表示させた結果の 「9/14」 を
「値」で貼り付けても日付とは認識してくれないんですね
761名無しさん@そうだ選挙にいこう:2006/09/14(木) 04:17:06
日付や時間は内部ではシリアル値で扱われるからね
そして文字列で記述された日付や時間をシリアル値に変換する関数が用意されてる
 DATEVALUE
 TIMEVALUE
762名無しさん@そうだ選挙にいこう:2006/09/14(木) 07:41:01
ほぅほうぅ、なるほど ありがとう。
763名無しさん@そうだ選挙にいこう:2006/09/14(木) 10:07:52
【1 OSの種類         .】 Windows**
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 不明

直前の(場所が近いという意味で無く)数字と同じ数値・文字
を入れるショートカットってありますか?

764名無しさん@そうだ選挙にいこう:2006/09/14(木) 11:40:03
直前に入力確定したセルの値ということか?
765名無しさん@そうだ選挙にいこう:2006/09/14(木) 12:02:50
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2000
【3 VBAが使えるか    .】 不可
【4 VBAでの回答の可否】 可(頑張ってみます)

列A,列Bを交互になるように同じ列にすることは可能でしょうか?
↓このような形です。

A1 B1
A2 B2
A3 B3



A1
B1
A2
B2
A3
B3

よろしくお願いします。
766名無しさん@そうだ選挙にいこう:2006/09/14(木) 12:07:09
>>764

そうです。お願いします。
F4かと思ってたんですが・・・・
767名無しさん@そうだ選挙にいこう:2006/09/14(木) 12:16:17
>>737
すぐにレスできませんでしたが、
>それを印刷用にB列に写すのですが
とあるから、その時点で値貼り付けされているという前提。
768名無しさん@そうだ選挙にいこう:2006/09/14(木) 12:59:15
>>765
B列のデータをA列のデータの下に移動(A4:A6)
B1に1、B2に3、以下元A列のデータ分だけフィルコピー
B4に2、B5に4、で同じくフィルコピー、B列をキーに並べ替え

3行分くらいだと、かえってまどろっこしいかもしれないが、
この方法は3行でも100行でも、たいして手間は変わらない。

>>766
作らないとありません。
作るにはVBA必須です。
769名無しさん@そうだ選挙にいこう:2006/09/14(木) 13:47:10
>>768

そのプログラムの行は長いですか?
それを書き込むとなんか影響されるんすか?
770名無しさん@そうだ選挙にいこう:2006/09/14(木) 13:51:03
=vlookup(A1,B1:D4,3,FALSE)の範囲(B1:D4)と列(3)はそのままで検索(A1)だけ
フィルドラッグする方法はありませんか?
フィルドラッグにはこだわりませんが、全部書くのは時間がかかりすぎるので
771名無しさん@そうだ選挙にいこう:2006/09/14(木) 14:10:48
> そのプログラムの行は長いですか?
長い長くないは、個人の感覚で違ってくるので、一概には言えません。

> それを書き込むとなんか影響されるんすか?
それは書いたコードによって違いますし、どういう影響があるかは使用者が判断するものです。
ここでは目的だけ果たせれば影響なんて期にしないという人だけが丸投げを許され
そういうのを気にする人は、自分にコード書くスキルが身に付くまでVBAは控えるか
信頼できるところに金払って作ってもらうかという選択肢になります。
772名無しさん@そうだ選挙にいこう:2006/09/14(木) 14:22:14
>>770
絶対参照?
773名無しさん@そうだ選挙にいこう:2006/09/14(木) 14:40:05
>>771

ありがとうございました
774名無しさん@そうだ選挙にいこう:2006/09/14(木) 14:41:53
すでに数値・文字が入っているセルをマウスを使わず、一部分だけ
修正する(カーソルを入れる)のはどうすればいいですか?

775名無しさん@そうだ選挙にいこう:2006/09/14(木) 14:54:55
windowsxp office2003 vba 不可 否

01,05,09
02,06,10
03,07,11
04,08,12

このようなデータを

01
02
03
04
05
06
.
.
.
12

このように一列にしたいんですが、いい方法ないでしょうか?
データ数はこんなに少なくなく、コピペでは無理なくらい多いです。
よろしくお願いします。
776名無しさん@そうだ選挙にいこう:2006/09/14(木) 15:30:54
>>772
ありがとうございました。
すみません、絶対参照なんてすっかり忘れてました…
777名無しさん@そうだ選挙にいこう:2006/09/14(木) 15:42:46
>>774
F2
778名無しさん@そうだ選挙にいこう:2006/09/14(木) 16:14:37
>>775
テキストエディタで開いて、カマを改行に置換
779名無しさん@そうだ選挙にいこう:2006/09/14(木) 16:36:08
>>777
ありがとうございました
780名無しさん@そうだ選挙にいこう:2006/09/14(木) 16:45:51
>>764
単純に「コピペすりゃええやん?」と思えるのは気のせいですか?
781名無しさん@そうだ選挙にいこう:2006/09/14(木) 18:06:05
【1 OSの種類         .】 Windows**
【2 Excelのバージョン   】 Excel2003

数字が入力してあるセルの挿入・削除後、入力していた番号を自動的に変える
ことは出来ますか?
1      1      1
2      2      2
3 →    3  →   3
4      5      4
5      6      5
6            ↑
            こうしたい
782名無しさん@そうだ選挙にいこう:2006/09/14(木) 18:14:56
>>781
=ROW()
この関数で行番号が出るから、それを工夫しなさい
783名無しさん@そうだ選挙にいこう:2006/09/14(木) 18:30:17
>>768
ご返答ありがとうございます!!

…ただ、理解が出来ませんでした orz
784名無しさん@そうだ選挙にいこう:2006/09/14(木) 18:38:34
別に理解しなくてもいいよ。
理解出来なくて困るのは君で、俺等じゃない。
困りたくなければ理解するように努力すればいいし。
785名無しさん@そうだ選挙にいこう:2006/09/14(木) 18:40:37
説明下手指摘されて切れるなよwww
意味不明な(と勝手に思ってる)質問には文句言うくせにwww
786名無しさん@そうだ選挙にいこう:2006/09/14(木) 20:06:56
>>734 はスルーですか?
787名無しさん@そうだ選挙にいこう:2006/09/14(木) 20:52:52
>>786
Outlook(OL)ならVBA使えるからできる。
OEは無理。
788781:2006/09/14(木) 21:33:21
>>782
解決しました。
キーワード教えてもらってありがとうございました。
789名無しさん@そうだ選挙にいこう:2006/09/14(木) 21:42:20
VBAで、アクティブセルがある行の特定の列のセルをアクティブにしたい時は、どうすればよいでしょうか?
790名無しさん@そうだ選挙にいこう:2006/09/14(木) 22:56:15
>アクティブセルがある「行」の特定の「列」のセル
ん?意味がわからんが、こういうことか?
Columns(ActiveCell.Column).Activate
791781:2006/09/15(金) 00:01:22
>>790
わかりにくくてすいません。
例えば、5行目にアクティブセルがある場合は、B5をアクティブに、
8行目にアクティブセルがある場合は、B8をアクティブにしたいという感じで、
アクティブセルがある行のB列目のセルをアクティブにしたいのです。
792名無しさん@そうだ選挙にいこう:2006/09/15(金) 00:22:12
それなら
Range("B" & ActiveCell.Row).Activate
793名無しさん@そうだ選挙にいこう:2006/09/15(金) 00:22:48
【1 OSの種類      】 WindowsXP Home
【2 Excelのバージョン】 Excel2000
【3 VBAが使えるか  】 いいえ
【4 VBAでの回答の可否】 否

A列が日付でB列が売上の表を作りました
B列は日付によっては売上がないのですが、A列をX軸にしてB列をプロットしたいのですが
値の無い日は無視してグラフを作成したいのですがどうすればいいでしょうか?
794名無しさん@そうだ選挙にいこう:2006/09/15(金) 09:28:50
795名無しさん@そうだ選挙にいこう:2006/09/15(金) 10:08:28
>>778
ありがとうございました。
796名無しさん@そうだ選挙にいこう:2006/09/15(金) 11:00:21
AAAA33-2222
AAAA33-111
AAAA33-112
AAAA33-113
AAAA33-114
AAAA33-115
AAAA33-116
AAAA33-117

ハイフンより前が同じ、以下が違うデータで
効率よく入れるやり方はありますか?
797名無しさん@そうだ選挙にいこう:2006/09/15(金) 11:08:17
>>796
書式→セル→表示形式→ユーザー定義に
"AAAA33-"###
でOK
798名無しさん@そうだ選挙にいこう:2006/09/15(金) 11:09:24
↑#が4つだった。
799名無しさん@そうだ選挙にいこう:2006/09/15(金) 11:50:30
【1 OSの種類         .】 Windows2000
【2 Excelのバージョン   】 Excel2002

取引先別の毎月の売上合計金額のデータがあります。

ひと月の売上が5000円以上、
又は半年間合計の売上が30000円以上

という条件で該当する取引先を抽出したい場合の
条件式を教えてください。
800名無しさん@そうだ選挙にいこう:2006/09/15(金) 12:06:10
>>799
オートフィルタとか使ったら?
801名無しさん@そうだ選挙にいこう:2006/09/15(金) 12:12:55
>>797

レスありがとうございます。
それを「種類」のところのボックスに入れると
普通は「サンプル」が変わるんですよね?
そうならなかったんです。
802名無しさん@そうだ選挙にいこう:2006/09/15(金) 12:29:58
>>801
いや別にサンプルは、かわらないよ。
G/標準を消して"AAAA33-"#### を書いてOKボタンでいいよ。
ちゃんと表示させたいセルの範囲を選択してる?
803名無しさん@そうだ選挙にいこう:2006/09/15(金) 13:18:13
>>800
条件式で一生懸命考えていました。
少し試してみます。ありがとうございました。
804名無しさん@そうだ選挙にいこう:2006/09/15(金) 14:25:55
>>802

先に聞くべきだったかもしれませんが
それをすることによって普通のとどう違うようになるんですか?
805名無しさん@そうだ選挙にいこう:2006/09/15(金) 14:38:16
111と入力するとAAAA33-111と表示されるようになる。
806名無しさん@そうだ選挙にいこう:2006/09/15(金) 15:03:37
>>793です
>>794
ありがとうございました

ちなみにセルに=if(なんとか、セルの値、””)が入っていたのですが
数式と値のクリアを実施したのちやればうまくいきました
807名無しさん@そうだ選挙にいこう:2006/09/15(金) 15:03:40
>>805

申し訳ないです。解決しました。
808名無しさん@そうだ選挙にいこう:2006/09/15(金) 15:04:54
>>804
お前は誰だ
809807:2006/09/15(金) 15:15:34
>>808

>>804も僕です。ありがとうございました。
810名無しさん@そうだ選挙にいこう:2006/09/15(金) 15:36:22
> ↑#が4つだった。

あんたも分ってないなあ
811名無しさん@そうだ選挙にいこう:2006/09/15(金) 15:50:33
最近失礼な質問者が増えたな
812名無しさん@そうだ選挙にいこう:2006/09/15(金) 15:56:08
>>809
804よりももっと前の番号を名前に書かないといかんのじゃないのけ?
813名無しさん@そうだ選挙にいこう:2006/09/15(金) 16:02:31
>>798
"AAA33-"#

↑#は1個でOKですよ。
桁数を指定したい時は # の代わりに 0 を使います。
最低3桁表示する(1を入れても001と表示させる)場合は "AAA33-"000


>>810
ちゃんと答えを書いてあげなって。
814名無しさん@そうだ選挙にいこう:2006/09/15(金) 18:05:33
>>812

いやー申し訳ない。仕事中だったもんで。
地方の方ですか?
815名無しさん@そうだ選挙にいこう:2006/09/15(金) 18:12:43
【1 OSの種類         .】 Windows2000
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 N
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 関数Left Mid

田中氏
東さん
二ノ宮くん
横田様

と名前が各セルに記入されていますが、これを関数で

田中

二ノ宮
横田

にするにはどのように関数を組めばいいでしょうか?
816名無しさん@そうだ選挙にいこう:2006/09/15(金) 18:29:21
【1 OSの種類        .】 Windows2000
【2 Excelのバージョン   】 Excel2002
【3 VBAが使えるか    .】 Y
【4 VBAでの回答の可否】 可
【5 検索キーワード     】EXCEL 名前 参照

Sheet3!$D$2,Sheet3!$D$4,Sheet3!$D$6,Sheet3!$D$8のセルに"DDD"という
名前をつけました。
この"DDD"という名前を使って、Sheet3!$D$4を参照したい場合どのように
したらいいでしょう。

Worksheets("Sheet3").Select
Range("DDD").Select
ActiveCell.Offset(1, 0).Activate

とすると、Sheet3!$D$3 が選択されてしまいます。
現在たまたま"DDD"のセルは1行おきになっていますが、1行おきとは
限りません。
817名無しさん@そうだ選挙にいこう:2006/09/15(金) 19:53:34
>>815
REPLACE関数で不要な文字を空白に置き換えるか
LEFT関数で必要な文字数だけ抜き出せ
818名無しさん@そうだ選挙にいこう:2006/09/15(金) 20:22:22
エクセル2002で、マクロが自動実行になっているようですが、
開く段階で何かを押しながら開くと、マクロが実行しない事とかってできないでしょうか?
819名無しさん@そうだ選挙にいこう:2006/09/15(金) 21:16:01
>>818
ツール→オプション→セキュリティ→マクロセキュリティ
ここで「高」か「中」に設定
820名無しさん@そうだ選挙にいこう:2006/09/15(金) 21:29:29
>>815

クソ長いけど、これでいい?

=IF(ISERROR(FIND("氏",参照セル)),"",REPLACE(参照セル,FIND("氏",参照セル),1,""))
&IF(ISERROR(FIND("さん",参照セル)),"",REPLACE(参照セル,FIND("さん",参照セル),2,""))
&IF(ISERROR(FIND("くん",参照セル)),"",REPLACE(参照セル,FIND("くん",参照セル),2,""))
&IF(ISERROR(FIND("様",参照セル)),"",REPLACE(参照セル,FIND("様",参照セル),1,""))
&IF(ISERROR(FIND("氏",参照セル))*ISERROR(FIND("さん",参照セル))*ISERROR(FIND("くん",参照セル))*ISERROR(FIND("様",参照セル))<>0,参照セル,"")

誰かスマートな奴をたのむ。漏れの頭ではこれが限界。
821名無しさん@そうだ選挙にいこう:2006/09/15(金) 21:32:11
>>816
For Each myRange In Range("ddd").Areas
  2番目のセルを選択する
Next

この方法だと、名前を定義するときは順序に注意する必要があるのと
厳密に言えばチェックが必要なので適当にどうぞ
822名無しさん@そうだ選挙にいこう:2006/09/15(金) 21:34:07
>>819
すみません。通常はマクロを自動実行のままにしたいのです。(自動運転のため)

ふと、中身を確認しようとした時に、実行させずに開く方法はないのかなと。

ややこしくてすみません。
823名無しさん@そうだ選挙にいこう:2006/09/15(金) 21:47:15
>>815
=LEFT(A1,LEN(A1)-1*OR(RIGHT(A1,1)="氏",RIGHT(A1,1)="様")-2*OR(RIGHT(A1,2)="さん",RIGHT(A1,2)="くん"))
敬称なしで敬称っぽい字で終わるものは考えてない
824名無しさん@そうだ選挙にいこう:2006/09/15(金) 22:03:13
>>817
>>820
>>823
ありがとうございます
825名無しさん@そうだ選挙にいこう:2006/09/15(金) 22:54:04
>>792
ありがとうございました。
826名無しさん@そうだ選挙にいこう:2006/09/16(土) 00:01:32
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2000
【3 VBAが使えるか    .】 マクロの記録を見て少しわかる程度
【4 VBAでの回答の可否】 可

 目的:印刷時(印刷プレビュー時)にのみグラフの目盛りの間隔を変更する
 理由:グラフが大きいため、A4プリント時に目盛りの文字が重なり見づらくなるため
 方法:マクロ(Workbook_BeforePrint)を使用
 結果:印刷の段階までは成功。印刷後(印刷プレビュー復帰後)、元の目盛りに戻す方法がわからず

このような感じです。
印刷時にグラフの目盛りの間隔を変更したものの、元に戻す方法がわかりませんでした。
何か解決策等ございましたらご教示いただけますようお願い申し上げます。
827名無しさん@そうだ選挙にいこう:2006/09/16(土) 00:11:59
>823はスマートだし「氏家さん」とかに対応できてて、いいね。
828名無しさん@そうだ選挙にいこう:2006/09/16(土) 00:40:09
>>826
変更前の値を退避しておいて戻せばいいんジャマイカ?
829名無しさん@そうだ選挙にいこう:2006/09/16(土) 02:59:59
【1 OSの種類        .】 Windows2000
【2 Excelのバージョン   】 Excel97
【3 VBAが使えるか    .】 No
【4 VBAでの回答の可否】 No

第1列  第2列
10    50
20    60
空欄    ""
40    80

で折れ線グラフを描く時に、[ツール]-[オプション]-[グラフ]
空白セルのプロット を「補完してプロットする」にすることにより

第1列は空欄を飛ばしてグラフが描けますが、
第2列の""では、「0」として扱われるようです。
""を無視することは出来ないのでしょうか?
尚、""はIF文の計算結果によるもので、セルの見かけ上は空欄です。
830828:2006/09/16(土) 10:01:13
>>828
ありがとうございます。
変更時と同じように、元に戻すときも
  With ActiveChart.Axes(xlCategory)
   .TickLabelSpacing = n
   .TickMarkSpacing = n
これを使おうと思ってはいるのですが、
印刷(プレビュー)からの復帰のタイミングというかイベントを計る事が出来ずに悩んでおります。
印刷イベント前にはBeforePrintがありますが、印刷後のイベントにAfterPrintなるものがあればいいのですが・・・
831むら:2006/09/16(土) 10:24:49
【1 OSの種類        .】 WindowsXP
【2 Excelのバージョン   】 Exce2000
【3 VBAが使えるか    .】 No
【4 VBAでの回答の可否】 No

C2-->F5-->j20
上記のようにセルに入力したあと、エンターキーを押すと
次に入力したいセルにカーソルを飛ばすにはどうしたらいいですか?
832名無しさん@そうだ選挙にいこう:2006/09/16(土) 11:42:00
【1 OSの種類        .】 WindowsXP
【2 Excelのバージョン   】 Excel2002
【3 VBAが使えるか    .】 N
【4 VBAでの回答の可否】 不可
【5 検索キーワード     】EXCEL 名前 参照

A1セルに鈴木太郎
A2セルに斉藤博
A3セルに岸敏一
以下延々と続く

って場合に、一つのセル内で名字と名前の間にスペースを入れるのを
一括でやる方法ってあるんでしょうか?
A2000くらいまであってどうしたらいいやら…
名字は圧倒的に漢字二文字が多いです。
どなたかお知恵を拝借させてください。
お願いいたします。


833名無しさん@そうだ選挙にいこう:2006/09/16(土) 12:13:52
【1 OSの種類         .】 Windows xp Pro (SP2)
【2 Excelのバージョン   】 Excel 2002 (10.6809.6811) SP3
【3 VBAが使えるか    .】 はい
【4 VBAでの回答の可否】 可
【5 検索キーワード     】EXCEL 書式 表示形式 ダブルクオー

セルの表示形式をユーザ定義で 「"【"@"】"」にすると
「あいう」と入れたセルは「【あいう】」と表示されますが、
「"あいう"」と表示されるようにするにはどうすれば良いですか。
つまり " そのものを表示文字として書式の中に入れたいのです。
"\"" とか "%22" とか "%34" とか思いつく限り試しても
みましたができません。よろしくお願いします。
834名無しさん@そうだ選挙にいこう:2006/09/16(土) 12:20:27
>>832
MID関数とか使ってとりあえず苗字二字決めうちで分割
その後手で修正

そもそも
岸元一という人がいて、苗字が岸なのか、岸元なのか分からないから
一括で一発変換なんて無理です。
835d:2006/09/16(土) 13:02:41
>>830
>印刷(プレビュー)からの復帰のタイミングというかイベントを計る事が出来ずに悩んでおります

こんな感じにすれば良いかと思いますが。^^

Private Sub Workbook_BeforePrint(Cancel As Boolean)
  Cancel = True
  Application.EnableEvents = False
  
  '印刷前処理
  ActiveCell.Value = "123"
  
  ActiveSheet.PrintPreview
  
  '印刷後処理
  ActiveCell.Value = "あああ"
  
  Application.EnableEvents = True
End Sub
836名無しさん@そうだ選挙にいこう:2006/09/16(土) 13:21:38
>>831
@Ctrlを押しながら、C2,F5,J20を選択してから入力を行う。
Aそれらのセル以外をロックしてシートの保護で選択不可能にする。

入力前に選択するのも、シートの保護もイヤならVBA必須。


>>833
"""@"""

一つ目の"はChr(34)で、二つ目はChrW(733)、三つ目はChr(34)
VBAから設定しねて。
.NumberFormat = """" & ChrW(733) & """@""" & ChrW(733) & """"

誤魔化しでもいいなら「"''"@"''"」って手もあるけど。
837名無しさん@そうだ選挙にいこう:2006/09/16(土) 13:38:52
>>832
回答になるかどうかわからんけど、岸敏一っていい名前じゃね?
838826:2006/09/16(土) 13:53:20
>>835
素晴らしい!

昨日から今までずーっと調べ続けましたが、同じ理由で悩んでいる方が
多くいること、またその多くが未解決もしくはマクロ以外の手でしか解決できていないことを
知り、落胆していました。

ありがとうございました。
839名無しさん@そうだ選挙にいこう:2006/09/16(土) 14:09:32
>>837

戦時中に反政府運動して
処刑された人っぽい名前だと思ったけど俺は
840名無しさん@そうだ選挙にいこう:2006/09/16(土) 14:23:52
【1 OSの種類         .】 Windows xp Pro (SP2)
【2 Excelのバージョン   】 Excel 2002
【3 VBAが使えるか    .】 少々
【4 VBAでの回答の可否】 可
セルでA1に入力した後、TabでB1に移動して入力後、
Enterキーを押すとA2に移動するのを止める手段はありませんか?
真下のセルに移動させたいのですが。
841名無しさん@そうだ選挙にいこう:2006/09/16(土) 14:35:25
>>840
設定があったかな。見たような気もするし無かったような気もするなぁw
Offset(x, y)じゃぁダメカナ?
842名無しさん@そうだ選挙にいこう:2006/09/16(土) 15:38:07
【1 OSの種類         .】 Windows 2000
【2 Excelのバージョン   】 Excel 2000
【3 VBAが使えるか    .】 少々
【4 VBAでの回答の可否】 可

テンプレートブック"a"があります。
aに何か変更点を加えて保存したブックを"b"とします。

aの段階ではどのような状況でも保存できるようにし、
一度変更を加えて保存したbの段階では上書き保存をさせないような方法はありますか?
(上書き保存できないだけで、それ以外のシートの編集は通常通りで)
その方法をお教えください。

できれば読み取り専用は使わずマクロでお願いします。
843名無しさん@そうだ選挙にいこう:2006/09/16(土) 15:52:14
>>840
設定は知らんので
Sub Worksheet_SelectionChange(ByVal Target As Range)
On Error Resume Next
Application.EnableEvents = False
Target.Parent.Cells(Target.Row, Target.Column - 1 + 2 * (Target.Column <= 1)).Select
Target.Select
Application.EnableEvents = True
End Sub
目的のシートに書く
844名無しさん@そうだ選挙にいこう:2006/09/16(土) 16:05:27
>>842
フラグを保持して条件分岐すればいいだけの話でしょ。
値はaではFalse、一度保存処理を行ったらTrue
条件分岐はFalseでは保存可能、Trueでは保存不可。
値はシート上に保存してね。

この説明で解らなければ、VBA少々使えるなりに
自分で書いたところまでコードを貼って。
845名無しさん@そうだ選挙にいこう:2006/09/16(土) 16:14:20
>>844
ありがとうございます。aから変更しbになったとき、一度閉じられているのですが、それでも条件分岐は
生きてますでしょうか?
846名無しさん@そうだ選挙にいこう:2006/09/16(土) 16:19:34
>>840 >>843
ありがとうございます。
>>843
わざわざコードまで書いてもらってありがとうございます。
使わせてもらいます。

847名無しさん@そうだ選挙にいこう:2006/09/16(土) 16:31:48
>>845
おそらくテンプレートaはファイル名が固定と踏んで、
aのファイル名以外ならば上書き禁止にするとかは?
848名無しさん@そうだ選挙にいこう:2006/09/16(土) 16:34:52
>>847
なるほど。
それだとシンプルでいいですね。
ちなみにaは私が作りますが、bの保存者は私ではなく、ファイル名が必ずしも
a≠bとは限らず・・・です・・。

でもいいヒントになりました。
最終保存日時等を判定基準にします。
ありがとうございました。
849名無しさん@そうだ選挙にいこう:2006/09/16(土) 17:08:31
>>848
thisworkbook.nameの最後に拡張子「.xls」が付いてなければまだ保存してないブックだよ
850名無しさん@そうだ選挙にいこう:2006/09/16(土) 20:01:23
【1 OSの種類        .】 WindowsXPSP1
【2 Excelのバージョン   】 Exce2000
【3 VBAが使えるか    .】 はい
【4 VBAでの回答の可否】 可

数式と値のクリアを実行すると必ずフリーズ(落ちるわけではなく操作を受け付けなくする)状態に
陥ります。
原因を調べた結果、

Private Sub Worksheet_Change(ByVal Target As Range)
Application.ScreenUpdating = False
End Sub

上記マクロがある状態で数式と値のクリアを実行すると再現されます。
(シートの状況は自由、白紙でもok。もちろんマクロは有効で)

質問T これが私の環境下でのみ起こるものなのか、一度再現テストお願いできますでしょうか?
質問U これを回避する方法はありますか?

以上よろしくお願いします。
851名無しさん@そうだ選挙にいこう:2006/09/16(土) 20:14:28
>>851

ヘルプにはマクロ終了後「True」に戻せって書いてあるよ。
852名無しさん@そうだ選挙にいこう:2006/09/16(土) 20:15:09
>>852
なるほど。そのせいですかね。確認してみます。
853名無しさん@そうだ選挙にいこう:2006/09/16(土) 20:15:46
やってもうたorz

↑は850の間違いね。
854名無しさん@そうだ選挙にいこう:2006/09/16(土) 20:16:55
>>850
その3行だけの記述しかないなら無意味だから、削除すればいいよ
855名無しさん@そうだ選挙にいこう:2006/09/16(土) 20:19:14
俺、マクロ結構得意で、学校とかでも回りの皆にエクセルとか結構教えたりしてるんだけど、
ここで回答者として居座ろうって考えてるんだけど、何からはじめれば良いわけ?
856名無しさん@そうだ選挙にいこう:2006/09/16(土) 20:23:16
>>855
とりあえず座禅。
857829:2006/09/16(土) 20:23:37
>>829ですが‥
どなたか、教えていた頂けないでしょうか?
858名無しさん@そうだ選挙にいこう:2006/09/16(土) 20:25:52
>>857
少し発送を変えて、""を違う表現に書き換えるマクロを書き足すとか
859名無しさん@そうだ選挙にいこう:2006/09/16(土) 20:27:39
マクロがNoでしたね。すみません
860名無しさん@そうだ選挙にいこう:2006/09/16(土) 20:43:30
>>857
>858のやり方をifの結果に加えればいいのでは?
条件があって、結果が""となるところを0とすれば
861名無しさん@そうだ選挙にいこう:2006/09/16(土) 21:08:44
>>857
値だけをどこかにコピペして、そいつでグラフを描くとか?
862861:2006/09/16(土) 21:13:37
>>857
"" → NA()
863857:2006/09/16(土) 21:20:22
>>858-862
皆さん、ありがとうございます。
>>862さんの方法で解決です。
864833:2006/09/16(土) 22:33:49
>>836
ありがとうございます。
全角の「”」を使えば済む話でしたね orz
まったく思い至らなかった・・・本当に申し訳ありませんですた。
865名無しさん@そうだ選挙にいこう:2006/09/16(土) 23:46:40
【1 OSの種類        .】 WindowsXP
【2 Excelのバージョン   】 ExcelXP
【3 VBAが使えるか    .】 はい
【4 VBAでの回答の可否】 可

フィルタをかけてA列で2を抽出してC列を合計する
ってのをVBAでやりたいです。
関数だとオートフィルタかけて、subtotalで合計を出す、ですかね
配列変数っての使えばいいんですかねえ・・・ううーむむむ・・・・

どうか教えてください。
866名無しさん@そうだ選挙にいこう:2006/09/17(日) 00:15:15
>>865
画面上にフィルタ後の状態を出す必要ないなら
Sub aaa()
a = 0
For Each c In Range("a:a")
If c = 2 Then a = a + c.Offset(0, 2)
Next c
MsgBox a
End Sub

マクロの記録で見てみたら?
867名無しさん@そうだ選挙にいこう:2006/09/17(日) 00:15:36
【1 OSの種類        .】 MacOSX 10.4.7
【2 Excelのバージョン   】 Excel 2004
【3 VBAが使えるか    .】 わかりません
【4 VBAでの回答の可否】 否

ツールバーの配置を登録したいのですができません。

どなたかおしえてください。
868865:2006/09/17(日) 00:49:53
>>866
ありがとうございます!
そうです画面動かす必要なかったんです。
どうもありがとうございました。
869名無しさん@そうだ選挙にいこう:2006/09/17(日) 01:08:12
【1 OSの種類        .】 WindowsXP
【2 Excelのバージョン   】 Excel 2003
【3 VBAが使えるか    .】 つかえません
【4 VBAでの回答の可否】 否

入力規則で、
リスト値の種類・・・・リスト
元の値・・・=$D$81:$D$145 (何でも良いですが)
空白を無視してドロップダウンリストから選択する

の設定にして、最初はドロップダウンリストからセル入力できるようになったのですが、
ある日突然ドロップダウンリストが出なくなってしまいました。
何か原因と対策方法はあるのでしょうか?
870名無しさん@そうだ選挙にいこう:2006/09/17(日) 03:52:11
【1 OSの種類        .】 WindowsXP
【2 Excelのバージョン   】 Excel 2003
【3 VBAが使えるか    .】 つかえません
【4 VBAでの回答の可否】 否

オートフィルタをかけて簡単なデータベースとして使ってるのですが、
A列に年齢が入力してあるとして、
40代で正確な年齢が分からなくて43とか47とかで検索した場合にもヒットする用にしたいのですが、
その場合はそのセルにはどのように入力すれば良いのでしょうか?
871名無しさん@そうだ選挙にいこう:2006/09/17(日) 04:32:43
>>870
=ROUNDDOWN(年齢,-1)
で年代列を作成して、その列でフィルタリングすればいいじゃん。
フィルタオプションで、40以上And49以下を抽出してもいいけど。
872名無しさん@そうだ選挙にいこう:2006/09/17(日) 05:32:21
>>871
ああ、40代の人を抽出したいのではなくて、
正確に年齢の分かってる人もいるので、
たとえば43で検索した場合に43の人と正確に年齢が分からない40代の人がヒットするようにしたいんですが、
無理でしょうか?

年齢のセルに40〜49みたいに範囲を持った値を入力することが出来れば楽なんですが。
すいません。なんかすごく初歩的な質問のような気はするんですが調べてもなかなか出てきませんで・・・
873名無しさん@そうだ選挙にいこう:2006/09/17(日) 06:13:00
>>872
セルに「4-」とでも入れて置いて
フィルタオプションで、「43と等しいOr4-と等しい」を抽出
「43」か「40代で正確な年齢不詳」という二つの条件で抽出したいんだから
その二つの条件を書けば良いだけの話。

43単一で抽出したら当然43しか抽出されない。
範囲を持った値を設定したところで、40〜49という範囲を持った値は
「40〜49」という値であって43とも47とも同一ではないから意味無し。
まあVBA使えばどうにでもなるけど。
874名無しさん@そうだ選挙にいこう:2006/09/17(日) 06:15:31
未確定の数字と確定した数字を一つのセルで表現できるならやってみるがいい
875名無しさん@そうだ選挙にいこう:2006/09/17(日) 06:20:37
>>873-4
ういっす了解っす!
こんな朝も早くからどうもありがとうございました。
おかげさまでちょっとすっきりした気分で1日すごせそうです。
876名無しさん@そうだ選挙にいこう:2006/09/17(日) 15:03:49
        ______
      /;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;\
    /;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;\
   /;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;ヽ 
    l;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;|   こっこが遊びに来たよ!
    |;;;;;;;;;;;;;;;;;;(●);;;;;;;;;;;;;(●);;;;;;;;;| 
   |;;;;;;;;;;;;;;;;;;;;;;;\___/;;;;;;;;;;;;;;;|  
    ヽ;;;;;;;;;;;;;;;;;;;;;;;;;;;\/;;;;;;;;;;;;;;;;;ノ

877名無しさん@そうだ選挙にいこう:2006/09/17(日) 16:55:29
【1 OSの種類         .】 Windowsxp
【2 Excelのバージョン   】 Excel2002
【3 VBAが使えるか    .】 はい
【4 VBAでの回答の可否】 可
ひとつのシートに一銘柄の株価をインターネットから取得できるようなマクロを
つくったんですけど、
一つ一つのシートでマクロの実行を選択しなければならず、手間がかかります。
ボタンをつくってそれをクリックしたらすべて更新されるようにしたいのです。
よろしくお願いします。
878名無しさん@そうだ選挙にいこう:2006/09/17(日) 17:01:39
>>877
普通にできるけど。今のコードのサンプルをUPシル。

標準モジュールに入れる
株価コードを各シートの固定したセルに入れる
For Eachで全てのワークシートに対し更新処理をする
とかでできるはず。


879877:2006/09/17(日) 17:13:32

'モジュール内で使用する各変数を宣言
Dim url As String
Dim lastrow As Integer
Dim i As Integer

Sub Calc()
'価格データを取得するマクロ

'マクロ内で使用する各変数を宣言

Dim code As String
Dim data_length As Integer, date_temp As Date
Dim day_s As Integer, month_s As Integer, year_s As Integer
Dim day_e As Integer, month_e As Integer, year_e As Integer
Dim row_length As Integer

code = "998407.o" '株価コード

data_length = -3600 '10年分のデータを取得(休日・祝日などを含むため実際に取得するデータはこれよりも少ない)

date_temp = DateAdd("d", data_length, Now) '本日の日付から取得日付分を引き変数に代入

day_e = Day(Now) '取得終了日
month_e = Month(Now) '取得終了月
year_e = Year(Now) '取得終了年
day_s = Day(date_temp) '取得開始日
month_s = Month(date_temp) '取得開始月
year_s = Year(date_temp) '取得開始年

Range("B4:H65000").ClearContents 'シートをクリーンアップ
880877:2006/09/17(日) 17:15:38

For i = 0 To Abs(data_length) * 0.65 Step 50 '取得日付を絶対値にして、その2/3を繰り返し取得する。(休日・祝日を考慮するため)

url = "URL;http://table.yahoo.co.jp/t?s=" & code & "&a=" & month_s & "&b=" & day_s & "&c=" & year_s & "&d=" & month_e & "&e="
& day_e & "&f=" & year_e & "&g=d&q=t&y=" & i & "&z=" & code & "&x=.csv"

If i = 0 Then
lastrow = "4" '1回目に取得したデータはセルB4を起点にシートに代入
Call Get_Data
If Range("B4") = "" Then
Exit Sub
End If
Else
881877:2006/09/17(日) 17:17:02

lastrow = (Range("B4").End(xlDown).Row + 1) '2回目以降に取得したデータは、最初の行(見出し)を削除して最後の行に追加していく
Call Get_Data
Range("B" & lastrow, "H" & lastrow).Delete
row_length = (Range("B4").End(xlDown).Row)
If row_length - lastrow < 49 Then
Exit For
End If
End If

Next
Range("B5:H65000").Sort Key1:=Columns("B") 'データを日付順で並び替え

lastrow = Range("B4").End(xlDown).Row

Range("B5", "B" & lastrow).NumberFormatLocal = "yyyy/mm/dd" 'データの形式を変更
Range("C5", "H" & lastrow).NumberFormatLocal = "0"

Range("A1").Select

End Sub
882877:2006/09/17(日) 17:18:19


Sub Get_Data()
'価格データを取得するマクロ

With ActiveSheet.QueryTables.Add(Connection:=url, Destination:=Cells(lastrow, 2))
.Name = "Yahoo"
.FieldNames = False
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.BackgroundQuery = True
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = False
.RefreshPeriod = 0
.WebSelectionType = xlSpecifiedTables
.WebFormatting = xlWebFormattingNone
.WebTables = "19" '価格の取得がうまく動作しなくなった場合、この値を変更
.WebPreFormattedTextToColumns = True
.WebConsecutiveDelimitersAsOne = True
.WebSingleBlockTextImport = False
.WebDisableDateRecognition = False
.WebDisableRedirections = False
.Refresh BackgroundQuery:=False
End With
End Sub
以上です。>>878
883名無しさん@そうだ選挙にいこう:2006/09/17(日) 17:18:29
長文ウザイ
重要な部分だけでいいだろ
884877:2006/09/17(日) 17:19:40
なんか見づらくなってすいません。
885877:2006/09/17(日) 17:20:14
スマソ
886名無しさん@そうだ選挙にいこう:2006/09/17(日) 17:24:52
んで?
887名無しさん@そうだ選挙にいこう:2006/09/17(日) 17:36:27
【1 OSの種類        .】 WindowsXP
【2 Excelのバージョン   】 Excel 2003
【3 VBAが使えるか    .】 つかえません
【4 VBAでの回答の可否】 否

A1に http://www.yahoo
A2に .co.jp/

と、あります。
これを一つのセルに http://www.yahoo.co.jp/ と、したいのですが
コピペ以外で、簡単な操作方法はありますでしょか?
よろしくお願いします。
888名無しさん@そうだ選挙にいこう:2006/09/17(日) 17:57:10
>>887

=A1 & A2

いや、まさかこんな解ではないだろう。
いったい、ウラは何なんだ。
889名無しさん@そうだ選挙にいこう:2006/09/17(日) 17:57:50
夏だなぁ
890名無しさん@そうだ選挙にいこう:2006/09/17(日) 18:15:22
=CONCATENATE(A1,B1)
でどうだ!!!
891名無しさん@そうだ選挙にいこう:2006/09/17(日) 18:28:57
やっぱそうするしかないんですか・・・



みたいなレスを期待
892887:2006/09/17(日) 18:30:55
自己解決しました、レスくれた人すみません。
893887:2006/09/17(日) 18:33:44
有り難うございました。助かりました。
初歩的な事だったみたいで、はずかしいです。。。
一から勉強してきます。
894名無しさん@そうだ選挙にいこう:2006/09/17(日) 22:35:21
初めて質問させていただきます。

【1 OSの種類         .】 Windows xp Pro
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 Excel 右クリックメニュー 変更

右クリックメニューの内容を変更することというのは出来るのでしょうか?
現在右クリックメニューの一番下に「リサーチ」という項目があります。これをクリックするとなぜかインストーラが起動して「インストール中」
という画面が出てExcelがエラーになって終了してしまいます。

右クリックメニューの一番下にあるので、気づかずにクリックしてフリーズ、データが消えてしまったことが何度かありました。

この忌まわしい「リサーチ」の右クリック項目だけでも削除する方法がありましたらお教え願えませんでしょうか・・・よろしくお願いします。
895名無しさん@そうだ選挙にいこう:2006/09/17(日) 22:50:39
>>894
他に追加してないならリセット
896電車男:2006/09/17(日) 23:02:50
聞いてくれ!1今日電車のなかですごいことがあった!!
897名無しさん@そうだ選挙にいこう:2006/09/17(日) 23:45:35
>>896
痴漢に絡まれた女性をピボットグラフにしてやったのか?
898名無しさん@そうだ選挙にいこう:2006/09/18(月) 00:00:25
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 オートフィル 勤務表 出勤表 出席表

A1に年/月、二行目に日付、三行目に勤務時間という勤務表を作ろうと思うのですが、
A3〜AE3の部分はどのデータを反映させるのがベストでしょうか?(A2はその月の1日)

どのデータを反映させても表自体はできるのですが、
打ち込んだ元のデータ(この場合A1セル)にあわせるのがいいのか、元のデータから派生したもの(A2)に
合わせるのがいいのか、エクセルの基本的な考え方を教えていただきたいと思い、質問しました
899名無しさん@そうだ選挙にいこう:2006/09/18(月) 00:03:04
>898
項目は列方向に作りましょう
900名無しさん@そうだ選挙にいこう:2006/09/18(月) 00:04:40
>>899
基本的なところで間違ってましたか・・
ありがとうございます、作り直します
901名無しさん@そうだ選挙にいこう:2006/09/18(月) 00:06:16
>>900
待て
表をコピーして「形式を選択して貼り付け」で「行列を入れ替える」にすれば楽だぞ
もう遅いか・・・・・・・・
902名無しさん@そうだ選挙にいこう:2006/09/18(月) 00:10:44
ありがとうございます。手遅れです・・が、今度にたような機会があれば使わせていただきます
903名無しさん@そうだ選挙にいこう:2006/09/18(月) 00:12:15
極力元のデータに集中して合わせた方が何か都合がいい気がするが、特に問題があったことはないので素直にオートフィル使ってるかな
904名無しさん@そうだ選挙にいこう:2006/09/18(月) 00:43:21
【1 OSの種類        .】 WindowsXP
【2 Excelのバージョン   】 Excel 2002
【3 VBAが使えるか    .】 使えません
【4 VBAでの回答の可否】 可

使われたセル範囲内に列を挿入して、その列の、使われたセル範囲で一番下の行まで
「受付可能」と入力したいのですが、どのように書いたらよいのでしょうか?
分かりづらくて申し訳ありませんが、よろしくお願いします。

905名無しさん@そうだ選挙にいこう:2006/09/18(月) 00:48:30
わかりづらいのでそのシート見せてほしい
906名無しさん@そうだ選挙にいこう:2006/09/18(月) 00:51:11
>>904

コードを書いて欲しいのかもしれないが、
先頭に「受付可能」と書いて右下の四角形(名称忘れた)を
ダブルクリックすればいいんじゃないの。
907名無しさん@そうだ選挙にいこう:2006/09/18(月) 00:52:29
>>895
リセットしたら消えました。ありがとうございます。
でも「リサーチ」が追加されてしまった原因って何なんでしょうかね?
908904です:2006/09/18(月) 00:58:13
>>906
こんな技があったのですね!知りませんでした・・・(泣)
勉強になりました!ありがとうございました!
909904です:2006/09/18(月) 01:09:48
もう一度質問してもいいでしょうか?
使われたセル範囲内の、ある列の空欄だけに「受付不可」と
入力したい場合はどうしたらいいのでしょうか?
宜しくお願いします。
910904です:2006/09/18(月) 01:13:31
さらに質問してもいいでしょうか?
使われたセル範囲内の、ある列の空欄だけに「門前払い」と
入力したい場合はどうしたらいいのでしょうか?
宜しくお願いします。
911名無しさん@そうだ選挙にいこう:2006/09/18(月) 01:32:19
>>904

A列を検査列と仮定

さっきと同じ要領で先頭に

= IF($A1="","受付不可","受付可能")
912名無しさん@そうだ選挙にいこう:2006/09/18(月) 02:00:22
>>877
株価取得の件
ttp://ranobe.com/up2/updata/up35649.zip.html
落としたあとzip->xlsにリネーム

MIXI(2121)とかデータが短いもの(上場後すぐ)は表示がちと問題有り。
特定の銘柄で文字化けする(YAHOO!のデータのせい?)
913名無しさん@そうだ選挙にいこう:2006/09/18(月) 02:01:27
>>910
入力セル範囲を選択(空白でない部分も含めてでよい)

CTRL + G でジャンプ

セル選択をクリック

空白セルをクリックしてOKボタンをクリック
↓これで空白セルだけ選択されている(色が変わっている)
「門前払い」と入力してCTRLキーをおしながらエンター
914名無しさん@そうだ選挙にいこう:2006/09/18(月) 02:20:46
【1 OSの種類        .】 Windows2000
【2 Excelのバージョン   】 Excel 2003
【3 VBAが使えるか    .】 Y
【4 VBAでの回答の可否】 可

[シート1:DATA][シート2:B組][C組]…[E組]
と組んでおり、[シート1:DATA]には
A   B   C   D
クラス 日付 名前 点数
A  4/1  田中 80
A  4/1  佐藤 91
B  4/1  井上 90
B  4/1  寺田 75
D  4/1  大西 78
E  4/1  安部 83
とあり、
データを各組のシートを分けるマクロを組みました。
Sheets("DATA").Select
Selection.AutoFilter Field:=1, Criteria1:="A"
Range("A1").CurrentRegion.Select
Selection.Copy
Sheets("A組").Select
Range("A1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
これをクラス分繰り返しています。これだとC組に見出しの部分のみコピーされます。
抽出データが無い場合(今回はC組)、スルーするにはどうすれば良いでしょう。
また見出しを省いて貼り付けるにはどうすれば良いでしょう。
このままだとデータを追加するとき見出しも追加されます。
915名無しさん@そうだ選挙にいこう:2006/09/18(月) 02:34:40
>>914
見出しの省き方はCurrentRegionのヘルプに書いてある。
916名無しさん@そうだ選挙にいこう:2006/09/18(月) 02:55:00
>>914
下準備としてシートの名前の"A組"等とDATAシートのクラス名の
アルファベットを全角・半角どちらかに統一して、下記のとおり

Sub a()
For Each c In Range("a2:a6000") 
 If c = "" Then Exit Sub
 sn = c.Value & "組"
 Sheets(sn).Range("b65535").End(xlUp).Offset(1, 0) = c.Offset(0, 1)
 Sheets(sn).Range("C65535").End(xlUp).Offset(1, 0) = c.Offset(0, 2)
 Sheets(sn).Range("d65535").End(xlUp).Offset(1, 0) = c.Offset(0, 3)
Next c
End Sub
917914:2006/09/18(月) 02:57:02
>915
ありがとうございます。
Selection.Copy

Selection.Offset(1).Resize(Selection.Rows.Count - 1).Copy
に変更しましたが、抽出データが無い場合(C組)は
全データを選び貼り付けられます。
抽出データ無しの判定はどうすればできますか?
918名無しさん@そうだ選挙にいこう:2006/09/18(月) 03:21:16
>>916
ありがとうございます。
これも可能でした。
919名無しさん@そうだ選挙にいこう:2006/09/18(月) 06:35:01
>>907
サンプルとかxlsファイルをDLして開いたときにマクロで右クリに登録されて、
そのxlsファイルの作者が後始末(ブックを閉じるときの)をしてないから残骸が残ってしまっただけだと思う。
920名無しさん@そうだ選挙にいこう:2006/09/18(月) 11:30:16
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2000
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 canvas illustrator パス ベジェ曲線
すみません質問なんですが
macで昔のcanvasで作った線のデータ(フロッピーデスクから)をwinでexcel2000に取り込もうとしてるんですが
MacDrive→win最新版canvas体験版→Excel2000というやり方をしてるんですが
どうしてもcanvas体験版から(illustratorCSとAutoCad2004もためしにやってみました)Excel2000に持っていくことができないんです
一応調べたところExcel2000でもベジェをサポートしてるっぽいんですがやっぱりExcelでcadみたいに
読み込むことは事は無理なんでしょうか?
921877:2006/09/18(月) 14:56:43
>>912
ありがとうございます!
ほんと感激です!
作っていただいたものですと、私のパソコンでは
非常に処理時間がかかってしまうので、
最新50件だけ更新するというものに改良してみます!
どうもありがとうございました!!
922914:2006/09/18(月) 18:47:34
>>917
自己レスですが一応このように解決しました。
Dim Lastrow As Integer
Lastrow = 1
Range("A1").CurrentRegion.Select
Lastrow = Selection.Rows.Count + Selection.Row - 1
If Lastrow > 1 Then
MsgBox "DATA" & Lastrow - 1
Else
MsgBox "NODATA" & Lastrow - 1
End If
923名無しさん@そうだ選挙にいこう:2006/09/18(月) 19:24:07
解決してなかったのかw
924名無しさん@そうだ選挙にいこう:2006/09/18(月) 20:56:56
コピーした図をすべてのシートに貼り付けるにはどうすればいいのでしょうか?
文字列の場合はすんなりできるのですが、図の場合データを貼り付けできないってエラーが出ます
925名無しさん@そうだ選挙にいこう:2006/09/18(月) 21:23:18
>>924
シートを1つづつ選択して貼り付け
面倒ならそれをマクロ化
926名無しさん@そうだ選挙にいこう:2006/09/18(月) 21:35:18
質問です。
セルにあるメルアドをコピーするとリンクが機能しあおくなり、次からはそこを押すと勝手にメーラーが起動するようになってしまいます。
このようにならないようにするためにはどうすればいいでしょうか?
927名無しさん@そうだ選挙にいこう:2006/09/18(月) 21:43:37
>>926
Excel2000超ならオートコレクトで設定
Excel2000以下ならWorksheet_ChangeイベントでHyperlinks.Delete
928名無しさん@そうだ選挙にいこう:2006/09/18(月) 21:43:58
>>926
「ツール」→「オートコレクトのオプション」→「入力オートフォーマット」
929926:2006/09/18(月) 22:06:02
ありがとうございました
930名無しさん@そうだ選挙にいこう:2006/09/18(月) 22:08:29
【1 OSの種類         .】 Windowsxp
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 if関数、循環参照

D列に誕生日を入力してあり、E2〜にDATEDIF関数を使って年齢を表示したいのですが(E1には=NOW()で現在時間を入れてあります)、
誕生日の入力されてないところもあるので、そこはそのままだと106になってしまい見栄えが悪くなるので空白にしようと思い、以下のような式を作りました
=IF(D2="",D2="",E2=DATEDIF(D2,$E$1,"y"))
これをそのまま入力した場合、循環参照していると言われ作業を続けることが出来ないのですが、どのように回避すればいいでしょうか?
931名無しさん@そうだ選挙にいこう:2006/09/18(月) 22:11:28
=IF(D2="","",DATEDIF(D2,$E$1,"y"))
932名無しさん@そうだ選挙にいこう:2006/09/18(月) 22:16:21
ガンバレ
933名無しさん@そうだ選挙にいこう:2006/09/18(月) 22:20:02
ありがとうございます!
934名無しさん@そうだ選挙にいこう:2006/09/18(月) 22:25:00
和んだ
935名無しさん@そうだ選挙にいこう:2006/09/18(月) 22:30:23
なにこのほのぼのしたムードは
936名無しさん@そうだ選挙にいこう:2006/09/18(月) 23:32:42
なあに、すぐ元の殺伐した雰囲気に戻るさ
937名無しさん@そうだ選挙にいこう
=IF(A40=1,"○","")