Excel総合相談所 52

このエントリーをはてなブックマークに追加
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を使うのは避けたいって場合は「否」にしましょう。丸投げする場合は、必要に応じてブックをアップすること。

前スレ:http://pc10.2ch.net/test/read.cgi/bsoft/1164813734/
2名無しさん@そうだ選挙にいこう:2007/01/05(金) 00:07:03

▼━質問時の注意・決まり事 ━━━━━━━━━━━━━━━━━
・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名無しさん@そうだ選挙にいこう:2007/01/05(金) 00:07:40

★注意1

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


★注意2

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




4名無しさん@そうだ選挙にいこう:2007/01/05(金) 00:08:10

★ 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名無しさん@そうだ選挙にいこう:2007/01/05(金) 00:08:50

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

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

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

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

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

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

また、ここに書かれてないことでも、Excelで出来ないことはたくさんあります。
ここに書かれてないからといって必ず出来るはずだなんて思わないように。
7名無しさん@そうだ選挙にいこう:2007/01/05(金) 00:49:25
>>1
8前スレ991:2007/01/05(金) 00:52:41
前スレ>>998
ありがとうございました。確かめてみてできました。超感謝します。
範囲の設定については少しは自分で調べてやってみます。
9前スレ991:2007/01/05(金) 04:28:10
範囲の設定について調べてみました。動作します。
ただし,えらくかっこわるいことをやっている感じがします。
もっとスッキリできないでしょうか?

Private Sub Worksheet_Change(ByVal Target As Range)

' 範囲のセル以外では動作させない
If Target.Column < 5 Then Exit Sub
If Target.Column > 34 Then Exit Sub
If Target.Row < 11 Then Exit Sub
If Target.Row > 52 Then Exit Sub
10名無しさん@そうだ選挙にいこう:2007/01/05(金) 10:13:59
>>9
If Not Intersect(Target, Range("F12:AG51")) Is Nothing Then
 ' 処理
End If

又は

If Intersect(Target, Range("F12:AG51")) Is Nothing Then Exit Sub
' 処理
11名無しさん@そうだ選挙にいこう:2007/01/05(金) 10:57:22
>9
やっている事は同じだからカッコ悪いかも知れないがスッキリさせてみた。

Private Sub Worksheet_Change(ByVal Target As Range)
  Dim r As Long, c As Long
  r = Target.Row: c = Target.Column
  If c > 4 And c < 35 And r > 10 And r < 53 Then _
    If Cells(r, c) = "E" Then Cells(r, c + 1) = "-"
End Sub
12名無しさん@そうだ選挙にいこう:2007/01/05(金) 11:10:47
>>11
減らしたなーw
初心者には読みにくいかもしれんw
13名無しさん@そうだ選挙にいこう:2007/01/05(金) 11:30:43
> If c > 4 And c < 35 And r > 10 And r < 53 Then
初心者がよくやる悪い例
14名無しさん@そうだ選挙にいこう:2007/01/05(金) 11:37:10
>>13そんな記述してる入門書ありませんから
15名無しさん@そうだ選挙にいこう:2007/01/05(金) 11:38:20
>>13は指摘だろw
16名無しさん@そうだ選挙にいこう:2007/01/05(金) 11:52:15
【1 OSの種類         .】 Windows2000
【2 Excelのバージョン   】 Excel 97
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 エクセル OR excel 97 ファイル名 勝手

ファイル名の最後に勝手に「1」が追加されていくという奇妙な症状が出て困っています。

エクスプローラーから、xxx.xls というファイルをダブルクリックして開くと、
xxx1.xlsと勝手に「1」がファイル名の最後に追加されてしまいます。
そして保存したらxxx1.xlsというファイル名のファイルが作成されます。

しかし、エクセルを開いて、エクセルの「開く」からファイルを開くと「1」はつきません。
また、エクセルを開いて、そこにxxx.xlsをドロップしても「1」はつきませんでした。

インストールしたのはかなり昔のPCで自分で使ってなかったのですが、
最近になってそのような症状があるのに気がついたそうです。
どこか自動でバックアップファイルを作成するようなオプションでも変更したのかと
調べてみたのですが、どうもわかりませんでした。

何が悪いのか原因はわかりませんでしょうか?
よろしくお願いします。
17名無しさん@そうだ選挙にいこう:2007/01/05(金) 12:01:04
>>13
上級者の良い例プリーズ
18名無しさん@そうだ選挙にいこう:2007/01/05(金) 12:04:52
>>16
何だっけ、前スレで解決しなかったっけ?
19名無しさん@そうだ選挙にいこう:2007/01/05(金) 12:07:19
前スレ未解決
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2002
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 Excel 標準のテンプレート 新規作成
Excelを起動したときの新規作成されるブック(標準のテンプレート!?)は、通常どこに保存されていますか?
標準テンプレートを変更したいのですが?

フォルダウィンドウでの新規作成はExcel9.xlsの変更で出来たのだけど
XLStartフォルダにBook.xlt作っても、うまくできません・・
20名無しさん@そうだ選挙にいこう:2007/01/05(金) 12:12:48
>>19
http://www.google.co.jp/search?hl=ja&ie=Shift_JIS&q=XLStart&num=50
もっかい読んでみ。XLTファイルなんて作るって書いてた?
あと、それは、「テンプレート」じゃない。
21名無しさん@そうだ選挙にいこう:2007/01/05(金) 12:19:43
>>17
実は>>9の方式の方が良いコードだ。
RowとColumnを変数に取っていればな。
22名無しさん@そうだ選挙にいこう:2007/01/05(金) 12:23:32
可認性な
23名無しさん@そうだ選挙にいこう:2007/01/05(金) 12:48:05
>>22
違う。可視性、可読性といった、人がコードを読む上での話ではなく
PC(CPU)が実行する処理として>>13みたいな書き方は不適切。
最近の高性能PCじゃ体感での差いは出ないが、計測して数値にすれば
結構な差が出ると思うよ。
24名無しさん@そうだ選挙にいこう:2007/01/05(金) 12:57:30
>>20
だから
[ファイルの種類] を [テンプレート] にすれば自動的にxltになりますが?

25名無しさん@そうだ選挙にいこう:2007/01/05(金) 12:58:22
ANDはORと違って、速度に差は無くね?
26名無しさん@そうだ選挙にいこう:2007/01/05(金) 13:09:15
どっちも評価を省略しないな
27名無しさん@そうだ選挙にいこう:2007/01/05(金) 13:40:53
速度厨は消えろや。
初心者相手のスレだから、可読最優先だ。
28名無しさん@そうだ選挙にいこう:2007/01/05(金) 13:48:05
>>27
どうぞ、初心者相手のスレです

★Word/Excel (MS-OFFICE) 初心者スレッド Part29★
http://pc9.2ch.net/test/read.cgi/pcqa/1161894877/



ここは初心者立入禁止じゃないけど、掘り下げた内容も扱うスレだよ
2chの中ではこのスレがExcel質問スレの最上位に位置するから
29名無しさん@そうだ選挙にいこう:2007/01/05(金) 13:57:43
>>20
テンプレート形式のファイルを Book.xlt という名前で起動フォルダに保存しておくと、
Excel 2002 を起動するとき、および新しいブックを追加で開くときに、
そのファイルが既定のブック テンプレートとして使用されます。
ttp://support.microsoft.com/kb/291218/ja
30名無しさん@そうだ選挙にいこう:2007/01/05(金) 14:03:31
で、実際And使うとどのくらい遅いの?
31名無しさん@そうだ選挙にいこう:2007/01/05(金) 14:50:04
>>30 自分で試してみるといいよ。
Sub test()
  Dim r As Long, c As Long
  Dim sngStart As Single
  sngStart = Timer
  For r = 1 To 65536
    For c = 1 To 256


    Next c
  Next r
  MsgBox Round(Timer - sngStart, 2)
  'Debug.Print Round(Timer - sngStart, 2)
End Sub
これの真ん中の空いてる部分に
      If c > 4 And c < 35 And r > 10 And r < 53 Then
        ' ## 処理 ##
      End If
      ' ***
又は
      Do
        If r > 52 Then Exit Do
        If c > 34 Then Exit Do
        If r < 11 Then Exit Do
        If c < 5 Then Exit Do
        ' ## 処理 ##
        Exit Do
      Loop
      ' ***
のどちらかを入れる。どちらもr,cが指定範囲内なら、「## 処理 ##」を実行し、
それ以外なら「***」に抜けるというコード。条件分岐速度の計測なので不要な処理は省いてある。
行と列はExcelの有効範囲で可変、Do Loop,Exit Doはcontinueの代わり。
32名無しさん@そうだ選挙にいこう:2007/01/05(金) 15:53:54
11だけど、>>21の 余分な処理はさせずに、とっとと戻す
というのは、よくワカルし同意する。
しかし条件が、例えば列の制限だけだったらどうだろう。
If c > 4 And c < 35 Then …
↑これより、↓こっちを使うべきなのか。
If c < 5 Then Exit Sub
If c > 34 Then Exit Sub
要は、程度問題と言うことだろうが、
オレの程度感覚としては4つなら、おkかなと、、
ループの中は別として。
33名無しさん@そうだ選挙にいこう:2007/01/05(金) 15:54:00
or使え
34名無しさん@そうだ選挙にいこう:2007/01/05(金) 16:52:18
>>32
> If c > 4 And c < 35 Then …
> ↑これより、↓こっちを使うべきなのか。
> If c < 5 Then Exit Sub
> If c > 34 Then Exit Sub

なんで
> If c > 4 And c < 35 Then …
を使いたいの?
「1行で書けるから」とか言わないでね。
35名無しさん@そうだ選挙にいこう:2007/01/05(金) 17:02:02
>>30-34
既に解決済み
36名無しさん@そうだ選挙にいこう:2007/01/05(金) 17:24:30
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否

セルの中に画像を入れたいのですが、可能でしょうか?
一枚のシートに複数枚の写真や図形を入れて
実験のデータ管理をしたいです。
よろしくお願いいたします。
37名無しさん@そうだ選挙にいこう:2007/01/05(金) 17:28:05
>>35
そうでもない。今の話題は前スレ991の質問のことでは無いし。

>>36
セルの中に画像は入れられないが、セルの上にオブジェクトとして画像を置くことは出来る。
38名無しさん@そうだ選挙にいこう:2007/01/05(金) 17:35:01
>>36
テンプレの5番を勝手に消してるのは検索が面倒だという事か?
http://www.google.co.jp/search?num=50&hl=ja&inlang=ja&q=Excel+%E7%94%BB%E5%83%8F%E3%81%AE%E6%8C%BF%E5%85%A5&lr=
39名無しさん@そうだ選挙にいこう:2007/01/05(金) 18:08:14
気に入ってるようだけど
そのグーグルの押し売りはもうイイよ
40名無しさん@そうだ選挙にいこう:2007/01/05(金) 18:23:42
>>38じゃないけど、検索しないで来るよりは良いと思うよ
特に>>36のようなひどい質問の場合w
41名無しさん@そうだ選挙にいこう:2007/01/05(金) 18:38:03
そうだな
安易なちょっと調べれば済む事に対しては
こうやって検索すればいいという指針にはなるかもな
42名無しさん@そうだ選挙にいこう:2007/01/05(金) 19:00:38
>>34 なんで … を使いたいの?

上の方が一般的でしょ。
それとExitでひとつづつ弾き返すやり方は、当てはまるケースが
多い場合は効果的だけど、Goto を多用してるみたいで嫌だな。
43前スレ998:2007/01/05(金) 19:06:37
>>9の処理に一票
かっこ悪いと思うなら>>10でもいいし
44名無しさん@そうだ選挙にいこう:2007/01/05(金) 19:07:52
速度厨に何を言っても無駄。
45名無しさん@そうだ選挙にいこう:2007/01/05(金) 19:34:18
>>44 は自分が速度厨の恩恵を受けているなんて
一生築かないんだろうなあ。
>>33 orz
46名無しさん@そうだ選挙にいこう:2007/01/05(金) 19:36:10
一生築かないんだろうなあ。
47前スレ998:2007/01/05(金) 19:42:13
書き方なんか個人の癖や嗜好でいくらでもあるから
別にこれがいいとかアレは駄目とか全く無いと思う
自分は>>11のようなifの2重使用をすると後から見たときに
汚いので出来るだけ使わない
止むを得ない場合はif if endif endif のように入れ子にする
48名無しさん@そうだ選挙にいこう:2007/01/05(金) 19:44:33
499:2007/01/05(金) 20:54:48
帰ってから覗いてみたら自分の発言が波紋を呼んでいてびっくり。
勉強になりました。今後ともよろしく御願いいたします。
50前スレ974:2007/01/05(金) 21:05:32
前スレの972さんありがとう
原因は972さんのいうとおり条件付書式でした
どういう関連性があるのかいまいち判らないんですが・・・

ただマクロで片っ端から条件付書式を削除するのは気持ち悪いので
on error gotoで逃げるだけにしました
51名無しさん@そうだ選挙にいこう:2007/01/05(金) 21:28:34
そのシートで条件付書式使ってますか?

もしそうならInputboxの戻り値がEmptyになってしまい
Setステートメントで引っかかっているのではないでしょうか?

ためしに
変数に格納せずにTypeNameで確認してみてください。
ttp://park7.wakwak.com/cgi-bin/sbox/~efc21/wwwlng.cgi?print+200502/05020095.txt
52名無しさん@そうだ選挙にいこう:2007/01/05(金) 21:38:09
>>42
> 上の方が一般的でしょ。
いいえ

>>44
> 速度厨に何を言っても無駄。
対立する意見には、とりあえず〜厨と付ければ
それだけで自分たちの立ち位置が上になったと
勘違する可哀想な子
53名無しさん@そうだ選挙にいこう:2007/01/05(金) 21:49:42
前スレ961(年度と取引先に応じた売り上げの切り分け)ですが
セルB14が2001年度A社の売り上げ欄として、配列数式で
{=SUM(($A$2:$A$9=B$13)*($B$2:$B$9=$A14)*$C$2:$C$9)}
んで、他の所にコピペってなやり方をよく使ってるんですが
この方法ってあんまりよくないんでしょうか?
あまり見かけないので何か問題があるのかと不安です^^;
54名無しさん@そうだ選挙にいこう:2007/01/05(金) 21:50:05
蒸し返すな馬鹿
55名無しさん@そうだ選挙にいこう:2007/01/05(金) 22:00:41
>51
リンク先にあるリンクが見れないですが
スクロールしてレンジ選択するのも駄目なんですか・・・
インプットボックスの仕様にはそういう不文律があるんですね

ありかとうございました
56たすけて〜〜:2007/01/05(金) 22:13:36
オフィス2000のソフトが壊れてしまい
カボスでソフトをダウンロードしたのですが
なんと英語、日本語にはできないのでしょうか?
だれか助けてください
57名無しさん@そうだ選挙にいこう:2007/01/05(金) 22:16:56
>>56
日本語でおk
58名無しさん@そうだ選挙にいこう:2007/01/05(金) 22:19:08
>>56
お金を払ってソフトを購入した方のみ相談に乗ります。
59名無しさん@そうだ選挙にいこう:2007/01/05(金) 23:02:26
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】

{ }で囲まれた計算式があるのですが、セル内を編集すると{ }が消えてしまって、計算結果が正しく出なくなってしまいます。
実際の一例を出すと
{=SUM(IF([KbaDataYK.xls]ALL!$F$3:$F$65535="GII",IF([KbaDataYK.xls]ALL!$I$3:$I$65535>0,1,0),0))}
で計算できていたものが、編集すると
=SUM(IF([KbaDataYK.xls]ALL!$F$3:$F$65535="GII",IF([KbaDataYK.xls]ALL!$I$3:$I$65535>0,1,0),0))
なってしまい、正しく計算されません。

ネット上で公開されていたシートを改変して使おうとしているので、計算式の内容もいまひとつわかりません。他のシートとリンクさせていることはわかるのですが。
どうすれば正しく計算できるようになるでしょうか。ご教授お願いします。
60名無しさん@そうだ選挙にいこう:2007/01/05(金) 23:09:12
>>59
マンドクサイので、公開されているサイト晒して。
61名無しさん@そうだ選挙にいこう:2007/01/05(金) 23:10:53
>>59
CtrlとShift押しながらEnter
62名無しさん@そうだ選挙にいこう:2007/01/05(金) 23:18:01
>>55
こんなのがあった、メモメモ
Function MyInputBoxRange(Prompt As String, Title As String) As Range
Dim Counter As Long
Dim RealPrompt As String
Counter = 0
Do
Select Case Counter
Case 0:
RealPrompt = Prompt
Case 1:
RealPrompt = "ちょっと内部で問題が発生したみたいです。すみませんがもう一度選択してください。" & Chr(13) & Prompt
Case 2:
RealPrompt = "まだ問題が解決しません。セルを直接選択せずに範囲をキー入力してみてください。" & Chr(13) & Prompt
Case Else:
If MsgBox(Prompt:="問題が解決しないようですのでキャンセルしますか?", Title:="確認", Buttons:=vbYesNo + vbDefaultButton2) = vbYes Then Exit Function
End Select
On Error Resume Next
Set MyInputBoxRange = Application.InputBox(Prompt:=RealPrompt, Title:=Title, Type:=8)
On Error GoTo 0
If MyInputBoxRange Is Nothing Then Counter = Counter + 1
Loop While MyInputBoxRange Is Nothing
End Function
63名無しさん@そうだ選挙にいこう:2007/01/05(金) 23:29:34
便乗ですまんが、複数セルに関数貼るときにシフト コントロール エンター同時押しするよな。
関数貼ったあと、その内の一つのセルの内容変えたら無限ループが始まってしまうというのは仕様か?
幸い、保存もできないから電源切ってしまえば解決するんだが。
64名無しさん@そうだ選挙にいこう:2007/01/05(金) 23:34:59
>>63
配列数式でなければCtrl+Enterで
Shiftはいらないのでは?
6559:2007/01/05(金) 23:44:13
>>61
できました、ありがとうございました。
66名無しさん@そうだ選挙にいこう:2007/01/05(金) 23:48:12
>>63
「配列の一部を変更できません。」
なら正常動作だと思います。
67名無しさん@そうだ選挙にいこう:2007/01/06(土) 00:02:28
いや、そのあと無限ループが始まるんだよ。
何しても同じメッセージが続く。
68名無しさん@そうだ選挙にいこう:2007/01/06(土) 00:30:16
循環参照でもしてるんでしょ
69名無しさん@そうだ選挙にいこう:2007/01/06(土) 00:31:21
変更を取り消せよ
70名無しさん@そうだ選挙にいこう:2007/01/06(土) 00:44:58
前スレの >>960さん
レスありがとうございます。
大変申し訳ないのですが落とせなかったです。
もし見てくださっていたらもう一度UPしてくださいませ。。

960 :957 :2007/01/03(水) 06:34:14
>>958
あまりに夜勤が暇だったんで作ってみた

 http://www.uploda.org/uporg640595.xls.html
 受信パス:rand

細かいところは調整してないから、あとは好きに弄ってちょ
71名無しさん@そうだ選挙にいこう:2007/01/06(土) 01:33:16
変更を取り消せなくなるんだよ。
エクセルの終了もできん。不具合だな。
72名無しさん@そうだ選挙にいこう:2007/01/06(土) 01:38:57
ESC押して
73名無しさん@そうだ選挙にいこう:2007/01/06(土) 01:57:53
数式バーにカーソルを移動させるショートカットキーを教えてくdさい。
74名無しさん@そうだ選挙にいこう:2007/01/06(土) 03:37:00
セルに001と入力すると1になってしまいます

001と入力するにはどうしたら良いですか???
75名無しさん@そうだ選挙にいこう:2007/01/06(土) 03:41:16
オートフィルタオプションはどうやれば出てくるのでしょうか?
76名無しさん@そうだ選挙にいこう:2007/01/06(土) 04:33:42
【1 OSの種類         .】 MacOS X 10.4.8
【2 Excelのバージョン   】 Excel v.X
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 セル 編集

Mac版のv.Xでは、セル編集するためにいちいちダブルクリックしなければなりません。
Windows版では[F2]キーでセル編集モードになりマウスを使う必要がないので効率的です。

Mac版ではセル編集モードに入るキーボードショートカットはないのでしょうか?
「ない」という回答でも結構です、ご存知の方教えてください。
77名無しさん@そうだ選挙にいこう:2007/01/06(土) 04:59:37
グラフの大きさを完全な正方形にする方法はありますか?
単位はなんでもいいので、グラフの大きさを数字で指定できればウレシイのですが。
78名無しさん@そうだ選挙にいこう:2007/01/06(土) 05:39:31
>>70
ああ、流れちゃったか
作ったBOOKは会社のPCの中だし、今夜は夜勤じゃないんだ。
覚えてたら明日の夜勤の時にアップしてみる。

>>73
F2キーでセルを直接編集できる
79名無しさん@そうだ選挙にいこう:2007/01/06(土) 05:48:53
>>77
縦横を同じポイント数にしたセルに合わせれば、【表示範囲】は正方形にできる
表示範囲の四隅をAltキーを押しながらドラッグするとセルの角に沿って範囲を変えられるから頑張ってちょ
プロット範囲だったら知らん
80名無しさん@そうだ選挙にいこう:2007/01/06(土) 09:43:25
>>74

'001 あるいは表示形式を文字列にして
81名無しさん@そうだ選挙にいこう:2007/01/06(土) 10:46:55
ユーザーフォームにTextboxを4つ配置してMaxlengthを設定、オートタブをTrueにしましたが、Textbox1の入力がおわるとフォーカスがTextbox4に移ってしまいます。どこか設定がおかしいのでしょうか?ご教授下さいm(__)m
82名無しさん@そうだ選挙にいこう:2007/01/06(土) 10:56:14
>>81
TabIndexの設定はどうなってる?
83名無しさん@そうだ選挙にいこう:2007/01/06(土) 11:00:19
ひとつのセルの前からある値と
新しく書きかえた値を合計するやり方を教えてください。
84名無しさん@そうだ選挙にいこう:2007/01/06(土) 11:11:02
>>83
不可。
折角のExcelなんだから別セルを利用せよ。
85名無しさん@そうだ選挙にいこう:2007/01/06(土) 11:15:03
>>83
あまりうれしくない事が起こる可能性が大
Dim s
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
s = Target(1).Value
End Sub
Private Sub Worksheet_Change(ByVal Target As Range)
Application.EnableEvents = False
Target(1).Value = s + Target(1).Value
Application.EnableEvents = True
End Sub
8683:2007/01/06(土) 12:15:51
>>84
>>85
dです。
87名無しさん@そうだ選挙にいこう:2007/01/06(土) 12:20:05
>>80
ありがとうございます
88名無しさん@そうだ選挙にいこう:2007/01/06(土) 12:42:22
>>82 上から0、1、2、3です。タブオーダーも順番通りにしてあります。ちなみに入力はスキャナーでバーコードを読んでます。
89名無しさん@そうだ選挙にいこう:2007/01/06(土) 13:13:03
>>81
マルチポストの上にテンプレ無視
この情報だけで分かるわけないだろ
90名無しさん@そうだ選挙にいこう:2007/01/06(土) 13:24:44
標準のセルに全角で「+キャベツ」と書き込みたいのです
「+」が勝手に「=+」に変換されて「#NAME?」となります

セルの書式を「文字列」にする
あるいはセルに「="+キャベツ"」と入力するしかないですか?
ようするに素で「全角+」を特殊なものと認識させない方法です
91名無しさん@そうだ選挙にいこう:2007/01/06(土) 14:15:40
'+キャベツ
92名無しさん@そうだ選挙にいこう:2007/01/06(土) 14:48:54
十キャベツ
939:2007/01/06(土) 15:26:50
>>92
コーヒー吹いた
94名無しさん@そうだ選挙にいこう:2007/01/06(土) 15:58:18
>>92
二十キャベツ

になっちゃいますた
9590:2007/01/06(土) 16:07:56
>>91
ありがとう!こういうのです
96名無しさん@そうだ選挙にいこう:2007/01/06(土) 16:37:11
表の罫線の太さを変えたいのですが_ですか?
2002です。
97名無しさん@そうだ選挙にいこう:2007/01/06(土) 16:41:30
普通の線だと太すぎるのでもっと細くしたいんですが
ぐぐったら仕様で出来ないと見つけたので、
2ちゃんねらだったら裏技知ってるかな?と思いましたので。
98名無しさん@そうだ選挙にいこう:2007/01/06(土) 16:59:38
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 罫線 線が引けない

罫線を引いた時に一つのセルの1部分だけ線が表示されなません。セルの保護はかか
ってないと思うのですが他にどんな原因が考えられるでしょうか?
99名無しさん@そうだ選挙にいこう:2007/01/06(土) 17:19:33
>97 種類は少ないが、セルの書式設定で細い線は引ける。
  あるいは、グレーにして見掛上細く見えるようにする。
  この時ページ設定で、白黒印刷のチェックは外す。

>98 空白文字が入ってんじゃないの。
100名無しさん@そうだ選挙にいこう:2007/01/06(土) 17:34:01
>99
ありがとうございます。
解決しました。
101名無しさん@そうだ選挙にいこう:2007/01/06(土) 17:37:02
>97
セルのプロパティ→罫線→スタイルから選択できるけど
"なし"のすぐ下の点線みたいなのが一番細い線が引きたいならマクロを使っても無理
オートシェイプで引いた線ならあるいは?

>98
違うと思うけど条件付書式とか
102101:2007/01/06(土) 17:37:38
またやっちゃった
103エキシージ:2007/01/06(土) 18:46:19
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 ほんのすこし
【4 VBAでの回答の可否】 可
質問
リアルタイム(2〜5秒間隔)で外部データ(数字)が入ってきます
その数字に関数式を使用して、違う数字として出力させていますが
その計算式の結果をリアル(データ分)で記録させたいのです。
(今は見てるだけw)
関数式のみでは、難しかったので
VBAの式をお教えください。よろしくお願いします。


104名無しさん@そうだ選挙にいこう:2007/01/06(土) 19:30:36
それって株式のaddinか何かなんだろ。
ここで聞いて答えが出る類のものじゃないと思うがな。

でないんだったら、もっと具体的に書いてよ。その外部データは
どのように入ってくるものなのかとか。
105名無しさん@そうだ選挙にいこう:2007/01/06(土) 19:32:57
>>99
微妙ですね・・

>>101
オートシェイブは大量にセル幅変更したときずれやすいので嫌いなんです。
106エキシージ:2007/01/06(土) 19:57:38
>>104
そうです株式の値段です。
そのままのデータを関数に入れると
計算してくれませんので、簡単な数式を組み合わせて
結果を出しています。
6.333とか2.888とか
この計算した数字のみの結果を記録したいのです。
107104:2007/01/06(土) 20:09:41
>>106
OnTime メソッド を使って計算し、その計算値をどんどん貼っていくぐらいしか思いつかん w
108名無しさん@そうだ選挙にいこう:2007/01/06(土) 20:35:59
一定時間隔で自動計算して計算した時間をファイル名に付加してsaveasで保存とかかな
109名無しさん@そうだ選挙にいこう:2007/01/06(土) 20:38:43
外部データって何のアプリ使ってるの?
110名無しさん@そうだ選挙にいこう:2007/01/06(土) 20:46:10
つうか>>104も書いてるけど絶対的に情報が少なすぎて答えようがないな
システム自体は多分めちゃくちゃ簡単なものになるだろうけど
111名無しさん@そうだ選挙にいこう:2007/01/06(土) 20:51:14
>>103
Sheets("Sheet1").Range("B1")=Sheets("Sheet1").Range("A1")
112エキシージ:2007/01/06(土) 20:55:43
>>109
すみませんが、わかりません
113名無しさん@そうだ選挙にいこう:2007/01/06(土) 22:12:33
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2000
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 可・否

シート1のA1のセルに入力した文字をシート2にも表示したいのですが
出来ますでしょうか?
114名無しさん@そうだ選挙にいこう:2007/01/06(土) 22:24:30
>>113
=Sheet1!A1
115名無しさん@そうだ選挙にいこう:2007/01/06(土) 22:32:37
なに?この低レベルな・・・
116エキシージ:2007/01/06(土) 23:11:36
>>111
これでいいんですかね〜?
Sub Macro1()
Sheets("Sheet1").Range("B1")=Sheets("Sheet1").Range("A1")

End Sub
走りません・・・

>>110
何を言えばいいのか
それさえもわかんないもんで・・

イメージとしては
ぱらぱら数字が来るのを、まず受け止めて
別シートにA1からA2・・・・とならべて
書いてくれるプログラム
117名無しさん@そうだ選挙にいこう:2007/01/06(土) 23:22:41
>>116
俺語で書かれてもわからん、ちゃんとした言葉で書くか
せめて「リアルタイム(2〜5秒間隔)で外部データ(数字)が入ってきます」
は何を使って実現しているのかを公開して
118名無しさん@そうだ選挙にいこう:2007/01/06(土) 23:23:56
>>116
質問もきちんとできない奴はとっとと消えてくれ
119名無しさん@そうだ選挙にいこう:2007/01/06(土) 23:38:14
>>116
あなたがわからないものが、ここで答えてる人にわかるわけないじゃない。
例えばさ、Sheet1にWebクエリで定期的に更新される株価情報をSheet2に

   A    B   ・・・
1      銘柄  
2 時間  株価




見たいな感じで書き込みたいってこと?漠然としたイメージじゃ誰も答えようがないし
>>116のレベルじゃコード書いてもらっても意味わからんでしょ?
120113:2007/01/06(土) 23:39:05
>>114
どうもありがとうございます!出来ました。

あともう一つお聞きしたいのですが、
シートのAH3〜AN26までが画面から外れバーをずらさないと見えなくて困っています。
同じシート内に、その部分だけドラッグ移動出来るような別ウィンドで表示させるという事は
不可能でしょうか?


121名無しさん@そうだ選挙にいこう:2007/01/06(土) 23:51:17
>>120
カメラ
122エキシージ:2007/01/06(土) 23:55:35
>>119
はい、わかりました
Sheet1にクエリで入る値段があります
その値段を3で割ります。
割った値段が
Sheet2に
   A 
1  2.33
2  2.42
3  2.58
・   ・
・   ・
今現在は、この数字がぱらぱら動いているだけ
やりたいことはシート2に記録として
蓄積したい。
123名無しさん@そうだ選挙にいこう:2007/01/07(日) 02:46:35
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2003

外部データの取り込みで、
エクセルファイルから取り込もうとしてるんですが、
一部反映されないデータがあります。
どうやら、書式に不具合なデータは除外されるようです。
例:日付の書式にしてるとこに文字列が入力されているセルは弾かれる

単純にリンク貼り付けるだけだと重くなりそうなので、
他にいい方法ないかなと思ってます。

よろしくお願いします。

124名無しさん@そうだ選挙にいこう:2007/01/07(日) 03:23:19
>>98
セルが結合されてない?
125名無しさん@そうだ選挙にいこう:2007/01/07(日) 09:11:51
>>122
Sub Macro1()
MyRow = Application.CountA(Sheets("Sheet2").Range("A:A")) + 1
Sheets("Sheet2").Range("A" & MyRow) = Sheets("Sheet1").Range("A1") / 3
End Sub
126エキシージ:2007/01/07(日) 10:58:03
>>125
まだ、リアルでは確かめてないのですが
手動では動きました。
ありがとうございます
拙い説明でご迷惑かけました。
127名無しさん@そうだ選挙にいこう:2007/01/07(日) 12:41:16
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】

散布図グラフのプロットの上にマウスを持って行くと、各点のデータ(要素)がポップアップで
表示されますよね。
このポップアップに別の行の値を表示させることはできますか?
たとえば、

   A   B   C
1     国語  算数
2 安倍 80   85
3 小泉 85   80
4 森  75   86
5 小渕 90   80
6 橋本 80   90

でBとCの散布図の点にマウスを持って行くと、Aがポップアップで表示されるような。。。

Aのセルをクリックすると散布図上の対応する点が強調表示されるようにもできませんか?
128名無しさん@そうだ選挙にいこう:2007/01/07(日) 16:04:04
質問です。

Excelにハイパーリンクを仕込んで、そこから飛ぶと、
画面のフェード効果/スクロール効果が勝手にONになるようです。
(画面のプロパティ→効果→次のアニメーション効果を…のとこ)
ONにならないようにする方法はないでしょうか。
毎回OFFにするのがめんどくさくて。。。

OS:WinXPSP2
Excel2000
試した検索は「excel (フェード効果|スクロール効果|アニメーション効果) ハイパーリンク 画面 -powerpoint」
です。
129名無しさん@そうだ選挙にいこう:2007/01/07(日) 16:25:53
それExcelの問題なの?
130名無しさん@そうだ選挙にいこう:2007/01/07(日) 16:29:57
XPのスレで聞いたらこっちに誘導されたのです。。。
131名無しさん@そうだ選挙にいこう:2007/01/07(日) 16:39:25
   A   B 
1 日付 売上 
2 1/1  140  
3 1/2  125
4 1/3  115
5 1/4  135
6 1/5  120
7 1/6  150
・  ・    ・
・  ・    ・


Bに毎日売上を付け足していって、最近10日間の平均売上を
自動的に表示するようにしたいのですが、どのようにすれば良いのでしょうか?
132名無しさん@そうだ選挙にいこう:2007/01/07(日) 16:59:14
C列にIF関数で「A列の値が最近10日間以内なら」を条件に
Bの値を返す式を組んで、C列の平均を出す。

作業列使いたくなければ配列数式
13370:2007/01/07(日) 19:07:39
>>78 さん 
よろしくお願いします。
134名無しさん@そうだ選挙にいこう:2007/01/07(日) 22:02:56
F2 の方、ありがとうございました。
135名無しさん@そうだ選挙にいこう:2007/01/07(日) 22:08:51
>>128
Excelが97と2003だけど、うちの環境ではONにならんけど、
ググったら別の質問サイトでも質問されているみたい(未解決)なので
実際なるみたいな。
サポートページにも無いし、既知でも無いのか?
http://support.microsoft.com/ph/1741
136名無しさん@そうだ選挙にいこう:2007/01/07(日) 23:19:56
再現性がある問題なら、MSのサポートに投げておいた方がいいかもね。
つーか、それ以外にできることなさげ。
13778:2007/01/08(月) 03:08:10
>>70
おまたせ

http://kossie.run.buttobi.net/cgi-bin/up/src/kos0552.zip.html
受信パス:rand

ここなら一週間は流れないと思う
正直あまり綺麗なものではないけど、こういった考え方ということで了承して。

規制食らって携帯からの書込みだからURL打ち損ねあるかも
13878:2007/01/08(月) 03:11:19
大丈夫だ!
13970:2007/01/08(月) 10:49:40
>>78 さん
夜勤ご苦労様です。
無事DLできました。感動しましたよ〜 ありがとうございます。

RAND()*30のところは30を最大ー平均の値を参照するようしてみました。
問題ないですよね?

平均、最大、最小値を小数点2桁にしたかったので
差の入力で小数点の数値を入れたました。(列B)
この方法以外にありますか?

コメントあったらお願いします。
140名無しさん@そうだ選挙にいこう:2007/01/08(月) 11:16:26
Sub 例題12()
Dim uriage As Range, i As Integer

Worksheets("sheet4").Select

Set uriage = Range("sheet1!A3:J7")

For i = Range("A3").Value To Range("C3").Value Step 1
moveData uriage.Rows(i)


ActiveSheet.PrintPreview
Next i

End Sub

Sub moveDaata(siten As Range)
Dim i As Integer
Cells(6, 6).Value = siten.Cells(1).Value
Cells(6, 8).Value = siten.Cells(2).Value
For i = 3 To 10 Step 1
Cells(9, i - 1).Value = siten.Cells(i).Value
Next i

End Sub

これの意味を日本語訳で教えてくれませんか。
141名無しさん@そうだ選挙にいこう:2007/01/08(月) 11:18:25
>>140
潜水艦例題12()
薄暗いuriage As Range、i As Integer

ワークシート、(「sheet4") .Select」

uriage=範囲を設定してください。(「sheet1!A3: J7"、)、」

i=範囲、(「A3") 及ぶ.Value、(「C3") .Valueは1moveData uriage.Rowsを踏み
ます」。(i)


ActiveSheet.PrintPreview
次のi

終わりの潜水艦

潜水艦moveDaata(siten As Range)がsiten.Cells(2).Value For i=3To10Step1
siten.Cells(1).Value Cells(6、8)i As Integer Cells(6、6).Value=.Value=
Cellsを薄暗くする、(9、i--、1).Value=siten.Cells(i).Value Next i

終わりの潜水艦
142名無しさん@そうだ選挙にいこう:2007/01/08(月) 13:53:55
>>140
マルチじゃなかったら教えてやるんだがな
とはいえ、このくらい簡単なら誰かが踊って(答えて)くれるかも
マルチにも意気揚々と答えちゃうバカの中にも
このくらいなら解る奴も居るだろうから
143名無しさん@そうだ選挙にいこう:2007/01/08(月) 14:33:26
>>141
潜水艦でマジコーヒー吹いたじゃねーかコノヤロー
144名無しさん@そうだ選挙にいこう:2007/01/08(月) 14:35:55
エキサイト翻訳バカスwww
145名無しさん@そうだ選挙にいこう:2007/01/08(月) 14:45:06
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 はい
【4 VBAでの回答の可否】 可能な限り使わない方向でお願いします。
【5 検索キーワード     】 Googleやヘルプでの検索キーワード
上から順にa,b,a,c,c,d,a,d,e...等とセルに入力されている状態で、
並べ替えをした時にa,a,a,c,c,d,d,c,e...と重複したものだけをまとめて一番上、若しくは一番下に来るようにする場合、
どのようなやり方がいいでしょうか?
今考えているのは、列を増やして=COUNTIF($A$1:$A$7,A1)という式を一番上の行に入れた後、
そのまま下にオートフィルで最後の行までもっていき、最後にその列を基準にして並び替えるというものです
宜しくお願いします。



146名無しさん@そうだ選挙にいこう:2007/01/08(月) 15:46:04
>>145
そのやり方の何処が不満なの?
147名無しさん@そうだ選挙にいこう:2007/01/08(月) 15:47:26
>>145
集計とかじゃダメなの?
148森田:2007/01/08(月) 18:14:46
【1 OSの種類         .】 Windowsxp
【2 Excelのバージョン   】 Excel97
【3 VBAが使えるか    .】 少し
【4 VBAでの回答の可否】 可
セルに入力されている文字を変更する時、デリートで消してからしか、
新しい文字を入力できないように出来ないでしょうか?標準の設定では、
すでに入力されている文字が消えて、新しく打った字が、上書き入力
されてしまうので、、、  教えてください。
149名無しさん@そうだ選挙にいこう:2007/01/08(月) 18:27:19
>>148
セルをロックしてシートを保護しておき、
Deleteが押されたら、アクティブセルのロックを解いて編集状態に
編集が終わったら再ロック

あとはヘルプ読んで頑張ろう
150名無しさん@そうだ選挙にいこう:2007/01/08(月) 19:05:52
がんばれ森田
151名無しさん@そうだ選挙にいこう:2007/01/08(月) 22:02:03
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2002 SP-1
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 Excel 書式の固定

どのセルやオートシェイブのテキストボックスでも文字の大きさを8、文字を真ん中にセンタリングしたいです。
メニューのツール→オプション→全般タブで文字の大きさを8にしましたが、11のままです。
どうしたら固定できるのでしょうか?
152名無しさん@そうだ選挙にいこう:2007/01/08(月) 23:01:48
行番号と列文字の左上にある箇所を押すと全セル選択できるから
その状態で書式設定すればいいよ。

オートシェイプは一つの書式を設定した後に、右クリックのメニューで
[オートシェイプの既定値に設定]すればいいんじゃないかな?

すべての新規ブックの書式を揃えたいんだったら、xlstartフォルダ内に
テンプレートとして保存しとけばいいよ(この辺は検索してみて)。
153名無しさん@そうだ選挙にいこう:2007/01/09(火) 07:14:52
エクセルでセル内に「18.0」と入力すると、自動的に「18」となってしまうのですが、
どうやれば「18.0」のまま表記できますか?
XPでエクセル2003です。
お願いします。
154名無しさん@そうだ選挙にいこう:2007/01/09(火) 07:23:26
>>153
表示形式

小数表示桁上げ下げのツールコマンドもある
155名無しさん@そうだ選挙にいこう:2007/01/09(火) 07:33:51
すいません。
具体的にどこの設定をどう変えればいいのか教えてください。
お願いします。
156名無しさん@そうだ選挙にいこう:2007/01/09(火) 08:03:53

> ▼━質問時の注意・決まり事 ━━━━━━━━━━━━━━━━━
> ・5 回答内容でわからない部分があっても、すぐに聞き返さずにヘルプやGoogleなどで検索しましょう。
157エキシージ:2007/01/09(火) 09:17:41
>>125
マクロの実行ボタン押すと走るのですが
自動では走りません
すみませんが
お教えください。
158名無しさん@そうだ選挙にいこう:2007/01/09(火) 09:48:26
>>157
そのくらい自分でやれよ
「ほんのすこし」はVBA出来るんだろ
この程度も出来なかったら全く出来ないと申告した方がいいな
159\___________/:2007/01/09(火) 09:52:41
      ∨
    / ̄ ̄ ̄ ̄\
   (  人_____,,)
    |ミ/  ー◎-◎-)
   (6     (_ _) )    カタカタカタ
   | ∴ ノ  3 .ノ  ______
    ヽ、,,     __,ノ   |  | ̄ ̄\ \
   /       \.____|  |    | ̄ ̄|
  /  \___      |  |    |__|
  | \      |つ    |__|__/ /
  /     ̄ ̄  | ̄ ̄ ̄ ̄|  〔 ̄ ̄〕
160名無しさん@そうだ選挙にいこう:2007/01/09(火) 09:55:37
>>157>>159は同一人物なのかな?

エキシージは以後スルーで
161Excel関数マスター様m(_ _)m:2007/01/09(火) 09:55:42
質問があるんですが、
例えば、
1〜10までの10個の数字のうち3つの数字を選ぶ通り数は120通りだと思うんですが、
この120通りすべてを一気に表示ことってできますか?

知ってる方いたら教えてください!!


XP・2000です!
162名無しさん@そうだ選挙にいこう:2007/01/09(火) 10:26:43
>>161
どう考えて120通り?
A列:1桁目、B列:2桁目、C列:3桁目として、
---------------------
1  1  1
1  1  2
1  1  3
1  1  4
1  1  5
1  1  6
1  1  7
1  1  8
1  1  9
1  1  10
1  2  1
1  2  2
1  2  3
1  2  4
1  2  5
---------------------
1桁目「1」だけで100通りはあると思うけど。
この流れで下方向に連番振ってけばすぐ出来上がるよ。
コツは連番と列単位でのソート。

一気にはVBA使わないと無理だと思う。
上記と同様の考え方で3つの変数をループさせよう。

>>158>>160
横から見てて見苦しい。回答しないなら書き込まなくて良い。
163名無しさん@そうだ選挙にいこう:2007/01/09(火) 10:41:36
>>162
10個の数字のうち3つの数字を選ぶと、いうことは
1  1  1
というように重複したらおかしいね。

日本語が理解出来ないのかな。アホな回答するなら書き込まなくて良い。
164名無しさん@そうだ選挙にいこう:2007/01/09(火) 10:58:16
必死だなw
165名無しさん@そうだ選挙にいこう:2007/01/09(火) 11:10:38
>>162
俺は154=156=158だが残念ながら160ではないぞ
166名無しさん@そうだ選挙にいこう:2007/01/09(火) 11:13:44
161はマルチだから答える必要無いし
167名無しさん@そうだ選挙にいこう:2007/01/09(火) 11:27:25
○質問する方へ○

モジュール、プロシージャ、変数、イベント等の基礎知識が無いのに
"初心者"や"すこしできる"などと申告すると回答者はそれに合わせて回答します。
けっして自分のためになりません。実力は正しく申告しましょう。

168名無しさん@そうだ選挙にいこう:2007/01/09(火) 11:28:16
>>166
自分も突っ込みたいんだけど駄目?(´・ω・`)
169名無しさん@そうだ選挙にいこう:2007/01/09(火) 11:29:36
確かに必死でワラタ
170Excel関数マスター様m(_ _)m:2007/01/09(火) 11:30:12
あぁやっぱり地道に入力しないとダメですか・・・
なんかないかなって探したんですがなくて。

ありがとーございました!!
171名無しさん@そうだ選挙にいこう:2007/01/09(火) 11:49:23
> あぁやっぱり地道に入力しないとダメですか・・・
そうでもない

> なんかないかなって探したんですがなくて。
1つの関数で一発で出来るようなのはないけど
複数の関数で式を組めば可能

> ありがとーございました!!
はい、さよーなら
172名無しさん@そうだ選挙にいこう:2007/01/09(火) 11:51:13
>>171必死
173名無しさん@そうだ選挙にいこう:2007/01/09(火) 12:28:48
ちなみに何のために表示させたいの?
174名無しさん@そうだ選挙にいこう:2007/01/09(火) 12:32:09
なんか162が必死だね
余程恥ずかしかったのかな?
175162:2007/01/09(火) 13:01:00
>>163
おお、重複してたか。すまん。フィルタ張って消したらエエがな(´・ω・`)
>>165
外してたか、これまたすまんw
>>174 
俺今日は一回しか書いてないよ。


なんか荒れてしまって正直すまんかった。消える。
176名無しさん@そうだ選挙にいこう:2007/01/09(火) 13:21:40
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 VLOOKUP 

『「会員番号」を入力すると、それに該当する人のデータが表示される機能をVLOOKUP関数を用いて作成しなさい』
という問題が出たのですが、初心者の私にはさっぱり分かりません。教科書には載っていないし、検索しても分かりませんでした。何方か教えてください!

会員番号氏名〒住所誕生日年齢血液型性別


177名無しさん@そうだ選挙にいこう:2007/01/09(火) 13:26:20
      |
      |
   ぱくっ|
     /V\
    /◎;;;,;,,,,ヽ   >>176 そんなエサで
 _ ム::::(,,゚Д゚)::|    俺様が釣られると思ってんのか!!
ヽツ.(ノ:::::::::.:::::::.:..|)
  ヾソ:::::::::::::::::.:ノ 
   ` ー U'"U' 
178名無しさん@そうだ選挙にいこう:2007/01/09(火) 13:37:23
>>161
すっごい思いつきなんだけど、これで。
for a=1 to 8
for b=a+1 to 9
for c=b+1 to 10
'組み合わせ(a,b,c)
next
next
next
179エキシージ:2007/01/09(火) 14:01:39
すみません
全然できません
180名無しさん@そうだ選挙にいこう:2007/01/09(火) 14:11:43
そうでしょうね。
181名無しさん@そうだ選挙にいこう:2007/01/09(火) 15:22:52
>>178
何処で笑えばいいのか説明してくれ
182名無しさん@そうだ選挙にいこう:2007/01/09(火) 18:40:18
>>178で正解じゃん
183名無しさん@そうだ選挙にいこう:2007/01/09(火) 19:09:49
笑うところ
   ↓
   181
184名無しさん@そうだ選挙にいこう:2007/01/09(火) 19:53:21
つーか161は条件が不足しすぎ。
「1〜10までの10種類の整数を、重複しないように3つ選択した場合の組み合わせ通り数」
くらいの条件は出そう。120通りというのから、重複無しの組み合わせ通り数であることは予測できるけど
クイズスレじゃないんだから回答者に予測させるような質問はやめよう。

>>162は重複有りの並び通り数という解釈をしたようだが、120通りという情報が無かったら、
その解釈を間違いだと言い切れるだけの条件は>>161には書かれてない。
185名無しさん@そうだ選挙にいこう:2007/01/09(火) 19:58:36
もうスルーすりゃ良いんじゃね?
186名無しさん@そうだ選挙にいこう:2007/01/09(火) 20:09:49
次の話題に行きたいのは山々だが、
>184
>120通りという情報が無かったら、その解釈を間違いだと
 言い切れるだけの条件は>>161には書かれてない。

だから120通りという情報があったの!
187名無しさん@そうだ選挙にいこう:2007/01/09(火) 20:17:32
>>186
かろうじて予測を可能にする情報ではなく明確な条件を書いた方が良いということを
言っただけなんだが、何かお気に障ったようで。
188名無しさん@そうだ選挙にいこう:2007/01/09(火) 20:21:16
>>187
こういうのは放っておけ
何か嫌なことでもあったんだろ
189名無しさん@そうだ選挙にいこう:2007/01/09(火) 20:33:06
きみたち、煽り耐性を身につけてはどうかね?
190名無しさん@そうだ選挙にいこう:2007/01/09(火) 20:34:55
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2002
【3 VBAが使えるか    .】 はい
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 Excel 色 文字 VBA
特定の文字のみ色を一括変更したい。
例)
Sheet1 A1にABCとあった場合Bの文字のみを赤色に変更
Sheet1 A2にDEFとあった場合Fの文字のみを青色に変更

Sheet2に変更したい文字(A列)とColorIndex(B列)を入力
A列 B列
B   3
F 5

191名無しさん@そうだ選挙にいこう:2007/01/09(火) 21:00:21
>>190
特定の文字のみの色変更をマクロの記録に録ってみな。
特定文字の色変更方法がバッチリわかるから。
192名無しさん@そうだ選挙にいこう:2007/01/09(火) 21:11:04
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 はい
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 メッセージボックス 改行

If Msgbox("なんたらかんたら〜" ,VbYesNo) = VbYes Then
のメッセージボックスですが「なんたらかんたら〜」の文字を任意の位置で改行させる事は可能でしょうか。
193名無しさん@そうだ選挙にいこう:2007/01/09(火) 21:13:04
194名無しさん@そうだ選挙にいこう:2007/01/09(火) 21:13:18
>>192
可能ですね。
195名無しさん@そうだ選挙にいこう:2007/01/09(火) 21:18:50
>>193
またかぁ
196192:2007/01/09(火) 21:21:25
>>193
If MsgBox("なんたら" & Chr(10) & "かんたら", vbYesNo) = vbYes Then

って事ですね。
ありがとうございました。
197名無しさん@そうだ選挙にいこう:2007/01/09(火) 21:21:45
>>193
そのググり方は間違いだ。vbCrLfという回答を与えるなら、直接書けばいいが、
ググった結果を提示するならvbCrLfは行き着く結果であって検索単語には入らない。
vbCrLfを知っていたら>>192のような質問は出ないからな。

検索結果で回答するなら「VBA 文字列 改行」あたりが妥当。
198186:2007/01/09(火) 21:42:38
オレは荒らしなのか?
>161で示された条件を読むと
10*10*10 or 10*9*8 or 10*9*8/(3*2)
の3通りが思い浮かぶ。で 120通りという事だから
重複なしの順序は無視する、3番目と分かる。
条件が不足しているとは思えない。
>120通りという情報が無かったら…
あったのに、無かったらなんて仮定は、
無茶だと思いませんか?

蒸し返してスマン
199名無しさん@そうだ選挙にいこう:2007/01/09(火) 22:08:11
>>198
m9(^Д^)プギャー
200名無しさん@そうだ選挙にいこう:2007/01/09(火) 22:37:31
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 はい
【4 VBAでの回答の可否】 可
【5 検索キーワード     】

VBAについて
・VBEを開くとき、「プロジェクトがロックされています」を表示
・バイナリエディタにて開くとき、「DPB=」を非表示
とする方法ってありますか?
201名無しさん@そうだ選挙にいこう:2007/01/09(火) 22:44:57
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】

csvファイルをエクセルで開いたとき、
文字列のデータで"1-2-3"ようなものが、
日付として認識されてしまうのですが、
それを回避する方法ってありますか。


202名無しさん@そうだ選挙にいこう:2007/01/09(火) 22:48:12
>>200
1番目はVBEプロパティで出来るだろたぶん。
2番目はVBA関係あるのか?

なんで3.をはいって答えてるのにヘルプも見ないのか
203名無しさん@そうだ選挙にいこう:2007/01/09(火) 22:58:48
>>200
むりだとおもうよ
204名無しさん@そうだ選挙にいこう:2007/01/09(火) 23:04:05
>201
俺も知りたい
頭に付く0が勝手に省略されるんだよね
205名無しさん@そうだ選挙にいこう:2007/01/09(火) 23:14:36
>>201
(拡張子をtxtに変更してExcelから開き)
テキストファイルウィザードで設定し文字列として読む
206名無しさん@そうだ選挙にいこう:2007/01/09(火) 23:17:27
すみません
ここで聞いてよいのか分からないのですが・・・
IMEの手書きパッドが下の画像のようになってしまって困っています
ttp://kjm.kir.jp/pc/?p=27905.jpg
どなたか元に戻す方法、ご存じありませんか?

【1 OSの種類         .】 Windows2000
【2 Excelのバージョン   】 Excel 2003
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 エクセル OR excel IME
207201:2007/01/09(火) 23:25:16
>>205
フィールドが100個ぐらいあるデータなんだけど、
やっぱりチマチマと指定してくしかないか・・・
208名無しさん@そうだ選挙にいこう:2007/01/09(火) 23:32:01
>207
予めテキストエディタで , を , ' で置換しておくとか・・・
209名無しさん@そうだ選挙にいこう:2007/01/09(火) 23:32:30
データのプレビューの右端をクリック、SHIFTを押しながら左端をクリック
210名無しさん@そうだ選挙にいこう:2007/01/10(水) 00:50:49
【1 OSの種類         .】 Windows XP
【2 Excelのバージョン   】 Excel 2002 sp3
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 Excel 計算 行全体 etc


4万行ほどのデータがありまして、それぞれの行の数値を定数で除したいのですが、
他の列の行の先頭のセルに数式を打ち込んで、その計算を行全体に適用したいと思っています。

セル右下の十字をドラッグしていけばいい計算出来るのですが、
4万行ともなるとかなり面倒なので、一発で計算を行全体に適用する方法はありますでしょうか?

わかりにくくて申し訳ありません。
かなりの初心者ですが、よろしくおねがいします。
211名無しさん@そうだ選挙にいこう:2007/01/10(水) 01:13:33
>>210
Ctrl+G → 式を入れたい範囲を入力 → 数式バーに式を入力 → Ctrl+Enter

先頭行に式を入力 → Ctrl+G → 式を入れたい範囲を入力 → Ctrl+D

先頭行に式を入力 → データ列の先頭をアクティブにして、 Ctrl+↓ ・ →(式を入れる列まで) ・ Ctrl+Shift+↑ ・ Ctrl+D


こう書くと面倒そうに見えるかも知れないが、要は式を入力してから範囲選択したらCtrl+Dで一発、
又は範囲選択してから式を入れてCtrl+Enterで一発。基本的なキー操作は覚えておきましょう。
212210:2007/01/10(水) 01:22:43
>>211
出来ました!ありがとうございました!
213名無しさん@そうだ選挙にいこう:2007/01/10(水) 02:02:23
【1 OSの種類         .】 Windows2000
【2 Excelのバージョン   】 Excel2000
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
次の式で答えが1になる意味が理解できません。
言葉で表現すると、どういう意味なのでしょうか。

   A  B  C  D 
1  1  2  3  4


=(A1<B1)*(C1<D1)

不等号はIF関数などで使用する場合の意味程度で理解しています。
初歩的な質問なようで申し訳ありませんが、宜しくお願いします。

214名無しさん@そうだ選挙にいこう:2007/01/10(水) 05:04:58
TRUE:1
FALSE:0
215名無しさん@そうだ選挙にいこう:2007/01/10(水) 09:24:13
>>210
数式を4万行埋込むのが好きなら、別に止めないが
定数をコピー⇒形式を選択して貼り付け⇒除算
という方法もある。
範囲選択はデータが連続していれば
Ctrl+Shift+↓ で一発。
216名無しさん@そうだ選挙にいこう:2007/01/10(水) 12:39:32
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】グラフ 書き方

EXCELで横棒グラフを書くときに分類名が長いと勝手に斜めにされたり
8つ項目があったのに省略されてひとつ飛ばしに4つしか名前が表示されなかったりします
これをちゃんと全部表示するにはどうすればいいのでしょうか?
217名無しさん@そうだ選挙にいこう:2007/01/10(水) 13:36:23
218名無しさん@そうだ選挙にいこう:2007/01/10(水) 14:00:27
↑またでた
219名無しさん@そうだ選挙にいこう:2007/01/10(水) 14:01:36
↑またでた
220名無しさん@そうだ選挙にいこう:2007/01/10(水) 14:32:58
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2007
【3 VBAが使えるか    .】
【4 VBAでの回答の可否】
【5 検索キーワード     】 Excel 制限

ブックに含まれるセルの書式の組み合わせが約 4,000 を超える場合に発生する
"表示形式を追加できません"
は2007では改善されてるでしょうか?
221名無しさん@そうだ選挙にいこう:2007/01/10(水) 14:38:02
>>220
発売前の商品は、Microsoftのサポセンにご確認下さい。
222名無しさん@そうだ選挙にいこう:2007/01/10(水) 14:44:20
>>220
Microsoft Office プログラムの無料オンライン試用版
ttp://office.microsoft.com/ja-jp/help/HA101687261041.aspx
223教えてください:2007/01/10(水) 17:24:34
書式の追加はできません。と出るのはなぜですか?
224名無しさん@そうだ選挙にいこう:2007/01/10(水) 17:25:57
>>223
仕様です
225お願いします:2007/01/10(水) 18:33:22
解除は出来ないのですか?
226名無しさん@そうだ選挙にいこう:2007/01/10(水) 18:47:13
出来ないこともないこともないってわけではない
227名無しさん@そうだ選挙にいこう:2007/01/10(水) 18:54:52
ダメだ、この時間帯のこのスレ。
228名無しさん@そうだ選挙にいこう:2007/01/10(水) 19:01:36
4000も、書式設定が必要な book ってどんなんやろ?
ある意味尊敬するわ。
229名無しさん@そうだ選挙にいこう:2007/01/10(水) 20:08:46
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2002
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】フィルタ 

なんて説明したらいいかわからないので、わかりにくいかもしれませんが・・・

エクセルで、一つのセルをアクティブセルにしたら、そのセルの中でオートフィルタみたいな
形になって、三角がでるやり方知ってる人いますか?(オートフィルタの時のあの矢印です)
名前?設定?をなんていうのか、わからず検索すらできません。
よろしくお願いします
230名無しさん@そうだ選挙にいこう:2007/01/10(水) 20:14:44
コンボボックス、リストから選択
231名無しさん@そうだ選挙にいこう:2007/01/10(水) 20:15:19
>>229
データ→入力規則
あとはググって。
232104:2007/01/10(水) 20:15:39
>>229
入力規則の設定の事を言ってるのかどうか
233名無しさん@そうだ選挙にいこう:2007/01/10(水) 20:27:38
>>230
>>231
>>232
あ、キーワードがわかりました。
とりあえずやってみます 

ありがとうございました。
234名無しさん@そうだ選挙にいこう:2007/01/10(水) 21:12:38
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2000
【3 VBAが使えるか    .】 勉強1ヶ月位
【4 VBAでの回答の可否】 可

ハイパーリンクのコピー → 貼り付け を自動実行したく
マクロにて記録してみたのですが
通常の 全てをコピー → 貼り付け になってしまい上手くいきません

どうにか方法ないでしょうか?
よろしくお願いします
235名無しさん@そうだ選挙にいこう:2007/01/10(水) 21:59:06
>>234
ハイパーリンクしているセルを選択してコピーすればマクロで記録出来ていますが?

一体何をしたいのか分かりません
236名無しさん@そうだ選挙にいこう:2007/01/10(水) 22:00:09
1月の月例パッチ「MS07-002」をExcel 2000に適用した場合に不具合が発生
http://internet.watch.impress.co.jp/cda/news/2007/01/10/14419.html
237名無しさん@そうだ選挙にいこう:2007/01/10(水) 22:10:52
>>234
こちらも2000
試すとハイパーリンク関連はマクロの記録で取れないね
238名無しさん@そうだ選挙にいこう:2007/01/10(水) 22:24:39
ちょっと違った、「取れないことがある」だ
全部じゃなかった別手順にすればとれるかも
239名無しさん@そうだ選挙にいこう:2007/01/10(水) 22:33:00
【1 OSの種類         .】 Windowsxp
【2 Excelのバージョン   】 Excel 2003 sp2
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否

残業中です。
グループの中のアイテムの個数の合計を、グループ単位で呼び出す方法がありますでしょうか。
たとえば、下記のような場合、野菜のグループ等が全部でいくつあるのか
野菜=○個 くだもの=○個と呼び出せる関数などはありますでしょうか。
オートフィルタを使って値を表示し、一つずつ別の表に値を打ち込んでいますが
グループ数が300あるため時間がかかりすぎます。よい方法があれば帰れそうです・・・。

やさい 大根 5
くだもの ぶどう 5
雑貨 消しゴム 2
やさい じゃがいも 3
くだもの りんご 2
くだもの バナナ 3
雑貨 えんぴつ 5
240名無しさん@そうだ選挙にいこう:2007/01/10(水) 22:45:24
>>239
ピボットテーブル
241名無しさん@そうだ選挙にいこう:2007/01/10(水) 22:49:20
>>214
なるほどです。
ありがとうございました。
242名無しさん@そうだ選挙にいこう:2007/01/10(水) 22:53:09
>>239
SUMIF関数の方が簡単じゃない?
243242:2007/01/10(水) 22:55:14
あ、グループ数が300あるんじゃめんどうか
失礼しました
244名無しさん@そうだ選挙にいこう:2007/01/10(水) 23:15:29
239です。
>>240様、>>242様ありがとうございます。
            できました!
すごい機能を発見して嬉しいです。
本当にありがとうございます。
245名無しさん@そうだ選挙にいこう:2007/01/10(水) 23:47:14
【1 OSの種類     .】 Windows ME
【2 Excelのバージョン】 Excel2002
【3 VBAが使えるか  .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード 】 1ヵ月間 個数 カウント

不具合の発生日と場所の表をつくりました。(A,B列)
発生するごとに日付を入力し、場所を選択できるようにしました。
(場所は、入力規則で20個のリストから選ぶようにした)
その隣(D列以降)に、1ヶ月間(16日から翌月15日まで)にどの場所で何件起こったかを表示させたいのですが。
完成したら下のようになる表にしたいです。

  A   B    C   D   E      F   G      H  I 
1 日付 場所      1月(1/16-2/15) 2月(2/16-3/15)  …
2 1/16 階段A     階段A 2件    通路C 1件
3 1/30 階段B     階段B 1件
4 1/30 階段A
5 2/18 通路C
6  :  :

日付と場所を入力するごとに、該当月に場所・件数が表示されるようにしたいのですが、
どのような関数を入れればいいでしょうか?
わかりにくいかもしれませんが、宜しくお願いします。
246名無しさん@そうだ選挙にいこう:2007/01/10(水) 23:52:44
【1 OSの種類     .】 WindowsXP
【2 Excelのバージョン】 Excel2002
【3 VBAが使えるか  .】 まぁなんとかかんとか?

VBEditorって通常(?)は2ちゃんの専ブラみたいに3ペイン(って言うのかな?)できっちり収まってるじゃないですか。
それがあれこれ触ってる最中に急にばらばらになってしまったんで、これを元の状態に戻したいんでそのやり方、
教えて下さい〜。
247名無しさん@そうだ選挙にいこう:2007/01/11(木) 00:08:20
248名無しさん@そうだ選挙にいこう:2007/01/11(木) 00:40:08
>>246
普通にドラッグすりゃ戻るっしょ。
249名無しさん@そうだ選挙にいこう:2007/01/11(木) 04:22:11
【1 OSの種類         .】 WindowsXP

5┃                        \
4┃    /           ───     \
3┃  /     ───               \
2┃/
1┃
  ━━━━━━━━━━━━━━━━━━━━━━━
   1 2 3   1 2 3   1 2 3   1 2 3

この図のように縦軸は1つで横軸を複数というようなグラフはかけますか?
あるなら書き方を教えてください。
またはそれができるフリーソフトがあれば教えていただけますか?
250名無しさん@そうだ選挙にいこう:2007/01/11(木) 11:12:55
>>249
横軸の元データの項目数増やせば良いだけじゃね?
251名無しさん@そうだ選挙にいこう:2007/01/11(木) 11:16:41
>>245
DCOUNTとCOUNTIFの組み合わせ
252名無しさん@そうだ選挙にいこう:2007/01/11(木) 14:39:35
>>250
すいません、もう少し詳しくおねがいします。
どうしても重なった感じのグラフになります。
253名無しさん@そうだ選挙にいこう:2007/01/11(木) 14:45:26
>>252
横軸が、123 123 123 123となっているが、
これをABC DEF GHI JKLと考えれば、
元の表の項目を増やす、って意味は分かるかねぇ?

つか、どうなりたいのか、も一つ分からん。
254名無しさん@そうだ選挙にいこう:2007/01/11(木) 15:00:13
>>253
今、abc defで試したところできました。
しかし123 123でするとやはり重なってしまいます。

別々のグラフを横に並べて表示したいのです。
分かりにくくてすいません。
255名無しさん@そうだ選挙にいこう:2007/01/11(木) 15:10:02
>>254
正直123 123て何なの?
月別とかなら、元データを年まで入れて、グラフ側の表示形式で
月だけ表示すれば良いし、何がしたいか、もう少し書いてくれん?
256名無しさん@そうだ選挙にいこう:2007/01/11(木) 15:25:18
123ってのは粉末の量です。縦軸が温度です(実際は12345でなくて0〜100度)。
それで粉末の種類が4種類あってそれを比較するグラフが書きたいのです。

1 2 3    1 2 3     1 2 3 
  ↑        ↑        ↑
粉末A      粉末B      粉末C

って感じです。
257名無しさん@そうだ選挙にいこう:2007/01/11(木) 15:28:20
1g 2g 3g でやっってスペース空けたらうまくいきました。
できればgは消したいところですがなんとなくはできました。
ありがとうございます
258名無しさん@そうだ選挙にいこう:2007/01/11(木) 16:06:53
段落罫線を消したいんですが消えません。
どうすれば消せますか。。
259名無しさん@そうだ選挙にいこう:2007/01/11(木) 16:28:42
>>258
それはWordの例のバグの話か?
Excelの段落罫線ってのは何の事だろう。
260名無しさん@そうだ選挙にいこう:2007/01/11(木) 16:35:56
>>259
すみません。Wordでした。
Word板で聞きます。。
261245:2007/01/11(木) 18:04:43
DCOUNTとCOUNTIFはどんなふうに入力すればいいんでしようか?
すみませんが詳しく教えてください。

それと、ピボットテーブルを使ったやり方も、わかる方教えてください。
262名無しさん@そうだ選挙にいこう:2007/01/11(木) 18:07:02
> DCOUNTとCOUNTIFはどんなふうに入力すればいいんでしようか?
ヘルプ参照


> ピボットテーブルを使ったやり方も、わかる方教えてください。
ヘルプ様やGoogle様が知ってますよ


とりあえず>>2の・5読んで、後は自分で頑張ろう
263名無しさん@そうだ選挙にいこう:2007/01/11(木) 18:58:57
またでた
264名無しさん@そうだ選挙にいこう:2007/01/11(木) 19:00:08
シート開いた瞬間に文字入力ボックスを自動で発生させたいときはどうすればいいのですか


普通にやると、どこかのセルをダボークリッキンとかすることがトリガーになるじゃないですか
そういうことを何もせずとも出したい。
265名無しさん@そうだ選挙にいこう:2007/01/11(木) 19:09:50
よく出るんだよね、回答に対してすぐに聞き返す奴。
266名無しさん@そうだ選挙にいこう:2007/01/11(木) 19:15:12
>>264
Workbook_OpenイベントをヘルプやGoogleで調べてごらん。
267名無しさん@そうだ選挙にいこう:2007/01/11(木) 19:51:35
またでた野郎がまたでたよ
268名無しさん@そうだ選挙にいこう:2007/01/11(木) 19:53:27
>>267
俺もうざいと思ってたw
269名無しさん@そうだ選挙にいこう:2007/01/11(木) 20:21:12
MS07-002を適用したExcel 2000において、一部のExcelファイルの内容が表示されない不具合
が発生する
 日本時間の10日付で公開されたExcel用のセキュリティ更新プログラム「MS07-002」を適用す
ると、Excelで一部のファイルが開けなくなる不具合が発生している件で、マイクロソフトは11日、
この現象が「Excel 2000(Office 2000)」固有の問題であることを公表した。
http://internet.watch.impress.co.jp/cda/news/2007/01/11/14433.html
270名無しさん@そうだ選挙にいこう:2007/01/11(木) 20:23:34
>>269 既出
>>236
271名無しさん@そうだ選挙にいこう:2007/01/11(木) 20:56:49
「またでた野郎」が、またでたよ

またでた野郎=いきなり「またでた」と言い出す野郎=263
272名無しさん@そうだ選挙にいこう:2007/01/11(木) 20:59:33
うぜえな
273名無しさん@そうだ選挙にいこう:2007/01/11(木) 20:59:46
>>271 既出
>>267
274名無しさん@そうだ選挙にいこう:2007/01/11(木) 21:02:40
              ,,,,,,,,,,,,,,,,,,,,
             /": : : : : : : : \
           /-─-,,,_: : : : : : : : :\
          /     '''-,,,: : : : : : : :i
          /、      /: : : : : : : : i     ________
         r-、 ,,,,,,,,,,、 /: : : : : : : : : :i    /
         L_, ,   、 \: : : : : : : : :i   / よし、『またでた』
         /●) (●>   |: :__,=-、: / <        っと…
        l イ  '-     |:/ tbノノ    \
        l ,`-=-'\     `l ι';/      \
        ヽトェ-ェェ-:)     -r'          ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
         ヾ=-'     / /
     ____ヽ::::...   / ::::|
  / ̄ ::::::::::::::l `──''''   :::|
275名無しさん@そうだ選挙にいこう:2007/01/11(木) 21:29:59
でるのはGoogle案内人
276名無しさん@そうだ選挙にいこう:2007/01/11(木) 21:53:20
ある列(号)の値が次の行のそれと一致していれば、ある行全部を削除する。
というマクロを作っています。
処理自体は出来ているのですが、無限ループしてしまいます。

Sub Macro
Dim 号 As Integer
Dim 行番号 As Integer
号 = 2
行番号 = 2

While Cells(行番号, 号).Value = Cells(行番号 + 1, 号).Value
Rows(行番号).Select
Selection.Delete Shift:=xlUp
行番号 = 行番号 + 1
  Wend
End Sub

ステップインしてみたところ、
途中行から号列が空白になるのに、
それをWhile中の条件式が理解していないようです。
しかし、どーなおしたらよいのか謎、といったところです。。
どなたかヒントだけでもお知恵をさずけてくださいませんでしょうか?
277名無しさん@そうだ選挙にいこう:2007/01/11(木) 21:56:38
うわ、ヘッダー付け損ねました。276です。
【1 OSの種類         .】 WindowsXPPro
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 はい多少は
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 While Do Loop
278名無しさん@そうだ選挙にいこう:2007/01/11(木) 22:09:26
>>276
行ごと消す処理のループは、一番下のデータから順に上方向に
チェックしていくのが鉄則。1行目になったら終了、という風にしなさい。
279名無しさん@そうだ選挙にいこう:2007/01/11(木) 22:12:12
>>276
空白同士でもループするのでは?
280名無しさん@そうだ選挙にいこう:2007/01/11(木) 22:18:53
【1 OSの種類         .】 WindowsXPPro
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 可
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 オートフィルタオプション

表示するレコードを複雑な条件で絞り込むことができるオートフィルタオプション。
右上のボックスには、「と等しい」「と等しくない」「より大きい」「以上」・・・「を含む」「を含まない」と
条件を選択する一覧があると思います。

さて、この条件の一覧の並び具合を変えることはできるのでしょうか(よく使うものを上のほうにもっていきたい)。
具体的には「を含む」「と等しい」・・・「含まない」「等しい」といったように並べ替えたいです。
281名無しさん@そうだ選挙にいこう:2007/01/11(木) 22:20:36
蒸し返して悪いが、またでた野郎が嫌がってるGoogleの奴は、
各板の質問スレでよく行われている回答方法だと思うが、何が嫌なのか。

「○○(用語)でググれカス」というレスを、URL出す部分までやって
くれてる訳だから、むしろ優しいし。
282名無しさん@そうだ選挙にいこう:2007/01/11(木) 22:21:26
>>280
不可。仕様。

>>281
スルーしる。
283名無しさん@そうだ選挙にいこう:2007/01/11(木) 22:42:41
276です、ご回答ありがとうございます。

>278
>>276
>行ごと消す処理のループは、一番下のデータから順に上方向に
>チェックしていくのが鉄則。1行目になったら終了、という風にしなさい。
他のメンバーもあまりプログラムに詳しくないので、
彼らの理解のしやすさも考えできれば下方向ループにしたいんです。。
(データが昇順にならんでいるのです)
逆方向なら無限ループが防げるというのはわかるのですが

>279
>空白同士でもループするのでは?
最後の行と、空白最初の行とでは値が等しくないので、
ここでループを抜けるはずだと考えているのです。。
284名無しさん@そうだ選挙にいこう:2007/01/11(木) 22:43:59
>抜けるはずだと考えているのです。。


この「はずだ」という思い込みで時間を浪費するんだな ww
285名無しさん@そうだ選挙にいこう:2007/01/11(木) 22:58:37
どこの板だろうがコミュニケーション能力皆無の糞見るのはいい気分じゃねーだろ
うぜーんだよボケ
286名無しさん@そうだ選挙にいこう:2007/01/11(木) 23:02:11
>>283
他のメンバーを教育しろボケ
てめーが一人で何でもやるのが一番効率いいとかうぬぼれてんな馬鹿
人間そこまで馬鹿じゃねーよアホ
てめーだけが理解できるとか勝手に気負ってんな死ね。
287名無しさん@そうだ選挙にいこう:2007/01/11(木) 23:05:21
>>283
Whileの後の条件が真である間、ループするもんだぞ。
データがどうなってるかによるだろ。
B2とB3が異なってたら、即終了だが、そんな処理なのか?
セオリー通り、最終行から、For〜Loopで逆順に回せ。

>>285
誰だお前w

>>286
言い杉
288名無しさん@そうだ選挙にいこう:2007/01/11(木) 23:07:49
質問です。
例えば、A3セルで、=A1+A2とかで求めた数値を、その数字で確定させることってできますか?
つまり、最初にA1+A2の数値を出したあと、数値を確定させたいのです。
(その後A2やA1セルに何を入力しても、A3セルは変わらないようにしたいのです。
説明が下手ですいません。
分かる方いましたらぜひよろしくお願い致します。
289名無しさん@そうだ選挙にいこう:2007/01/11(木) 23:18:18
>>288
コピーしてから「形式を選択して貼付け」で値だけを貼る。
290名無しさん@そうだ選挙にいこう:2007/01/11(木) 23:22:35
>288
計算方法を手動にする、とか
291名無しさん@そうだ選挙にいこう:2007/01/11(木) 23:23:35
>>289
ありがとうございます。解決しました!
292名無しさん@そうだ選挙にいこう:2007/01/11(木) 23:34:23
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン  】 Excel2000
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 Excel エクセル F3キー


昔々使っていたロータスで可能だったF3キーのペースト機能がとても便利で、
2000以前ではオプションで『ロータス形式のキー操作』という選択をすると
同じようにF3キーが使えていたのですが、2000以降では使えません。

なんらかの方法でF3キーでのペーストが可能になりませんでしょうか?
ご存知の方、宜しくお願い致します。
293名無しさん@そうだ選挙にいこう:2007/01/12(金) 00:09:27
>>292
Onkeyでググってみなシャレ。
294名無しさん@そうだ選挙にいこう:2007/01/12(金) 00:21:37
【1 OSの種類         .】 WindowsXPhomeSP2
【2 Excelのバージョン  】 Excel2002
【3 VBAが使えるか    .】 はい
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 Refedit 絶対参照 範囲

とあるデータシートのRefeditで選択した範囲をテキストファイルに書き込む
というマクロを組んで使っています。ただ、選択範囲がsheet1!$1:$10のような場合だと

1gyome = Range(Refedit.Value).Row
gyosu = Range(Refedit.Value).Rows.Count
saigo = 1gyome + gyosu - 1

見たいな感じでやってるのですが、sheet1!$1:$1,$5:$5のような場合だと
1行目はRowで取れますが2行目がどうやって行数を取得すれば良いのかわかりません。
複数範囲を変数に取るにはどうすれば良いでしょうか?
295294:2007/01/12(金) 00:24:44
補足ですが、テキストデータへの書き込みはWrite #ステートメントをループさせてます。
出来ればループできるような形が良いです。
296名無しさん@そうだ選挙にいこう:2007/01/12(金) 00:35:09
>>294
Refedit使った事ないけど、取得した範囲で、For Eachで
ループさせたら駄目なの?
297名無しさん@そうだ選挙にいこう:2007/01/12(金) 00:37:24
【1 OSの種類         .】 Windows2000
【2 Excelのバージョン   】 Excel2000
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否

エクセルの折れ線グラフについての質問させていただきます。

月曜日〜日曜日までの体重の増減の表を作ったとします。縦軸が体重、横軸が曜日で土日だけ縦に線を入れたい場合どうすればよいですか?
298名無しさん@そうだ選挙にいこう:2007/01/12(金) 00:40:46
>>296
ありがとうございます
そうですよね、まるごとForEachにぶち込むこと考えますよね普通・・・
アホだ自分・・・

今ちょっとやってみます。
299名無しさん@そうだ選挙にいこう:2007/01/12(金) 00:44:24
>>297
特定の項目だけ線を入れる、みたいな真似は出来ない。
300297:2007/01/12(金) 01:06:07
>>299
早速のご回答ありがとうございます!

やっぱり出来ないですよね・・・
301名無しさん@そうだ選挙にいこう:2007/01/12(金) 01:20:23
>>296

For Each Rg In Range(UserForm1.RefEdit1.Value)

Set Rg = Range(UserForm1.RefEdit1.Value)

i = Rg.Row

Write #Fnum, Cells(i, 1), Cells(i, 2), Cells(i, 3), Cells(i, 4), Cells(i, 5)

Next Rg

これだとやっぱりRowプロパティで何度ループしても先頭行しか取れませんでした。
iが変化しません。お知恵をお貸し下さい。
302294:2007/01/12(金) 01:39:15
ごめんなさい、わかりました。
行番号クリックしてたので256列目までループしてました・・・
DoLoopと組み合わせれば出来そうな気がします。
ありがとうございました。
303294:2007/01/12(金) 02:15:35
できました〜。
>>296さんヒントありがとうございました!
304名無しさん@そうだ選挙にいこう:2007/01/12(金) 11:02:44
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2000
【3 VBAが使えるか    .】 無関係
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 Excel 問題 コンテキストメニュー など

Excelを2ウィンドウ開き、ウィンドウaの任意のセルをコピー、
ウィンドウbの任意のセルへCSVで貼り付けを行っていました。
<形式を選択して貼り付けより

ある日突然、メニューキーを叩いてコンテキストメニューを表示させると、
「Alt,Space」で表示されるウィンドウのコンテキストメニュー(最大化など)が
一緒に表示されるようになってしまいました。

<メニューキー叩きで、「ウィンドウ」「セル」の2つに関するコンテキストメニューが表示される

現象が起きないときもあり、ランダムのようです。
同様の現象を確認されている方、解決法をお知りの方などがおりましたら、
情報提供をお願いいたします。
305名無しさん@そうだ選挙にいこう:2007/01/12(金) 12:12:12
winXP
office2003です。
一つのセルに長文を入れているのですが
文章の最初の方はきちんと折り返されますが、
最後の方は折り返されなくなります。
改善方法はありますでしょうか?
一行45文字程度で行数は40行ほどで、
何箇所か7箇所ほど改行が入っています。
よろしくお願いいたします。
306名無しさん@そうだ選挙にいこう:2007/01/12(金) 12:24:52
>305
任意の位置で改行するなら改行したい場所でalt + enter
307名無しさん@そうだ選挙にいこう:2007/01/12(金) 13:18:57
エクセルファンクラブが閉鎖になってるが、何があったのか知ってる人いる?
308名無しさん@そうだ選挙にいこう:2007/01/12(金) 14:18:04
エクセルファンクラブは閉鎖になってないだろ。
Q&Aラウンジのみが、悪戯投稿対策のため一時ラウンジ閉鎖。
309名無しさん@そうだ選挙にいこう:2007/01/12(金) 19:58:37
>>276です。
みなさんのご指示通り逆ループにしてみたら
すべてがうまくいきました。
本当にありがとうございました!!
310名無しさん@そうだ選挙にいこう:2007/01/12(金) 20:01:23
まじで2ch閉鎖かよ・・・
このスレにはかなり助けられたのに。このスレがなかったら、残業しすぎて死んでいたと
思う。
マジでどうしよう
311名無しさん@そうだ選挙にいこう:2007/01/12(金) 20:08:07
2chが無くなっても、ここが無くなるわけじゃない
一時的に人は減るだろうがな
312名無しさん@そうだ選挙にいこう:2007/01/12(金) 20:33:01
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2002
【3 VBAが使えるか    .】 無関係
COUNTIFの検索条件に関する質問っす。
例えばA列に
44
46
48
50
51 とあって40〜49の範囲にある個数を知るのに現在
=COUNTIF(A1:A5,">=40")-COUNTIF(A1:A5,">=50")としてるんですけど、
この検索条件にANDで指定する事って出来ないのでしょうか。
=COUNTIF(A1:A5,AND(">=40","<50"))としたら結果に0が返ってきます。
まぁこれはANDの論理式がおかしいからなんでしょうけど。
313名無しさん@そうだ選挙にいこう:2007/01/12(金) 21:09:04
>312
オートフィルタとSUBTOTALを使うとお手軽だけど駄目?
314名無しさん@そうだ選挙にいこう:2007/01/12(金) 21:15:17
>>313

レスどもです。SUBTOTALってのをヘルプで見てみましたが、それとオートフィルタをどのように
使うのでしょうか?
315名無しさん@そうだ選挙にいこう:2007/01/12(金) 21:19:02
論理式や論理値ってものが解ってないようだね。
316名無しさん@そうだ選挙にいこう:2007/01/12(金) 21:24:21
例の式はわざと間違ってんでしょ。
317名無しさん@そうだ選挙にいこう:2007/01/12(金) 21:29:23
>>315
まぁ確かにそうなんでしょうが。
>>316
では、この場合どうすれば宜しいので?
318名無しさん@そうだ選挙にいこう:2007/01/12(金) 21:40:23
>>317
お、俺にきくのかw
ええと、やってみれば分かるんだけど、
COUNTはオートフィルタで絞っても、解は変わらないけど、
SUBTOTALはオートフィルタで絞ったら、可視になっているセルのみ数える様に出来てる。
つまり、オートフィルタで、40〜49を絞れば、個数が出るって事でしょ。
319名無しさん@そうだ選挙にいこう:2007/01/12(金) 21:41:59
>314
SUBTOTALで集計範囲を選択して集計方法を2にする
後はオートフィルタで40以上50未満に絞るだけなんだけど

考えているものと違ってたらごめんね
320名無しさん@そうだ選挙にいこう:2007/01/12(金) 21:46:22
321名無しさん@そうだ選挙にいこう:2007/01/12(金) 22:12:55
>317
配列数式ってのもあったね
{=SUM(IF(A1:A5>=40,IF(A1:A5<50,1)))}
322312=314=317 w:2007/01/12(金) 22:28:05
皆さん、どもありがと。
これからまた勉強してみます m(__)m
323名無しさん@そうだ選挙にいこう:2007/01/12(金) 23:30:53
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2000
【3 VBAでの回答の可否】 否
【4 検索キーワード     】 連続データ オートフィル  など


連続データ(数式)をコピーしたいのですが、
フィルハンドル⇒ドラッグ⇒オートフィルオプションと開いていっても、
「連続データ」という項目が出てきません。

右クリックでドラッグしても同様なのです。。

以前は出ていたような気がするのですが、どこかで設定を変えるのでしょうか?


本当に困っております。どなたか、お知恵をお貸しください。。



324名無しさん@そうだ選挙にいこう:2007/01/12(金) 23:52:11
>>323
数式の場合、セル参照しかないだろうから「連続データ」は出ないので正解。

例えば、
A1に「=B1」って書く→A1を選択→Ctrl+C→A2にCtrl+V
とすると、A2には「=B2」と入るだろ。

これは連続データじゃなくて、ただのコピー、
つまり右クリフィルで言うところの、セルのコピーでOK。
325名無しさん@そうだ選挙にいこう:2007/01/13(土) 08:41:24
開けねーと思ったら>>236
マジヒドス
326名無しさん@そうだ選挙にいこう:2007/01/13(土) 11:36:04
>>320
おっ、牽制球投げて来たね!
うしろめたいのかな?
327名無しさん@そうだ選挙にいこう:2007/01/13(土) 11:54:25
エクセルでセル内で()を使うと自動的に−になりんだけど、どうすれば解消されますか?


(21)と入力すると-21と表記される。

どなたかアドバイスお願いします。
328名無しさん@そうだ選挙にいこう:2007/01/13(土) 11:57:07
>>327
頭に「'」(シングルクォーテーション)つけるか、セルの書式設定で文字列に。

↑これもテンプレに入れて。



>>326
>>320じゃないが、お前もう黙ってろ。
329名無しさん@そうだ選挙にいこう:2007/01/13(土) 11:59:28
>>328
ありがとうございます。
330名無しさん@そうだ選挙にいこう:2007/01/13(土) 12:01:12
test
331名無しさん@そうだ選挙にいこう:2007/01/13(土) 12:22:12
EXCEL2002のVBAについての質問です。

VBAでグラフを描きたいのですが、
グラフ関連のオブジェクト、プロパティの一覧が載っている
ホームページ、書籍等をご存知でしたら教えて下さい。
332名無しさん@そうだ選挙にいこう:2007/01/13(土) 12:53:39
>>331
エクセル2002・VBAのヘルプに全部載っている。
333名無しさん@そうだ選挙にいこう:2007/01/13(土) 16:26:27
>>304 を確認された方はいませんか?
334名無しさん@そうだ選挙にいこう:2007/01/13(土) 16:37:35
日本語で言ってくれないと確認のしようが無いわけだが
335名無しさん@そうだ選挙にいこう:2007/01/13(土) 17:41:33
集計で困っています

商品の売れ行きを計るためのもので、縦500横6ぐらいのデータに
それぞれの商品が記入されています(種類は200-300近くの種類があります)
それを集計して各商品がどれだけ売れているか集計したいのですが
現状使っている集計プログラムが

商品Aと6:500のデータを全て比較→商品Aの売れた個数を記入
商品Bと6:500のデータを全て比較→商品Bの売れた個数を記入
商品Cと…

という感じで比較していくのですが、恐ろしく時間がかかってしまい
1ヶ月単位とかなると目も当てれない状況になっています
作った方はすでに退社しており、私に丸投げされたのですが
どのようにしていけばいいでしょうか?

時間がかかる理由としては比較条件が多い気がします

変数Aに商品Aを入力
 変数AとA1を比較 同じだったら+1
 変数AとB1を比較 同じだったら+1
 :
 変数AとF1を比較 同じだったら+1

 変数AとA2を比較 同じだったら+1
 :

とやって、一番下まで進んだら変数Aに商品Bを記入して同じように上から抽出するという感じです
これを少しでも早くできるようにしたいのですが、参考になるHP、やり方があればお教えください
336名無しさん@そうだ選挙にいこう:2007/01/13(土) 17:56:23
↑追記

上記の比較が全てIF文とループ文で行われているので
命令文が6*500*商品種類(200〜300)=600000〜90000回繰り返されてるのが最大の原因と思われます
337名無しさん@そうだ選挙にいこう:2007/01/13(土) 19:12:22
>>335
商品A・B・C・・・・のデータはどこに書いてある?
売れた数はどこに書き出す?
他の場所にある?それとも同一シート内のどこか?
それとも何が商品Aなのか決まってなくて、6:500の中から拾うの?

あと縦500横6のレイアウトに意味はある?
変えちゃダメ?
338名無しさん@そうだ選挙にいこう:2007/01/13(土) 19:54:11
集計プログラム?
マクロ組むまでも無く countif で十分
339名無しさん@そうだ選挙にいこう:2007/01/13(土) 22:07:58
>>335
他人がコーディングしたもんならコード晒すわけにいかないだろうしなぁ
6500件ぐらいならループで比較してもそんなに時間かからないと思うけど
チェックの部分だけでも晒してくれるとみんなアドバイスしやすいと思うけど
340名無しさん@そうだ選挙にいこう:2007/01/13(土) 22:16:34
6500件じゃなくて6*500件か
それにしてもそんなに時間掛かるもんかねぇ
341名無しさん@そうだ選挙にいこう:2007/01/13(土) 23:01:41
>>334
説明が悪いのでしょうか?

メニューキーを叩くと、コンテキストメニューと「Alt > Space」を叩いたときに表示される
ウィンドウのコンテキストメニュー(?)の2つが表示されてしまうのです。

今現在は、この現象がランダムに出るので、問題の切り分けができていません。
342名無しさん@そうだ選挙にいこう:2007/01/14(日) 10:37:44
>>335
ピボットテーブル
343名無しさん@そうだ選挙にいこう:2007/01/14(日) 10:39:50
エクセル2002の質問です

あるデータをピボットの表に作り変えてピボットの項目の行、合計の行とサブ合計の行を
他のシートに移したいと思います。
(他の言葉でいうと複数枚のピボット表の合計欄だけを他シートに集めたい)
これを毎日繰り返すのですが、いつもやり方がわからず、ピボット表の
シートを値コピーして入らない行を削除してつくって、他のシートにコピーしてます。
データを入れて更新すると、自動的にコピーされる方法は何かないでしょうか?

どなたかご助言お願いします。
344名無しさん@そうだ選挙にいこう:2007/01/14(日) 10:43:31
>>343
VBA使えば可能。あとは自分で頑張って。>>3
345名無しさん@そうだ選挙にいこう:2007/01/14(日) 10:47:02
>>343
VBAですか。調べてみます。ありがとうございます。
346名無しさん@そうだ選挙にいこう:2007/01/14(日) 10:52:41
344さんでした。すみません。
347名無しさん@そうだ選挙にいこう:2007/01/14(日) 11:09:16
>>335 の文面から想像すると多分こんなんかな。

For c = 2 To 7 'B〜Gの6列とする
  For r = 1 To 600 '行
    If Cells(r, c) = "からしめんたいこ" Then Cells(1, 1) = Cells(1, 1) + 1
 Next r
Next c
これを300商品分ループさせたら、そら時間かかるわ。

Cells(1, 1) = Application.WorksheetFunction.CountIf(Range("B1:G600"), "からしめんたいこ")
商品名は一旦配列に読み込んでおけば、For Next で回しやすい。
348名無しさん@そうだ選挙にいこう:2007/01/14(日) 16:27:13
エクセルの質問です。
計算で3.640E-06とでるのですが
E-06ってどういう意味ですか?
349名無しさん@そうだ選挙にいこう:2007/01/14(日) 16:34:02
タイムカードの時間計算で教えてください。

09:00と入れれば簡単に計算できるんですが、「:」の入力を省きたいです。
そこで、0900と4桁の数字を入力すると「09:00」と認識する方法はありませんか?

いろいろ調べてはみたんですが・・・。
詳しい方、ぜひよろしくお願いします。
350名無しさん@そうだ選挙にいこう:2007/01/14(日) 16:39:19
浮動小数点表記
351名無しさん@そうだ選挙にいこう:2007/01/14(日) 16:39:56
テンプレ使わないのが流行ってんの?
352名無しさん@そうだ選挙にいこう:2007/01/14(日) 16:44:17
>>348
指数表記

>>349
VBA使えば可能
9.00を9:00にする方法なら過去ログテンプレにある
353名無しさん@そうだ選挙にいこう:2007/01/14(日) 16:48:06
すみません

http://rosso.1717.info/upload/data/001.jpg

で、グラフに、セルにない日付(1/6〜1/8)が表示されて
しまうんですけど、グラフにこれを表示させないようにする
にはどうすれば良いのでしょうか?
354名無しさん@そうだ選挙にいこう:2007/01/14(日) 16:50:15
>>349
900÷2400
355名無しさん@そうだ選挙にいこう:2007/01/14(日) 17:40:22
>>353
Y軸に日付けを使わない(日付けっぽい文字列にする)
356349じゃないけど:2007/01/14(日) 17:44:26
>354
9時50分の950と入力すると9:30になっちゃうよ
357名無しさん@そうだ選挙にいこう:2007/01/14(日) 18:29:53
>>356
分まで (950→9:50)
=INT(A1/100)/24+RIGHT(A1,2)/1440
=TIME(INT(A1/100),RIGHT(A1,2),0)

秒まで (950.45→9:50:45)
=INT(A7/100)/24+RIGHT(INT(A7),2)/1440+MOD(A7,1)/864
=TIME(INT(A1/100),RIGHT(INT(A1),2),MOD(A1,1)*100)
358名無しさん@そうだ選挙にいこう:2007/01/14(日) 18:45:49
VBAで質問です。

(1)オブジェクトのテキストボックスに数値を入力すると,sheet1のあるセルにその値が入力される。
(2)その値に従って,sheet2,sheet3,sheet4の様々なセルに,vlookupによって引っ張られた値が表示される。

というマクロなのですが,sheet1のあるセルに値を入力することからスタートするため,
sheet2やsheet3やsheet4を表示させた上で実行しても,必ずsheet1に切り替わってしまいます。

そこで,
・表示するsheetを切り替えない。
・現在表示してあるsheet名を取得し,マクロの最後で,そのsheetに切り替える。
のいずれかのマクロの記述を教えていただきたいのです。
よろしくお願いします。
359名無しさん@そうだ選挙にいこう:2007/01/14(日) 18:54:32
>>358
>>1 ★4、>>2 ・8 ・3
360名無しさん@そうだ選挙にいこう:2007/01/14(日) 19:11:32
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2000
【3 VBAでの回答の可否】 可
【4 検索キーワード     】 ダイアログ 保存

VBAで保存ダイアログを出す時って

Set WSH = CreateObject("WScript.Shell")
DeskP = WSH.SpecialFolders("Desktop")
F_Name = Application.GetSaveAsFilename(DeskP & "\Sample.txt", _
FileFilter:="txt(*.txt),*.txt")

上記になると思いますが
有無を言わさずデスクトップ上に保存したい場合で、仮に同名ファイルが存在している場合
強制的に上書きする場合どうすればいいのでしょうか?
361名無しさん@そうだ選挙にいこう:2007/01/14(日) 19:17:17
>>358
MySheet=ActiveSheet.Name
Sheets(MySheet).Select

>>360
Workbooks(MyBook).Close savechanges:=True
362名無しさん@そうだ選挙にいこう:2007/01/14(日) 20:08:58
あらかじめグラフ範囲を決めていて、(そこにリスト出力がくるように設定)
マクロ登録で実行すればその範囲でグラフになるボタンを作成したんですが

リストが写されて数値が表示されているとこはきちんと表示されたのですが、空白のとこはグラフは表示されないものの
凡例のとこにズラーっと空白のグラフの系列のやつまで表示されるんですけど、これを表示しないようにする方法を教えてください。
363名無しさん@そうだ選挙にいこう:2007/01/14(日) 20:13:32

>>324
早速にありがとうございました。
ですが、やはり上手くいきません。。

物凄く具体的な状況として、
 I13=J13-J12
 I14=J14-J13
 I15=J15-J14
  ・
 (以下、同様)
  ・
  ・
 という入力をしたいのですが、どうやっても上手くいかないのです。

どなたかお教えいただけませんでしょうか?
364名無しさん@そうだ選挙にいこう:2007/01/14(日) 20:18:07
>>363
右クリック→コピー→貼付け
365名無しさん@そうだ選挙にいこう:2007/01/14(日) 20:23:48
>>364
そんなこと聞いてるんじゃないってことぐらいわかるだろ
質問スレでそんなしょうもないこと言って面白いとでも思ってるわけ?

ほんとウザイよお前
366名無しさん@そうだ選挙にいこう:2007/01/14(日) 20:32:24
>>365>>363と同一人物なので以後スルーで、お願いします。
367363:2007/01/14(日) 20:38:16

>>366
違います。。
368名無しさん@そうだ選挙にいこう:2007/01/14(日) 20:40:13
右クリック→コピー→貼付け
で、問題ないので解決しました。
369名無しさん@そうだ選挙にいこう:2007/01/14(日) 20:43:06
>>361
即レス感謝です。ありがとうございました。
370名無しさん@そうだ選挙にいこう:2007/01/14(日) 20:48:39
>>367
それなら>>365に回答もらって下さい。

以後363の質問は365が答えるので、他の方はスルーして下さい。
371363:2007/01/14(日) 20:51:03

>>368
同じ数字が出ちゃうんです。なぜなのでしょう?
372名無しさん@そうだ選挙にいこう:2007/01/14(日) 20:55:50
計算結果が同じ値の場合
計算式がおかしい
計算方法が自動になっていない
373名無しさん@そうだ選挙にいこう:2007/01/14(日) 20:59:21
>>370
おまえが仕切るな、消えろ
374名無しさん@そうだ選挙にいこう:2007/01/14(日) 21:00:42
以後363の質問は365または373が答えるので、他の方はスルーして下さい。
375名無しさん@そうだ選挙にいこう:2007/01/14(日) 21:01:01
Excel2000を使っています。
カレンダーを作り横軸を日付にして、日が進むにつれて縦軸のAを削除することで全体が左へとスライドして日が過ぎていくようなものを作りました。
このとき日が進むにつれて自動的に縦軸を削除するようにすることができるでしょうか。
376名無しさん@そうだ選挙にいこう:2007/01/14(日) 21:05:49
>>375
「NOW」を使えば出来るよ


>>374 過敏すぎるよ、ほっときな
377363:2007/01/14(日) 21:14:40
すいません、早く答えてくれませんか・・
378375:2007/01/14(日) 21:27:50
>>376 どうもありがとうございます。
379名無しさん@そうだ選挙にいこう:2007/01/14(日) 21:37:30
>>363
まず>372のアドバイスに答えるのが先だろ
380375:2007/01/14(日) 22:48:49
NOWを使って自動的に縦軸を削除するようにするには、マクロの知識もないとできないのでしょうか。
適当でいいので流れを教えてください。
381名無しさん@そうだ選挙にいこう:2007/01/14(日) 23:07:25
>>380
横レスだが、
A1を「=Today()」で当日日付を入れ、B1に「=A1+1」C1に「B1+1」…
と書いておけば、特に、列を削除する事なく、同様の見た目になるが
駄目なのか。
382375:2007/01/14(日) 23:39:24
>>381 予定ごとなども一緒にスライドしてもらわないといけないので、縦軸削除をしています。
あと横軸は256マスくらいしか表示されないため、当日過ぎた日付は消滅した方が都合がいい為です。
まあ手動で削除でも問題はないのですが。
383名無しさん@そうだ選挙にいこう:2007/01/14(日) 23:46:32
>>382
勉強で作るんじゃないなら、普通にスケジューラ使え。
他人と共有出来るものも沢山あるし、便利なものが多い。
http://www.google.co.jp/search?hl=ja&ie=Shift_JIS&q=%83%58%83%50%83%57%83%85%81%5B%83%89

勉強で作ろうとしてるんなら、もっと絞り込んでから質問しれ。
ここの回答者に言うと、全部作ってしまうぞ。
ツール→マクロの記録をやってみ。だいたい分かってくる。
384名無しさん@そうだ選挙にいこう:2007/01/15(月) 00:33:15
>>361
360です
Workbooks(MyBook).Close savechanges:=True

これっていうのは
ダイアログを出して自動的に「はい」を押下する方法ですよね?
やはり固定されている名前の新規ファイルを保存したい場合でも
保存ダイアログを出してからの方法じゃないといけないのでしょうか?

そもそも保存したいファイル名が固定されている場合、
ユーザにファイル名を決めさせることはないので、
わざわざ保存ダイアログをだす必要はないのですが
385名無しさん@そうだ選挙にいこう:2007/01/15(月) 01:03:21
>>384
Application.DisplayAlerts = False
ThisWorkbook.SaveAs Filename:="hoge.xls"
Application.DisplayAlerts = True
386名無しさん@そうだ選挙にいこう:2007/01/15(月) 04:18:00
>>363
粘着されそうなんでマジレスしておくわ

フィルハンドルってのをググレ
387名無しさん@そうだ選挙にいこう:2007/01/15(月) 04:18:42
スレに粘着ってことね
388名無しさん@そうだ選挙にいこう:2007/01/15(月) 10:16:55
AかつBかつCを、
=AND(A,AND(B,C))
これよりも分かりやすく表記することはできないのでしょうか?
389名無しさん@そうだ選挙にいこう:2007/01/15(月) 10:21:37
=AND(A,B,C)
390名無しさん@そうだ選挙にいこう:2007/01/15(月) 10:23:38
>>389
ありがとう!
391名無しさん@そうだ選挙にいこう:2007/01/15(月) 10:40:14
>>384
やってみてから書け
ダイアログ出ないぞ!
392名無しさん@そうだ選挙にいこう:2007/01/15(月) 10:44:02
ActiveWorkbook.Close savechanges:=True
393名無しさん@そうだ選挙にいこう:2007/01/15(月) 14:10:06
EXCEL2002のVBAです。
あるセル(B3)にデータが入力されたら、そのセルの下のセル(B4以下)
を全て下方(B5以下)にシフトして、B3のデータをB4に移動し、
B3セルをクリアしたいのですが、どうすれば良いでしょうか。
Changeイベントプロシジャの中で次のようなコーディングしたのですが
下方へのシフトが1セルでなく235セルシフトします。
これはどうしてでしょうか。
i=1
Range(Cells(4, i + 1), Cells(4, i + 1)).Select
Selection.Insert Shift:=xlDown

宜しくお願いします
394名無しさん@そうだ選挙にいこう:2007/01/15(月) 14:25:15
>>393
Range("B3").Insert Shift:=xlDown
395393:2007/01/15(月) 15:10:43
>>394
レスありがとうございます。

教えて頂いたとおりになってみましたが、
やはり1セルだけなく239セルシフトしました。
どうしてでしょうか?
396名無しさん@そうだ選挙にいこう:2007/01/15(月) 15:20:21
>>395
EnableEventsプロパティを一時的にFalseにする
397名無しさん@そうだ選挙にいこう:2007/01/15(月) 15:23:27
>>394で特に問題ありませんが?
一部のコードだけ書き込まれて、どうしてかと問われてもわかりかねます。
398名無しさん@そうだ選挙にいこう:2007/01/15(月) 15:30:44
【1 OSの種類         .】 Windows2000
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】
   A    B   C    D
1 日付   点数   最近の平均
2 3/1  50     50
3 3/2  休     50
4 3/3  65     57.5
5 3/4  62     59
6 3/5  70     65.7
7 3/6  72    68


D列に「今日より、近3回の平均」を入れていきたいのですが
どのような関数を当てていけばいいでしょうか?
399名無しさん@そうだ選挙にいこう:2007/01/15(月) 15:32:40
>>398
「休」とかあるなら、VBA無くして不可とオモ。
400名無しさん@そうだ選挙にいこう:2007/01/15(月) 15:33:53
401名無しさん@そうだ選挙にいこう:2007/01/15(月) 15:58:53
>>400
"Excel 関数 平均"のどこかにうまい方法載ってましたか?
402名無しさん@そうだ選挙にいこう:2007/01/15(月) 16:04:08
>>398
作業列いっぱい使う方法でよければVBA無しでも可能だけど
403名無しさん@そうだ選挙にいこう:2007/01/15(月) 16:05:14
>>398
SUMIFとCOUNTIFでよいような
404名無しさん@そうだ選挙にいこう:2007/01/15(月) 16:05:16
自分で探してください。
405名無しさん@そうだ選挙にいこう:2007/01/15(月) 16:07:16
>>403
具体的には?
406名無しさん@そうだ選挙にいこう:2007/01/15(月) 16:16:01
この時間帯は、なれ合いたいだけの回答者しかいないでFA。
相談持ちかけた側が間違いw
407名無しさん@そうだ選挙にいこう:2007/01/15(月) 16:55:47
【1 OSの種類         .】 XPPro
【2 Excelのバージョン   】 Excel2000、XP
【3 VBAが使えるか    .】 はい
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 座標 回転  回転行列

原点X,Y を基準に座標a(x,y)をθ度回転させた後の座標b(x',y')を求めたい

必死こいてググったりExcelで計算式入れて試算してもことごとく正解な(0度だとx,yは変化無し)
値が出てこなくて困ってる。
一部教えてgooやら参考になるログがいくつかあったが例のセル位置が間違っており数式が成立せず

暇な人頼んますわ
408名無しさん@そうだ選挙にいこう:2007/01/15(月) 16:56:25
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 はい
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 Googleやヘルプでの検索キーワード

大学で、こんな宿題が出たんですけど、正直言うと授業フケまくってたんで全く分かりません・・・
良かったら助けてくださいorz

sheet1に下のような成績表を作成し(“クラス”の欄をB2セルとする)、印刷ボタンをクリックすると、5科目の平均が80点以上90点未満の人のクラスと氏名が印刷されるマクロを作ること。ただし、平均は小数点以下第2位を四捨五入すること。

クラス氏名国語英語数学理科社会
A相沢恵子
A青木和美
A伊藤卓
A上原信次
A岡田政男
A加藤信夫
B久保俊輔
B小林実
B佐藤慎一
409名無しさん@そうだ選挙にいこう:2007/01/15(月) 16:58:41
なんでいろんな解釈の仕方が出来る曖昧な質問するかなぁ
410名無しさん@そうだ選挙にいこう:2007/01/15(月) 17:01:36
算数と宿題…
411名無しさん@そうだ選挙にいこう:2007/01/15(月) 17:02:53
>>407
三角関数が分ってりゃすぐ出来る、エクセルの問題ではない

>>408
そりゃ大変だね
412名無しさん@そうだ選挙にいこう:2007/01/15(月) 17:04:52
>>408
ループ回して処理すればいいだけじゃん。
ループ内で行ごとに平均だして条件分岐
あとは条件に一致した物をsheet2に書き出してそれを印刷するとか
条件不一致の行を非表示にしてクラスと氏名列を印刷するとか

というか、これ、中学校レベルの課題じゃね?
413407:2007/01/15(月) 17:05:01
>>411
その通りで三角関数が分かってなかっただけだった。
解決したので自レス

>407
x'=(x-X)*cos(θ)-(y-Y)*sin(θ)+X
y'=(x-X)*sin(θ)+(y-Y)*cos(θ)+Y
414408:2007/01/15(月) 17:13:34
>>412
そのマクロの記述の仕方が分からないという・・・
415名無しさん@そうだ選挙にいこう:2007/01/15(月) 17:24:32
>>414
そうなんですか。頑張ってくださいね。
416名無しさん@そうだ選挙にいこう:2007/01/15(月) 17:26:17
>>414
ヒントもらってんだから、教科書開くくらいしろよ。
Excel起動して、Alt+F11でVBE開くから、考えながらやれって。
卒業したら、今時どの企業でもExcel使わせられっぞ。
417408:2007/01/15(月) 17:28:31
>>416
OK! 頑張ってみます(`・ω・´)
418名無しさん@そうだ選挙にいこう:2007/01/15(月) 17:46:32
大学でExcelって今じゃ普通なの?
高校の商業科とか専門学校じゃなくて?
ゆとり教育もここまできたかって感じ。
419名無しさん@そうだ選挙にいこう:2007/01/15(月) 19:35:17
横レスで悪いけど、印刷ボタンクリックのイベントってあるの?
420名無しさん@そうだ選挙にいこう:2007/01/15(月) 19:58:26
「印刷」というキャプションを乗せたボタンを作れって事でしょ。
421408:2007/01/15(月) 20:14:46
すみません。「印刷」と「少数点以下第二位を四捨五入」がどうしても分かりません・・・
そこだけでも教えてもらえないでしょうかorz
422名無しさん@そうだ選挙にいこう:2007/01/15(月) 20:21:48
423名無しさん@そうだ選挙にいこう:2007/01/15(月) 20:37:30
>>422
GJとしか言いようがない
424408:2007/01/15(月) 20:57:40
上手く出来ずにイライラしてたら間違えて保存せずに閉じてしまったOTL
425名無しさん@そうだ選挙にいこう:2007/01/15(月) 20:58:35
GJとしか言いようがない
426名無しさん@そうだ選挙にいこう:2007/01/15(月) 21:01:12
吹いたw
427408:2007/01/15(月) 21:06:49
If SUM(”D3:H3")/5=80≦90.PrintOut

こんな感じでのを9列分書けば良いんですかね・・?
ウザかったらこれ以上書き込むの止めます(;・ω・)
428408:2007/01/15(月) 21:08:42
自分で質問しておきながら「小数点以下第2位を四捨五入」の部分忘れてました(汗
429名無しさん@そうだ選挙にいこう:2007/01/15(月) 21:11:34
>If SUM(”D3:H3")/5=80≦90.PrintOut
何オブジェクトを印刷してんだよw
430名無しさん@そうだ選挙にいこう:2007/01/15(月) 21:18:12
>>427
これってマジレスなの?どこの大学だよ。
431408:2007/01/15(月) 21:19:35
何オブジェクト??
432408:2007/01/15(月) 21:21:50
>>430
マジレスですが・・・
出席だけして何もしてなかったツケが回ってキマシタ
大学名は勘弁して下さい
433名無しさん@そうだ選挙にいこう:2007/01/15(月) 21:32:42
休学と留年一回して、6年間みてどんどん学生の質が悪化していくのが手にとるようにわかった
いまはもっと悪化してそうだねぇ
434名無しさん@そうだ選挙にいこう:2007/01/15(月) 21:38:34
と、単位が足りず、2年留年した男が言っております。
435408:2007/01/15(月) 22:05:55
SUM使わないでAVERAGEだけ使えばOKですか?
436名無しさん@そうだ選挙にいこう:2007/01/15(月) 22:11:09
授業中の説明で「AVERAGEの使用禁止」とか言ってるかもしれないし
その辺が判らないとどうしようもない
437名無しさん@そうだ選挙にいこう:2007/01/15(月) 22:12:34
まず、何で元データの点数が埋まってないの?
438408:2007/01/15(月) 22:13:54
いや、言ってなかったと思います。
練習問題とかで普通に使ってましたし、問題文に使用禁止と書いてないので・・
439名無しさん@そうだ選挙にいこう:2007/01/15(月) 22:23:27
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2002
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 不可
【5 検索キーワード     】 保護 保護の解除
一度にすべてのシートの保護または保護の解除をする方法を教えてください。
440名無しさん@そうだ選挙にいこう:2007/01/15(月) 22:24:17
>>408
僕は学校にお友達いないの?
441名無しさん@そうだ選挙にいこう:2007/01/15(月) 22:25:09
442408:2007/01/15(月) 22:27:13
>>437
さぁ・・・
始めから埋まってませんでした・・・

>>440
居ません。
ゼミもサークルも入ってないと大学って友人1人も出来ないんですね。
入っておけば良かったと後悔してます(ノД`)
443名無しさん@そうだ選挙にいこう:2007/01/15(月) 22:30:11
その得点部分が授業で発表されたんだな、たぶん。
444名無しさん@そうだ選挙にいこう:2007/01/15(月) 22:47:56
VBAで新規ファイルを作成して
中身に書き出す文字列を
Print #FileNo, "<html>"
Print #FileNo, "<head>"
・・・

といった形にして任意のHTMLを作成した時に
なぜかエンコードが西ヨーロッパ言語(Windows)になって文字化けしてしまいます
これを自動的に日本語(自動選択)にしたいのですが教えてください
445名無しさん@そうだ選挙にいこう:2007/01/15(月) 22:51:14
>>444
Excel関係ない
ブラウザかHTML関連へどうぞ
446名無しさん@そうだ選挙にいこう:2007/01/15(月) 22:56:27
>>408
点数は"=INT(101*RAND())"で出した。突っ込まれたら適当に言い訳しとけ。

クラス 氏名 国語 英語 数学 理科 社会
A 相沢恵子 13 69 87 15 17
A 青木和美 87 61 22 66 29
A 伊藤卓 89 6 66 64 87
A 上原信次 80 0 37 79 75
A 岡田政男 84 69 53 92 73
A 加藤信夫 70 50 4 53 46
B 久保俊輔 12 26 9 10 42
B 小林実 43 4 83 13 10
B 佐藤慎一 17 30 46 82 83
447名無しさん@そうだ選挙にいこう:2007/01/15(月) 23:00:06
>>446
肝心の問題を答えてやれよ!
448408:2007/01/15(月) 23:01:57
>>446
ええと・・・多分、どんな値を入力しても印刷ボタンをクリックしたら
5科目の平均が80点以上90点未満の人のクラスと氏名が印刷されるマクロを作れって意味だと思うんです。
数値は発表されてないと思います

ってかもう全然進まない・・・
付け焼刃に出来る課題では無かった模様・・・
諦めかけてきた
449名無しさん@そうだ選挙にいこう:2007/01/15(月) 23:08:34
処理手順。全部マクロの記録でおk。

@H列に「=AVERAGE」で平均点を入れる→下までフィル。
Aオートフィルタを展開。
BH列をフィルタ!80〜90点。
CA列とB列を印刷範囲に。
D印刷。

もっと簡単な方法があるかもだが、マクロの記録でやれ。
450名無しさん@そうだ選挙にいこう:2007/01/15(月) 23:15:27
>>408
よかったね相手してくれる人が沢山いて
そのうち、丸々解答書いてくれる親切な人が出てくるよ。
回答者の気持ちを逆なでしないように、適当に返事しながら
じっくり待ってな
451名無しさん@そうだ選挙にいこう:2007/01/15(月) 23:27:31
Sub test()

  学校の宿題だろ?丸々教えるのは本人のためにならないんじゃないか?

End Sub
452408:2007/01/15(月) 23:35:54
>>449
すみません、オートフィルタの機能がよくわかりません・・・

If 80≦ROUND[{AVERAGE("D3:H3")},1]<90,Then Range("B3"&"C3")PrintOut

エラーで不正な文字ですって出てくるんですが・・・
どこが不正なんだ・・・
全然違ってんのかな・・・
453408:2007/01/15(月) 23:37:39
「80点以上90点未満」の部分って80≦x<90でOKですか?
454名無しさん@そうだ選挙にいこう:2007/01/15(月) 23:39:19
全然間違ってるし、教えてもらってんのに、マクロの記録もしねぇし、いい加減、諦めろ。
他の人が質問しづらくなるから、余所行って。ごめんね。
455名無しさん@そうだ選挙にいこう:2007/01/15(月) 23:41:09
>>408
Sub 平均()

Worksheets("Sheet2").Range("A2:C65536").ClearContents
GYO2 = 2

EffectiveRow = Range("C65536").End(xlUp).Row
For GYO1 = 2 To EffectiveRow
MyPoint = Round(Application.Average(Sheets("Sheet1").Range(Cells(GYO1, 4), Cells(GYO1, 8))), 2)
If 80 <= MyPoint And MyPoint < 90 Then
Sheets("Sheet2").Cells(GYO2, 2) = Sheets("Sheet1").Cells(GYO1, 2)
Sheets("Sheet2").Cells(GYO2, 3) = Sheets("Sheet1").Cells(GYO1, 3)
GYO2 = GYO2 + 1
End If
Next GYO1
'Worksheets("Sheet2").PrintOut
Worksheets("Sheet2").PrintPreview
End Sub
456名無しさん@そうだ選挙にいこう:2007/01/15(月) 23:42:33
宿題の答え書くヤツがいるとは完全に馬鹿だな
457408:2007/01/15(月) 23:51:32
>>454
いや、悪いのは自分です・・・
お騒がせしました。他所いきますorz

>>455
これで・・・正解なんですか?
正直正解かどうかも見分けられないけどそのまんま利用させて頂きます┏○ペコッ
ありがとうございました
458398:2007/01/16(火) 00:06:02
>>402
作業列いっぱい使う方法だと休みがやたら多い場合の対応が難しいので、
VBでの方法を教えて頂けませんか?
459名無しさん@そうだ選挙にいこう:2007/01/16(火) 00:33:55
>>458
3/4の場合は、
「62、65、休」の平均か、一個dで
「62、65、50」の平均か、DOTCHだい?
460名無しさん@そうだ選挙にいこう:2007/01/16(火) 00:39:29
エクセルは2002のバージョンを使っています。置換に関しての質問です。

テキストエディタで、

AAAA(改行)
BBBB(改行)
CCCC(改行)

こうなっている部分を、全て同じセル内に貼り付けたいのです。
通常にこれをコピペすると、(改行)の部分で行がわかれてしまい、うまくいきません。

AAAA BBBB CCCC

ならば、そのまま同じセル内に貼り付けられたので、この空白を何とか改行に置換できないかと考えております。

何か良い方法はないでしょうか?
461名無しさん@そうだ選挙にいこう:2007/01/16(火) 00:41:30
>>460
F2キー押してからペースト
462名無しさん@そうだ選挙にいこう:2007/01/16(火) 00:48:31
>>398
普通にD3セルに「=AVERAGE(B1:B3)」で下方向にコピーじゃ駄目なの?

>>460
テキストエディタを「さくらエディタ」(例)など、改行コードを置き換えられる
ものに変えて、「改行コード」を「スペース」に置き換えてから貼り付けとか。
463460:2007/01/16(火) 00:48:58
>>461
お お お !
ありがとうございます!
解決しましたwww

・・・あと〜。
ついでといってはなんですが、下の空白をセル内改行に置換させる方法は、何かないでしょうか?
何せエクセル内のほとんどのデータをこの方法で入力してしまっているもので、一つ一つ置き換えていくのは大変で・・・。
464398:2007/01/16(火) 00:50:55
>>459
この場合、下段の「62、65、50」の平均になります。
465名無しさん@そうだ選挙にいこう:2007/01/16(火) 00:51:30
>>463
テキストエディタに再度貼って、改行に置換えてからまたExcelに貼る。
466名無しさん@そうだ選挙にいこう:2007/01/16(火) 00:52:57
0から10までの偶数の合計を表示させるには
どうしたらいいかわかる人いますか?


Sub 合計()
Dim intcount As Integer
Dim inttotal As Integer
For intcount = 0 To 10 Step 2
MsgBox intcount

Next
End Sub

これだと0から10までの偶数が並べられるだけで足されません。
467名無しさん@そうだ選挙にいこう:2007/01/16(火) 00:58:08
>>466
inttotal がひとりぼっちでかわいそうなことになってる
468名無しさん@そうだ選挙にいこう:2007/01/16(火) 01:00:23
>>398
面倒なので、もとデータの見直しは考えちゃ駄目?
例えば、フィルタとかで、いったん「休」の行をどこかに避けてから
式で答え出して、後で戻すなど。

>>466
Sub 合計()
 Dim intcount As Integer
 Dim inttotal As Integer
 For intcount = 0 To 10 Step 2
  inttotal = inttotal + intcount
 Next i
 MsgBox inttotal
End Sub
469名無しさん@そうだ選挙にいこう:2007/01/16(火) 01:19:06
>>468

ありがとうございます!!
偶数の足し算を順に表示されるようにはどうしたらいいのでしょうか?
0→2→6→12→20…という風にクリックする度に足し算の合計
が出るようにしたいのですが…。
470408:2007/01/16(火) 01:22:48
もう1問あった・・・・・空所補充問題・・・・・


・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・
・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・
471名無しさん@そうだ選挙にいこう:2007/01/16(火) 01:23:33
>>468
細かいとこだけど、

Dim inttotal As Integer

この宣言だけで inttotal = 0 って保障されるんだっけ?
VBAはこれでいいんだっけ。
472398:2007/01/16(火) 01:28:06
>468
点数にあたる列が非常に多く、他の関数も入れているためシート2枚にわたっています。
ACCESSとデータを連動させて多くのデータを複数回処理しないといけないので、
フィルター処理は避けたいです。
473名無しさん@そうだ選挙にいこう:2007/01/16(火) 01:48:30
>>469
VBAでやらずとも、ワークシート上でA列に2、4、6、8と偶数を縦に書いていき、
B列に、B1「=A1」、B2「=B1+A2」、あとはB2から下にフィルでB列に答えが出る。

>>471
悪い例だけど、おk。
474名無しさん@そうだ選挙にいこう:2007/01/16(火) 01:52:09
>>408
助けてくれる友人が居ないからって何でもかんでもここで聞いてんじゃねぇぞカスが
ここはテメェ1人の掲示板じゃねぇ
授業サボってたテメェの自業自得だろうが 
死ねよ
475名無しさん@そうだ選挙にいこう:2007/01/16(火) 01:55:39
ツッコミ遅っ
476名無しさん@そうだ選挙にいこう:2007/01/16(火) 01:57:14
>473

ありがとうございます!!
初心者にVBAは難しいですね…。
477名無しさん@そうだ選挙にいこう:2007/01/16(火) 02:22:20
>>398
コード書こうとしたけど、ちょっと考えただけでも面倒なのでやめた。
誰か時間が余りすぎてる優しい人の登場を待て。
478名無しさん@そうだ選挙にいこう:2007/01/16(火) 02:27:30
>>398
3日以上連続して「休」がないなら
3/3に =AVERAGE(OFFSET(B2:B4,(IF(B4="休",1,0)+COUNTIF(B2:B3,"休"))*-1,0,3+COUNTIF(B2:B3,"休"),1))
あとはフィルで下にコピー
3/1,3/2は知らん
479398:2007/01/16(火) 02:40:14
>>478
ありがとうございます。残念ながら長期休暇あります。
この方法は参考にさせて下さい。

関数ではやはりちょっと無理そうですね。
480名無しさん@そうだ選挙にいこう:2007/01/16(火) 04:11:34
>>458,479
休みがやたら多い場合に対応させるために作業列使うわけだが。
うまくやれば関数のみでも長期休暇にも対応させられる。
というか、VBA拒否だったのでは?

【4 VBAでの回答の可否】を訂正するならハッキリ書こう。
VBA可ならVBAの方が楽だからな。
481478:2007/01/16(火) 07:24:47
>>479
なんだよ、条件後出しかい
482331:2007/01/16(火) 08:24:22
>>332
レスありがとうございます。
初歩的な質問で申し訳ないのですが、
ヘルプの中どこに、グラフのプロパティ一覧が載っているのでしょうか
探したのですが、見つけられないのですが・・・
483名無しさん@そうだ選挙にいこう:2007/01/16(火) 08:34:08
見つけられなければ諦めればいいじゃん
諦められなければ必死に探せばいい
必死になってるのに見つからないというなら
必死さが足りないからもっと必死になれ
484名無しさん@そうだ選挙にいこう:2007/01/16(火) 08:44:18
グラフってことはChartオブジェクトを見ればいいのでは?と初心者の俺が答えてみる
485名無しさん@そうだ選挙にいこう:2007/01/16(火) 09:12:19
>>471
 ↓ こっちは、つっこまないの?
next i
486名無しさん@そうだ選挙にいこう:2007/01/16(火) 09:27:09
たしかに
Integer型の初期値が0なのは保障されてるけど
next iじゃ動かないわなw
487名無しさん@そうだ選挙にいこう:2007/01/16(火) 09:37:23
【1 OSの種類         .】 Windows2000 XP
【2 Excelのバージョン   】 Excel2000 2002 2003
【3 VBAが使えるか    .】 はい
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 操作 監視 イベント

ブック中で何か操作や変化があった場合、まとめて監視するイベントって無いでしょうか?
具体的にはマクロで組んだアプリケーションのエラーを潰す為に操作ログを残したいと思ってます。
あれば何というイベントなのかお教えください。
488名無しさん@そうだ選挙にいこう:2007/01/16(火) 09:40:32
489名無しさん@そうだ選挙にいこう:2007/01/16(火) 09:42:52
490名無しさん@そうだ選挙にいこう:2007/01/16(火) 10:03:04
491名無しさん@そうだ選挙にいこう:2007/01/16(火) 13:04:10
またまたまた、で〜た〜
492名無しさん@そうだ選挙にいこう:2007/01/16(火) 13:27:48
>>491
空気嫁
493名無しさん@そうだ選挙にいこう:2007/01/16(火) 13:29:41
>>491
「教えて君」「教える君」というのは、
ネット上に存在する2種類の人種の人たちを示す揶揄された敬称のことであるが
その影には「教えない君」という人種が多数いるの事にはあまり注目されていない。
しかし、実はその「教えない君」という人種が一番厄介かつ迷惑な存在だったりするのである。
そもそも荒れる原因というものは「教えない君」の、無秩序かつ、無神経なレスにある部分が
大多数なのだが、彼らの多くは、そういった感覚はどうやら持ち合わせていないようである。
第三者がそうした場面を見た場合に、誰に一番の非があるというのは
「教えない君」にあるというのが客観的事実であるのは明らかなのであるが、
彼らは認めようとしない。
表面上は、「教えない君」はネット上のルールや倫理や秩序などを叫ぶのであるが
どうやら真相は、現実社会において蔑まれる存在である「教えない君」の
鬱憤晴らしのようである。
上記でそういった悲哀のレスを付けた人たちは、勇気を持って自らの弱さと過ちを認め
反省しなければならない。
それがキミたちニートの人間的に成長できる少ないチャンスなのである
494名無しさん@そうだ選挙にいこう:2007/01/16(火) 14:51:43
なが〜い
いまどきの子はそんなダラダラ文は読まねーよ
495名無しさん@そうだ選挙にいこう:2007/01/16(火) 16:00:48
>>494
ゆとり世代乙
496名無しさん@そうだ選挙にいこう:2007/01/16(火) 18:03:49
>493←こんな不細工な文章力も、ゆとり教育の弊害か・・・・・・・
497482:2007/01/16(火) 18:43:16
>>484
レスありがとうございます

そのchartオブジェクトが、ヘルプで見つからないのですが
どうしてでしょう。
以前Rangeオブジェクトなどがなくて、調べたらヘルプが
インストールされてなく、その時インストールしなおした
のですが・・・
498名無しさん@そうだ選挙にいこう:2007/01/16(火) 18:56:02
【1 OSの種類         .】 Windows2000 XP
【2 Excelのバージョン   】 Excel2000 2002 2003
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 ズーム ショートカット

キーボード操作だけで、ズーム(倍率?)を変えることができますか?
499名無しさん@そうだ選挙にいこう:2007/01/16(火) 19:01:39
500名無しさん@そうだ選挙にいこう:2007/01/16(火) 19:18:44
>>497
Microsoft Excel のヘルプ
 └ プログラミング情報
  └ Microsoft Excel Visual Basic リファレンス
   └ Microsoft Excel のオブジェクト

ここから先は自分で探してくれ
501497:2007/01/16(火) 19:21:43
>>499
ありがとうございます
502497:2007/01/16(火) 19:27:04
>>500
ありがとうございます。
今までVBAのヘルプ見てました。
503498:2007/01/16(火) 19:56:06
>>499
ありがとうございます。
他にも方法はありませんか?
Alt→V→Z以外の方法で、ボタンを押すごとに倍率が変わる方法があるみたいなんですけど。。l
くぐったのですが、わかりません。

これ以外に方法はないですか?
504名無しさん@そうだ選挙にいこう:2007/01/16(火) 19:59:54
>>503
無い。
Application.OnKeyで自分で割り当てろ。
505498:2007/01/16(火) 20:04:28
>>504
そうですか。わかりました。ありがとうございました
506名無しさん@そうだ選挙にいこう:2007/01/16(火) 20:06:13
【1 OSの種類         .】 Windows2000 XP
【2 Excelのバージョン   】 Excel2000 2002 2003
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 エクセル とばす

たとえば、A1にセルがあって、それをいきなりR500とかに、セルを飛ばす方法はありますか?
507名無しさん@そうだ選挙にいこう:2007/01/16(火) 20:15:57
体重をグラフにしているのですが、先日計り忘れてしまいました。
すると折れ線グラフが途切れてしまいました。
つなげて綺麗にしたいのですが、できません。
ツール→オプション→グラフ→空白セルのプロット→補間してプロットする
をしたいのですが、補間してプロットするが消えていて選択できません。
ご教授下さい。
508名無しさん@そうだ選挙にいこう:2007/01/16(火) 20:25:14
509名無しさん@そうだ選挙にいこう:2007/01/16(火) 20:30:54
>493 >499
見覚えがあるからコピペなんだろうが
何を、何時、コピペするかも個性の表れなんだよ。
510名無しさん@そうだ選挙にいこう:2007/01/16(火) 20:33:44
>>508
削除するとそこだけ時間的に消滅するという有り得ないグラフに
なってしまいますよね。
きちんとその日の分のスペースは確保したいのですが。
1日目に60キロで3日目が62キロなら
2日目を61キロのところを通過するグラフを作りたいのです。
これを自分で計算してではなく、エクセルでできませんか?
511名無しさん@そうだ選挙にいこう:2007/01/16(火) 20:37:50
>>508
ありがとうございました
512名無しさん@そうだ選挙にいこう:2007/01/16(火) 20:38:52
513名無しさん@そうだ選挙にいこう:2007/01/16(火) 20:39:15
何故計測しなかった2日目が61キロだとわかるんだね?
514名無しさん@そうだ選挙にいこう:2007/01/16(火) 20:50:23
>>512
ありがとうございます!!
>>513
わかるとかの問題ではなくて、点と点をつなげば(ry
515名無しさん@そうだ選挙にいこう:2007/01/16(火) 21:09:52
>>513
ヒント:実は計っていたがExcelの勉強がてら
516名無しさん@そうだ選挙にいこう:2007/01/16(火) 23:06:34
【1 OSの種類         .】 WindowsXPPro
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 はい
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 SUM ActiveCell.FormulaR1C1

下のマクロを実行すると、
SUMの行で「アプリケーションの定義またはオブジェクト定義のエラーです」となります。
[]の中を定数にしてしまうとエラーが出ないので、
変数を使っていることが原因だと思います。
自力検索したところ、行と列を変数を使って書いている例は見当たらず、困っています。
どなたかお助けください、、

F列の数字の合計を表の一番したに入力するマクロです。
Sub 回数カウント()

Dim 表の行数 As Long
Dim 回数 As Long

回数 = 6 'F列

Sheets("01").Select
表の行数 = ActiveSheet.UsedRange.Rows.Count
Cells(表の行数 + 1, 回数).Select
ActiveCell.FormulaR1C1 = "=SUM(R[-表の行数+1]C:R[-1]C)"
End Sub
===========================
517名無しさん@そうだ選挙にいこう:2007/01/16(火) 23:15:32
>>516
例えば「01」という名前のシート以外から実行してんじゃないの?
もしそうなら、
>Cells(表の行数 + 1, 回数).Select
これは、実行もとのシートのその部分を選択してしまうが。
518名無しさん@そうだ選挙にいこう:2007/01/16(火) 23:16:48
>>516
ActiveCell.FormulaR1C1 = "=SUM(R[-"& 表の行数 &"+1]C:R[-1]C)"
519名無しさん@そうだ選挙にいこう:2007/01/16(火) 23:32:52
>>516
Sub 回数カウント()

Dim 表の行数 As Long
Dim 回数 As Long

回数 = 6 'F列

Sheets("01").Select
表の行数 = ActiveSheet.UsedRange.Rows.Count
Cells(表の行数 + 1, 回数) = WorksheetFunction.Sum(Range(Cells(1, 回数), Cells(表の行数, 回数)))

End Sub
520名無しさん@そうだ選挙にいこう:2007/01/16(火) 23:34:42
>>516
""で囲ってるんだからFormulaプロパピーで変数使っちゃ駄目じゃないのか?
あんまり使う機会が無いから知らんけど
521名無しさん@そうだ選挙にいこう:2007/01/16(火) 23:59:21
>>516
Sub 回数カウント()

Dim 表の行数 As Long
Dim 回数 As Long

回数 = 6 'F列

Sheets("Sheet1").Select
表の行数 = ActiveSheet.UsedRange.Rows.Count
Nurupo = -表の行数 + 1
Cells(表の行数 + 1, 回数).Select
ActiveCell.FormulaR1C1 = "=SUM(R[" & Nurupo & "]C:R[-1]C)"

End Sub
522名無しさん@そうだ選挙にいこう:2007/01/17(水) 01:14:51
VBAで
Range("A1").SpecialCells(xlLastCell).Row

上記はA列の文字が存在する1番最後の行という意味ですが
仮にそのシートがシートの保護(中身はすべて許可)をしている状態では
実行時エラー1004が出てきて実行できません

これを実行しようとするとどうすればいいのでしょうか?
523名無しさん@そうだ選挙にいこう:2007/01/17(水) 01:28:50
>>522
これだったら取れない?
Range("A65536").End(xlUp).Row
524名無しさん@そうだ選挙にいこう:2007/01/17(水) 01:39:20
質問お願いします。
文字を入力(たとえば住所、氏名など)
した場合に複数のシートのセルに連動させる
ようにするにはどうのようにしたらいいでしょうか?
いろいろ本を読んだり、ネットで調べましたが、
どうしてもわからなくて・・
525名無しさん@そうだ選挙にいこう:2007/01/17(水) 01:41:32
>>524
画面最下部のシートを切り替えるタブをCtrlキーを押しながら
選択してから入力して。
526名無しさん@そうだ選挙にいこう:2007/01/17(水) 01:47:28
>>525ありがとうございます。
ただ、ちょっと質問の仕方が悪かったです。
全体を連動させるのではなく、
SEET1の特定のセルと、SEET2の特定のセル(場所違い)
を連動させることは
できないのでしょうか?
例えば、SEET1のあるセルに500円と入力していた。
それを600円に変えたらSEET2のあるセルも連動するというよな・・・
527名無しさん@そうだ選挙にいこう:2007/01/17(水) 01:53:45
528名無しさん@そうだ選挙にいこう:2007/01/17(水) 02:01:37
>>527すごくよくわかりました。
優しい方ですね。本当にありがとうございました!
529名無しさん@そうだ選挙にいこう:2007/01/17(水) 04:32:28
>>527はエスパーか?
530名無しさん@そうだ選挙にいこう:2007/01/17(水) 09:57:16
真上に書いてあることを答えてエスパーて。
531名無しさん@そうだ選挙にいこう:2007/01/17(水) 17:07:46
>524
>質問お願いします。

文章がバカ丸出し
532名無しさん@そうだ選挙にいこう:2007/01/17(水) 17:27:20
【1 OSの種類         .】 WindowsMe
【2 Excelのバージョン   】 Excel2000
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 範囲設定 VBA 値の取得 ループ処理


あいう_えお
か_きくけこ   

上の様な(_は空白セルの)文字が打ち込まれた小さな表があります。

あいう 
えお 
か 
きくけこ
と言う風に、空白や、行の最初から始まる文字群をそれぞれコピーして貼り付けたいのです。

未熟なのにやりたいことが高度すぎて詰まってしまいました。
まずどこから手をつけたらいいのでしょうか?よろしくおねがいします。
533名無しさん@そうだ選挙にいこう:2007/01/17(水) 17:46:48
>>532
データのある行を選択→(メニューから)データ→区切り位置
534532:2007/01/17(水) 18:37:32
表の例えがわかりずらくてすみません。
>532の出力 イメージ図です
http://www.imgup.org/iup316882.png.html


>>533
レスありがとうございます。
あいう_えお を行列変えて列を行と貼り付けて
533の区切り位置を試してみたのですがそのまま貼り付けられて
結果どおりにはいきませんでした。
535名無しさん@そうだ選挙にいこう:2007/01/17(水) 18:57:43
>>534を見ても、どうしたいのかさっぱりわからん
「あ」の右にあった「い」が出力結果では「あ」の下にあるし
536名無しさん@そうだ選挙にいこう:2007/01/17(水) 19:03:39
>>534
1文字ごとにセル分かれてんのか。
こりゃ、VBA使わないと無理だな。

For Eachで右方向に総当たりでチェックして、空白セルが
あったら、改行してどんどん貼っていけば良いと思う。
誰か、時間を持て余した優しい人が来るのを待ってな。

飯行ってくる。
537きなこ ◆1/MJKytyyA :2007/01/17(水) 20:08:51
>>532
Sub Nurupo()

LastRow = Sheets("Sheet1").Cells.SpecialCells(xlLastCell).Row
LastCol = Sheets("Sheet1").Cells.SpecialCells(xlLastCell).Column
MyRow1 = 1
MyCol1 = 1

For MyRow = 1 To LastRow

For MyCol = 1 To LastCol
If Sheets("Sheet1").Cells(MyRow, MyCol) <> "" Then
Sheets("Sheet2").Cells(MyRow1, MyCol1) = Sheets("Sheet1").Cells(MyRow, MyCol)
MyCol1 = MyCol1 + 1
Else
MyCol1 = 1
MyRow1 = MyRow1 + 1
End If
Next MyCol
MyCol1 = 1
MyRow1 = MyRow1 + 1
Next MyRow

End Sub
538名無しさん@そうだ選挙にいこう:2007/01/17(水) 20:22:03
>>524
オレも少し気になったが
>質問(があります、回答)お願いします。
と脳内変換した。
しゃべる言葉と、タイプして残る言葉は違うから
書き込む前に読み返さないと >>531 のように
柔軟性の足りない輩に誤解されるから気をつけて。
539名無しさん@そうだ選挙にいこう:2007/01/17(水) 20:30:55
んなの2chなんだから、スルーしろよ
540名無しさん@お腹いっぱい。:2007/01/17(水) 20:33:39
【1 OSの種類         .】 Windows XP
【2 Excelのバージョン   】 Excel2000
【3 VBAが使えるか    .】 ものすごく少し
【4 VBAでの回答の可否】 可

すんません質問です
条件に合う部分だけの和を求めたいのです。
たとえば
1 100
2 200
3 150
2 150
2 300
2 500
6 200

とあって、2のよこの数字だけの和を求めるにはどうしたらよいでしょうか。
並べ替えでもできますが、なるべくVBAで処理したいので。

for next と if をつかったけどさっぱりできませんでした。
541名無しさん@そうだ選挙にいこう:2007/01/17(水) 20:36:59
>>540
=SUMIF(A1:A7,2,B1:B7)
542532:2007/01/17(水) 21:00:42
自分なりに、>536さんのヒントを元に
For Eachでデータ範囲の要素1をSelectしながら
入れ子のFor Eachで、貼り付け範囲の要素2をSelectするところまで出来たのですが、

要素2.Pasteでは、デバッグで引っかかって出来ず、
貼り付け範囲..Pasteだと上手くいくのですが
クラブのいっぱい並んでいるモニターみたいに全部に貼り付けられて終ってしまいました。
勉強不足でこの件はサイト等で調べてみますが、また詰まってしまったらここで質問させてください。

>>537
貼り付けて実行してみたらちゃんと並んで貼り付けられてました!
文章中にPasteが一つも無かったのにデータが並んでいて摩訶不思議でした。
仕組みはまだよくわかりませんが、当面の問題は解決できそうです。
ソースありがとうございました。
543名無しさん@そうだ選挙にいこう:2007/01/17(水) 21:07:46
>>524
例えば
Sheet1のA1の値をSheet2のA1へ表示させたい場合は
Sheet2のA1で=キーを押してそのままSheet1をクリックして切り替えます。
そしてSheet1のA1を選んだらEnterキーを押します。

すると、Sheet2のA1には、
=Sheet1!A1
と入力されて、Sheet1のA1の値が表示されます。
544名無しさん@そうだ選挙にいこう:2007/01/17(水) 21:12:10
グラフを作っていて、
x軸に日付を入れているのですが、
1月17日(水曜日)を








のようにする方法を教えて下さい。
縦バージョンの〔〕も見つかりません。
よろしくお願いします。
545名無しさん@お腹いっぱい。:2007/01/17(水) 21:22:42
>>541
サンクs
sumifにこんな機能があるとは知りませんでした。
546名無しさん@そうだ選挙にいこう:2007/01/17(水) 21:55:40
>>544
軸の書式設定の表示形式で

m▲"月"▲d▲"日"▲"〔"▲aaa▲"〕"

▲の部分は実際に▲を入れる訳じゃなくて、Ctrlを押しながらjという操作に置き換えて考えてくださいです。
547546:2007/01/17(水) 22:00:14
追加
Ctrlを押しながらjは日本語入力オフで。
目には見えない改行記号を入れる魔法だとでも思ってください。
548名無しさん@そうだ選挙にいこう:2007/01/17(水) 22:19:50
縦書きは書式設定の配置で



って書いてあるところの色を反転させれば良いだけな気がする・・・
でも()だけ90度回転するのはフォントの設定でも出来そうにない・・・
549548:2007/01/17(水) 22:21:57
全角で()入れれば自動的に90度回転した
550名無しさん@そうだ選挙にいこう:2007/01/17(水) 22:40:35
>>546
ありがとう。
裏技って感じですね。
すごく前進しました。
551名無しさん@そうだ選挙にいこう:2007/01/17(水) 22:52:40
>>548



ってボタンだったんですね。
知りませんでした。
552名無しさん@そうだ選挙にいこう:2007/01/17(水) 23:35:39
クロス集計表(ビポットテーブル )を逆にデータベース形式に戻すことはVBAでできますか?
553名無しさん@そうだ選挙にいこう:2007/01/17(水) 23:49:23
マルチポストお許しください。

エクセルでつくった表計算結果をAUTOCADで作った図枠をつける必要があります。

●エクセル
123・・・・

●図枠
ーーーー
|    |
ーーーー


ーーーー
|123・・|
ーーーー


エクセルのデータをDXFにする
or
CADの図枠をエクセルにする方法ってありませんか?
554名無しさん@そうだ選挙にいこう:2007/01/18(木) 00:03:46
>>553
宣言しても、マルチは禁止。
これで無ければ諦めろ。
http://www.google.co.jp/search?num=50&hl=ja&inlang=ja&q=Excel+DFX&btnG=Google+%E6%A4%9C%E7%B4%A2&lr=lang_ja
555名無しさん@そうだ選挙にいこう:2007/01/18(木) 02:45:34
2007/1/16 ・・・・ 2007/1/16 ・・・・
2007/1/13 ・・・・ 2007/1/14 ・・・・
2007/1/12 ・・・・ 2007/1/13 ・・・・
2007/1/10 ・・・・ 2007/1/11・・・・

というようなデータがあったとして、
左右どちらかに欠けている日付があった場合、
その日付を以下のように埋めたいと思います。
(※0000の部分は空白あるいは0で)

2007/1/16 ・・・・ 2007/1/16 ・・・・
2007/1/15 0000 2007/1/15 0000
2007/1/14 0000 2007/1/14 ・・・・
2007/1/13 ・・・・ 2007/1/13 ・・・・
2007/1/12 ・・・・ 2007/1/12 ・・・・
2007/1/11 0000 2007/1/11・・・・
2007/1/10 ・・・・ 2007/1/10 0000

どなたか効率的な方法をご存知でしたらご教授ください。
説明不足でしたらすみません。

サンプルファイルうpしました。(パスは”225”)
http://1m.mata-ri.tk/src/1M0757.zip.html

【やってみたこと】 期間全ての日付を連番で作成し、並べ替え→ぐちゃぐちゃorz

【1 OSの種類         .】 Windows XP Professional
【2 Excelのバージョン   】 Excel 2003
【3 VBAが使えるか    .】 はい(基礎のみ)
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 Excel 並べ替え オートフィル 連番 日付順 etc
556名無しさん@そうだ選挙にいこう:2007/01/18(木) 02:56:11
だうそできません。
557名無しさん@そうだ選挙にいこう:2007/01/18(木) 03:04:41
>>556
””で囲んだのが悪かったみたいですね。

225

でやってみてください。
558名無しさん@そうだ選挙にいこう:2007/01/18(木) 03:19:38
だうそしたら質問の意味がわかるかと思ったけどわからんかった
たぶん誰かが答えてくれるはず
559名無しさん@そうだ選挙にいこう:2007/01/18(木) 05:03:57
>>555

連続した日付を降順に並べて、不足している日付の所にマークを付けるってことでいいのかな。

元のデータの所にセルを挿入して表示させるのか、新しくデータの領域やシートを起すのかによって回答は変わると思う。
それと、データの始めは一番上にある日付で、終わりは一番下の日付でいいと解釈してみる。
元を弄るのであればVBA必須。
別にシートを起してそこに反映させるなら関数でもOK。

やっぱり夜勤が暇なんでとりあえず関数でやる奴は作った。
好きにしてちょ。
 ttp://kossie.run.buttobi.net/cgi-bin/up/src/kos0704.zip.html
 パス:555
560名無しさん@そうだ選挙にいこう:2007/01/18(木) 05:05:23
VLOOKUPとエラーの関数をつかえば出来る。
意味はわかるが説明が面倒

=VLOOKUP(A1,Sheet1!$A$2:$E$1769,2,FALSE)
561名無しさん@そうだ選挙にいこう:2007/01/18(木) 09:24:09
エクセルでエンター押すとカーソルが下に来ますが、エンター押したら
カーソルが横に動くようにする設定ってありますか?超初心者で何も分からない
もので・・・
562名無しさん@そうだ選挙にいこう:2007/01/18(木) 09:25:25
563名無しさん@そうだ選挙にいこう:2007/01/18(木) 10:12:24
564名無しさん@そうだ選挙にいこう:2007/01/18(木) 10:21:46
kusosure
565名無しさん@そうだ選挙にいこう:2007/01/18(木) 10:23:37
馬鹿が意地はるおかげであっというまに糞スレ化
検索リンクとオナニーzipファイルのたまり場かよw
566名無しさん@そうだ選挙にいこう:2007/01/18(木) 10:26:23
567名無しさん@そうだ選挙にいこう:2007/01/18(木) 10:33:07
こんなスレ意味ねーから困ってる人は他のサイト行きな。
ここは馬鹿ばっかだwwwww

■Excelファンクラブ
http://www.fuji.ne.jp/~excelyou/

■moug
http://www.moug.net/

■答えてねっと
http://www.kotaete-net.net/

568名無しさん@そうだ選挙にいこう:2007/01/18(木) 10:34:38
検索すりゃ即出るのに質問⇒検索リンク生貼り

これは普通の流れだと思うが?
569名無しさん@そうだ選挙にいこう:2007/01/18(木) 10:44:14
>>562
>>563
レスありがとうございます。
できるようになりました。
570名無しさん@そうだ選挙にいこう:2007/01/18(木) 10:51:42
571名無しさん@そうだ選挙にいこう:2007/01/18(木) 12:14:39
恥ずかしいから、あんなバカレス(493)紹介するなよ
572名無しさん@そうだ選挙にいこう:2007/01/18(木) 12:51:14
貴方のレスも十分恥ずかしいのですが・・・
573名無しさん@そうだ選挙にいこう:2007/01/18(木) 12:59:00
ゲラゲラw
574名無しさん@そうだ選挙にいこう:2007/01/18(木) 13:08:20
ツール⇒オプション⇒編集
と答えればそれで済むのに
わざわざリンク貼る感覚が分らない。
575名無しさん@そうだ選挙にいこう:2007/01/18(木) 13:12:09
IDないから言いたい放題だな
576名無しさん@そうだ選挙にいこう:2007/01/18(木) 13:14:07
多分、安易に答えるのは簡単だが、それをすると、次回も
調べずに質問するから、調べ方を教える為にそうすんだろ。

「Excel ×× △△」でググれ。
って書くのと同じ。
そのあとに、「ググれ」って何ですか、という質問の防止じゃないの。
577名無しさん@そうだ選挙にいこう:2007/01/18(木) 14:19:04
【1 OSの種類         .】 Windows XP
【2 Excelのバージョン   】 Excel 2003 sp2
【3 VBAが使えるか    .】いいえ
【4 VBAでの回答の可否】  否
【5 検索キーワード     】

複数行を貼り付けるとき、貼り付けたあとに自動的に文字数に応じて
欄が大きくなる操作を ならないようには出来ますか?
キーワードのみ言ってもらッてもいいです
578名無しさん@そうだ選挙にいこう:2007/01/18(木) 14:40:19
>>577
行高が自動調整(初期値)になってるとそういう動作をする。
一度、行高を数値設定してやれば自動では変更されない。

因みに数値自体は変更しなくても良い。ただ自動変更されたくない範囲を
選択して行の高さ設定ダイアログを出し、OKを押すだけでよい。
再度自動調整に設定したければメニューの 書式 > 行 > 自動調整 か行境ダブルクリック。
579名無しさん@そうだ選挙にいこう:2007/01/18(木) 16:13:30
【1 OSの種類         .】 Windows XP
【2 Excelのバージョン   】 Excel 2003
【3 VBAが使えるか    .】 基礎のみ
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 検索ワード思いつきませんでした。


エクセルで以下の表示をする関数を教えてください。
580名無しさん@そうだ選挙にいこう:2007/01/18(木) 16:14:36
一行目に1日から31日まで日付が入っています。

そしてA2とB2に1日から31日の間の一期間を表す日付が入っています。
同じくA3とB3、A4とB4にも期間の日付が入っています。

A2とB2の期間にあたる日が
それぞれの列の左(C列より左)に○が表示されるようにしました。
「=IF(AND(A2<=C1, B2<=C1),"○","")」
「=IF(AND(A2<=C2, B2<=C2),"○","")」
「=IF(AND(A2<=C3, B2<=C3),"○","")」
という式です。

ここからが質問なのですが、
この段階だと、二行目に書いた期間と三行目に書いた期間と四行目が
それぞれの行別々に○が付くのですが
この○がつく行を一つに統一したいのです。

複数の行にそれぞれ別々の期間を入力すると
そのデータがひとつの行に統括されて見やすくしたいのですが
どのような数式を入れればよいでしょうか?

「=IF(AND(A2<=C1, B2<=C1),"○","")」
「=IF(AND(A2<=C2, B2<=C2),"○","")」
「=IF(AND(A2<=C3, B2<=C3),"○","")」
この条件を全て満たすセルを作りたいわけです。

よろしくお願いします。
581名無しさん@そうだ選挙にいこう:2007/01/18(木) 16:38:42
>>580
具体的な値、期間がわからないし
何がしたいのかさっぱり理解できません。

とりあえず、行列を入れ替えて見ると分りやすいかも知れません。
582名無しさん@そうだ選挙にいこう:2007/01/18(木) 16:39:12
Excel2002でパスワードを掛けたファイルを送られてきました。
当方は、Excel2000なのですが、教えて貰ったパスワードで開けませんでした。

これは、暗号化の種類の違いなのでしょうか?
また、こちらで開けるようにパスワード設定して貰うためには、
なにか保存時のオプションが必要なのでしょうか?
583名無しさん@そうだ選挙にいこう:2007/01/18(木) 16:52:25
>>579
まずは行別に○を付けるだろ
そしたら列ごとに、その列に○が有るか否か(COUNTIF)を条件に○か""を返すだろ
そしたら行別に○を付けたところは非表示にする
これでOK

作業セルを使いたくなければ配列数式で

>>582
特別なオプションは不要
たぶんパスワードが間違ってるかファイルが壊れてるだけ
パスワードをもう一度確認して慎重に入力してもダメなら
ファイルを送り直してもらえ
584名無しさん@そうだ選挙にいこう:2007/01/18(木) 17:40:41
>>582
PASSは、アルファベット大文字小文字を区別するよ。
585582:2007/01/18(木) 17:45:35
>>584
きちんとあわせてやっているのですが、
だめだと言われるんですよね。
送り返してチェックして貰うと、きちんと開けるようなのですが…
586名無しさん@そうだ選挙にいこう:2007/01/18(木) 17:54:46
>>585
ヒント:CapsLock

てゆーかPASSを数字とかにしてもらいな。
587名無しさん@そうだ選挙にいこう:2007/01/18(木) 19:10:45
>>582
なぜ送られて来たパスワードをコピペしないんだ。
寒くて手が動かない?

>>580
???
588名無しさん@そうだ選挙にいこう:2007/01/18(木) 19:21:18
>>580の質問もチンプンカンプンだけど
>>583の回答もトンチンカンのような・・・
589名無しさん@そうだ選挙にいこう:2007/01/18(木) 19:25:41
EXCEL2002ですが、書式設定のユーザー定義で、日付をHや平成の表示のない年月日の設定が可能なら教えて下さい。
(H19.1.1でなく19.1.1のみに)
日数の計算をしたいので文字列でなく日付でやりたいのです。
お願いします。
590名無しさん@そうだ選挙にいこう:2007/01/18(木) 19:27:47
>>589
e
591名無しさん@そうだ選挙にいこう:2007/01/18(木) 19:35:08
>>588
>>580は感が良ければ(頭の回転の良い奴なら)理解できる
>>583は知識が有れば理解できる
592名無しさん@そうだ選挙にいこう:2007/01/18(木) 19:38:13
>まずは行別に○を付けるだろ
↑この時点でもう条件式不要じゃないの?
593名無しさん@そうだ選挙にいこう:2007/01/18(木) 20:14:26
すみません
エクセル2003の行列計算についてです。
16*16正方行列の逆行列をMINVERSEで求めているのですが
実際の値と微妙に異なっていたり、違う場所で計算させると違う値が出たりします。
(たまたま対角行列だったのでわかった)

なにか分かること有りましたら教えてください。


=MINVERSE(A36:P51)を計算させF2をおして
そこを左頂点とする16*16のますを選んでctrl+shift enter
でやっています
594名無しさん@そうだ選挙にいこう:2007/01/18(木) 20:29:45
実は小数が混じっている
595名無しさん@そうだ選挙にいこう:2007/01/18(木) 20:32:12
>>593
MINVERSE 関数は、ほぼ 16 桁の精度で計算されるため、
計算の過程でその結果にわずかな誤差が生じることがあります。
ttp://office.microsoft.com/ja-jp/excel/HP052091791041.aspx
596名無しさん@そうだ選挙にいこう:2007/01/18(木) 20:35:15
私のエスパー能力をフルに発揮してみたところ >591は>583
で、肝心の>580は ↓ こういう事では?

C1:AG1に日付1 〜 31 を入れておく
2行目を集計用(○表示行)とする
A2に =MIN(A3:A20) B2に =MAX(B3:B20) (とりあえず20行まで)
C2:AG2に =IF(AND(C$1>=$A2,C$1<=$B2),"○","")
3行目以降、A列に期間の始め、B列に期間の終りを入れる
597名無しさん@そうだ選挙にいこう:2007/01/18(木) 20:53:46
とりあえず質問者もちつけw
よく読んで、読んでくれる人が理解できるかどうか
情報は十分かどうかきちんと検討してから投下してくれ
わかりやすい質問文考えるのも勉強のうちだぞ
598名無しさん@そうだ選挙にいこう:2007/01/18(木) 22:27:14
お尋ねします。

【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2000
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 ???

伝票計算にExcelを使用しているのですが、
もっと楽にできないかと思っているのですがいい方法がわからないので
お尋ねします。

いま、私のExcelのデータには

日付 商品名     伝票番号  金額     伝票小計
1/1  商品AA    11011   500円    500円
1/1  商品AB    11015   800円
1/1 商品AC    11015   1,100円   1,900円
1/2  商品AB    12001  800円     800円
1/3  商品CC    14004  5,600円
1/3  商品CB    14004  2,500円    8,100円

というデータを入れているのですけれども
この中の伝票小計の欄を(半)自動で入力できるようにはならないでしょうか?
いちいちSUM関数を使っているとすごく時間がかかってしまってて、、、、
599名無しさん@そうだ選挙にいこう:2007/01/18(木) 22:41:14
エクセルというより統計学の質問に成ってしまいますが、
回帰式つくって、説明変数のP-値が例えば0.005だったら、
「ぜーんぜんあてにならねー」と思っていいのでしょうか?
600名無しさん@そうだ選挙にいこう:2007/01/18(木) 22:42:17
>>598
伝票番号が必ず昇順にならんでいるなら
E2に =IF(C2<>C3,SUMIF(C:C,C2,D:D),"")
と書いてフィルコピー
601名無しさん@そうだ選挙にいこう:2007/01/18(木) 22:47:22
>>600
うわ、すごい!
ありがとうございます。これで少しは仕事が早くできるようになります。
602名無しさん@そうだ選挙にいこう:2007/01/18(木) 23:01:44
>>600
横から質問です。

こういった、関数の勉強ってどこでされてますか?
自分もいろんな参考書読んだのですが、このような応用力をつけるためには、どうしたら
いいですか?
IF関数、SUM関数の基礎はわかるのですが・・・
603名無しさん@そうだ選挙にいこう:2007/01/18(木) 23:05:25
>>602
ホントは関数関係の参考書読んだ事ないだろ。
逆引き系の本1冊買ったら、結構、この時はこうしたら良いってのが
浮かんでくるようになる。頑張れ。
604名無しさん@そうだ選挙にいこう:2007/01/18(木) 23:12:57
>>603
逆引き関数の参考書ですか・・・それはないですね。
自分は、ソースネクストの実践編と参考書ですね。
ソースネクストはそれなりに参考になりました。

この程度の自分でも職場ではかなり重宝されてます。しかし、もっともっとエクセルの力を
つけたくて。今は、ピボットテーブルを極めるたいと思ってますけど・・・

ありがとうございます
605604:2007/01/18(木) 23:15:18
日本語がかなりへんですね・・・失礼しました
606名無しさん@そうだ選挙にいこう:2007/01/18(木) 23:18:28
>>604
実践編だけですか?
関数編もオススメっすよ。
607名無しさん@そうだ選挙にいこう:2007/01/18(木) 23:21:39
>>602
http://direct.ips.co.jp/book/Template/Goods/go_BookstempGR.cfm?GM_ID=1920&SPM_ID=1&CM_ID=004000I01&PM_No=1229&PM_Class=N&HN_NO=00400

俺は古本屋で500円で見つけたこれ使ってますよ。
現状で何が出来てて何をしたいのかが明確になってれば
関数だけなら逆引き一冊持ってるだけで応用はあんま必要ない。
608604:2007/01/18(木) 23:21:48
>>606
そうですか。自分の職場ではそんなにたくさんの関数を使うことがないので、
たとえばIF関数、SUMIF関数、ピボット・・・そんなに使うことはないです。

難しい関数勉強しなくてもいいかな〜って思って買いませんでした。
このスレを見て、応用力がある人がいるんだな〜って思って、聞いてみました。
609名無しさん@そうだ選挙にいこう:2007/01/19(金) 00:54:17
1行目に常に参照したいデータを入力してあるのですが、
一定以上入力するとスクロールして見えなくなってしまいますよね?
特定の行や列がスクロールしないようにするにはどうしたら良いのでしょうか?
610名無しさん@そうだ選挙にいこう:2007/01/19(金) 00:58:20
>>609
ウインドウ枠の固定
611609:2007/01/19(金) 01:10:13
>>610
即レスありがとうございます。
なんて検索すればよいのかわからなくて…
助かりました!
612578:2007/01/19(金) 01:55:44
>>577
ありがとうございました。
複数行貼り付けでもうひとつ質問があるんですが、
元のデータの文字の色を変えずに(赤なら赤のままで)
ひとつのセルの中に複数行入れる方法はありますか?
改行させたものがダメでしょうか?
そのまま貼り付けで複数のセルに貼り付けるなら色は
元のデータを反映してくれてるんですが・・
613名無しさん@そうだ選挙にいこう:2007/01/19(金) 02:29:50
Excel 2000 セキュリティ更新プログラム: KB925524
ttp://www.microsoft.com/downloads/details.aspx?FamilyID=5ccf4455-6b22-4249-93d7-661d12839292&DisplayLang=ja
Version 2.0: 2007 年 1 月 17 日公開。
「KB931183: セキュリティ情報 MS07-002 に記載されているセキュリティ更新プログラム
925524 のインストール後に Excel 2000 で一部のファイルを開くことができない」
に記載されている問題に対応。
614555:2007/01/19(金) 03:23:53
>>559
>>560
おかげで助かりました。
本当にありがとうございました!
615名無しさん@そうだ選挙にいこう:2007/01/19(金) 04:26:56
580
C2に=IF(OR(AND($A2<=C1,$B2>=C1),AND($A3<=C1,$B3>=C1),AND($A4<=C1,$B4>=C1)),"○","")
でAG2まですべらせたらいい
616名無しさん@そうだ選挙にいこう:2007/01/19(金) 10:15:30
>>612
値だけ貼り付けたいなら、F2キー押してからCtrl+V。
617名無しさん@そうだ選挙にいこう:2007/01/19(金) 13:46:39
【1 OSの種類         .】 Windows98se(たぶん)
【2 Excelのバージョン   】 Excel2000
【3 VBAが使えるか    .】 勉強すればできるかも

妹にエクセルで自動的にこういうことができるか?と聞かれたのですが、


一つのxlsファイル内に複数のシートがあり、次のようになっています。

日報シート(1/19)、日報シート(1/20)、日報シート(1/21)…… と
個人集計シート(Aさん)、個人集計シート(Bさん)、個人集計シート(Cさん)……
 (30人ぐらい)

日報シートには、その日活動した社員の名前が入り、例えば

1/19
Aさん 10〜14時
Bさん 12〜14時
Cさん 15〜21時

1/20
Bさん 11〜13時
Dさん 12〜15時

というようになります。
個人集計シートには、各社員が何日何時間働いたかをまとめます。
必ずしも毎日出社ではなく、また、欠勤した日は記載されません。
618617:2007/01/19(金) 13:47:11
続きです。

これを、日報から個人集計シートに自動的にデータをまとめる?なんて
ことはできますか?
その逆でもいいのですが、毎日のデータ入力を楽にする方法はあるで
しょうか?
619名無しさん@そうだ選挙にいこう:2007/01/19(金) 14:37:10
>>617
日付   氏名   開始時間  終了時間  総時間
01/19  Aさん  10:00     14:00     =D2-C2
01/19  Bさん  12:00     14:00     =D3-C3
01/19  Cさん  15:00     21:00     =D4-C4
01/20  Bさん  11:00     13:00     =D5-C5
01/20  Dさん  12:00     15:00     =D6-C6

こういう集計のシート1個足して、毎晩そっちにデータ移していけば、
SUMIFとるなり、ピボット組むなり、自由自在だけど、駄目かね。
ここへデータ移す部分をマクロ組めばいいかも。
620名無しさん@そうだ選挙にいこう:2007/01/19(金) 16:07:52
>617
30人の行を固定して串刺しすれば?
621617:2007/01/19(金) 17:04:58
619さん、620さん、レスありがとうございます。

619さんのように集計のシートを1つ作って、そこから日報シート、
個人別シートというのがよいような気がしてきました。
アイデアありがとうございます!
622名無しさん@そうだ選挙にいこう:2007/01/19(金) 17:23:50
質問ですが、複数のセルにランダムな数字を与えたいのですが、
その時に、それらのセルの合計が1となるような条件を付けるには
どうしたらよいでしょうか?
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 ランダム 合計
623名無しさん@そうだ選挙にいこう:2007/01/19(金) 17:40:50
>>622
A1 =RAND()/2
A2 =RAND()/2
A3 =1-SUM(A1:A2)
624622:2007/01/19(金) 17:51:45
>>623
すみません、説明不足だったかもしれません。
セルの数が30以上あり、その書式だとランダムな数値の幅が
限られてしまうのです。

何か他の方法があればよろしくお願いします。
625名無しさん@そうだ選挙にいこう:2007/01/19(金) 17:58:13
>>624
合計1にしたい目的は?
それによっては、やり方も幾通りか出るかも。
626622:2007/01/19(金) 18:09:30
>>625
統計学をExcelでやっているのですが、合計100%になるように、30以上の
セルに割り振って、そのパーセンテージに応じて出た値をサンプルとして
まとめたものをグラフにしようとしています。

RAND関数を用いて上手くできないか考えたのですが…
627名無しさん@そうだ選挙にいこう:2007/01/19(金) 18:12:12
>>622
RANDで乱数とって、それを合計
合計:1=乱数:解
で解が出る
628622:2007/01/19(金) 18:30:37
>>627
なるほど!うまくいきそうです。

みなさん、ありがとうございました。
629名無しさん@そうだ選挙にいこう:2007/01/19(金) 20:23:25
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2002
【3 VBAが使えるか    .】 はい
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 FAX 差込印刷

FAXプリンタで差込送信を行う場合、VB使わないと無理でしょうか?
プリンタ起動から終了までループさせると非常に不安定なので何か良い方法があれば
教えてください。
630名無しさん@そうだ選挙にいこう:2007/01/19(金) 21:32:43
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 はい(少し)
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 チェックボックス オートシェイプ 切り替え

下みたいな表なんですが、チェックボックスのON/OFFで、
オートシェイプの表示/非表示切り替えるのはどうやればいいんでしょうか?

     A    B   ・・・
□  1   
レ  2------------------ 
□  3
レ  4------------------
レ  5------------------

チェックが入ってる行にオートシェイプの直線が引かれています。

チェックボックスONの時にオートシェイプの直線表示、
OFFの時に非表示に切り替えたいです。
よろしくお願いします。
631名無しさん@そうだ選挙にいこう:2007/01/19(金) 21:41:13
例えば数値0.25を
分数1/4に変換する関数はありますか?
632名無しさん@そうだ選挙にいこう:2007/01/19(金) 21:50:05
>631
セルの書式設定-表示形式-分数
633名無しさん@そうだ選挙にいこう:2007/01/19(金) 21:53:29
>>630
チェックボックスクリック時のイベントで、
ONかOFFを判断、シェイプのVisibleプロパティを変更。
634名無しさん@そうだ選挙にいこう:2007/01/19(金) 22:09:26
>>630
こんな感じ
C2にチェックボックスがONならTRUE、OFFならFALSEと表示させるとすると
Sub 六百三十()
If Range("C2") = True Then
ActiveSheet.Shapes(2).Visible = True
Else
ActiveSheet.Shapes(2).Visible = False
End If
End Sub
チェックボックスそれぞれにマクロを登録しておく。
チェックボックスはShapes(1)になると思うのでShapes(2)からが直線になろうかと思います。
沢山チェックボックスがあるとめんどくさいな〜
635630:2007/01/19(金) 22:09:58
>>633
先にオートシェイプ引いておいて、表示非表示切り替えですか。
目から鱗です。試してみます。ありがとうございました。
636名無しさん@そうだ選挙にいこう:2007/01/19(金) 23:56:05
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2000
【3 VBAが使えるか    .】 勉強中
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 マクロ 歳事記 季節の行事

スケジュール帳を作っています。
六曜のマクロは見つけさせていただいたのですが、
立夏、忙種、彼岸等のマクロというのは存在するのでしょうか?
記念日のように第二日曜日等のような計算で出せるのでしょうか?
637名無しさん@そうだ選挙にいこう:2007/01/20(土) 00:02:35
マクロは見つける物ではなく書く物だよ
がんばれ
638名無しさん@そうだ選挙にいこう:2007/01/20(土) 00:44:46
0
12.9
15.5
48.4
40.4
27.9
20.9
0
33.5
210.2

こういうデータで、どの辺に一番多く分布しているかが一目で分かるようなグラフを出したいんですが。
散布図というのをやったんですがちょっと違う。X軸には意味がないんで。
もっとはっきりと分かるグラフと言ったらどんなのがありますか。
639名無しさん@そうだ選挙にいこう:2007/01/20(土) 00:46:15
はっきりというのは、
いくつからいくつまでに一番多く分布しているねというような感じです。
640名無しさん@そうだ選挙にいこう:2007/01/20(土) 00:51:20
>>638-639
その質問はおそらく数学か算数の範疇だと思う
641名無しさん@そうだ選挙にいこう:2007/01/20(土) 08:17:01
>>638
[ツール]-[アドイン]で「分析ツール」を追加すると使用できる機能の中に
ヒストグラム(度数分布表)というのがあるからそれを使ってみるといいかも。
操作方法とかは
ttp://office.microsoft.com/ja-jp/excel/HA011109481041.aspx?pid=CL100570551041
この辺かな?
642名無しさん@そうだ選挙にいこう:2007/01/20(土) 10:36:50
Excel 2007へのアップグレードに関する質問を
ここでしてもかまいませんか?

今、2000と97を使っているのですが、どちらも
新バージョンへ移行できるでしょうか?

購入したのが遠い昔のことなので箱も何も
どっかへ行ってしまったのですが、それでも
大丈夫でしょうか?
643名無しさん@そうだ選挙にいこう:2007/01/20(土) 11:06:36
>>642
このスレ、発売前の商品についてはサポート外。
つかサポート出来るヤツもいない。
↓この辺から漁りなさい。
http://office.microsoft.com/ja-jp/excel/results.aspx?qu=%E3%82%A2%E3%83%83%E3%83%97%E3%82%B0%E3%83%AC%E3%83%BC%E3%83%89&av=ZXL120
644名無しさん@そうだ選挙にいこう:2007/01/20(土) 11:23:52
>>642
参考にはならんと思うが。
手元にあるOffice2003のアップグレード版の箱には、
Office97以降(97、2000、XP)が対象と書かれているな。
645642:2007/01/20(土) 11:24:10
>>643
ありがとうございます。
かたっぱしから読んでみます。
646名無しさん@そうだ選挙にいこう:2007/01/20(土) 13:46:23
複数の離れたセルのデータをグラフ化する方法がわかりません。
昨日エクセルのヘルプ内を彷徨い続けましたがわかりませんでした。
どなたかご教授ください。
647名無しさん@そうだ選挙にいこう:2007/01/20(土) 14:00:42
>>646
データ範囲を選択するときに
Ctrlキーを押しながら離れたセルを選択しなさい
648642:2007/01/20(土) 14:24:23
解決しました。

97からのアップグレードは無理のようですが、
2000は大丈夫みたいです。
また、ヘルプを開けば表示されるプロダクトIDさえわかれば
アップグレードできるということもわかりました。

ただ、互換機能パックをインストールすれば
2007で作成されたファイルも、2007固有の新機能で作られた
部分を除いては2000でも開けるそうなので、
すぐにアップグレードはせずに様子を見ることにします。

取引先から送られてくるファイルを開けなかったら
どうしよう、ということが心配だったので。

今後、2007の新機能が普及して、2000では見られない部分が
多くなるようであれば購入しようと思います。
649名無しさん@そうだ選挙にいこう:2007/01/20(土) 14:32:40
>>647
シートをまたいでの話でした。説明不足で申し訳ないです。
いろいろ試してみましたが「参照が正しくありません」と表示されるだけでした。
650名無しさん@そうだ選挙にいこう:2007/01/20(土) 14:42:00
範囲に名前を付けるとか、参照で同一シートに全てのデータを引っ張るとか
651名無しさん@そうだ選挙にいこう:2007/01/20(土) 19:15:55
質問させて下さい
すでに携帯電話を入力してある(500人の顧客名簿)の**********を***-****-****と自動でするにはどうしたらよいですか

XP HOME
オフィス2003
テンプレートみました
マクロワカンナイデス><
やった事 ユーザー定義で
**********を***-****-****とやって一つのセルは出来ましたが、大量のセルは出来ませんでした
652名無しさん@そうだ選挙にいこう:2007/01/20(土) 19:28:02
>651
例1)書式設定の場合
000-0000-0000
653名無しさん@そうだ選挙にいこう:2007/01/20(土) 20:14:48
>>651
一つ出来たのなら全部を同時にすれば済む話ぢゃないのか?
654名無しさん@そうだ選挙にいこう:2007/01/20(土) 20:16:53
warata
655名無しさん@そうだ選挙にいこう:2007/01/20(土) 20:56:56
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 はい
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 EXCEL 罫線をコピーしない ctrl+D

縦に連続した範囲を選択し,ctrl+D を押すと,または,
横に連続した範囲を選択し,ctrl+R を押すと,
それぞれ下方向や右方向へ手軽にコピーすることができますが,
罫線も含めてすべてコピーされてしまいます。

ショートカットキーで,同様の動作を,「罫線をコピーしない」状態でさせたいのですが,
標準機能ではないようなので,VBAでマクロを組み,それにショートカットキーを
割り当てたいと思います。これを実現するVBAを教えてください。
656名無しさん@そうだ選挙にいこう:2007/01/20(土) 21:10:25
>>655
マクロの記録使え
657名無しさん@そうだ選挙にいこう:2007/01/20(土) 21:48:00
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 ノー
【4 VBAでの回答の可否】 不可

毎回ファイルを開くたびにソースが不明って出るんだけど
ソース変更で再度設定しても何度も出る。何なんすかこれ?
658名無しさん@そうだ選挙にいこう:2007/01/20(土) 21:58:05
>>657
Excel2003
659名無しさん@そうだ選挙にいこう:2007/01/20(土) 22:01:26
>>655
マウス使え
660655:2007/01/20(土) 22:04:41
>>656
マクロの記録ではできないのでお聞きしたのですが…
661659:2007/01/20(土) 23:15:10
だからマウス使えってば

AutoFillで出来ればよかったんだが分からん
完全ではないが出来ないことはないみたい

Sub test()
Selection.Offset(-1, 0).Select
Selection.Copy Destination:=Selection.Offset(1, 0)
Selection.Offset(1, 0).Select
With Selection
.Borders(xlEdgeLeft).LineStyle = xlNone
.Borders(xlEdgeRight).LineStyle = xlNone
.Borders(xlEdgeBottom).LineStyle = xlNone
End With
Selection.Offset(1, 0).Select
End Sub
662名無しさん@そうだ選挙にいこう:2007/01/20(土) 23:23:27
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 少し
【4 VBAでの回答の可否】 可

行を表す変数xを使ってオートフィルしたいんですが、

Range(Cells(9, 40), Cells(9, 41)).Select
Selection.AutoFill Destination:=Range(Cells(x, 40), Cells(x, 41)), Type:=xlFillValues

を実行すると、エラーが出てしまいます。
他のやりかたがあるのでしょうか?
663名無しさん@そうだ選挙にいこう:2007/01/20(土) 23:36:45
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 少し
【4 VBAでの回答の可否】 可

商品名  価格
タコ  1200
イカ  1000
タコ  1500
タコ  2000
イカ  1000
カイ  500

上記のようなデータが入っている表があります.
その中からタコの価格の総額(1200+1500+2000=4700)を出す関数を作りたいのすが
countifを使って柿のように組むと結果がなぜか0になってしまいます。

=COUNTIF(A:A,B:B="タコ")

いい方法ありましたらお教えください
664663訂正:2007/01/20(土) 23:37:24
×柿
○下記
665名無しさん@そうだ選挙にいこう:2007/01/20(土) 23:42:38
>>662
そのxがSelectionした範囲を含んでいない
666名無しさん@そうだ選挙にいこう:2007/01/20(土) 23:53:22
>>662
Range(Cells(9, 40), Cells(9, 41)).Select
Selection.AutoFill Destination:=Range(Cells(9, 40), Cells(X, 41)), Type:=xlFillValues

>>663
▼━質問時の注意・決まり事 ━━━━━━━━━━━━━━━━━
・1 現行スレ内で既出の質問が無いか、ページ内検索をしよう。(Ctrl+F)

>>541
667名無しさん@そうだ選挙にいこう:2007/01/20(土) 23:53:37
>>663
A・B列全て選択するなら=COUNTIF(A:B,”タコ”)
668名無しさん@そうだ選挙にいこう:2007/01/21(日) 00:03:01
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 ノー
【4 VBAでの回答の可否】 不可

エクセルで数式が入っているセルをコピーして貼り付けすると
数式の計算式が変わってしまいます。
変化しないでコピー&ペイストする方法ってあります?
669名無しさん@そうだ選挙にいこう:2007/01/21(日) 00:03:15
>>665
>>666
ありがとうございます。

rangeの始点は(9,40)で固定してオートフィルするんですね。

なんかわかったようなわからないような。

670名無しさん@そうだ選挙にいこう:2007/01/21(日) 00:10:51
671名無しさん@そうだ選挙にいこう:2007/01/21(日) 00:27:54
関数の名前ボックスや関数の挿入のある列(数字の列の上)
のことをなんていうんですか?
672名無しさん@そうだ選挙にいこう:2007/01/21(日) 00:45:38
>>669
始点と終点の変数が同じなら範囲が変わらないじゃん
開始行から何行目までと指定しなきゃ、開始行を基準にするんだから
673名無しさん@そうだ選挙にいこう:2007/01/21(日) 01:05:29
>>668
$つける
674名無しさん@そうだ選挙にいこう:2007/01/21(日) 01:49:48
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 ノー
【4 VBAでの回答の可否】 不可

複数のシートがある状態で、コピーの余白設定をすべてのシートに反映させるにはどうすればいいですか。
すべてのシートを選んで設定しても最初のひとつしか反映されません。
よろしくおねがいします。
675名無しさん@そうだ選挙にいこう:2007/01/21(日) 05:12:42
【1 OSの種類         .】 Windows2000
【2 Excelのバージョン   】 Excel2000
【3 VBAが使えるか    .】 少し
【4 VBAでの回答の可否】 可

プリンターの印刷を指定部数の途中で止めたいのですが、
コントロールパネル→プリンタのドキュメントのキャンセル(項目全キャンセル)の
コードはどう書くのでしょうか?
676名無しさん@そうだ選挙にいこう:2007/01/21(日) 05:36:00
>>674
コピーの余白って何だ?
印刷の余白なら、印刷設定は複数シートを一括して変更すると
矛盾が生じる部分が有るため出来なくなってるけど。

>>675
 >>2・7
君がやろうとしてるのは

【Excel】
 ↓印刷データ・設定などを一括して送る
【印刷制御プログラム】
 ↓印刷データを設定に従い、印刷状況やプリンタバッファに合わせて順次送る
【プリンタ】

の【印刷制御プログラム】の操作。
Excelだけでなく他の印刷機能のあるソフト全てから利用するもので
Excelとは直接的な関係は全く無い部分。
677675:2007/01/21(日) 07:01:48
>676
お答えありがとうございます。そうですか、VBAでできるかと思ってました。
678名無しさん@そうだ選挙にいこう:2007/01/21(日) 08:24:59
VBAで出来るけど、VBAではなくVBの分野ってこと
VBAはVisual Basic for Applicationで、Applicationとは
Application
└Workbooks
 ├Charts
 └Worksheets
  ├Range
  ├Shapes
  └ChartObjects
というオブジェクトの親。つまり、例えExcel付属のマクロ機能を使おうと、
ブック、シート、セル及びシートに配置されたオブジェクト等のの操作以外、
外部プログラムを制御するとか、外部データを整形するとか、Webアクセスしてデータのやりとりするとかは
Application以下のオブジェクトのメソッドなどとして実装されていない限り、VBA分野の話じゃない。
679名無しさん@そうだ選挙にいこう:2007/01/21(日) 09:53:33
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 少し
【4 VBAでの回答の可否】 VBA 配列 検索

あるセルに入力されている文字列の一部を
指定するワークシートから検索してそのセルの位置を返すマクロを作成したいのですが

1.For Each ,...NextとIfを組み合わせる
2.Findメソッドを使う(?)
3.ワークシート関数のMatchを使う

のどれが一番賢いやり方でしょうか
680名無しさん@そうだ選挙にいこう:2007/01/21(日) 10:11:50
単純一致ならFindだね

正規表現で一致検索するならFor EachとIfとRegExpのTest
高速化したければ範囲を配列に取って二重ForとIfとRegExpのTest
681名無しさん@そうだ選挙にいこう:2007/01/21(日) 10:36:14
>680
レスありがとうごさいます
For EachよりForを二重にした方が早く
LikeよりRegExpとTestを使うほうが良いんですね

ちょっと試してみます
682名無しさん@そうだ選挙にいこう:2007/01/21(日) 10:46:47
>>675
Sheets("Sheet1").PrintOut From:=1, TO:=2, Copies:=3, Collate:=True '1ページ〜2ページまでを3部印刷

>>676 >>678
知ったかぶりして書き込まないように
683名無しさん@そうだ選挙にいこう:2007/01/21(日) 11:09:36
>>682
それ、指定したページを指定した部数印刷でしょ

印刷を始めちゃったやつを 【途中で】 止める方法を>>675は聞いていると思うぞ
684名無しさん@そうだ選挙にいこう:2007/01/21(日) 11:21:23
>>681
For EachよりForを二重が速いんじゃなくて
Valueプロパティを何度も取得するより、配列に一括取得した方が速いということ
For二重は配列を調べるための手段なだけ
For二重でValueプロパティ取得してたら逆に遅くなる

それとRegExpとTestは先にも書いたように「正規表現検索したければ」の話だ
likeよりRegExpの方が良いなんて一言も言ってない
ワイルドカードで済むならlikeで充分
685名無しさん@そうだ選挙にいこう:2007/01/21(日) 11:26:09
>>682
勘違いして書き込まないようにw
686名無しさん@そうだ選挙にいこう:2007/01/21(日) 11:58:56
>>683
>>663の質問の場合
正しい回答はCOUNTIFの使い方ではなくSUMIFになる
当然>>675の質問も印刷を途中で止める方法と解釈するのは適切ではない。

>>685
このスレの質問者が勘違いしているのであって
回答者には、それを理解するエスパー力が必要なんだよ。
687名無しさん@そうだ選挙にいこう:2007/01/21(日) 12:05:14
【1 OSの種類         .】 Windows2000orXp
【2 Excelのバージョン   】 Excel97〜2003どれもで良い
【3 VBAが使えるか    .】 はい
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 ユーザーフォーム,最前面,表示

ユーザーフォームを常に最前面に表示したい。
またExcelだけでなく全てのアプリケーションに対しても有効で
常にユーザーフォームを最前面にする。

上記機能を持ったフリーウェアはあるのですが、
その都度最前面にするフォームを指定する必要があります。
Excel VBAを使うなどしてフォームを自動で最前面に表示する方法はないでしょうか?
別アプリケーション使用時に参考データとして常時表示するために使用したいのです。
よろしくお願いいたします。
688名無しさん@そうだ選挙にいこう:2007/01/21(日) 12:17:49
>>687
SetWindowPos
689名無しさん@そうだ選挙にいこう:2007/01/21(日) 12:37:17
>>682 恥ずかしい奴だな

>>686 お前バカだろ
690名無しさん@そうだ選挙にいこう:2007/01/21(日) 12:49:35
>>689
そう言ってやるな。
当人は顔真っ赤にしてるはずだからさ
691675:2007/01/21(日) 12:55:38
>>682
VBAでできるのですね。
ありがとうございます
692名無しさん@そうだ選挙にいこう:2007/01/21(日) 13:14:36
「途中で止める」ではなく「指定位置まで印刷する」なら簡単
693名無しさん@そうだ選挙にいこう:2007/01/21(日) 13:25:24
>>689-690が恥ずかしいバカな奴というのは良くわかった。
694名無しさん@そうだ選挙にいこう:2007/01/21(日) 13:29:52
>>688
おお、出来そうでね。ありがとうございました。
695名無しさん@そうだ選挙にいこう:2007/01/21(日) 13:33:16
>>693
意地になってこれ以上恥の上塗りはやめろ
ここでやめておけばまだ救える
696名無しさん@そうだ選挙にいこう:2007/01/21(日) 13:41:25
キチガイ粘着はスレ違い!!!!
697名無しさん@そうだ選挙にいこう:2007/01/21(日) 13:42:04
>>696
上げるなボケ
698名無しさん@そうだ選挙にいこう:2007/01/21(日) 14:36:52
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 少
【4 VBAでの回答の可否】 可


CELL (1,2)に入ってる2006/12/15
て所から変数HOGEYEAR に年だけ文字列として入れたいので
DIM HOGEYEAR AS STRING

Cells(1, 3).Formula = "=TEXT(B1,"yyyy")"
HOGEYEAR= CELLS(1,3).VALUE

とやろうとしたのですが、エラーがでて進みません。

HOGEYEAR に2006てのが入ればいいだけなんですけど、自分でも
おそらく凄く回りくどい事をやってる気もします。

なにかいいアイディアありますか?
699名無しさん@そうだ選挙にいこう:2007/01/21(日) 14:46:18
Year関数(日付から年を返す関数)使えばいいだけじゃないの?
CStrしなくても変数がString型なら、普通に代入するだけで自動変換で文字列になるし。
700名無しさん@そうだ選挙にいこう:2007/01/21(日) 14:57:51
すみません>>674
はコピーの余白ではなくて、印刷の余白でした。
シートが90くらいあるので、印刷の余白の設定が非常に大変なんですが、
なにかいい方法はないでしょうか?
701名無しさん@そうだ選挙にいこう:2007/01/21(日) 15:26:35
>>700
VBAという良い方法があるにはあるが、VBA不可という条件なので
手動でやれと言うしかないな

因みに条件後出しは無しの方向で
702名無しさん@そうだ選挙にいこう:2007/01/21(日) 15:32:21
>>674
プレビュー画面だとひとつのシートしか反映されないけど、シートのプロパティ
で余白を数字で入力すれば全部反映されなかったっけ?
703名無しさん@そうだ選挙にいこう:2007/01/21(日) 16:21:21
>>702
シートのプロパティってどうやって表示するんですか?
704名無しさん@そうだ選挙にいこう:2007/01/21(日) 17:11:48
>702
おおほんとだ!ありがとうございます
705名無しさん@そうだ選挙にいこう:2007/01/21(日) 18:04:35
プロパティーっつーかページ設定の事だべ
706名無しさん@そうだ選挙にいこう:2007/01/21(日) 18:16:34
>>698
1.) =YEAR(B1)
2.)書式→ユーザー定義
3.)HOGEYEAR = Format(Cells(1, 2), "yyyy")
Cells(1, 3) = HOGEYEAR
707名無しさん@そうだ選挙にいこう:2007/01/21(日) 18:25:41
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2000
【3 VBAが使えるか    .】 ○
【4 VBAでの回答の可否】 可

シート名をある文字に変更したい場合、
指定した文字だけは不可にすることって可能なんでしょうか?
708名無しさん@そうだ選挙にいこう:2007/01/21(日) 18:35:24
>>707
可能です。
VBAが使えるようなので、ご自分でお考えください。
709名無しさん@そうだ選挙にいこう:2007/01/21(日) 19:50:10
>>708
ヒントを教えてください
いろいろググッてもなかなか思うようなものがなかったので・・・

http://www.google.co.jp/search?hl=ja&q=%E3%82%B7%E3%83%BC%E3%83%88%E5%90%8D%E3%80%80VBA&lr=
710名無しさん@そうだ選挙にいこう:2007/01/21(日) 20:02:01
がんばれ
711名無しさん@そうだ選挙にいこう:2007/01/21(日) 20:14:29
エクセルで作った表を上に移動させるのにはどうしたら良いのでしょうか?
712名無しさん@そうだ選挙にいこう:2007/01/21(日) 20:25:46
>>711
ぐぐってください
がんばれ
713名無しさん@そうだ選挙にいこう:2007/01/21(日) 20:50:28
>>708
すいません
どうしてもわかりません
本当に教えてください
714名無しさん@そうだ選挙にいこう:2007/01/21(日) 21:11:11
>>702
やった!できた!ありがとございます!
715名無しさん@そうだ選挙にいこう:2007/01/21(日) 22:03:08
なんか自演が多いね
716名無しさん@そうだ選挙にいこう:2007/01/21(日) 22:16:28
VBAで現在開いているファイル名を取得する場合って
ActiveWorkbook.Nameだと思いますが
これだとaaa.xlsみたいになります

これを拡張子抜きのものを取得したい場合どうすればいいのでしょうか?
717名無しさん@そうだ選挙にいこう:2007/01/21(日) 22:23:18
開くたびに「マクロを有効にしますか」とでるのですが、セキュリティレベルを低にしても大丈夫でしょうか。
718名無しさん@そうだ選挙にいこう:2007/01/21(日) 22:39:49
>>716
結果から、全体の文字数-4を、文字列の左から抜く。

>>717
仕事場だったら×
自宅なら○
719名無しさん@そうだ選挙にいこう:2007/01/21(日) 22:42:15
>>713
EXCEL7クラスをフックするといいよ
フックってのは、プログラム制御の基本手法の一つなので詳しくはググろう
フックすら使いこなせないレベルなら諦めよう

>>716
Left InStrRev
拡張子が固定の場合ならLeft Lenでも出来るけどInStrRevが基本
Lenの方が簡単だけど、結果は同じでも意味が違ってくるからな

>>717
君の使い方次第
Excel側のセキュリティを下げても、別な方法でマクロウィルスを
回避する手段やスキルを持ってるとか、ネットに繋がってないPCで
自分の作ったブックしか扱わないとかなら問題ないだろ
720717:2007/01/21(日) 22:58:08
>718
>719
おとなしく中にしときます。
ありがとうございました。
721名無しさん@そうだ選挙にいこう:2007/01/21(日) 23:02:17
>>716
Dim MyFile As Object
Set MyFile = CreateObject("Scripting.FileSystemObject")
MsgBox MyFile.GetBaseName(ActiveWorkbook.Name)

>>717

確認メッセージの表示や署名の確認が行われることなく、マクロが有効になります。
ウイルス検索プログラムがインストールされているか、
すべてのドキュメントが安全であると確認した場合のみ設定してください。
ttp://support.microsoft.com/kb/882824/ja
722名無しさん@そうだ選挙にいこう:2007/01/21(日) 23:04:04
【1 OSの種類         .】 WindowsXP Home Edition version 2002 Service Pack 2
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 エクセル 並び替え

2級の表計算検定の勉強をしているのですが、数字の並び替えがうまくできません。
出力形式2の方を(例えば昇順で)並び替えようとすると、コードや名前は
並び替わるのですが、肝心の数値や判定/評価が全くもとのままの並びです。
ググって数値と認識させるために0を加算する、などはやってみましたが
変わりありませんでした。 どうすればよいでしょうか。
723名無しさん@そうだ選挙にいこう:2007/01/21(日) 23:11:17
>>722
数値として認識させたいだけなら、区切り位置や、
いったんテキストファイルに貼り付けてから、
再度Excelの新規ファイルに貼るという方法を試してみて。
724名無しさん@そうだ選挙にいこう:2007/01/21(日) 23:13:16
この程度でActiveXコンポーネントに頼るのはどうかと
725名無しさん@そうだ選挙にいこう:2007/01/21(日) 23:20:10
>>723
ありがとうございます。
数値は一応桁区切りスタイルにしているので、数値として認識されては
いると思うのですが……。
あと、数値だけでなく評価/判定(アルファベットやアスタリスク)も
何故か並び替えされないのです。 コードや名前欄は並び替えされるのですが……。
726名無しさん@そうだ選挙にいこう:2007/01/21(日) 23:21:39
>>722
資格か何か知らんが、何をしたいのかが分からん。
727名無しさん@そうだ選挙にいこう:2007/01/21(日) 23:27:08
>>726
日本情報処理能力検定協会の、2級の表計算の検定の模擬試験問題を
やっています。
728名無しさん@そうだ選挙にいこう:2007/01/21(日) 23:27:59
>>722
参照になってる?
729名無しさん@そうだ選挙にいこう:2007/01/22(月) 14:50:54
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 少
【4 VBAでの回答の可否】 可

Countifを使って表示させた数値が、2以上になった場合
入力規制のエラーを表示させたいのですが
どのように設定すればよいでしょうか?

セルに丸を入力してもらって、その丸の数が複数のセル内に二つ以上入力されるとエラーを出すようにしたいのです。
宜しくお願いします。
730名無しさん@そうだ選挙にいこう:2007/01/22(月) 14:59:09
>>729
その条件で論理値を返す式を設定すれば良いだけだよ
731名無しさん@そうだ選挙にいこう:2007/01/22(月) 15:15:44
Excel2003なのですが、起動時にワークシートが表示されません。
また既存のファイルから起動し、新規作成をクリックしてもワークシートが出ません。
既存の文書に変更を加え閉じる時「保存しますか?」のメッセージも出ません。
これはどうしたら直りますか?
再インストールでは直りませんでした。
732名無しさん@そうだ選挙にいこう:2007/01/22(月) 15:42:32
ちゃんとOSから再インストールしたの?
してないなら、まずはそれを試せ
733名無しさん@そうだ選挙にいこう:2007/01/22(月) 15:45:40
>>730
ごめんなさい!もう少し詳しくお願いします。。すみません!
734名無しさん@そうだ選挙にいこう:2007/01/22(月) 15:47:23
>>731
ウインドウ→再表示
の中には何か入ってる?
735名無しさん@そうだ選挙にいこう:2007/01/22(月) 15:47:29
>>733
君はどういう式書いてるの?(>>2・8)
736729:2007/01/22(月) 16:08:19
>>735

実はもっと複雑なことをしてまして、
指定のセルに1/1と1/4と入力すると
別シートに用意されたカレンダー式のセルの1/1、1/2、1/3、1/4のところに「1」と表示するよう設定してあります(1)。
それが三人分作られていて、もしその入力された期間が誰かと被ってしまった場合(2)に警告を出したいのです。

(1)
=IF(AND(入力された期間開始日<=カレンダー日付, カレンダー日付<=入力された期間終了日),"1","")

(2)
=COUNTIF(カレンダー一人目のセル:カレンダー三人目のセル,"1")
これで三人のスケジュールの結果が一つの行にまとめて表示されます。

もしスケジュールが被った場合(2の結果が"1"以上になった場合)に、
条件付書式でセルが赤くなるように設定しました。

それと同時に警告を出すようにしたいのです。

複雑ですみません!
737名無しさん@そうだ選挙にいこう:2007/01/22(月) 16:20:05
>>736
「入力規則」を利用する
738名無しさん@そうだ選挙にいこう:2007/01/22(月) 16:24:21
A1〜A20には○と×が書いてあります。
B1〜B20には1〜5の数字が書いてあります。

1〜20の中で「Aが○」かつ「Bが1」の個数をカウントしたいのですが、そんな関数ありますか?
739729:2007/01/22(月) 16:25:51
>>737
入力規制で指定する数式が分からないのです。。
ただ2以上の入力を規制しても、数式の結果である数字には反応しないみたいです。
740名無しさん@そうだ選挙にいこう:2007/01/22(月) 16:34:01
>>738
Excel2007にはCOUNTIFSってのがあるようです
そうでなければ組み合わせて作ります

>>739
入力値の種類をユーザー設定に
数式を =(式<2) で式が2未満のときのみ入力できます
741731:2007/01/22(月) 16:48:47
>>732 そこから!!

>>734 ほとんどのメニュー項目はグレーで押せない状態です。
742名無しさん@そうだ選挙にいこう:2007/01/22(月) 16:55:58
>>741
新規作成押したら、ファイルは作れるんでしょ?
作った真っ白のファイルをそのまま「personal.xls」と名前をつけて保存。
そのファイルをOfficeインストールフォルダ内の「XLStart」フォルダの中に
ブチ込んで、Excelを再起動したら、どうだ。
743名無しさん@そうだ選挙にいこう:2007/01/22(月) 17:06:36
>>741
正規に購入して、ちゃんと登録したのか
登録して無いと起動後50回までしか編集作業はできないぞ
その後はビュワーとしての機能しか使えなくなる
744729:2007/01/22(月) 17:10:16
まだ苦戦中です。。すみません。
今度は被った日の数を別の場所に表示させました。

A1とB1に日付を入れるとC1に数が出てきます。
B1に数字を入れ終わったとき、C1の数が1以上になった場合に警告を出すには
どこのセルにどんな数式を入れるのでしょうか?

A1とB1に入力規制をかけて
入力値の種類→ユーザー設定
数式を =(CI=<1) でやってもうまくいきません。。

何度もすみませんがお願いいたします。
745729:2007/01/22(月) 17:11:47
=(CI=>1)ですね。
また=(CIに入っている数式=<1)でも駄目です。
746731:2007/01/22(月) 17:15:02
>>742 それは出来ますけど既存のファイルを開いた時もそれが出ちゃいます。

起動時に何か読み込んでるようなんでVBAから見てみたらTOKUEXCEL.xla
ってのがあります。

ソースネクストの特打ち式パソコン入門/Excel編って言うソフトが入ってますね。
妹のPCなんで人事のようなんですが・・
747731:2007/01/22(月) 17:15:53
>>743 それは別のPCで(ry
748名無しさん@そうだ選挙にいこう:2007/01/22(月) 17:21:00
終了。
749名無しさん@そうだ選挙にいこう:2007/01/22(月) 17:21:15
>>745
=C1<2
750731:2007/01/22(月) 17:27:51
問題のソフトを立ち上げて終了したら直ったぞ。
なんだこりゃ???
751名無しさん@そうだ選挙にいこう:2007/01/22(月) 17:28:44
Excel2000を使っています。
ハイパーリンクを使うとインターネットエクスプローラが開いてウェブページが表示されますがエクセルが最小化になってしまいます。
エクセルが最小化にならず、ウェブページが最大化でなく少し小さく表示されるようにしたいのですがどうすればいいでしょうか。
752名無しさん@そうだ選挙にいこう:2007/01/22(月) 17:29:46
>>729(>>744,>>745)
とりあえず等号不等号は、<>が先で=が後とかそういう初歩的なことをきちんと覚えよう

そして超初心者なら超初心者らしく、入力規則式を作るときは、いきなり入力規則に式を設定しないで
適当なセルに式を入力してTRUE/FALSEの結果を確認しながら勉強しよう
それと入力規則はエラーを出す条件式を作るんじゃなくて、入力可能な条件を式にするんだからね
そして入力規則は文字通り入力を行うセルに設定するものだからね

最後に、試行錯誤もせずに数十分から1時間単位で聞き返しまくったりしないで
せめて1日くらいは自分で頑張ろう(>>2・5)
では、またわからなかったら明日の夕方以降にどうぞってことで、さようなら
753名無しさん@そうだ選挙にいこう:2007/01/22(月) 17:30:59
>>744
B1に =C1<2 でできないかな
(またはA1とB1にそれぞれ =C2<2)

入力規則は正常な範囲を指定するものですからね
それを外れたら警告が出る・・・です
754名無しさん@そうだ選挙にいこう:2007/01/22(月) 17:45:41
残業中です。よろしくお願いします。
【1 OSの種類         .】 Windows2000SP4
【2 Excelのバージョン   】 Excel2002
【3 VBAが使えるか    .】 はい
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 SaveAs FileSystemObject など

やりたいこと:
 イベント発生時に、ファイルのバックアップをとりたい
 バックアップ完了後も、元のファイルを続けて編集したい

ここが上手くいかない:
 SaveAsを使うと、実行後は「別名」のファイルがアクティブになってしまう
755名無しさん@そうだ選挙にいこう:2007/01/22(月) 17:49:40
>>729
Private Sub Worksheet_Change(ByVal Target As Range)
If Sheets("Sheet1").Range("A1") >= 2 Then
MsgBox "日付が重複しています。"
End If
End Sub
756名無しさん@そうだ選挙にいこう:2007/01/22(月) 17:54:21
>>754
ActiveWorkbook.Save
757名無しさん@そうだ選挙にいこう:2007/01/22(月) 17:56:15
>>754
SaveAsじゃなくてSave使えばいいじゃん
その上でSaveしたファイルをコピーすれば、それがバックアップになる
Save前のファイルも残したいなら、Save前のファイルもコピーを取っておけばいいだけだし
758名無しさん@そうだ選挙にいこう:2007/01/22(月) 18:37:20
>>740
ME(つд`)・゚・。
組み合わせってどうやって(つд`)・゚・。
759名無しさん@そうだ選挙にいこう:2007/01/22(月) 19:02:22
AND関数
760754:2007/01/22(月) 19:03:10
SaveCopyAs でいけました。
回答してくださった方々ありがとうございました。
761名無しさん@そうだ選挙にいこう:2007/01/22(月) 19:03:14
>>758
COUNTIFは条件1つなら数えられる。
だから作業列を作って、そこに複数条件の判定結果(IF関数でよい)を書き、
その列をCOUNTIFで数えりゃよろし。
762名無しさん@そうだ選挙にいこう:2007/01/22(月) 20:49:07
>>738
{=(SUM(IF(A1:A20="○",IF(B1:B20=1,B1:B20,0))))/1}
763名無しさん@そうだ選挙にいこう:2007/01/22(月) 20:49:46
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2002
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 可
【5 検索キーワード     】


1月
    1  2  3  4 …
    月 火 水 木 …
A   ○
B     ○  


みたいな感じの表を作ってます。
数字は固定にして曜日はtext関数にするとしたら、
土日だけに設定した入力規則を
月が変わって曜日がずれても持ち越す方法はありますか?
また、中6日などでローテが固定されていて○の位置が決まっている場合、
関数や入力規則を使って簡単に一ヶ月分入力できる方法はありますか?
764名無しさん@そうだ選挙にいこう:2007/01/22(月) 20:59:44
>>763
いずれもVBAを使用すれば可能です。
765名無しさん@そうだ選挙にいこう:2007/01/22(月) 21:15:37
>>763
日はシリアル値にして
曜日は=CHOOSE(WEEKDAY(),"月",・・・)にすると
簡単にできるよ
766名無しさん@そうだ選挙にいこう:2007/01/22(月) 22:34:44
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 はい
【4 VBAでの回答の可否】 可
【5 検索キーワード     】マルチページ

ユーザーフォームにコマンドボタンを複数配置してクリックするボタンによって
別のユーザーフォームに配置したマルチページのタブに切り替える出来ますか?

ボタン1クリック→マルチページのタブ1画面
ボタン2クリック→マルチページのタブ2画面

という感じです、よろしくお願いします。
767名無しさん@そうだ選挙にいこう:2007/01/22(月) 22:58:45
>>766
それぞれActiveにするだけじゃねーの。
768名無しさん@そうだ選挙にいこう:2007/01/22(月) 23:06:49
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2000
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 可
【5 検索キーワード     】

工場の寸法測定結果を紙に記録してるんですが、
PC化することになりました。
紙のフォームはEXCELで作ったんですが
特定のセルに入力したデータをその日毎に
集計して連続して(一ヶ月とか一年とか)
CSVファイルなどに出力できないでしょうか?

2006.01.18
A 200 199
B 199
C 198 196
D 199
のようなエクセルフォームを下のような感じで集計したい。
データは日毎に縦軸方向に増えていって欲しい。

A B C D
2006.01.18 200 199 198 199
199 196
2006.01.19 199 200 201

   ・
フォームがエクセルなんでエクセルで出来たらと思います。
アドバイスお願いします。

769名無しさん@そうだ選挙にいこう:2007/01/22(月) 23:08:59
>768
すいませんズレました。

A B C D
2006.01.18 200 199 198 199
199    196
2006.01.19 199 200 201

   ・
770名無しさん@そうだ選挙にいこう:2007/01/22(月) 23:25:40
>>768-769
最初のデータは手入力なの?
だったら、後々計算しやすいように入力フォームを変えたら?
771名無しさん@そうだ選挙にいこう:2007/01/22(月) 23:34:13
俺もそう思う。
あとCSVでデータベース化するなら2行に分けてるレコードを同じ日付で
別レコードにしたほうがいい。
固定長で出力するのかカンマで出力するのかとかその他いろいろ。
一番手っ取り早いのは出力する形式で入力してCSVで保存すればいい。
772名無しさん@そうだ選挙にいこう:2007/01/22(月) 23:36:25
Excel2002を使っています。
質問なんですが、Excelを使用し名前付けて保存したのですが、その時に「概存したファイルがありますが置き換えますか?」になり間違えて「はい」と答え、別のExcelに上書きされてしまいました。これは元に戻す事は出来ないでしょうか?
773768:2007/01/22(月) 23:37:04
さっそくのレス感謝します。
 
 入力フォームといいますか、紙とほとんど同じにしないと
現場のオジサン連中が嫌がります。
 
 なんで入力フォーム(紙の原版)はそのままで
数字のデータのみ並び替えて毎日連続して記録したいんです。
 
 以前アクセスを使っていたようですがPCが古いので
トラブルが多く、現在は使えない(使うな!!)らしいです。
774名無しさん@そうだ選挙にいこう:2007/01/22(月) 23:57:43
>>773
一日分が1シートかな?
どっちにしても、データをつど(マクロで)テキストデータに落として毎日保存。
必要なときにそのテキストデータを(マクロで)読み出して集計。
というのが一番よさげ、、、
775名無しさん@そうだ選挙にいこう:2007/01/23(火) 00:16:33
オジサン達には入力フォームはそのままで入力してもらって、
別のシートに入力したデータをCSV形式で保存するデータ形式にしてから、CSVに書き出す。
定型データならVBAを使ってもそれほど難しくはないと思う。

A B C D
2006.01.18 200 199 198 199
2006.01.18 199    196
2006.01.18 198

日付データは上でも書いてあるように、同じ日付をつけておいたほうが後々便利

あと、オジサンたちにわかりやすく、入力フォームには色をつけておくか、
別シートは隠しておくのがいいかも。
776名無しさん@そうだ選挙にいこう:2007/01/23(火) 00:21:51
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン】 Excel2003
【3 VBAが使えるか  】 いいえ
【4 VBAでの回答の可否】 可
【5 検索キーワード  】

グラフ作成について、教えてください。

身長・体重・体脂肪率を毎日計って
一年単位で表示する折れ線グラフを作りたいのですが、
ウィンドウに合わせてグラフが表示されてしまうために、
X軸に設定した日付がつぶれてしまって読めません。

恐ろしく横スクロールするグラフで良いんです。
グラフエリアをウィンドウ幅を超えて大きくする方法を教えてください。

よろしくお願いします。
777名無しさん@そうだ選挙にいこう:2007/01/23(火) 00:28:39
>>776
グラフ作るときのウィザードの最後の所で、シートじゃなく、
オブジェクトを選べばいいよ。
778名無しさん@そうだ選挙にいこう:2007/01/23(火) 00:42:19
test
779名無しさん@そうだ選挙にいこう:2007/01/23(火) 02:15:06
>>777

ありがとうございました。
今までグラフはすべて使途にして作成していたので、
意外な盲点でした^^;
おかげさまで思い通りのグラフを作成できて、大変満足しています。
目からウロコ・・・ですね。

本当にありがとうございました。
780名無しさん@そうだ選挙にいこう:2007/01/23(火) 04:08:03
【1 OSの種類         .】 Windows2000
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 少し
【4 VBAでの回答の可否】 可
【5 検索キーワード     】


   A   B   C
1 麻生    麻生   
2 安倍    安倍
3 小泉    小泉
4 森     森
5 小泉    橋本
6 橋本    小沢 
7 小沢 
8 橋本 

A列にデータが入っているのですが、C列にダブリのない状態でデータを移したい。
VBAではどのようにすればよいでしょう?
781名無しさん@そうだ選挙にいこう:2007/01/23(火) 04:16:27
一列だけならループで総当りするか、Findで検索すればいいじゃん
782781:2007/01/23(火) 05:13:11
Private Sub Commandbutton1_Click()
Dim myRange As Range, LastRow As Long, r As Long
Range("C:C").Clear
LastRow = Range("C65536").End(xlUp).Row
For r = 1 To 8
Set myRange = Range("A1:A8").Find(Cells(r, 1).Value)
If myRange.Address = Cells(r, 1).Address Then
Cells(LastRow, 3) = Cells(r, 1).Value
LastRow = LastRow + 1
End If
Next r
End Sub

長ったらしいけど基礎的なループ処理で書いてみたから勉強してくれよな!
動かんくてもしらん。
783780:2007/01/23(火) 08:17:10
784名無しさん@そうだ選挙にいこう:2007/01/23(火) 11:03:49
【1 OSの種類         .】 WindowsXP SP2
【2 Excelのバージョン   】 Excel 2000
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 置換 定数

セルに入力しておいた文字列
"大福 + ジュース + まんじゅう"

に対して、たとえば大福が60円、ジュースが150円、まんじゅうが70円だとして、
それを表で作っておき、
それを参照しながら別のセルに 280 という数値の答えが出したいです。

VLOOKUPにより、"大福"とだけ入力されているのなら 60と出来ましたが、
それを文字列中に複数個ある場合や、+ などの計算評価(VALUEで試しましたが・・)が出来ないです。

上手いやり方を教えてください。
785784:2007/01/23(火) 11:08:26
〜 追記 〜

"大福 + ジュース + まんじゅう"
は可変であり、
"大福 * 2 + ジュース"
などとなる場合もあり、
その値段の計算結果を出したいです。
786名無しさん@そうだ選挙にいこう:2007/01/23(火) 11:16:45
>>784-785
入力フォームを再考してください。
787名無しさん@そうだ選挙にいこう:2007/01/23(火) 11:19:10
大福を60ジュース150まんじゅう70に置き換えれば
788名無しさん@そうだ選挙にいこう:2007/01/23(火) 11:20:08
>>784
メニュー > 挿入 > 名前 > 定義
名前:大福 参照範囲:=60
名前:ジュース 参照範囲:=150
名前:まんじゅう 参照範囲:=70

これで
=大福 + ジュース + まんじゅう
=大福 * 2 + ジュース
と、""で囲わず=を付ければ良し
789784:2007/01/23(火) 11:33:22
>>788
ありがとうございます。
その定義で参照範囲をセルから持ってくることに成功しました。

後半ですが、一つのセルに 大福 + ジュース + まんじゅう と書いてそれはそのままそこに表示、
その後のセルに計算結果がでるようにしたいです。
「」をセルだとして、
「大福 + ジュース + まんじゅう」「280」 という感じです。
現在だと、大福 + ジュース + まんじゅうを2度書き、
「大福 + ジュース + まんじゅう」「=大福 + ジュース + まんじゅう」
とやらなければならずスマートではありません。
前のセルの文字列を判定して計算はできないでしょうか?

調べたところevalというのが出ましたがこれは他の言語のようで、似たようなことができればと思っています。
790名無しさん@そうだ選挙にいこう:2007/01/23(火) 12:10:42
>>789
Eval同等のことはVBA使えば出来るよ

VBA使いたくないなら文字列関数で切り出して
論理関数や検索関数を使って計算すれば良い
それぞれの関数の使い方はヘルプ参照
791名無しさん@そうだ選挙にいこう:2007/01/23(火) 12:11:35
>>789
単体の参照だけならindirectワークシート関数でいけるかな?
でも式を計算させたいとなると、VBA使ってユーザー定義関数作らないとできないかも。

一応関数書いてみると、Evaluateメソッドていうの使ってこんな感じ
で、ワークシートにはセルA1に式の文字列つけて、B2には「=eval(A1)」
Function eval(s As String)
 Application.Volatile
 eval = Application.Evaluate(s)
End Function

VBA使わないですむ方法は知らない
792784:2007/01/23(火) 13:32:37
>>791
ありがとうございます。すばらしく完璧に狙い通りの動作になりました。

しかしこんな関数は標準装備しててもよさそうな気もしました。
793名無しさん@そうだ選挙にいこう:2007/01/23(火) 13:33:57
明らかに仕様を変えた方が良いと思うが。
Excelで無理してやる方法じゃないし、明らかな自己マンだな。
794名無しさん@そうだ選挙にいこう:2007/01/23(火) 14:32:14
なんでVBA否なのにVBAの回答で満足するんだ?
VBA使えばどうにでもなる問題なんだから、VBAでもいいなら
初めからVBA可にしてれば、もっと早くに解決したろうに
795784:2007/01/23(火) 14:49:28
>>794
ごめんなさい。
796名無しさん@そうだ選挙にいこう:2007/01/23(火) 16:28:57
【1 OSの種類         .】 WindowsXP SP2
【2 Excelのバージョン   】 Excel 2002
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 センタリング 右寄せ

5000
50000
などと縦に書いていって、それをセンタリングして右端をそろえるのはどうやれば良いんでしょうか?
インデントを使ってもなかなか中央にバッチリ行ってない感じなので・・・
797名無しさん@そうだ選挙にいこう:2007/01/23(火) 16:35:58
>>796
普通に右詰めにして、
そのセルの右側にダミー用の空白セルを設け、主動で幅を変更。
798名無しさん@そうだ選挙にいこう:2007/01/23(火) 16:40:00
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 少

数式により、セル内の数字が「1」と表示された瞬間に
メッセージが現れるようにしたいのですが、どうすれば良いでしょうか?

入力規制は入力できなくなってしまうので、使いたくないのです。
宜しくお願いします。
799名無しさん@そうだ選挙にいこう:2007/01/23(火) 16:45:58
1と表示された瞬間ではなくセルの内容が1と確定した瞬間であれば、

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Value = "1" Then
MsgBox "メッセージ"
End If
End Sub
800798:2007/01/23(火) 16:57:38
>>799
ありがとうございます。
ちょっと説明不足だったのですが、
特定の一列のなかに1以上の数字が現れた時にメッセージを出したいのです。
列はどこで指定すればよいのでしょうか。

799さんの回答をヒントに少し調べてみます。
801名無しさん@そうだ選挙にいこう:2007/01/23(火) 17:00:08
また後付けか。
802798:2007/01/23(火) 17:05:24
ごめんなさい! 途中でやり方変えたんです。。すみません!
803798:2007/01/23(火) 18:03:01
やはりわからない。。

特定の一列のセル内に1以上の数字が数式によって現れた時、
メッセージを出すマクロを教えてください!
804名無しさん@そうだ選挙にいこう:2007/01/23(火) 18:07:14
>>803
なぜ入力規制じゃだめなのかがわからない
805798:2007/01/23(火) 18:18:11
入力規制だと、規制されている内容が入力できなくなるので
そうではなくただメッセージを出すようにしたいのです。
806名無しさん@そうだ選挙にいこう:2007/01/23(火) 18:18:25
>>803 現行スレくらい読めクズ!
>>755
807名無しさん@そうだ選挙にいこう:2007/01/23(火) 18:21:31
特定の用語の問題でもないのに、質問スレを
全部舐めろというのは、無理があるんじゃないかなーw
808798:2007/01/23(火) 18:23:51
>>806
すみませんでした!ありがとうございます!
809名無しさん@そうだ選挙にいこう:2007/01/23(火) 18:26:32
>>807
入力規制でヒットしますが、ボンクラですか?
810名無しさん@そうだ選挙にいこう:2007/01/23(火) 18:34:08
ボンクラですw
811名無しさん@そうだ選挙にいこう:2007/01/23(火) 18:59:04
ボンクラでしたか。
812名無しさん@そうだ選挙にいこう:2007/01/23(火) 19:12:24
Private Sub Worksheet_Change(ByVal Target As Range)
If Sheets("Sheet1").Range("A1") >= 2 Then
MsgBox "日付が重複しています。"
End If
End Sub

これをA1の数値が増えた時のみにMsgBoxが開くにはどうするのでしょうか?
813名無しさん@そうだ選挙にいこう:2007/01/23(火) 19:18:56
>>812 ボンクラですか?
814名無しさん@そうだ選挙にいこう:2007/01/23(火) 19:22:13
A1の値をどこかに確保しておいてそれと比べると良いのでは?
815名無しさん@そうだ選挙にいこう:2007/01/23(火) 19:24:50
【1 OSの種類         .】 Windowsxp
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 連続データ max min

工場に勤めています。
A列からF列、1行から60000行の数値データがあります。
VBAを使って、このデータを250行ごとにmaxの値、minの値を抽出し、別の
シートに順次記載して管理したいのですが、やり方がわかりません!!
誰か解決してください。お願いします。



816名無しさん@そうだ選挙にいこう:2007/01/23(火) 19:34:49
>>815
=MAX(Sheet1!A1:F250)  =MIN(Sheet1!A1:F250)
=MAX(Sheet1!A251:F500) =MIN(Sheet1!A251:F500)
817名無しさん@そうだ選挙にいこう:2007/01/23(火) 19:45:46
このスレ、勤め先まで書く事になったの?
818名無しさん@そうだ選挙にいこう:2007/01/23(火) 19:54:21
>>815
仕事で使うの?
この程度で質問するようなら上司に相談しようよ
「自分、Excelよくわかりません。このまま業務として使う必要があるのならパソコン教室に通いますから受講料の費用負担をお願いできませんか。できなければ自分を担当から外してください。」
これくらい言ってみよう。
いや正直な話、このままだとこの先辛い思いをするだけだよ。
819名無しさん@そうだ選挙にいこう:2007/01/23(火) 20:12:41
820名無しさん@そうだ選挙にいこう:2007/01/23(火) 20:51:10
>>818>>819のやさしさに脱毛
821名無しさん@そうだ選挙にいこう:2007/01/23(火) 21:01:53
質問させてください。

今年度入社する会社の課題(文章を長々と書くタイプの課題)で、
フォーマットとして会社からメールが送られてきたのが、エクセルなんです…

長文書くはずなのにワードじゃなくてエクセルって?と思ったのですが、そういった利用方法もあるのでしょうか?
しかも3シート送られてきて、そのうち1シートが入力用で、2シートは白紙です。

これは会社のミスでしょうか?
822名無しさん@そうだ選挙にいこう:2007/01/23(火) 21:02:05
カスどもがっ
823名無しさん@そうだ選挙にいこう:2007/01/23(火) 21:11:21
>>821
初期設定ではブックに3つのシートが作られる。
一つ目のシートにフォーマットを作って残りのシートをそのままにしちゃった
おっちょこちょいの担当者がいるということでしょう。

Excelは報告用の帳票としても使われるからWordではなくExcelで作っちゃった
おっちょこちょいの(ry
824名無しさん@そうだ選挙にいこう:2007/01/23(火) 21:12:10
ネタにマジレスかこいい
825名無しさん@そうだ選挙にいこう:2007/01/23(火) 22:05:48
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2000
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】

オートフィルタをかけた状態で、
ある範囲を選んだものをコピーし、
別のシートに貼り付けたら、
内容がずれてしまいました。
何かしらの理由、法則みたいなものはあるのでしょうか?

顧客情報がずれた状態で、データを出してしまい、
大変な事になってしまいました。

よろしくお願いします。
826名無しさん@そうだ選挙にいこう:2007/01/23(火) 22:07:28
>>825
自分で、はっつけた後にソートしたんだろ。
絞った状態でズレる事なんて無い。
827名無しさん@そうだ選挙にいこう:2007/01/23(火) 22:09:57
>>826
ではソートの段階でズレたという事でしょうか…
はっきりとは覚えていないのですが、
普段はソートするときは、
全て選択→オートフィルタ→ソート
をします。
この段階でズレる、という事は考えられますか?
828名無しさん@そうだ選挙にいこう:2007/01/23(火) 22:14:52
829名無しさん@そうだ選挙にいこう:2007/01/23(火) 22:24:42
>>828
元に戻す、が何か関係あるのでしょうか?
すみません、わかりません…
830名無しさん@そうだ選挙にいこう:2007/01/23(火) 22:47:28
>>827
ソートするときに全部選択されてないとずれるよ
2002では選択セルの隣接セルにデータがある状態で並べ替えしようとすると
「選択されていないデータは並べ替えできません」って確認ダイアログが出るけど
831名無しさん@そうだ選挙にいこう:2007/01/23(火) 22:51:29
あと、フィルタ展開する段階で、空行があったりして、全体が
範囲に入ってなかったりとか。
てゆーか、>>825の人的ミスをこんな所で、論じて何になる。
次から気をつけろとしか言いようがない。
832名無しさん@そうだ選挙にいこう:2007/01/23(火) 22:51:37
>>830
普段は、オートフィルタがかかっている状態で、
ソートの基準にしたい行のセルを選択して
ソートをかけるのですが、
その状態でずれる事はありますか?
833名無しさん@そうだ選挙にいこう:2007/01/23(火) 22:57:19
834名無しさん@そうだ選挙にいこう:2007/01/23(火) 23:01:12
>>832
あのね、みんなが同じバージョン使ってるわけじゃないのよ
教えてもらったんだから自分でやってみなさいよ
数分もあれば確認できるでしょ
835名無しさん@そうだ選挙にいこう:2007/01/23(火) 23:06:28
>>834
そうですね…
すみません、あれこれ試してみます。
836名無しさん@そうだ選挙にいこう:2007/01/23(火) 23:08:32
流れぶった切るけど、なんでこの板名前欄が「そうだ選挙に行こう」なんだ?
837名無しさん@そうだ選挙にいこう:2007/01/23(火) 23:10:40
>>836
余所で訊け、馬鹿。
てゆか、氏ね!
838名無しさん@そうだ選挙にいこう:2007/01/23(火) 23:36:01
本当にすみません、質問させて下さい。.xlsのちょっとしたファイルを今すぐ見たいのですが自宅のPCにエクセルが入ってません。その上、入れる空き容量さえないのですが、どうにかなりませんか?ネット上で.xlsのファイルを見ること(だけでいいので)が出来るページなどありませんか?
839名無しさん@そうだ選挙にいこう:2007/01/23(火) 23:45:08
Google
840名無しさん@そうだ選挙にいこう:2007/01/23(火) 23:49:18
>>838

エクセル自体は持っているんだったら
とりあえずHDに入っているエロ動画を捨てて空きを作れ。
エロ動画は捨てる前にうぷするのを忘れるなよ。
それがこのスレでの御礼の仕方だ。
841名無しさん@そうだ選挙にいこう:2007/01/23(火) 23:53:49
842名無しさん@そうだ選挙にいこう:2007/01/23(火) 23:55:03
>>838
「OpenOffice」「ExcelViewer」
この辺りの単語でググれば、幸せになれるかもしれんが、
いずれにしても、エロ動画をうpしない限りは、不可かと。
843名無しさん@そうだ選挙にいこう:2007/01/24(水) 00:29:02
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 多少(編集程度なら…)
【4 VBAでの回答の可否】 不可
【5 検索キーワード     】 Excel 空白 "" 判定etc...

2時間以上色々検索しても原因がわからず悩んでいます…。
=IF(A1="111","111","")
このようなIF関数を組んだのですがA1の値が111ではなく「""」で返された時
この「""」のセルは空白セルとして判定されないのでしょうか?
「""」で返された空白(に見える)セルを削除するマクロを組みたいのですが

編集→ジャンプ→セル選択→空白セルでも認識されず
With Range("A1:A" & Range("A65536").End(xlUp).Row)
  .SpecialCells(xlCellTypeBlanks).EntireRow.Delete
End With
でも空白と認識されませんでした。

「""」を空白と認識させる方法がわかる方いらっしゃいましたらご教示ください。
844名無しさん@そうだ選挙にいこう:2007/01/24(水) 00:39:30
【1 OSの種類         .】 WindowsXPPRO
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 はい
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 グラフウィザード 系列
棒グラフの各棒の下に文字を入れたい。
通常はグラフ作成のときにデータ範囲として指定するようだが、
それが出来ません(最終的には消したいので)。
グラフウィザードで系列を一個一個入れていけばいいかと思ったが
実際にやってみると、グラフの横に凡例として表示されてしまいます。
どなたか他の方法をご存じの方いませんか。
845名無しさん@そうだ選挙にいこう:2007/01/24(水) 00:41:38
>>843
A1セルが全く空白でなく、ダブルクォーテーションが2つ入力された状態を
空白として、判断したいということ?
=IF(A1="""""","ダブルクォーテーション","")
で取れるので、"111"の式とネストすれ。
外してたらスマン。
846名無しさん@そうだ選挙にいこう:2007/01/24(水) 00:46:00
>>843
質問の意味がよくわからんのだけども
参照してるA1の書式は文字列形式なの?
847名無しさん@そうだ選挙にいこう:2007/01/24(水) 00:57:59
843です。説明下手ですいません。
参照しているA1は文字列です。111は仮に入れただけで実際は文字列単語です。
IF関数はA2に入力しています。このA2が「""」だった時にこのA2セルを削除してA3セルを上に詰めるマクロを組みたいという事なんです。
ジャンプから空白セルを選択してもA2が選択されず
また、IF関数が入っているからかな?と思い、A2をコピーして形式を選択しての値貼り付けをした後も空白と認識されませんでした。
本当説明下手ですいません…理解できますでしょうか?
848名無しさん@そうだ選挙にいこう:2007/01/24(水) 01:01:50
しつこく843です。何度もすいません。
>>845 のようにダブルクォーテーションが2つ入力された状態ではありません。
単純にダブルクォーテーション1つを空白セルと認識させたいという事です。
849名無しさん@そうだ選挙にいこう:2007/01/24(水) 01:10:06
>>838です!みなさん本当にありがとうございます!excelviewerで見れました!エロ動画は勘弁してください(笑)本当にありがとうございました!
850名無しさん@そうだ選挙にいこう:2007/01/24(水) 07:36:46
【1 OSの種類         .】 Windows2000/WindowsXP
【2 Excelのバージョン   】 Excel2000
【3 VBAが使えるか    .】 はい
【5 検索キーワード     】 Googleやヘルプでの検索キーワード

使っているのはExcel2000です。

VBAはプログラムが出来るので大体わかったんですが
エクセル自体の機能にどんなものがあるのか理解するのに役立つ
本を探しています。

なにかオススメのものを紹介していただけませんか?
851名無しさん@そうだ選挙にいこう:2007/01/24(水) 07:44:36
目的によって変わってくるから、とりあえずAmazonで「Excel」「VBA」で絞って
上の物からパラパラチェックしてみるのがいいんじゃないかな?
852名無しさん@そうだ選挙にいこう:2007/01/24(水) 07:50:18
ちょっと書き方が悪かったようです。
VBAの機能は置いておいて、単純にエクセル自体の機能を学習したいということです。
以上、お願いいたします。
853名無しさん@そうだ選挙にいこう:2007/01/24(水) 08:09:50
なる。一通り知りたいなら資格物がいいんじゃないかな。
Microsoft Office Specialist系のExcel関連のものを見れば
ひととおり網羅されてると思うよ。
854名無しさん@そうだ選挙にいこう:2007/01/24(水) 08:18:59
>>850
まずエクセルをあれこれいじくってみればいいんじゃない?
プログラムやってんなら、それでだいたいわかると思うけど。
で、わからないのはヘルプとかぐぐるとか。
それでも本がいいなら、適当に本屋行って買えばいい。
基礎の本なんてどの本もそんなに変わらないでしょ。
855名無しさん@そうだ選挙にいこう:2007/01/24(水) 09:17:30
>>843
>>2・3
856名無しさん@そうだ選挙にいこう:2007/01/24(水) 09:28:07
質問ですよろしくお願いします。

【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2000
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 excel 差引

在庫管理で使っています。
ある商品の出庫数や入庫数を入力したときに在庫数が差引で
残数が出るようにしたいんですが、どうすれば良いか見当もつきません。

具体的に説明すると
在庫数が100のときに
出庫数 50 入庫数 30を入力すると
在庫数が80になるようにしたいんです。

よろしくお願いします。
857名無しさん@そうだ選挙にいこう:2007/01/24(水) 09:33:31
>>856
在庫数+入庫数−出庫数
858名無しさん@そうだ選挙にいこう:2007/01/24(水) 09:53:25
算数の問題をここで聞くか?変なやつ
859名無しさん@そうだ選挙にいこう:2007/01/24(水) 09:56:35
実際に聞いてくる>>856みたいな変なやつがいるだろ
860名無しさん@そうだ選挙にいこう:2007/01/24(水) 10:00:12
質問です。
作文用紙みたいに、文書を打ち込んだら、自動的に、下の段のセルに文書が流し込ませるような方法、ございますか?よろしくお願いします。
(送信案内のひな形を作成しております。)
861名無しさん@そうだ選挙にいこう:2007/01/24(水) 10:02:42
>>856
式の入力の仕方が分らないって事だろ
エクセルって何?って所から勉強しないと始まんないね
マニュアルくらい読んどけよ
あと算数・数学の能力については君自身の問題だ

>>860
セルの書式設定で「折返して表示する」にチェック
862名無しさん@そうだ選挙にいこう:2007/01/24(水) 10:03:47
>>860
VBA使えば出来るよ。

VBA使えないとか使いたくないという情報を出してないので
あとは自分でVBAコード書いてね。(>>3)
863名無しさん@そうだ選挙にいこう:2007/01/24(水) 10:09:48
質門させてください。

【1 OSの種類         .】 Windows2000
【2 Excelのバージョン   】 Excel2002
【3 VBAが使えるか    .】 使えません
【4 VBAでの回答の可否】 可(使えませんが、必要なら学習します)
【5 検索キーワード     】 セル 分割 関数

 従業員の諸手当ての集計にエクセルを使用しています。
 手当てには五つの種類があり、それぞれに1〜5までの番号が割り振られています。
 月末、各従業員ごとに一日ごとに発生した手当てを番号によって抽出してCountIfなどで
 集計しようと思ったのですが、一日に複数の種類の手当てが発生した場合に、ひとつのセルに
 111(1番の手当てが一日中に3回発生している)や13(1番と3番の手当てが一日中に発生している)
 といった形で入力するためCountIfではうまく集計ができません。
 提出する手当集計表の形式は規定で決められているため、セルの分割などを行わずにいまの表の形式のまま、
 なんとか関数などでうまく集計できるようにしたいと思っているのですが…
 何かいい方法はないものでしょうか?
 よろしければ知恵をお貸しください。
864863:2007/01/24(水) 10:22:03

 自分で考えたやり方なのですが、別シートに作業枠を作成して、
入力枠を一文字ごとに分割した後CountIfで集計し、集計結果を元シートに表示させるやり方です
ただ、この場合、別シートへの分割された作業枠の生成が自動化されなければ、かえって作業量を
増やすことになってしまいます。自動的にセルを一文字ごとに分割してくれる機能がないものか…と思って
検索してみましたが、みつけることができませんでした。
 元シートへのデータ入力だけで自動的に集計結果が表示されるようにするにはどうしたらいいのでしょうか?
865名無しさん@そうだ選挙にいこう:2007/01/24(水) 10:29:30
>>863-864
データ→区切り位置→W→1桁ごとに区切る
一連の作業をマクロで登録
866名無しさん@そうだ選挙にいこう:2007/01/24(水) 10:33:00
>>863
1がいくつあるかを数えればOKなんじゃないかな?
例えば、A1に「1113」だったら「=(LEN(SUBSTITUTE(A1,1,""))-LEN(A1))*-1」
で1を空白に置き換えた時の文字数と、置き換えない時の文字数の差で
1が含まれてる数がわかるよ。他にも含まれてる文字の数を数える方法があれば
なんでもいけるんじゃないかな?

そんな感じで応用して1日ごとの算出やって、で、まとめて集計。
配列数式使うなら、
「{=SUM((LEN(SUBSTITUTE(A1:A100,1,""))-LEN(A1:A100))*-1)}みたいな感じ?
867名無しさん@そうだ選挙にいこう:2007/01/24(水) 10:45:49
【1 OSの種類         .】 Windows XP
【2 Excelのバージョン   】 Excel2002
【3 VBAが使えるか    .】 勉強中
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 VBA セル 値

よろしくお願いします。
VBAでセルに値を設定する場合、通常は
  Range("A1").Value = 100
  Range("A1").Value = "hoge"
のようにValueプロパティだと思うんですが、これ
  Range("A1") = 100
  Range("A1") = "hoge"
のように書いても問題ないのでしょうか。
間違って.Valueを抜かして書いても特に問題なく動いたので、
あれ?と思いまして。
868名無しさん@そうだ選挙にいこう:2007/01/24(水) 10:53:58
>>867 省略可
869867:2007/01/24(水) 10:56:21
>>868
ありがとうございます。
870名無しさん@そうだ選挙にいこう:2007/01/24(水) 11:00:25
871863:2007/01/24(水) 11:23:28
>865,866
すばやい回答ありがとうございます。
これでいけそうな感じですね!
配列数式未経験なので勉強して使用してみたいと思います。
たすかりました ^^
872856:2007/01/24(水) 11:32:39
質問の仕方が悪かったようです。

1回だけの入力であれば在庫数A100+入庫数B30-出庫数C50=現在庫数D80で良いんですが
それだと2回目以降の入力が出来ないんです。
現在庫数D80が2回目の入力をする前に在庫数A80として自動で入力されている状況にしたいのです。

よろしくお願いします。
873名無しさん@そうだ選挙にいこう:2007/01/24(水) 11:34:43
874名無しさん@そうだ選挙にいこう:2007/01/24(水) 11:50:17
>>872
       前日繰越在庫数  入庫数  出庫数  終業時在庫数
前月末日                             100
2/1      =E1          30     50    =B3+C3-D3
2/2      =E2          2回目の入力    =B4+C4-D4

って感じでいいんじゃね
2回目(2日)以降は、順次下行に移っていけばいい
1回目の計算結果が、自動的に2回目の基準在庫となる
普通は「前日繰越在庫数」の列は作らずに、
直接一つ上の行の「終業時在庫数」を参照するけどね

条件後出しで、セルを移動せずに入力できるようにしたいとか言い出さないでね
875名無しさん@そうだ選挙にいこう:2007/01/24(水) 12:40:39
読み取れない事はすべて後出しかw
えらいえらいww
876名無しさん@そうだ選挙にいこう:2007/01/24(水) 13:14:50
今更なんですが…Excelを勉強しようと思っているのですが、とにかく無知で何をどうしていいのかわかりません(^^;)
学習用のソフトがあると聞いたのですがコレはわかりやすい!って言うソフトがあれば教えて下さい。お願いします
877名無しさん@そうだ選挙にいこう:2007/01/24(水) 13:19:10
>>876
適当に初心者用の本読めみながら、勉強しろ。
読むだけじゃなく、実際にやってみる。
以上。
878名無しさん@そうだ選挙にいこう:2007/01/24(水) 13:25:53
>>876
2chでExcelスレを探し出して書き込める能力があるのならきっと大丈夫だ。
ソフトよりも本を買ったほうがいい。なるべく初心者向けのを実際にExcelを動かしながら読みすすめる。
本に書いてあることをだいたい把握して、応用的なことがしたかったらネットで検索するといい。
879名無しさん@そうだ選挙にいこう:2007/01/24(水) 14:14:11
880名無しさん@そうだ選挙にいこう:2007/01/24(水) 14:17:50
>>879
構ったら負け
881名無しさん@そうだ選挙にいこう:2007/01/24(水) 16:04:21
877さん、878さん、回答ありがとうございます。本屋さんに行って初心者向けの本を購入してきます。
それと、よく求人情報誌に「Excel使える方」って記載してますがどこまでの事が出来れば一般的な出来るレベルなのか教えていただけませんか?
全くの初心者でわからない事だらけで…初歩的な質問ばかりですいません
882名無しさん@そうだ選挙にいこう:2007/01/24(水) 16:18:14
>>881
就職板か、転職板行け馬鹿。
883名無しさん@そうだ選挙にいこう:2007/01/24(水) 16:21:47
>>881
ヘルプも本も何も見ないで綺麗な家計簿が作れるくらいならなんとかなるだろう。
884名無しさん@そうだ選挙にいこう:2007/01/24(水) 16:22:13
軸を日付にして
1ヶ月ごと(1月1日 2月1日 …)に目盛線をうつ事ってできますか?
当然目盛間隔は等間隔じゃなくなりますけど
885名無しさん@そうだ選挙にいこう:2007/01/24(水) 16:23:14
>>884
俺にはできるがお前にはできない
886名無しさん@そうだ選挙にいこう:2007/01/24(水) 16:36:22
>>884
グラフ?状況が今一つ掴めないんだけど、
目盛り線ってどういうもんだい?
887名無しさん@そうだ選挙にいこう:2007/01/24(水) 16:37:55
>>884
お前にはできない
888884:2007/01/24(水) 16:48:47
>>886
グラフです。軸の書式設定を開いて目盛タブとかで設定する目盛です。
あれの間隔は等間隔にしかできないが
現実の日付は等間隔ではなく1ヶ月が30日の日もあるし31日の日もあるため毎月1日に目盛をつけることができません。
何か方法があるんでしょうか?
889名無しさん@そうだ選挙にいこう:2007/01/24(水) 16:53:10
ある
890名無しさん@そうだ選挙にいこう:2007/01/24(水) 16:59:31
883さんありがとうございます。これから勉強してみます。
全くの初心者で初歩的な質問ばかりですいませんでした。
またわからない事があると思いますがその時はまた教えて下さいm(__)m
891名無しさん@そうだ選挙にいこう:2007/01/24(水) 17:11:59
>>888
グラフには手動で線を描くこともできる
くれぐれもマッキーペンの極細でモニターに直接描かないように
892名無しさん@そうだ選挙にいこう:2007/01/24(水) 17:35:37
この時間帯、ホントに駄目なスレだなここw
893名無しさん@そうだ選挙にいこう:2007/01/24(水) 17:59:50
それって892が来る時間だからかな?
894名無しさん@そうだ選挙にいこう:2007/01/24(水) 18:05:17
俺は夜の部専門だから関係ないw
895名無しさん@そうだ選挙にいこう:2007/01/24(水) 19:21:48
>>884
弄ってりゃ聞くまでもなくできるだろう
軸の書式設定をよーく見てみろ
896名無しさん@そうだ選挙にいこう:2007/01/24(水) 20:04:49
ここは厨ばっかりなんだからここで聞くのが間違ってるよ
897名無しさん@そうだ選挙にいこう:2007/01/24(水) 20:56:54
エクセル2003を使用しています。
2次関数のグラフをかいて、
近似曲線を出して、数式をだしたら、
y=ax+bのaとbの小数点以下の桁数が違うんですが、
桁数を合わせる事はできますか?
898名無しさん@そうだ選挙にいこう:2007/01/24(水) 23:40:19
何言ってんだかちっとも分からないが、
脊髄反射で「セルの表示形式」とか言ってみる
899名無しさん@そうだ選挙にいこう:2007/01/24(水) 23:44:43
式を右クリックして表示形式だな
900名無しさん@そうだ選挙にいこう:2007/01/25(木) 04:49:36
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】

メニューバーのツールでenterキー押した時の次の方向を指定出来ますが
(ほとんどの場合下か右だと思う)一回の動作で2個下に行くとかA1→A3
2個右に行くとかA1→C1は出来ないのでしょうか。詳しい方おりましたら
教えて下さい。
901名無しさん@そうだ選挙にいこう:2007/01/25(木) 05:01:09
>>900
A1とA3のロックしていない状態でA1がアクティブ状態でエンター押すとA3に移動する
902名無しさん@そうだ選挙にいこう:2007/01/25(木) 05:02:42
>>900
>>901の状態でシートの保護(ロックされていないセルの選択だけをチェック)した場合ね
903名無しさん@そうだ選挙にいこう:2007/01/25(木) 08:51:33
A1セルを選択した状態からCtrlキーを押しながらA3セルをクリックすると
Enterを押したらA3セルに移動できるようになる
A3セルの次にA5セルに移動させたかったらA3セルをクリックした後、同様にA5セルを選択しておくこt
904名無しさん@そうだ選挙にいこう:2007/01/25(木) 09:28:08
前打った言葉を予測変換みたいに、打ってる後ろ側に表示されて
エンター押したらそれが入力される奴なんだけど

これの切り方教えてくださいな
ATOKのヘルプ見て、省入力系とか全部切ってみても変わらず・・・
Officeのヘルプを「変換」でけんさくしても、それっぽいのは発見されず・・・なのです
905名無しさん@そうだ選挙にいこう:2007/01/25(木) 09:45:55
> 「変換」でけんさくしても、それっぽいのは発見されず
そりゃそうだろ。
> 打ってる後ろ側に表示されて
は、変換ではなく補完なんだから

変換
┌─123
├→一二三
└→百二十三

補完
┌─123
├→123456
└→123000

ということで「セル 入力 補完」で検索してみろ。
ちゃんとOFFにする方法書いてあるから。
906904:2007/01/25(木) 09:49:29
なるほど
出来た
ありがとう
907名無しさん@そうだ選挙にいこう:2007/01/25(木) 13:38:58
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel 2003
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 不可
【5 検索キーワード     】 エクセル グラフ 図 リンク 書式

すいません、お忙しいとろこ質問です。
現在エクセルで簡単な計算を行ってグラフ化しています。ただ枚数が多いのでグラフは別に纏めようと思ったのですが
折角纏めても元の計算するシートと連動してグラフの形がころころ変わってしまうようです。
自分で調べて編集→リンクの設定でリンク切ればいいとわかったのですが、いちいち設定するのは面倒くさいです。
グラフを図として纏める方法はないでしょうか(但し点の位置情報は出来れば残したい)
計算シート2-3枚に対してグラフは何十枚となります。
908名無しさん@そうだ選挙にいこう:2007/01/25(木) 14:50:11
>>907
ヒント:スクリーンショット
909名無しさん@そうだ選挙にいこう:2007/01/25(木) 18:03:26
これって、
910名無しさん@そうだ選挙にいこう:2007/01/25(木) 18:06:34
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 INDEX 関数 Excel 空白 0

INDEX関数を使い参照先が空白の場合、結果が空白の時と0の時があるのですが、どうして二種類あるのでしょうか?
空白になって欲しいのですが、0が出て困っています。

=INDEX(
 一覧定義.xls!シート名リスト,
 MATCH(
  $B3,一覧一覧.xls!シートNo,FALSE
 ),
 1
)

こんな感じで別ファイルの一覧を表示しています。
空白が出るのがバグなのか、0が出るのがバグなのかも分からないところです。
ご教授お願いします。
911名無しさん@そうだ選挙にいこう:2007/01/25(木) 18:07:36
訂正:
×一覧一覧.xls
○一覧定義.xls
912名無しさん@そうだ選挙にいこう:2007/01/25(木) 18:42:43
>>910
空文字""を返しているセルを参照すると空文字が返る
何も入力していない空セルを参照すると0が返る
バグでもなんでもない基本的な仕様

それ以外が原因だと言うならブックをうpしてみろ
913名無しさん@そうだ選挙にいこう:2007/01/25(木) 19:37:19
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 可
【5 検索キーワード     】

式典のプログラムを作っています。

社長訓辞  9:00 〜 10:10 (70分)
社長表彰 10:00 〜 10:20 (20分)

みたいな形です。
他の行事でも使い回せるように (●分) のところを
関数を使って表示させたいのですが、
セルの書式設定など試したところ
05:00 みたいになってしまいます。
対応策を教えてください。
914名無しさん@そうだ選挙にいこう:2007/01/25(木) 19:39:19
>907
どうかお願いします。

>908
それも考えたのですが、整理が煩雑になるのとエクセル形式で受け渡ししたいので諦めました。
915910:2007/01/25(木) 19:44:06
>>912
確かにVBAで文字列を返していました。そのため空白になっていたんですね。
ありがとうございます。解決しました。
916名無しさん@そうだ選挙にいこう:2007/01/25(木) 19:44:37
>>914
現状、出てる方法以外無いかと。
てか、煩雑(面倒)などという理由が出てくる限り、一生無理。
917名無しさん@そうだ選挙にいこう:2007/01/25(木) 19:59:51
>>913
ユーザー定義で"h:mm"にすればおk
918名無しさん@そうだ選挙にいこう:2007/01/25(木) 20:03:12
ここんとこ雑誌か何かの問題みたいなのが続くな
919名無しさん@そうだ選挙にいこう:2007/01/25(木) 22:51:58
あるセルに自動的に昨日の日を表示させたいのですが、
どのようにすればよいのでしょうか?
920名無しさん@そうだ選挙にいこう:2007/01/25(木) 23:17:24
>>919
=NOW()-1
921名無しさん@そうだ選挙にいこう:2007/01/26(金) 00:52:39
【1 OSの種類      】 Windows2000
【2 Excelのバージョン】 Excel2000
【3 VBAが使えるか  】 いいえ
【4 VBAでの回答の可否】 可

データを入力したシートを、
”日報**月**日”という名前で新しいファイルを作成して
保存したいのですが、どうしたらよいでしょう。
**月**日の部分は入力した日付です。
922名無しさん@そうだ選挙にいこう:2007/01/26(金) 00:59:39
やる気ゼロの質問には答えない
嘘でも検索キーワードぐらい書けよ
923名無しさん@そうだ選挙にいこう:2007/01/26(金) 01:14:29
>>921
「”日報**月**日”という名前」はシートの名前なのかブックの名前なのかわからんな
924名無しさん@そうだ選挙にいこう:2007/01/26(金) 01:45:49
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否

列、国語、数学、理科、社会、…
行、名前1、名前2、名前3、…
の表があります。表の空欄には点数が入ります。
これを配布用に、A4に4人入るように印刷します。
詳しくは、名前1〜…それぞれに国語、数学等の項目を付加させた独立した表を
別シートに作り名前、点数をリンクさせたいのですが
やり方がわかりません
925名無しさん@そうだ選挙にいこう:2007/01/26(金) 02:02:31
>>924
検索関数
926名無しさん@そうだ選挙にいこう:2007/01/26(金) 02:12:49
ありがとうございます
明日試してみます。
927名無しさん@そうだ選挙にいこう:2007/01/26(金) 02:26:01
>>921
名前をつけて保存する
928名無しさん@そうだ選挙にいこう
>>927
っははは
その発想は無かった