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

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

Excel総合相談所 93

1 :名無しさん@そうだ選挙にいこう:2010/07/14(水) 23:54:36
▼━ 質問のしかた ━━━━━━━━━━━━━━━━━━━━
★1 質問するときは環境や条件はきちんと書いてね。情報後出しはダメ。
★2 要望は具体例や図を使って明確かつ具体的に。
★3 質問前に>>2-20あたりの注意書きやQ&Aを必ず読むこと。
★4 質問テンプレ(雛形)は必須じゃないけど、
   OSやExcelのバージョン、VBAの可否など(下記テンプレ1〜4の情報)は必須情報。

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

※【4】は、VBAはわからないけどコード書いてくれるならVBAでもいいって場合は「可」
  VBAを使うのは避けたいって場合は「否」にしましょう。丸投げする場合は、必要に応じてブックをアップすること。

※【5】は、あなたがGoogleやヘルプで検索した際に使ったキーワードを書いてください。
  まだ検索してないなら、質問の前にGoogleやヘルプで検索してみてください。
  ttp://www.google.co.jp/

前スレ
Excel総合相談所 92
http://pc11.2ch.net/test/read.cgi/bsoft/1274695863/

2 :名無しさん@そうだ選挙にいこう:2010/07/14(水) 23:55:42
▼━質問時の注意・決まり事━━━━━━━━━━━━━━━━━━━━
・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 テキストボックス(エディトボックス)、コンボボックス(ドロップダウンリスト)、リストボックス、コマンドボタン、
  チェックボックス、オプションボタン(ラジオボタン)、スピンボタン、スクロールバー、等の質問をするときは、
  ユーザーフォーム、コントロールオブジェクト、フォームオブジェクトのどれなのかを必ず書くこと。
・B 書籍や解説サイトの紹介以来はスレ以外。ここは技術的な質問のみで。


3 :名無しさん@そうだ選挙にいこう:2010/07/14(水) 23:55:54
★ルールを無視すると…
 >>1-2あたりのルールに従うか否かは自由だけど、従わないと以下のような不利益があるよ

 ★1.マルチをしてしまったら…
 A.謝っても他での質問を取り下げても、以後その質問に対する回答は付かない物と思ってください。
   それが嫌なら初めからマルチなんてしないように。>>2にマルチ禁止と書いてあり、
   マルチの意味が分からなければ検索すれば出てくるので、「知らなかった」は通用しません。

 ★2.>>1★4に従わず、必要な情報を出さないと…
 A.自分の使用しているバージョンで使えない機能を答えられたり、VBA使えないとか使いたくないと書かないと
   VBAでの解決OKで自分でコード書けるものと勝手に解釈されて、「VBAで出来るから自分でコード書いて」程度の
   適当な回答を返されたりします。また、ここではVBAコード書けない人の丸投げ依頼を許可してますが
   これはきちんとルールに従って質問、依頼した人のみの特権です。

 ★3.情報・条件を後出しすると…
 A.後から出された情報は意図的に無視されたり、質問自体を放置されたりします。
   >>1★4の必須情報はもちろんのこと、要望や条件、既に試したことなどは、
   長文になってもいいので詳細かつ明確かつ具体的に書きましょう。


★VBAについて
 VBAとは、『Visual Basic for Application』の略で
  Application
  ├Workbooks
  |└Workbook
  |  ├Worksheets
  |  |└Worksheet
 というApplication以下のオブジェクトを、VB言語で操作するものを指します。 
 例えExcel付属のVBE(Visual Basic Editor)を利用しようとも、このApplication以下のブックやシート、
 セルやオブジェクト等を操作するもの以外はVBA分野の話ではないので、ここでは聞かないでください。


4 :名無しさん@そうだ選挙にいこう:2010/07/14(水) 23:56:07
★ Excelで出来ないこと、仕様上の制限 (括弧内は代用法)

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

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


5 :名無しさん@そうだ選挙にいこう:2010/07/14(水) 23:56:26
★ Excelで出来ないこと、仕様上の制限 (括弧内は代用法)

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

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

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

 ▼グラフ
  ・ 棒グラフでひとつだけ突出したデータがあった場合に波線を入れて位置を合わせる
   (オートシェイプなどで見た目だけそうなるように弄る、別アプリでグラフを作り、オブジェクトとして挿入)
  ┌┐
  〜〜
  ||


6 :名無しさん@そうだ選挙にいこう:2010/07/14(水) 23:56:57
上記 「Excelで出来ないこと、仕様上の制限」 は、一般的に出来ないとされていること、出来ないと思われるものです。
間違いがある可能性もあるので、上記に挙がってるもので「コレはこうすれば出来るよ」というものがあったらご指摘ください。
Excel2007についても未確認な項目が多いので変更点が有ればご指摘下さい。

また、ここに書かれてないことでも、Excelで出来ないことはたくさんあります。
ここに書かれてないからといって必ず出来るはずだなんて思わないように。

>▼環境・書式
> ・ セルのサイズ(幅、高さ)を、長さの単位(ミリメートルなど)で指定する
補足
2007ではページレイアウトビューの表示時に限り、幅・高さともcm単位で表示され、
指定も同じくcm単位でできる。
ただし大元がインチ系なのでなかなかピタリの値は出ない。1cm→0.98cmのように
近い値に勝手に丸められる。

以上でテンプレ終わり (Excel総合相談所 89からコピペしました)


7 :名無しさん@そうだ選挙にいこう:2010/07/15(木) 01:14:42
FAQに追加
2007でマクロの記録が不完全なんだけど

2010に乗り換えてください

大量のデータを読み込ませたらメモリ不足エラー

2010の64bit版は一度に扱えるデータ量が格段に増えました

8 :複乳:2010/07/15(木) 07:22:39
>1乙


9 :前スレ977:2010/07/15(木) 19:37:17
http://pc11.2ch.net/test/read.cgi/bsoft/1274695863/979
詳しい解説、ありがとうございました。

10 :名無しさん@そうだ選挙にいこう:2010/07/15(木) 20:10:50
結回答してるけど、FAQなんか読んだことなかった。
面倒くさい(´・ω・`)

11 :名無しさん@そうだ選挙にいこう:2010/07/15(木) 20:52:49
複乳が前スレ埋めてるが、俺は1年くらい前にキムチ臭いスレッドを20ばかり埋めたら●のIDを剥奪されたぜ。
あの程度は大丈夫なのか?

12 :複乳:2010/07/15(木) 21:05:11
>>7
FAQの意味知ってるか?TIPSとは違うぞ
>>11
時間開けたけど最後連投規制になった。ここのリンク貼るつもりだったのに

13 :名無しさん@そうだ選挙にいこう:2010/07/15(木) 21:08:33
>>11 キムチ臭いスレッドだったからじゃね?

14 :名無しさん@そうだ選挙にいこう:2010/07/15(木) 21:15:58
【1 OSの種類         .】 Windows7
【2 Excelのバージョン   】 Excel2007
【3 VBAが使えるか    .】いいえ
【4 VBAでの回答の可否】 否

ワードアートについてです。
以前のバージョンのExcelで、POPなどの作成でワードアートを使用していました。
PCを買い替えて、Excel2007ではワードアートの仕様が全く違い驚きました。
そして不便なことが多く困っています。
調べてみると、Wordのワードアートは変わっていないようですが、
Wordではワードアート単体の位置を好きなように変えられないので、
使えないなぁという感じです。

そこで質問なのですが、以前使用していたMicrosoft office2000を、
現在使用している新しいPCにインストールってしても問題ないのでしょうか?
Microsoft office〜が重複しても大丈夫ですか?
よろしくお願いします。


15 :名無しさん@そうだ選挙にいこう:2010/07/15(木) 21:51:19
【1 OSの種類         .】 Windows7
【2 Excelのバージョン   】 Excel2007
【3 VBAが使えるか    .】 はい
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 "="の入力 エラー Excel

A1以下に0〜100の数値が入ってて、数値が3なら===、4なら====とイコールを数値の数だけ
入力したいんだけど数式なら=REPT("=",A1)でできるのに
VBAで
For i = 1 To range("a65536").end(xlup).row
   range("b"&i)=worksheetfunction.rept("=",range("a"&i))
next
とするとエラーで怒られます。
どうしたらいいですか?


16 :名無しさん@そうだ選挙にいこう:2010/07/15(木) 22:56:59
>15
range("b"&i) = "'" & worksheetfunction.rept("=",range("a"&i))
ではどうですか? 先頭が = なので、excelが計算式と解釈しようとしてエラーになってると思うので、
文字列だよ、と明示してあげればいいと思う。


17 :名無しさん@そうだ選挙にいこう:2010/07/15(木) 22:58:14
>>15
直接セルに === と打ち込んでもたぶんエラーになると思うよ
最初の = で数式と認識するから

んで対処法は セルの書式を文字列にする
For i = 1 To Range("a65536").End(xlUp).Row
  Range("B" & i).NumberFormatLocal = "@"
  Range("B" & i).Value = WorksheetFunction.Rept("=", Range("A" & i).Value)
Next

ちなみに VBAは String関数があるから
WorksheetFunctionを使わなくても
  Range("B" & i).Value = String(Range("A" & i).Value, "=")
の方がよいと思う

18 :名無しさん@そうだ選挙にいこう:2010/07/15(木) 23:11:18
>>14
Officeを複数インスコは可能。
ただし古いやつから順番に入れるのが鉄則。

ただ、ワードアートって2007のが表現の幅が広がってる気がする。
方法が変わっただけでできなくなったと思われてることも結構ある。

19 :名無しさん@そうだ選挙にいこう:2010/07/15(木) 23:19:56
【1 OSの種類         .】 Windowsxp
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】いいえ

000221という具合に前に0が幾つかついた数字が
同じ列に何千行か並んでいます。
その表記を221に改めたいのですが
頭文字の0の前に ` みたいな記号がついているため
セルの書式設定をどう変えても前の0がとれません。
冒頭の ` のみを、数千行にわたり削除するにはどうすれば
いいでしょうか。
vbaのコードでもいいので教えてください

20 :名無しさん@そうだ選挙にいこう:2010/07/15(木) 23:41:32
>19
A1以下に元データがあると仮定して、B1に =VALUE(A1) って入力して下にフィルコピー

21 :名無しさん@そうだ選挙にいこう:2010/07/16(金) 00:33:33
MsgBoxで、"" を表示させるにはどう書けばいいの?

例えば シート"DATA"を見てね とかメッセージを出したいです。

22 :名無しさん@そうだ選挙にいこう:2010/07/16(金) 00:38:18
>>21
""

23 :名無しさん@そうだ選挙にいこう:2010/07/16(金) 00:43:17
>>19
データがA列に入ってる場合

Sub a()
  Dim x() As Variant
  x = Range("A:A")
  Range("A:A") = x
End Sub


24 :名無しさん@そうだ選挙にいこう:2010/07/16(金) 01:05:28
>>19
列を選択して
データ→区切り位置→次へ→次へ→完了

25 :名無しさん@そうだ選挙にいこう:2010/07/16(金) 01:33:17
>>22
もう夏休み?

26 :名無しさん@そうだ選挙にいこう:2010/07/16(金) 01:41:32
>>21
MsgBox "シート""Date"" を見てね"

27 :名無しさん@そうだ選挙にいこう:2010/07/16(金) 02:20:49
>>25
あってるじゃん
""と書けば"が表示される
ゆとり?

28 :名無しさん@そうだ選挙にいこう:2010/07/16(金) 02:42:17
>>15
>>16-17で解決だろうけど、他の方法なら配列にため込んでから吐き出せば表示形式が標準でもエラーにならねーな。

29 :複乳:2010/07/16(金) 07:11:01
>>19
置換でいいんじゃない

30 :名無しさん@そうだ選挙にいこう:2010/07/16(金) 08:27:26
>>29
何を何に置換?
000を""だと3000は3になるが?

31 :名無しさん@そうだ選挙にいこう:2010/07/16(金) 08:29:16
すまん、頭に'がついてたのか
'0や'00や'000を空白に置換か

32 :31:2010/07/16(金) 08:35:08
>>31はやってみたら駄目だな

33 :複乳:2010/07/16(金) 09:28:58
ぎゃーすいません試してませんでした
じゃあA1に入ってるとして
B1=SUBSTITUTE(A1,"'","")*1
B1をA1に値で貼り付け

34 :15:2010/07/16(金) 10:30:48
>>16-17
出来ますた。
String関数なんてものがあるんですね。
知らなかった。
>>28
配列は苦手なのでString使って16か17でいこうと思います。

35 :名無しさん@そうだ選挙にいこう:2010/07/16(金) 10:56:32
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 可

A列とB列共に入力規則でドロップダウンリストで
入力する形にしたいのですが、条件として
A列の結果によって、B列のリスト内容を変更したいです。

皆様のお知恵を拝借させてください。

36 :複乳:2010/07/16(金) 12:30:57
>>35
あらかじめ名前を定義しておき、リストの範囲を=indirect(A1)のようにする
詳しくは↓
ttp://www.eurus.dti.ne.jp/~yoneyama/Excel/n-kis.htm
入力規則3 【リスト3】 リストの切り替え
ってとこ


37 :名無しさん@そうだ選挙にいこう:2010/07/16(金) 18:02:34
【1 OSの種類       】 WindowsXP
【2 Excelのバージョン 】 Excel2010
【3 VBAが使えるか   】 いいえ
【4 VBAでの回答の可否】 否

Excel2003では普通に使えたMOD関数が
Excel2010の互換モードで開くと
値が狂ってしまうのですが
他に似たような現象が起きた方はいませんか?

38 :名無しさん@そうだ選挙にいこう:2010/07/16(金) 18:11:50
>>37
MODは2010だと内部的な計算方式が変更されたから、結果が違うことがあるよ
ヘルプの「新機能: Excel 関数に対する変更」あたりを読んで

39 :名無しさん@そうだ選挙にいこう:2010/07/16(金) 19:06:29
>>37
ありがとうございます。
読んでみます。

40 :名無しさん@そうだ選挙にいこう:2010/07/16(金) 20:52:48
>>27
合ってねーじゃんw
「"" を表示させるには」って書いてあるがな

つーか、お前は何が楽しくて生きてんの?

41 :名無しさん@そうだ選挙にいこう:2010/07/16(金) 20:58:39
>>40
元の質問を最後まで読め
前後のクォートって意味で2つ並べてるだけだろ
例文のどこに「""」が出てくるんだよ

42 :名無しさん@そうだ選挙にいこう:2010/07/16(金) 21:23:08
>40

だまされたと思って自分で試してみなよ。
顔真っ赤になるからw

43 :名無しさん@そうだ選挙にいこう:2010/07/16(金) 22:06:31
【1 OSの種類       】 WindowsXP
【2 Excelのバージョン 】 Excel2002

四角い図形の中にある、名前と今日の日付を書き換えるマクロを
自動記録でやってみましたが、動作しません。
どこを直せばいいのか教えてください。

まず最初に構成から。
下記のような四角い図形があり、グループ化になっています。
http://upload.jpn.ph/upload/img/u63606.jpg
向かって左側のName1は"Rectangle 4"、右側のName2は"Rectangle 5"です。

図2のように、グループ化したままでも、手動ならシングルクリックで
書き換えることができるのに、マクロの自動記録ではできませんでした。
そこで、一度グループ化を解除して、中を書きかえてから
再グループ化したマクロをつくりました。

次に、Name1に当たるところをNAME1 = Range("B3").Value、
今日の日付をDATE1 = Format(Date, "dd/mmm/yy")にしました。

ところが、下記のマクロだと、ActiveSheet.Shapes("Group 9").Selectで
止まってしまい、実行時エラー'-2147024809 (80070057)':
指定した名前のアイテムが見つかりませんでした とメッセージが
出てしまいます。

Sub NAME1を記入()
Dim NAME1 As String, DATE1 As String

NAME1 = Range("B3").Value
DATE1 = Format(Date, "dd/mmm/yy")
ActiveSheet.Shapes("Group 9").Select
Selection.ShapeRange.Ungroup.Select

44 :43:2010/07/16(金) 22:07:50
'43の続き
Range("B3").Select
ActiveSheet.Shapes("Rectangle 4").Select
Selection.Characters.Text = NAME1 & Chr(10) & DATE1
With Selection.Characters(Start:=1, Length:=14).Font
 .Name = "MS ゴシック"
 .FontStyle = "標準"
 .Size = 10
 .Strikethrough = False
 .Superscript = False
 .Subscript = False
 .OutlineFont = False
 .Shadow = False
 .Underline = xlUnderlineStyleNone
 .ColorIndex = xlAutomatic
End With
Range("A1").Select
ActiveSheet.Shapes("Rectangle 4").Select
ActiveSheet.Shapes.Range(Array("Rectangle 4", "Rectangle 5")).Select
ActiveSheet.Shapes.Range(Array("Rectangle 4", "Rectangle 5", "Rectangle 6")).Select
ActiveSheet.Shapes.Range(Array("Rectangle 4", "Rectangle 5", "Rectangle 6", "Rectangle 7")).Select
Selection.ShapeRange.Group.Select
Range("B3").Select
End Sub

よろしくお願いします(ペコッ

45 :名無しさん@そうだ選挙にいこう:2010/07/16(金) 22:33:02
Sub t()
MsgBox ""
End Sub

46 :名無しさん@そうだ選挙にいこう:2010/07/16(金) 22:49:12
>>43
グループ化解除→再グループ化 すると名前が変わると思うけどそれは確認した?
Nameプロパティで元の名前に戻すとかしないと

47 :43:2010/07/16(金) 23:00:22
>>46
確認してます。
エラーの原因はそれなんですが、どこをどう弄ればいいのでしょうか?

48 :46:2010/07/16(金) 23:19:47
>>47
ActiveSheet.Shapes("Group 9").Select
Selection.ShapeRange.Ungroup.Select
'<省略>
Selection.ShapeRange.Group.Select
Selection.Name = "Group 9"
とか

49 :名無しさん@そうだ選挙にいこう:2010/07/17(土) 15:47:14
【1 OSの種類       】 WindowsXP
【2 Excelのバージョン 】 Excel2000
【3 VBAが使えるか   】 はい
【4 VBAでの回答の可否】 可

フォーム(コントロールではなく)のコンボボックスで選択して表示ている値(テキスト)を
VBA内で使いたいのです。
ActiveSheet.Shapes(Application.Caller).ControlFormat.Value
で選択した行数を取得することはできました。
しかし、コンボボックスで選択して表示している値をダイレクトに取得する方法はないでしょうか。

よろしくお願いいたします。
(コントロールのコンボボックスについてはやり方をネット上で見つけましたが、
フォームのコンボボックスとは根本的に違うんですね。)

50 :名無しさん@そうだ選挙にいこう:2010/07/17(土) 16:08:03
>>49
こんなでいいかな?
With ActiveSheet.Shapes(Application.Caller).ControlFormat
hoge = .List(.Value)
End With

51 :名無しさん@そうだ選挙にいこう:2010/07/17(土) 16:14:52
>>50
出来ました。
サンキュー
11時から悩んでいたのが解決しました。

52 :名無しさん@そうだ選挙にいこう:2010/07/17(土) 19:22:06
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel 2003
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 自動 能動 変更 indirect offset 

http://2ch-ita.net/upfiles/file3441.jpg

他のシートの数字を、特定のセルに入力した数字で指定した先から拾ってくるような仕組みを作りたいです。

上の写真の自転車工場のラインの例では、
「最終工程」のシートの「生産」(オレンジ色)の数字を
「組立3」のシートの「払出」(緑色)に反映させたいのですが、
払出先が頻繁に変わるため、「組立3」シートの「次部品」の欄(青いD4,D5)に
「ママチャリ」などと払出先を入力することにより、自動的に「ママチャリ」という文字の横にある生産セルから
タイヤの払出セルに数字が反映されるようにしたいです。

稚拙な説明で恐縮ですが、どうかご教示お願いいたします。






53 :名無しさん@そうだ選挙にいこう:2010/07/17(土) 19:26:58
【1 OSの種類       】 WindowsXP
【2 Excelのバージョン 】 Excel2000
【3 VBAが使えるか   】 はい
【4 VBAでの回答の可否】 可

またまた質問させて頂きます。
フォーム(コントロールではなく)の入力すみのコンボボックスの名前を指定して初期化したい
(VBAで初期化したい)のですが、どうしたらいいのでしょう。

(自分でいろいろ調べましたがフォームのコンボボックスについては見つからません>< )




54 :名無しさん@そうだ選挙にいこう:2010/07/17(土) 21:22:46
>52

index/match/offset

55 :14:2010/07/17(土) 22:28:58
>>18
遅くなってすみません。
レスありがとうございます。

もし古い方をあとから入れてしまった場合どのようなことがおきますか?

すみませんが、よろしくお願いします。

56 :名無しさん@そうだ選挙にいこう:2010/07/17(土) 22:40:34
>>53
自己レスですがわかりました。
「リンクするセル」に入っている値をクリアすれば良かったみたいです。
どうもお邪魔しました。

57 :43:2010/07/18(日) 00:13:39
>>48
すみません、
ActiveSheet.Shapes("Group 9").Selectで止まってしまうんですが・・・ orz

58 :52:2010/07/18(日) 01:52:16
ご回答ありがとうございます。
3時間ほど調べてみましたが、目的の数値を参照する方法などがよくわかりません。
「組立3」シートの「I4」セルに、「最終工程」シートの「I5」の数値を表示したい場合、

OFFSET関数については、基準となるのが「最終工程」シートの「ママチャリ」というセルのため、
ママチャリのセルから下に1、右に8離れているため、OFFSET(??,1,8,0)という数式がおぼろげながら分かりました。

MATCH関数は「C4」で指定の「最終工程」シートから「D4」で指定の「ママチャリ」という単語を探したい場合、
=MATCH(D4,INDIRECT("'"&C4&"'!検索範囲"),0)
という数式だと思われるのですが、正常に動作しません。

また、INDEXについてどこで使ってどう組み合わせてひとつの数式にするのがわかりません。
「I4」セルに入れる数式についてお手本を作っていただけませんでしょうか?
よろしくお願いいたします。



59 :複乳:2010/07/18(日) 07:32:17
>>55
PCが爆発するよ
っていうのは嘘だけど
バージョンによって挙動も違うし、何も起こらないかもしれない。
ただ被害を抑えたければ正しい順番で再インストールした方がいいと思う
>>57
Selection.ShapeRange.Ungroup.Select  'グループ解除
'<省略>
Selection.ShapeRange.Group.Select 'グループ化
Selection.Name = "Group 9" '名前設定

だから、省略の内部で別の図形をselectしているとうまくいかない
下のように、グループ化直前にselectする

Selection.ShapeRange.Ungroup.Select  'グループ解除
'<省略>
ActiveSheet.Shapes.Range(Array("Rectangle 4", "Rectangle 5", "Rectangle 6", "Rectangle 7")).Select
Selection.ShapeRange.Group.Select 'グループ化
Selection.Name = "Group 9" '名前設定


60 :名無しさん@そうだ選挙にいこう:2010/07/18(日) 19:28:13
abc:def
a:bc:ed というテキストデータを貼り付けたら

abc  def
a    bc   ed になってしまいました。

それぞれ1つのセルに貼り付けるにはどうすればいいですか?










61 :名無しさん@そうだ選挙にいこう:2010/07/18(日) 20:55:26
>>60
その前(又は過去に) : を区切り文字として使った事ない?

区切り位置の設定で 設定変更すると 設定が変更されたままになる
初期設定で区切り位置を実行したい場合はExcelを一旦終了するか

区切り位置を実行して設定を変更する
([データ]タブ、の[区切り位置]ボタンをクリック)

これでダメなら俺にはわからん

62 :名無しさん@そうだ選挙にいこう:2010/07/18(日) 21:09:12
>58
>また、INDEXについてどこで使ってどう組み合わせてひとつの数式にするのがわかりません。

ググッて分からないならあきらめろ。

>「I4」セルに入れる数式についてお手本を作っていただけませんでしょうか?

断る。

63 :名無しさん@そうだ選挙にいこう:2010/07/18(日) 21:10:08
>>61
レスありがとうございます。
仰るとおり、区切り文字として使ってました。
ボックを閉じてもだめなんですね。
Excelを一旦終了して解決です。

64 :名無しさん@そうだ選挙にいこう:2010/07/18(日) 21:11:33
すいません
ボック じゃなくて、ブック の打ち間違いです。

65 :名無しさん@そうだ選挙にいこう:2010/07/18(日) 23:56:25
半角→全角(またはその逆)にする関数はありますが、
セルの中に半角カタカナが含まれてたら、
セル内の文字を削除する方法を教えてください。

66 :名無しさん@そうだ選挙にいこう:2010/07/19(月) 00:01:07
>半角→全角(またはその逆)にする関数はありますが、

    ↑は不要でした。

67 :名無しさん@そうだ選挙にいこう:2010/07/19(月) 01:39:50
>>65
VBA

68 :名無しさん@そうだ選挙にいこう:2010/07/19(月) 10:54:18
マクロで関数を代入するときに

[セル].value="=SUM(a1:c5)"
[セル].formula="=SUM(a1:c5)"
[セル].formulaR2D2="=SUM(a1:c5)"

の使い分けがわからん。
みんな一緒じゃない?

69 :複乳:2010/07/19(月) 11:07:28
>>68
R2D2はスターウォーズだろ
上二つの違いは、取得する時に変わる。代入なら多分同じ動作になったと思う。あんまり自信はない

例えば
A8=SUM(a1:c5)
のvalueはSUMで合計した数値になるし、formulaは"=SUM(a1:c5)"になる

あとformulaR1C1はR1C1表記じゃないとうまく動かないは図
Cells(7, 1).FormulaR1C1 = "=SUM(a1:c5)"
とすると、
A7=SUM('a1':$E:$E)
とおかしくなるし、取得時も

Sub a()
Cells(8, 1).Formula = "=SUM(a1:c5)"
aaa = Cells(8, 1).FormulaR1C1
End Sub
だと
aaaの中身は"=SUM(R[-7]C:R[-3]C[2])"んいなる

70 :名無しさん@そうだ選挙にいこう:2010/07/19(月) 15:15:04
【1 OSの種類       】 WindowsXP
【2 Excelのバージョン 】 Excel2000
【3 VBAが使えるか   】 はい
【4 VBAでの回答の可否】 可

ボタンを一回押すと、(多分)VBAが実行されて
フォームのコンボボックスが見えなくなり、
コンボボックスの下にあったセルに手入力できるように
なるEXCELファイルがあります。
次にもう一回ボタンを押すと、コンボボックスが現れます。
事前にコンボボックスで内容を選択後に消していればその内容が保持されたまま
で現れます。

このVBAやシートには保護パスワードがかかっていて
VBAのコードは見れません。
これと同じことを自分で作ったブックで行ないたいのですが
これは、コンボボックスを切り取りして一時的にどこか見えない
ところに貼りつけて、もう一度ボタンを押すとそれをまた切り取って
元の位置に戻しているだけかとも思いましたが、
それともっとスマートなやり方があるでしょうか?
よろしくお願いいたします。





71 :名無しさん@そうだ選挙にいこう:2010/07/19(月) 15:17:37
非表示にしてるだけでしょ

72 :複乳:2010/07/19(月) 15:20:50
>>70
プロパテぃのshowだかvisibleをFALSE/TRUE

73 :68:2010/07/19(月) 15:42:08
>>69
なるほどそうでしたか
毎度ありがとうございます

74 :名無しさん@そうだ選挙にいこう:2010/07/19(月) 16:17:27
>>71
>>72
御回答ありがとうございます。
ユーザーフォームに作るコントロールのコンボボックスだと
With Sheet1.ComboBox1
.Visible = False
End With
これでいいような気がしますが、

フォームメニューから作ったコンボボックスだと
どうやればいいのでしょうか?
「VBA使える」と書いておきながらすみません・・・


75 :名無しさん@そうだ選挙にいこう:2010/07/19(月) 16:45:54
調べもせずに、だけど、
フォームは表示・非表示が出来ないんじゃね?

76 :名無しさん@そうだ選挙にいこう:2010/07/19(月) 17:10:54
>>75
うーん、そうなんですかね・・・

77 :名無しさん@そうだ選挙にいこう:2010/07/19(月) 18:44:59
普通の会社で日常的にパソコン使うくらいなら、
よくわかるExcelシリーズの基礎にのってるぐらいのことが
できればいいのかな?

78 :複乳:2010/07/19(月) 18:48:54
>>75
>フォームメニューから作ったコンボボックス
これってシートに貼付けたコンボボックスのことだよね
デザインモードを終了しないと消えないよ
>>77
本の名前言われても困るけど、まぁ初心者向けの本の機能は一通りできますって言えばまぁ大丈夫じゃないかな
不安なら
http://www.relief.jp/itnote/
ここのエクセルの部分読んでおくといいかもね

79 :名無しさん@そうだ選挙にいこう:2010/07/19(月) 18:49:48
>>74
Worksheets("sheet1").Shapes("Drop Down 1").Visible = False

Worksheets("sheet1").Shapes("Drop Down 1").Visible = True

80 :名無しさん@そうだ選挙にいこう:2010/07/19(月) 19:01:33
>>79
で、出来ました m(。。)m


81 :名無しさん@そうだ選挙にいこう:2010/07/19(月) 19:25:55
>>67
で、どうやるの?

82 :名無しさん@そうだ選挙にいこう:2010/07/19(月) 20:09:09
普通の会社で使うぐらいって500円で学べるとかって本ぐらいで十分じゃないの?

83 :名無しさん@そうだ選挙にいこう:2010/07/19(月) 20:52:10
おいらのPCで、郵便番号7けたの数字を入力しただけで住所が変換される機能が使えなくなったのはどうしてですか?
3けたの数字ならなぜかうまく機能してるんです。


84 :複乳:2010/07/19(月) 22:02:48
>>81
こんな感じじゃないか?A1セル限定だけどまぁテキトーに応用できるだろう
Sub a()
Dim moji, k, keyascii, hidari, migi
moji = Len(Cells(1, 1).Value)
For k = moji To 1 Step -1
keyascii = Asc(Mid(Cells(1, 1), k, 1))
If keyascii > 160 And keyascii < 224 Then
hidari = Left(Cells(1, 1).Value, k - 1)
migi = Right(Cells(1, 1).Value, Len(Cells(1, 1).Value) - k)
Cells(1, 1).Value = hidari & migi
End If
Next
End Sub
>>83
わからん。
郵便番号ウィザード 三桁 でぐぐった結果のどれかか
もしくはアドインの郵便番号ウィザード(だっけ?)を入れなおす
もしくは解決方法じゃないけど、googleIME入れるとメモ帳でも変換できるようになるし、個人的にはコッチのほうが便利だと思う

85 :名無しさん@そうだ選挙にいこう:2010/07/19(月) 23:08:57
>>84
65です。
ありがとう、できました。
セル内の半角カナカナを削除するんじゃなくて、
セル内の文字を削除したいので、
行削除に改造しました。


86 :名無しさん@そうだ選挙にいこう:2010/07/20(火) 14:09:09
Excelを使用していて
abcde
などあるセルに入力して
ab
と入れたときに
abcde
と勝手にプルダウンが出てしまうのですが
それを禁止する方法はありませんか?

87 :名無しさん@そうだ選挙にいこう:2010/07/20(火) 14:47:38
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 VLOOKUP 名簿

VLOOKUP関数を使って名簿を作っているのですが、B11(B12と結合)に名簿番号、
C11(C12と結合)に名前、F11に入社年月日、F12に経験年数を入力しなければならないのですが
(伝わりますでしょうか…)、F12のセルにどう入力したらいいのかがわかりません。
列番号の指定をどうにかしなきゃいけないような気がしてるんですが…
どうすればいいのか、どなたかご教示ください。よろしくお願いします。

88 :名無しさん@そうだ選挙にいこう:2010/07/20(火) 14:57:21
>>87
どこにVLOOKUP使ってるんでしょうか?

89 :複乳:2010/07/20(火) 15:06:26
>>86
オプション 編集 オートコンプリートのチェック


90 :名無しさん@そうだ選挙にいこう:2010/07/20(火) 15:07:51
>>88
すいません。てんで説明不足だったようで…

まず職員一覧があって、その職員一覧から何人かを抜粋した名簿を作成しなきゃいけない時に簡略化したいと思いまして。

各セルにVLOOKUPを使っています。

C11には =VLOOKUP(A11,一覧!$A$11:$M$129,3,FALSE)
F11には =VLOOKUP(A11,一覧!$A$11:$M$129,6,FALSE) のように。
で、この場合のF12に入力する式というのが質問なんです。すいません。これで伝わりますでしょうか…

91 :複乳:2010/07/20(火) 15:14:17
>>90
=DATEDIF(F11,NOW(),"y")
こんな感じ?

92 :名無しさん@そうだ選挙にいこう:2010/07/20(火) 15:32:48
>>91
すいません。経験年数は一覧の方で計算するようにしてるんで大丈夫なんです。

ttp://uploader.moe.hm/src/up2913.jpg_l49uOHsgfWi9FGYN7JRS/up2913.jpg

Aに番号を入力しただけで↑の全ての項目が一覧から引っ張られるようにしたいのですが
黄色い部分に入れる式がわからない、という質問なんです。わかりにくくて申し訳ないです…

ちなみに一覧は同じ書式で全て入力してあります。

93 :複乳:2010/07/20(火) 15:54:38
>>92
すまん、わからん
>>90の=VLOOKUP(A11,一覧!$A$11:$M$129,3,FALSE)や=VLOOKUP(A11,一覧!$A$11:$M$129,6,FALSE) のようにして
適切な列を指定すれば言いだけじゃないの


94 :名無しさん@そうだ選挙にいこう:2010/07/20(火) 16:19:26
参照元の一覧の書式が変だからvlookup使えないんじゃね

95 :名無しさん@そうだ選挙にいこう:2010/07/20(火) 17:04:26
元の一覧も結合してあったりするんだろうな
=INDEX(一覧!$F$11:$F$129,MATCH(A11,一覧!$A$11:$A$129,0)+1)
とか不幸なことをするしかないんだろ

96 :複乳:2010/07/20(火) 17:25:28
あぁ、そういうことかねぇ
セルの結合は思い切って全部解除した方がいいかもねぇ

97 :名無しさん@そうだ選挙にいこう:2010/07/20(火) 18:11:25
みなさん色々ありがとう。

>>95>元の一覧も結合
その通りです…
これって不幸なんですか?確かにコピーで反映されないんで面倒でしたけど無事出来ました!
ありがとうございました!でも式がイミフ。勉強します。

98 :名無しさん@そうだ選挙にいこう:2010/07/20(火) 19:13:19
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2007
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 ランダム 並び替え EXCEL

一日数コマ×一週間のタイムテーブルのマスを
数種類の事柄でランダムに埋めたいと思い

A列にコマの数だけ=RAND()と入れ
B列に同じ数だけ事柄を記入しました。

で、A列をキーにして並び替えるのですが
昇順にしても、乱数がきちんと昇順になりません。
なぜなんでしょうか?

RAND関数は数じゃないのでしょうか?

99 :35:2010/07/20(火) 19:25:51
おそくなってごめんなさい。
(頼んでいたことを、忘れていました)
>>36さん、ご指導ありがとうございました!

100 :名無しさん@そうだ選挙にいこう:2010/07/20(火) 19:39:53
>>98
並べ替えるたびにランダムの数字をあててるんでしょ

101 :名無しさん@そうだ選挙にいこう:2010/07/20(火) 19:50:45
>>98
RAND関数は何か操作をするたびに数字が変わっていく
一回限りで固定したいなら値貼り付け

102 :名無しさん@そうだ選挙にいこう:2010/07/20(火) 20:11:13
>>100
>>101

なるほど!
そういう理由だったのですね。
昨晩から悩み続けてましたorz

ありがとうございました。


103 :名無しさん@そうだ選挙にいこう:2010/07/21(水) 01:12:17

【1 OSの種類         .】 Windows2000
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 はい
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 ピンボール アルゴリズム

エクセルでピンボールを作ってる途中なんですがこっからどうしましょう
http://www42.atwiki.jp/syugyou?cmd=upload&act=open&pageid=243&file=nnn.xls

104 :名無しさん@そうだ選挙にいこう:2010/07/21(水) 04:37:53
エクセルの関数って独学で理解というか身に付けていけるものですか?
すごい初心者なんでスレ違いだったら申し訳ないんですけど・・
関数とか普通に使える人はみんな最初はどんなふうに勉強したんですか?

105 :名無しさん@そうだ選挙にいこう:2010/07/21(水) 04:40:34
連投すいません、関数で出てくるまではテキストで普通に進んで
いけたんですが関数が出てきて急につまってしまったんで・・

106 :名無しさん@そうだ選挙にいこう:2010/07/21(水) 05:06:36
>>105
関数が出てきたら詰まったって、それ1ページ目か2ページ目か、
ほとんど最初のところで詰まったってことじゃん
そうでないなら、知らないうちに関数を使ってるはず

107 :名無しさん@そうだ選挙にいこう:2010/07/21(水) 06:38:09
>>105
実際に使って理解できるまでガンバロ
それしかない

108 :複乳:2010/07/21(水) 06:38:23
>>103
ゲームオーバー 点数 残機表示の実装
後はエフェクトだけどやり始めると終わらん。この辺はwindowsについてるピンボールを真似すればいいと思う
ある程度できたらniconicoにでも投稿するといいかもね
>>104
http://www.eurus.dti.ne.jp/~yoneyama/Excel/kansu/itiran.html
全部読んでとりあえず使ってみる
後は反復練習

109 :名無しさん@そうだ選挙にいこう:2010/07/21(水) 12:50:19
関数で詰まるってことは表とかグラフまでってことかな?

関数って一般事務とか営業事務の事務職と営業職だと
どっちのほうが使うんだろうね?

どうやって覚えるって、関数覚えるのにパソコン教室とか
訓練とかまではないと思うけど、どうなんだろ。。。

110 :名無しさん@そうだ選挙にいこう:2010/07/21(水) 13:02:12
四則計算とピボットさえできりゃ何にも要らないんだよ

111 :複乳:2010/07/21(水) 13:15:21
>>109
普通に事務でしょ
>>110
罫線やグラフ、書式設定もいるねぇ

112 :名無しさん@そうだ選挙にいこう:2010/07/21(水) 13:27:20
>>111
罫線はいらねーんだよ。
日本人は罫線がやたら大好きだが外国いったら笑われるぜ。
グラフはピボットグラフ、書式設定はピボットでも使うから必要ではある。

113 :名無しさん@そうだ選挙にいこう:2010/07/21(水) 13:33:25
>111
そうなんだ。なんか営業とかのほうがエクセルって使いこなせないと
ダメとかって聞いたんだけど。営業って事務職の仕事もできないと
いけないからとからしくて…でもやっぱ事務だよね。それとも何の営業
とかにもよるかな…

よくわかるシリーズの応用って難しいね。こんなの使えないといけないんか
な?普通の事務員さんはみんなできるの?

114 :複乳:2010/07/21(水) 13:53:30
>>112
>外国いったら笑われる
ここは日本だぞ。指示されて線の引き方知りませんなんて言えない
独立する方には必要ないかもしれないけど
>>113
使いこなせるっていうより、使えないとダメってことだと思う
とりあえず請求書を1から作れるぐらいでいいとは思うけど
後はその会社ごとに必要な機能も違うだろうから、事務の人に教えてもらうといいかも
どこが分からないか分からない、という状況にさえならなければ何とかなるでしょ、多分

115 :名無しさん@そうだ選挙にいこう:2010/07/21(水) 14:20:23
>>112
>>外国いったら笑われるぜ。

既に>>112が笑われている件について。

116 :名無しさん@そうだ選挙にいこう:2010/07/21(水) 14:45:35
よくわかるシリーズって本当にいい教材?
CD−ROMついててサクサク進むけど、あれって身についてないのに
結構進んで、わかった気になってるようなだけな気がする・・
問題集やったほうがいい?

117 :名無しさん@そうだ選挙にいこう:2010/07/21(水) 15:54:50
何がやりたいかにもよるんじゃないか
MCASの資格とりたいだけならそれでいいんじゃない

118 :複乳:2010/07/21(水) 16:37:13
よくわかるシリーズが良く分からないが、
まぁどの本も内容は大体同じと思う

119 :名無しさん@そうだ選挙にいこう:2010/07/21(水) 22:26:43
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2007
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否

シートに約300行のデータ(列はA〜Gまで)があるのですが
このデータを奇数行と偶数行で別のシートに分けるにはどのようにすれば良いでしょうか?
VBAは全くの素人なのでエクセル操作のみでお願いしたいのですが・・・

120 :名無しさん@そうだ選挙にいこう:2010/07/21(水) 23:01:00
>>119
その程度の量ならH列に1,2,1,2,1,2…ってオートフィルで貼り付けて
1だけ抽出して2シートめへ、2だけ抽出して3シートめへ、でいいんじゃね?

121 :名無しさん@そうだ選挙にいこう:2010/07/22(木) 04:31:46
>>119 他には
>>120のようにH列をオートフィルしてから
H列で並べ替えて、それぞれ別シートへC&P

122 :名無しさん@そうだ選挙にいこう:2010/07/22(木) 14:19:36
0721 300
1107 5000
6969 10000
1234 5678
0721 1700

のようなデータがあるとします。
1列目が番号で、2列目が価格だとします。

同じ番号の価格を加算してExcelのシートに
書きだそうと思うのですが、どうするのが
最も最適なのでしょうか?

例えば、1行目と5行目は同じ0721です。
マクロを実行させると、他のシートに
0721 2000
と書きだすことになります。

123 :名無しさん@そうだ選挙にいこう:2010/07/22(木) 14:40:05
>>122
重複してるものだけ合計して書き出すのか?
それとも重複してないものも書き出すの?
後者ならピボットテーブルだよ。

124 :122:2010/07/22(木) 15:00:07
>>123
後者の方ですねぇ…片足をつけたまま、ですか…

ピボットはマクロに組み込めませんので、とりあえず
 1.ループでA列を読んでいく。作業シートのA列と比較して
  値がなければその値を作業シートのA列、金額を作業シートB列に書き込む。
 2.A列+1の値を読む。値があればB列に金額を加算。値が無ければ1同様新規追加
のようにしてごり押ししていこうと思います。

125 :名無しさん@そうだ選挙にいこう:2010/07/22(木) 15:22:02
>>124
そういう効率の悪いやり方はいかんよ。
データの種類が多いと遅くなるぞ?
ピボットは作りさえすれば、あとはマクロで簡単に操作できる。
記録マクロで範囲の部分を少しいじって、あとは更新だけだから。
どうしてもピボットを使いたくなければ最低並び替えくらいしろ。
同じ値が続く間加算していくだけだ。
あだ花のDictionaryは使うなよ。


126 :名無しさん@そうだ選挙にいこう:2010/07/22(木) 21:58:26
>>120-121
ありがとうございます!

127 :名無しさん@そうだ選挙にいこう:2010/07/23(金) 04:58:24
2007のVBAのヘルプが使いにくくてたまらん。
VBAXL10.CHMを読みたくてもダミーファイルらしく開くことができない。
どこかにzipファイルで圧縮されてるようだが、どこにあるの?

128 :名無しさん@そうだ選挙にいこう:2010/07/23(金) 08:03:05
>>127
VBAのヘルプはVBE→F1で出る

129 :名無しさん@そうだ選挙にいこう:2010/07/23(金) 10:05:04
>>128
何故かオンラインヘルプが読めなくなってしまった。
2010betaを入れたからか?
「このページはご利用板だれません」と出てくる。
[コンピュータに保存されたオフラインのコンテンツを表示する ]をクリックすると
なんとか読めるが、昔のレガシーなヘルプとは使い方が違うような気がする。
オンラインヘルプより、どっちかつーとーとレガシーヘルプを昔のように使いたいんだが。
MSE_LEGACY.HXSらしいんだが、どうやって開くのか分らん。

130 :名無しさん@そうだ選挙にいこう:2010/07/23(金) 12:26:59
>>129
俺もあまり詳しくはないんだが

HXSを閲覧するにはExcel.exeと同じフォルダに入っているCLVIEW.exeを使う
ファイル名を指定して実行から
"C:\Program Files\Microsoft Office\Office12\CLVIEW.EXE" "EXCEL" "Microsoft Office Excel"
とやるとExcelを起動しなくても単独でヘルプビューアが起動できる

あとはIEから
ms-help:// 〜 /????.xml
みたいに開くらしいけどよくわからん

131 :名無しさん@そうだ選挙にいこう:2010/07/23(金) 12:33:30
>>130
CLVIEW.EXEに関してはすでにやってるんだよね。
それじゃ駄目なんだ。
2010betaのせいかなぁ。

132 :名無しさん@そうだ選挙にいこう:2010/07/23(金) 16:48:12
2010入れてみれなくなったら、そら2010が原因だろうよ。
つーかいまさらβってアホじゃねーの。

133 :複乳:2010/07/23(金) 16:50:35
EXACT関数って何か良い使い方ありますか?

134 :名無しさん@そうだ選挙にいこう:2010/07/23(金) 17:04:17
暗黙の変換させないで厳密な比較したいときに使えばいい

135 :複乳:2010/07/23(金) 17:53:01
>>134
ありがとうございます!

136 :名無しさん@そうだ選挙にいこう:2010/07/23(金) 17:58:47
2010ベータ君を筆頭にアホばっかだな

137 :名無しさん@そうだ選挙にいこう:2010/07/23(金) 21:08:10
>>136
自己紹介お疲れ様です!

138 :名無しさん@そうだ選挙にいこう:2010/07/24(土) 08:23:15
WebのFormと同じボタンをexcelも作ることができます?
それを押すとWebと同じように機能するようにしたいです。
Webのformのname=,value=は、excelではあらかじめ指定して入力不要で済むように。

139 :名無しさん@そうだ選挙にいこう:2010/07/24(土) 08:49:32
>>138
まずは「excel form」でググって、それでも分からんことだけを聞くように。

140 :138:2010/07/24(土) 08:54:44
いやexcelのformじゃなくてボタンを作りたいだけなんですよ
それをwebのformを値指定でsubmitしたいの

141 :名無しさん@そうだ選挙にいこう:2010/07/24(土) 09:13:21
ダメだこりゃ

142 :名無しさん@そうだ選挙にいこう:2010/07/24(土) 09:31:22
>>138 >>140
もし、やりたい事が
Excelのボタン押す→IE起動→あるWebページのFormへ値を自動的に入力→ Submit
ならVBAで可能
「Excel IEオブジェクト」でググってみたら?

143 :名無しさん@そうだ選挙にいこう:2010/07/24(土) 09:34:05
>>140
ググるとはどういうことか、分かってないようだね。
「Googleとかで検索することでしょ?そんなの知ってますよ!」ってか?w
そういうことを言ってるんじゃないのよ。

144 :138:2010/07/24(土) 09:45:13
そのとおり!
VBAでどう記述するのでしょうか?

ググるとは、ググレカレーをつくって食べるということですか?それはククレカレーだし。

145 :名無しさん@そうだ選挙にいこう:2010/07/24(土) 09:50:56
>>138の文章を読んだ瞬間に、こういう性格の奴だとすぐに分かったわw

146 :138:2010/07/24(土) 10:00:29
そんなこといわずにおしえれ

147 :138:2010/07/24(土) 10:15:14
時間だ
答えを聞こう

148 :名無しさん@そうだ選挙にいこう:2010/07/24(土) 10:18:24
答え:この世界に全く向いてない。虎乗りにでも転職しろ。

149 :138:2010/07/24(土) 10:26:16
そこは「バルス」と言って欲しかった

150 :複乳:2010/07/24(土) 13:13:20
>>144
ググるとは、googleで検索すること

151 :名無しさん@そうだ選挙にいこう:2010/07/24(土) 14:53:51
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否

以下のような名前/身長/体重を表したデータがあるとします。
名前をリストにして選択すると、身長と体重も名前の右のセルに出力するようにしたいです。
(例:A1の名前のリストで田中を選択すると、160をB1、150をC1に表示させたい)

一つのリストに連動して他のセルの値を変える方法がわからないのですが、
どのようにすればよいでしょうか?


山田 170 60 
田中 160 50
中山 150 40



152 :名無しさん@そうだ選挙にいこう:2010/07/24(土) 15:21:36
>>151
vlookupですね

153 :名無しさん@そうだ選挙にいこう:2010/07/24(土) 15:22:19
>>151

山田     =VLOOKUP(a1,$a$100:$c$200,2,0)     =VLOOKUP(a1,$a$100:$c$200,3,0)
田中     =VLOOKUP(a2,$a$100:$c$200,2,0)     =VLOOKUP(a2,$a$100:$c$200,3,0)
中山     =VLOOKUP(a3,$a$100:$c$200,2,0)     =VLOOKUP(a3,$a$100:$c$200,3,0)











山田 170 60 
田中 160 50
中山 150 40

154 :名無しさん@そうだ選挙にいこう:2010/07/24(土) 19:00:17
Excel起動時に日本語入力モードになってるのがうざいんですけど
半角英数字で起動する方法はありますか?

155 :名無しさん@そうだ選挙にいこう:2010/07/24(土) 23:24:01
EXCEL2007です。
質問なのですが、Sheet1に数万行のデータがあって、
Sheet2には千行ほどあります。
Sheet1の方は数式を値に貼替えていて、Sheet2は数式がありますが
たったの2列です。
この2列を削除したいのですが、削除しようとしたらフリーズしてしまいます。
セルを選択してDelもダメ。
列を選択してDelもダメで。
空白セルをコピーして、削除したいセルに貼りつけてもダメ。
どうにもなりません。解決策をお願いします。

156 :名無しさん@そうだ選挙にいこう:2010/07/25(日) 02:39:34
>>152->>153
ありあがとうございました!
無事解決しました

157 :名無しさん@そうだ選挙にいこう:2010/07/25(日) 05:46:52
>>155
とりあえず計算方法の設定を自動→手動に切り替えてから削除してみては?

158 :名無しさん@そうだ選挙にいこう:2010/07/25(日) 06:38:55
>>154
君はお風呂に水を入れようとして蛇口ひねったらシャワーから水が出てくるタイプだな。w

もしかしてAT〇Kか?


159 :複乳:2010/07/25(日) 07:48:49
>>154
まずスタートアップのフォルダを探す。OSやエクセルのバージョンによって違う。
C:\Documents and Settings\名前\Application Data\Microsoft\Excel\XLSTART
ここのファイルがエクセル起動時のファイルになるので、これを編集
全体選択(CTRL+A)→データ、入力規則、日本語入力タブ、日本語入力をオフに

>>155
メモリエラーかなぁ
新しいファイルを作って、Sheet1だけコピーする

>>158
全然面白くないから二度と書き込まないでね

160 :暑中お見舞い申し上げます。:2010/07/25(日) 08:08:52
>>159
君は比喩的表現が生理的に受け付けないか、または理解できないのか、
もしかして下段のATOKを知らずに隠語と何か勘違いしたのか、
おそらく暑さでカリカリして苛立っているのだろうな。

161 :複乳:2010/07/25(日) 08:14:13
言いたいことは一つ
回答者なら回答してから雑談でもしましょうということ

162 :暑中お見舞い申し上げます。:2010/07/25(日) 08:33:39
>>161
>>154はテンプレ使って質問Sしてないから使用環境を知るためにあえてああいった
表現を使ったまで。

第三者の君に
>>158
全然面白くないから二度と書き込まないでね

と言われる筋合いの事ではないのだがな。


163 :名無しさん@そうだ選挙にいこう:2010/07/25(日) 08:34:02
複乳って名前の割に真面目だよな
名前の割に

164 :名無しさん@そうだ選挙にいこう:2010/07/25(日) 09:03:34
Excelのある1つのシートだけはHTMLページにしたいんです
つまりそのシートだけは他で作ったHTMLシートを埋め込む感じです
どうすればいいか教えてちょんまげです

165 :名無しさん@そうだ選挙にいこう:2010/07/25(日) 12:35:02
>>157 それでやってもダメなんですよね。
1つ1つ消すわけにも行かないけど、やってみたら2つは消せても
3つ目でフリーズ。
仕方がないのでSheet1だけコピーして他のブックに貼付けました。
意味不明な出来事でした。

166 :名無しさん@そうだ選挙にいこう:2010/07/25(日) 22:01:44
VBAで下記の2つは同じですか?
Selection.Areas.Count
Selection.Cells.Count

167 :名無しさん@そうだ選挙にいこう:2010/07/25(日) 22:22:09
>>166
全く別のもの
実際にやってみれぱ分かると思うけど
A1:A3 と C1:C2 を2つの領域を選択した時
Selection.Areas.Count = 2 .... 選択した領域の数
Selection.Cells.Count = 5 .... 選択したセルの数

168 :166:2010/07/25(日) 23:01:06
どうもThanks >>167

169 :名無しさん@そうだ選挙にいこう:2010/07/25(日) 23:43:05
【1 OSの種類         .】 WindowsXP SP3
【2 Excelのバージョン   】 Excel 2003
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 可(VBAを使わないと難しければ)

エクセルで作製したグラフのプロット上にマウスカーソルを置いた際に、
そのデータ値が表示されると思うのですが、それを任意の言葉に変更したいのです。
VBA無しでできれば嬉しいのですが、可能でしょうか?
VBAが無ければ難しいのであれば、VBAで解答して頂いても大変ありがたいです。

170 :名無しさん@そうだ選挙にいこう:2010/07/26(月) 00:56:46
>と言われる筋合いの事ではないのだがな

キモいw

171 :名無しさん@そうだ選挙にいこう:2010/07/26(月) 08:12:08
Excelのある1つのシートだけはHTMLページにしたいんです
つまりそのシートだけは他で作ったHTMLシートを埋め込む感じです
どうすればいいか教えてちょんまげです

172 :複乳:2010/07/26(月) 08:54:36
>>164>>171
webページをコピーして貼り付けるぐらいしかない

173 :名無しさん@そうだ選挙にいこう:2010/07/26(月) 16:41:17
内容がないのに印刷すると総ページ数が2で2枚でてくる(最後の1枚は真っ白)のですが
これはどうにかして1ページにできないでしょうか?
余白をいじったくらいです

174 :複乳:2010/07/26(月) 16:51:26
>>173
ページ設定の拡大縮小

175 :名無しさん@そうだ選挙にいこう:2010/07/26(月) 18:14:49
>>173
Ctrl+EndでExcelが使用済みと判断したセルの位置が出る

とりあえず怪しいセルを選択して編集→クリア→すべてとやって名前を付けて保存してみる

176 :名無しさん@そうだ選挙にいこう:2010/07/27(火) 02:52:36
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否

画像をセルのデータとして挿入するにはどうすればよいでしょう?
例えばA1に画像を挿入した場合に、他のセルで「=A1」とすれば、
同じ画像が表示されるようにしたいです。

google検索では、綺麗にセル幅にあわせた画像を乗せておく
といったようなパターンしか見つけられませんでした。

よろしくお願いします。

177 :名無しさん@そうだ選挙にいこう:2010/07/27(火) 03:28:45
無理

178 :複乳:2010/07/27(火) 07:13:43
>>176
セルのデータは無理だけど
同じ画像が表示は可能。図のリンク貼付けって機能↓
ttp://www.relief.jp/itnote/archives/000163.php

179 :名無しさん@そうだ選挙にいこう:2010/07/27(火) 14:42:50
条件付書式によって色塗りされたセルを、その色で確定する事はできませんか?
数式の結果をコピペで「値」にする感じで、セルの色を確定したいのですが…

180 :名無しさん@そうだ選挙にいこう:2010/07/27(火) 18:31:29
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2007
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否

メールにExcelファイルを添付し送信したところ、
先方では、フォントやセルの色等が全て反映されていなく、
また多数のシートの一部を非表示にし、シートの保護をして送付しているのですが、
非表示分のシートも全て表示されてしまうという現象が起きています。
先方のバージョンが低いのかと思い、当方でExcel2003が入っているPCで同ファイルを開いたところ
問題無く開けているのでバージョンのせいでも無いようです。
原因がわかれば教えてください。宜しくお願いします。


181 :複乳:2010/07/27(火) 19:46:04
>>179
VBAならこの辺?
ttp://okwave.jp/qa/q1455002.html
>>180
フォントは先方に無いフォントを使うと自動で変わったと思う。セルの色は知らん
2003で作れば少しはましになるとおもう。
後はxlsxではなく、xls形式で作るとか
とりあえず先方のバージョンを聞かないと原因は分からない。先方がキングソフトオフィスや、OOo使ってる可能性もあるしねぇ


182 :名無しさん@そうだ選挙にいこう:2010/07/27(火) 23:36:56
2007ビューワーが入ってねーんだろ

183 :名無しさん@そうだ選挙にいこう:2010/07/27(火) 23:37:37
179は2007買え

184 :103:2010/07/28(水) 05:15:06

【1 OSの種類         .】 Windows2000
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 はい
【4 VBAでの回答の可否】 可
エクセルでピンボールができたんですが福乳さんが何点とれるか知りたいです
http://www42.atwiki.jp/syugyou?cmd=upload&act=open&pageid=243&file=nnn.xls

185 :名無しさん@そうだ選挙にいこう:2010/07/28(水) 08:20:29
>>184
そういうのはこっち↓でやってろ。

【質問不可】Excel総合相談所スレの雑談・議論スレ2
http://pc11.2ch.net/test/read.cgi/bsoft/1151651536/l50

186 :180:2010/07/28(水) 17:38:35
>181,182
やはりバージョンですかね。
とりあえず保存を95まで落としたものを送ってみました。
結果はまだ来てませんが。
レスTKS!


187 :名無しさん@そうだ選挙にいこう:2010/07/28(水) 19:44:30
【1 OSの種類         .】 Windows7
【2 Excelのバージョン   】 Excel2007
【3 VBAが使えるか    .】 はい
【4 VBAでの回答の可否】 可

Nowのシリアル値が知りたくて、
msgbox datevalue(now)
としたんものの2010/07/28と出てくるんですが、どうしたらいいですか

188 :名無しさん@そうだ選挙にいこう:2010/07/28(水) 20:06:57
MsgBox Now

じゃダメなの?

189 :名無しさん@そうだ選挙にいこう:2010/07/28(水) 20:57:06
>>187
MsgBox CDbl(Now)

190 :名無しさん@そうだ選挙にいこう:2010/07/28(水) 20:58:41
>>189
ありがとう!

191 :名無しさん@そうだ選挙にいこう:2010/07/29(木) 17:49:31
【1 OSの種類         .】 Windows7
【2 Excelのバージョン   】 Excel2010 2007でも可
【3 VBAが使えるか    .】 はい
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 グラフ

○月○日 出張費 10000円
○月○日 出張費 8000円
○月○日 交際費 7000円

こういった感じで表を作った場合にグラフ(自分は円を使いました)
を作成すると(対象は科目列{2列目}と金額列{3列目})
グラフには出張費項目が2個作成されてしまい合計3項目のグラフになってしまいました。
これを「出張費」「交際費」の2つの項目のグラフにする方法はありますか?
現在は出張費合算、交際費合算をその他セルで算出してグラフ化しているのですが
できることならこれをしないでグラフ化したいのです。
よろしくおねがいします。

192 :名無しさん@そうだ選挙にいこう:2010/07/29(木) 20:33:00
>>191
ピボットグラフ

193 :あぼーん:あぼーん
あぼーん

194 :名無しさん@そうだ選挙にいこう:2010/07/30(金) 05:14:46
Excel2007で簡単に給料計算をする方法を教えてください。

195 :名無しさん@そうだ選挙にいこう:2010/07/30(金) 07:16:49
>>194
Excel2007で動く給与計算ソフトを探してきて導入。

196 :名無しさん@そうだ選挙にいこう:2010/07/30(金) 10:48:29
>>194
エクセル 給料計算 テンプレ
でぐぐるとテンプレートが出てくるのでそれを使う

197 :名無しさん@そうだ選挙にいこう:2010/07/30(金) 19:19:33
スレ的にこういう回答はどうかと思うけど給与計算は適当なパッケージソフト(保守サポートありのやつ)
買った方がいいと思う
所得税の計算とか社会保険料の計算とかしょっちゅう制度が細かく変わるから
自力でメンテするには面倒すぎる

198 :名無しさん@そうだ選挙にいこう:2010/07/30(金) 22:07:59
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2007
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否

みかん 100円
りんご  50円
なし  200円
ぶどう 200円
りんご 100円
みかん  50円
りんご 100円


上の表で、りんごが売れた件数の表計算
上の表で、りんごが売れた合計金額の表計算

以上よろしくお願いします


199 :名無しさん@そうだ選挙にいこう:2010/07/30(金) 22:21:56
=COUNTIF(A:A,"りんご")
=SUMIF(A:A,"りんご",B:B)

200 :名無しさん@そうだ選挙にいこう:2010/07/30(金) 22:47:24
なんか(・∀・) コワレタ !!

201 :名無しさん@そうだ選挙にいこう:2010/07/31(土) 01:19:35
【1 OSの種類         .】 Windows7
【2 Excelのバージョン   】 Excel2007

読み上げがSumしません。NaokoとKenjiがいなくなりました。
MS社に問い合わせたところ、故意にやりましたという回答でした。
なぜ?

202 :名無しさん@そうだ選挙にいこう:2010/07/31(土) 07:46:33
>>201
MS社に問い合わせた時にさらに突っ込んで聞けばよかったのに。

203 :名無しさん@そうだ選挙にいこう:2010/07/31(土) 08:38:36
>>199

助かりました!
ありがとうございます!

204 :名無しさん@そうだ選挙にいこう:2010/07/31(土) 11:30:25
【1 OSの種類         .】 widows XP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】いいえ
【4 VBAでの回答の可否】 否

教えてください
countifで三種類の記号のうち2種類のみを数えたいのですが
(表の中に○、△、×、とあるうちの○と△のみを数えたい)
「検索条件」を”○、△”と入力したのですがうまくいきません。

どなたか良い方法がありましたらご教授願いたいと思い書き込ませて頂きました。
宜しくお願いします。


205 :204:2010/07/31(土) 11:43:14
自己解決できました
スレ汚しスマソ

206 :名無しさん@そうだ選挙にいこう:2010/07/31(土) 11:45:07
【1 OSの種類         .】 WindowsVISTA
【2 Excelのバージョン   】 Excel2002
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 住所録作成

会社で仕事回されたのですが、うちの会社今までPCなんて使わなくって
誰もエクセル使えないという状態です。
なぜか社長が今までの顧客データ全部パソコンで作る言い出しまして
なぜか私が1万人近い住所録作ることに。
Aタブに郵便番号、Bタブに住所、C氏名、D生年月日、E性別、F電話、G備考。です。

Aに郵便番号入れたらそのままBに住所出力出来ませんか?
Bに全角で入れて変換する手間が省けたらと思いまして。

207 :名無しさん@そうだ選挙にいこう:2010/07/31(土) 13:28:29
>>206

やりたいのはこれか?

ttp://hamachan.info/excel/yuhenkan.html


208 :名無しさん@そうだ選挙にいこう:2010/07/31(土) 15:01:07
>>207
それですぅ
これで少し楽になるです。
ありがとです。

209 :名無しさん@そうだ選挙にいこう:2010/07/31(土) 15:04:42
あれ、、今やって見たら違たです。
A1〜〜A200位有るので
A1に郵便番号入れたら、勝手にB1に住所が入って欲しいのです。
A10に入れたらB10にとか。

210 :名無しさん@そうだ選挙にいこう:2010/07/31(土) 15:14:58
【1 OSの種類         .】 widows VISTA
【2 Excelのバージョン   】 Excel2007
【3 VBAが使えるか    .】はい
【4 VBAでの回答の可否】 できれば否、どうしても不可能だったら可
1、A
2、A
3、B
4、B
5、C
こういうデータがあった場合
1、A
3、B
5、C

としたいのですが現状は違う列にif(B2=C2,"○","×")
で×のセルを削除する方法をとっていますが、これ以外に方法ってあるのでしょうか?

また
1、A
2、
3、B
4、
5、C
みたいに複数データがある場合は、一番上の行だけ残してあとはクリアにしたいのですが
こういう場合はどうすればいいのでしょうか?

211 :複乳:2010/07/31(土) 16:29:55
>>209
VBAじゃないと無理と思う
後はgoogleIME入れれば郵便番号を変換すれば住所になる
>>210
上はフィルタオプションで重複を削除にチェック
下はB2=IF(COUNTIF($A$1:A2,A2)>1,"",A2)
で下にオートフィル、値でコピーとか。
数式を残したいならvba。

212 :209:2010/07/31(土) 18:49:00
>>211
ありがとです。
VBAって何です?って位知らないので普通に変換でやってきますぅ

213 :名無しさん@そうだ選挙にいこう:2010/07/31(土) 18:53:43
【1 OSの種類       】 WindowsXP
【2 Excelのバージョン 】 Excel2000
【3 VBAが使えるか   】 はい
【4 VBAでの回答の可否】 可

EXCELのフォームでボタンを作りそのボタンを押すことにより
別のEXCELのテンプレートファイルをテンプレートとして開くもの
を作ろうとしています。

ボタンに次の様なマクロを登録すると

Sub ディライトテンプレート起動()
ChDir "C:\請求"
Workbooks.Open(Filename:="C:\請求\請求書.xlt", Editable:=True). _
RunAutoMacros Which:=xlAutoOpen
End Sub
(フォルダー「見積」にテンプレート形式の「見積書.xlt」ファイルがあります。)
一応「見積.xlt」は開いてきますが、この動作はEXCELメニューの「開く」からテンプレート形式のファイルを
開いたのと同じことなので、何か入力して保存するとテンプレート形式で保存されてしまいます。
「請求書.xlt」をテンプレートとして実行したいのですが、どうすれば良いでしょうか?
よろしくお願いいたします。


214 :名無しさん@そうだ選挙にいこう:2010/07/31(土) 18:56:07
>>213
訂正:以下の文中の「見積」は「請求」の間違いです。
>(フォルダー「見積」にテンプレート形式の「見積書.xlt」ファイルがあります。)
>一応「見積.xlt」は開いてきますが、この動作はEXCELメニューの「開く」からテンプレート形式のファイルを


215 :名無しさん@そうだ選挙にいこう:2010/07/31(土) 21:27:13
>>213
Workbooks.Add Template:="C:\請求\請求書.xlt"
じゃだめなのかな

216 :名無しさん@そうだ選挙にいこう:2010/07/31(土) 21:36:24
A列にあるすべてのセルの漢字の振り仮名をクリアにしたいのですが
まとめてできる方法とかありますでしょうか?

217 :名無しさん@そうだ選挙にいこう:2010/07/31(土) 21:38:23
>>215
テンプレートとして開くことができした。
ありがとうございます。
追加質問ですが、こうやって起動するとテンプレートファイルのauto_openのマクロが
自動実行されないのですが、何か215に追加してコードを書かないといけないのでしょうか。


218 :名無しさん@そうだ選挙にいこう:2010/07/31(土) 21:57:37
>>216
マクロで


Sub aaa()
With Range("a1:a" & Cells(Rows.Count, 1).End(xlUp).Row)
.SetPhonetic
.Characters.PhoneticCharacters = ""
End With
End Sub

219 :名無しさん@そうだ選挙にいこう:2010/07/31(土) 22:04:19
>>217
auto_openでどの様な処理をやっているか分からないけど

1)RunAutoMacros メソッドを使う
  →使った事ないからようわからん
又は
2)auto_openをやめて
 ThisWorkbook の Workbook_Openイベントを使う

  Private Sub Workbook_Open()
   'なんかの処理
  End Sub

220 :名無しさん@そうだ選挙にいこう:2010/07/31(土) 22:11:01
>>216
一度メモ帳に貼付け
貼りつけたものを再度コピーして、エクセルに貼付け
複数行ある場合はVBAが必要だけど、よほどでない限り目で確認しながら自分で編集した方が早いと思う

221 :名無しさん@そうだ選挙にいこう:2010/07/31(土) 22:12:15
>>219
ありがとうございます。
やってみます。

222 :215&219:2010/07/31(土) 22:14:50
>>221
ふと思ったけど 1)だと
Workbooks.Add(Template:="C:\請求\請求書.xlt").RunAutoMacros Which:=xlAutoOpen
で動作しないかな?

223 :名無しさん@そうだ選挙にいこう:2010/07/31(土) 23:05:05
>>219
2)でやったら出来ました。ありがとうございました。

その後
>>222さんの書き込みを見てやってみましたができました。
ありがとうございました。

今回ボタンを作って起動したいテンプレートファイルが20個くらいあるので
テンプレート側を直さなくていいRunAutoMacrosの方でやりたいと
思います。お二方ありがとうございました。


224 :名無しさん@そうだ選挙にいこう:2010/08/01(日) 00:04:19
>>223
テンプレファイルにコードを書くんじゃなく
ボタンがあるBookにコードを書くようにしたほうがイイよ


225 :名無しさん@そうだ選挙にいこう:2010/08/01(日) 00:30:21
>>224
そうします。サンキューです。

226 :名無しさん@そうだ選挙にいこう:2010/08/01(日) 00:49:36
>>213
マクロの記録で名前をつけて保存すればok

227 :名無しさん@そうだ選挙にいこう:2010/08/01(日) 16:00:20
【1 OSの種類         .】 Windows7
【2 Excelのバージョン   】 Excel 
【3 VBAが使えるか    .】 いいえ 
【4 VBAでの回答の可否】 否 
【5 検索キーワード     】 Googleやヘルプでの検索キーワード 
すみません、他スレに書いたのですがスレが機能していないみたいなので
こちらで質問します。
XPぐらいまでの古いエクセルだと、グラフを作っても遅くならないのですが、 
最新のオフィスだと、データが32000を超えるグラフを作った時に、 
系列を2つ(データが60000を超えるため)繋いで、
同じ系列の色をあわせるために変更すると、重すぎて作業になりません、 
どうしたら古いエクセルみたいに、色を変更しても、早くなりますか? 
色がバラバラなままだと重くないのですが、 色を統一すると
表示が遅くなりますという警告が出て、作業が出来ないぐらい重くなります。
今のままだと古いバージョンのエクセルでしかグラフを作る事しかできませんが、
最新のパソコンで作業するように言われてるため、
重すぎて何時間たってもグラフが作れません。



228 :名無しさん@そうだ選挙にいこう:2010/08/01(日) 18:30:26
>>227
最新ついでに64bit版Officeにしちゃえば?

229 :名無しさん@そうだ選挙にいこう:2010/08/01(日) 18:33:46
表を作り替える。100行に一行ぐらいのデータにしてそこからグラフ作成
OOoでも使ってみる。OOoが分からない場合はググれ

230 :名無しさん@そうだ選挙にいこう:2010/08/01(日) 22:19:55
1時間23分45秒を
83分45秒と表示させるにはどうすればよかったですっけ?


231 :名無しさん@そうだ選挙にいこう:2010/08/01(日) 22:23:30
>>228-229
お返事有り難うございます。
会社の物品なので自分で仕様変更は出来ません。
あと、元のデータは70万を超えていて、
12行に1行のデータにして6万のグラフにしてます、
これが旧バージョンのエクセルでは可能でした。
新バージョンでも色の変更さえしなければ
重くならずに作業出来るのですが、
それでは顧客に提出が出来ないので悩んでいます。


232 :230:2010/08/01(日) 22:25:58
Oh, thanks!
>>233

233 :名無しさん@そうだ選挙にいこう:2010/08/01(日) 22:28:10
[h]:mmとすればいいですYo

234 :名無しさん@そうだ選挙にいこう:2010/08/01(日) 22:31:36
>>230
これの事かな
表示形式 [m]:s に変更でそう表示されると思いますけど

235 :名無しさん@そうだ選挙にいこう:2010/08/02(月) 00:26:58
【1 OSの種類         .】 Windows vistaSP2
【2 Excelのバージョン   】 Excel2007
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 条件 抽出

  A   
1渋谷   
2恵比寿 
3渋谷   
4大塚  
5恵比寿
 
このような重複するデータの統計を取るのに、B列に
入力されたデータを一つずつ並べたいです。

 B
1渋谷  ←A1を入れる
2恵比寿 ←A1〜A4の中で、A1以外のデータを入れる
3大塚  ←A1〜A4の中で、A1、A2以外のデータを入れる
4     ←データの種類が3種類なら空欄

という感じで関数を組めば自動的にどのデータが入力されたのかの
一覧が出来ると思うのですが、具体的にどうやればいいのかわかりません。
よろしくお願いいたします。

236 :名無しさん@そうだ選挙にいこう:2010/08/02(月) 00:35:05
すいません、間違えました。
>>235の下は、

 B
1渋谷  ←A1を入れる
2恵比寿 ←A1〜A4の中で、B1以外のデータを入れる
3大塚  ←A1〜A4の中で、B1、B2以外のデータを入れる
4     ←データの種類が3種類なら空欄

です。
関数を使ってフィルタリングをしたいです。

237 :複乳:2010/08/02(月) 07:52:44
>>231
何らかの方法でデータを圧縮するor再計算を止める
表を見せてもらえばすぐに解決できるとおもう
>>235
フィルタオプションで重複を削除にチェック
どうしても数式なら
B1=IF(C1="","",COUNTA($C$1:C1)-COUNTBLANK($C$1:C1))
C1=IF(COUNTIF($A$1:A1,A1)>1,"",A1)
D1=VLOOKUP(ROW(),B:C,2,0)

238 :名無しさん@そうだ選挙にいこう:2010/08/02(月) 08:17:28
>>237
下手だねぇ。せめてc1の式はMATCH使えよ。
MATCH使ってもまだ100点満点で30点くらいだな。
そもそも関数でやること自体が100点にはなりえないが。


239 :名無しさん@そうだ選挙にいこう:2010/08/02(月) 08:37:55
>>238
おまいさんの上手な式とやらを見せてKれよ

240 :名無しさん@そうだ選挙にいこう:2010/08/02(月) 09:50:16
>>239
こうやるんだよ。
=INDEX(A:A,SMALL(INDEX((MATCH(A$1:A$1000&"",A$1:A$1000&"",)<>ROW(A$1:A$1000))*1000+ROW(A$1:A$1000),),ROW(A1)))&""
A1:A1000にデータがある式な。

241 :名無しさん@そうだ選挙にいこう:2010/08/02(月) 09:59:26
>>240
一式でやるのは個人的には楽しいけれど、こんな所で煽った結果の式がこれかい
自己満足以外の何ものでもない

アホか

242 :名無しさん@そうだ選挙にいこう:2010/08/02(月) 10:02:00
>>240
すごいねぇw
でその式は何点なの?

243 :名無しさん@そうだ選挙にいこう:2010/08/02(月) 10:17:34
>>242
俺からみたらマイナス100点だなw
モー愚で見たような式だが>>240はあそこのアフォじゃねーか?

244 :複乳:2010/08/02(月) 11:46:48
まさかこの回答で煽られるとは思わなかったw
>>242
100000000000000000000000000点ぐらいあります>w<

245 :名無しさん@そうだ選挙にいこう:2010/08/02(月) 12:11:41
せめて>>240も作業列を1列作れば10点くらいあげてもいいんだが、それじゃやっぱりマイナスだろうねぇ。
MATCHの計算を無駄に1000倍だもんなぁ。
基本が全然分ってない人なんだろうね。

246 :名無しさん@そうだ選挙にいこう:2010/08/02(月) 20:15:02
>>243
誰も声の大きい奴が有能なんて話してんじゃねえんだよ
どんな仕事でも、声の小さい奴は例外なく無能だって言ってんだ
どんな仕事って言っても正社員で経験したのは4社だけど
バイト時代も含めて声が出てない人は必ず仕事も出来ない人だった
一人の例外も無くだ
まだ12年の短い社会人経験から得た経験則だが、
まともに働いてる人間ならほぼ共通する認識、つまり常識のはずだぞ

247 :名無しさん@そうだ選挙にいこう:2010/08/02(月) 20:27:26
>>246
どこと誤爆?

248 :名無しさん@そうだ選挙にいこう:2010/08/02(月) 20:40:20
>>237
再計算はしてません、それと圧縮もこれ以上は出来ません。
表は、会社から顧客へ提出するので見せるのも出来ませんが、
6万ぐらいのデータを8系列〜13系列の折れ線グラフです、
色がバラバラなら重くならないのですが、
1系列のグラフは、3万データまでしか使えないので、
1〜3万、3万1〜6万のグラフを繋いで1系列にしています。
そのまま繋ぐと自動では、色が違うので
それを変更して統一する時に、色を変更すると処理速度が落ちますという警告が出て、
1回の表示に5分〜10分以上かかるようになり、
簡単な作業も何時間経っても終わらなくなって困ってます。




249 :複乳:2010/08/02(月) 22:04:23
>>248
圧縮、ねぇ
試しに数式で三行ごとに平均を取ってみた
http://www1.axfc.net/uploader/Img/so/90571
こういう処理してからグラフ作成すれば軽くなると思うんだけどねぇ〜
VBAも使えない環境・実力なら、ペイント等の画像ソフトで加工した方が圧倒的に早いと思う
Windows7のペイント、確かなかなか良かったような

あとこういう所で見せるデータというのは、ダミーデータだよ。
A列に日付、B列に本店売上、C列に仕入値、とかね。どこになにが入ってるかわかれば大体想像できるので、
適切な回答をもらいやすくなるよ。多分ね。

250 :名無しさん@そうだ選挙にいこう:2010/08/02(月) 22:11:52
>>248
データ量が大きい時はアクセスの方が少しはましになるんじゃないかい?
(詳しくないけど)

ってか、アクセスってグラフ機能あるのね、今調べて初めて知ったw

251 :名無しさん@そうだ選挙にいこう:2010/08/02(月) 22:22:01
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 はい
【4 VBAでの回答の可否】 可
【5 検索キーワード     】VBA

Excelで一行目に文字列があって
その行と同じ階層にあるaaa.csvの
a,b,c,d…みたいな中身のファイルを比較して
たとえば
A1のデータとa、B1のデータとbみたいに
全て一致していたら○、一つでも違っていたら×みたいにしたいのですが
可能でしょうか?


252 :名無しさん@そうだ選挙にいこう:2010/08/02(月) 22:30:05
言ってる意味がさっぱりわからないが、
openfileやdir、文字列比較でぐぐったらいいと思う
それも出来ないようなら素直にベクターで
ファイルの内容比較するソフト使えばいいと思う

253 :名無しさん@そうだ選挙にいこう:2010/08/02(月) 23:53:35
>>251
aaa.csvをExcelで開いてあげてセル同士の比較にすればよくね

254 :名無しさん@そうだ選挙にいこう:2010/08/03(火) 00:09:50
シート1のA4に、シート3のB5をコピーしたい時にどのように入力すればいいですか?

255 :名無しさん@そうだ選挙にいこう:2010/08/03(火) 07:45:32
>>254
コピーは入力ではできない
参照なら
A4='sheet3'!B5

256 :名無しさん@そうだ選挙にいこう:2010/08/03(火) 08:37:39
ヘッダ2行で、以下数十行に渡って2行ずつのデータが並んでいるのですが、
これをヘッダ1行にして、データも1行にしたいです。
INDEXとかROWとかCOLUMNとかでやってみましたが、うまくできません。
ベクターでそういうツールが売っているのですが、会社に言ってそれを
買った方がいいのでしょうか?
それとも、関数式のオートフィルでできるのでしょうか?

257 :名無しさん@そうだ選挙にいこう:2010/08/03(火) 09:39:17
【1 OSの種類         .】 Windows XP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】否
【5 検索キーワード     】 EXCEL 文字列操作 抽出

a1に「アイウエオカキクケコ」という文字が入ってる時に
a2に左から3文字右から5文字を抽出したい(つまり「ウエオカの抽出」)
のですが方法を教えてください。

FIND LEFT RIGHTを使っても上手くいきません。

258 :名無しさん@そうだ選挙にいこう:2010/08/03(火) 10:10:42
>>257
MID

259 :251:2010/08/03(火) 10:54:28
aaa.csvをExcelで開いてあげてセル同士の比較って
どうやればいいでしょうか?

260 :257:2010/08/03(火) 11:44:01
258
ありがとございます

261 :複乳:2010/08/03(火) 12:34:43
>>256
a列に並んでるとして
B1=INDIRECT("r"&(ROW()-1)*2+1&"c1",0)
C1=INDIRECT("r"&(ROW()-1)*2+2&"c1",0)
D1=B1&C1
下にオートフィル
終わったら値でコピーすれば官僚
>>259
それも分からないなら無理と思う

262 :251:2010/08/03(火) 12:56:05
そんなこと言わずに教えれ

263 :名無しさん@そうだ選挙にいこう:2010/08/03(火) 13:08:27
>>261
ご回答ありがとうございます。
a列一列を一行ずつに配置できましたが、
このa列が右に複数列あるばあい、
上記関数のどの数値や文字列を変更すればよろしいでしょうか。
たびたび申し訳ありません。

264 :複乳:2010/08/03(火) 13:32:50
>>263
R1C1、という形式があるんだけどRは行、Cは列を表す
=indirect("r1c1",0)だと、A1の内容を表示する。("r2c4")だとD2になる

右に複数列をどう処理するのかわかんないけど、
B1=INDIRECT("r"&(ROW()-1)*2+1&"c5",0)
C1=INDIRECT("r"&(ROW()-1)*2+2&"c5",0)
って感じで最後のC1をC5に変えれば5番目のE列を処理できる
これだけの情報で何とかなるかな
もっと詳細な情報もらえれば何かテキトーに作るよ
>>262
っていうかぁ〜
質問の内容あんまりわかんないんだよね〜
分かるように具体的な内容で質問しなおしてくれれば答えられるかもね〜

265 :名無しさん@そうだ選挙にいこう:2010/08/03(火) 14:00:57
>>264
ありがとうございます。
配置はできました。
助かりました。
もう一つなのですが、これを別シートで表示したいのですが、
自分でためしてみましたができません。
上記関数のどこにSheet1!をつければ宜しいでしょうか。
何回も恐れ入りますが、宜しくお願い致します。

266 :名無しさん@そうだ選挙にいこう:2010/08/03(火) 14:06:45
いい加減不細工なINDIRECTやめてINDEXにすりゃいいのに。
ブス専か?

ブス:=INDIRECT("r"&(ROW()-1)*2+1&"c1",0)
普通:=INDEX(A:A,ROW()*2-1)

ブス:=INDIRECT("r"&(ROW()-1)*2+2&"c1",0)
普通:=INDEX(A:A,ROW()*2)

267 :名無しさん@そうだ選挙にいこう:2010/08/03(火) 14:18:35
まぁまぁ、複乳はINDIRECTが得意なんだから見守ってあげようよ。

268 :複乳:2010/08/03(火) 14:19:56
>>265
=INDIRECT("sheet1!r"&(ROW()-1)*2+1&"c5",0)
>>266
じゃあ答えてあげれば〜

269 :名無しさん@そうだ選挙にいこう:2010/08/03(火) 14:22:51
>>266
=INDEX(Sheet1!A:A,ROW()*2-1)
=INDEX(Sheet1!A:A,ROW()*2)

これで解決致しました。
ありがとうございました。
複乳さんもどうもありがとうございました。

270 :名無しさん@そうだ選挙にいこう:2010/08/03(火) 14:49:26
よくコテハン使うよなぁ
恥をいっぱい書いて上達したいのかも知れないが、がんばってくれたまえ

271 :名無しさん@そうだ選挙にいこう:2010/08/03(火) 15:02:34
怒らないでマジレスしてほしいんだけど
なんでこんな時間に書き込みできるわけ?
普通の人なら学校や会社があるはずなんだけど
このこと知った親は悲しむぞ?

272 :複乳:2010/08/03(火) 15:17:46
わたしはね働かなくても財産がある
資産運用をして不労取得がある
お金のことに対して知恵がある
あなたとは違うんです

273 :名無しさん@そうだ選挙にいこう:2010/08/03(火) 15:24:29
あなたとはexcelの運用方法も違うんです

274 :複乳:2010/08/03(火) 15:28:54
>>273
そういうことも考えました
excelの運用方法とあなたおっしゃったけどもね
私は自分自身のExcelの使い方を客観的に見ることができるんです

http://azflash.net/az/fla/chigaundesu.htm

275 :名無しさん@そうだ選挙にいこう:2010/08/03(火) 15:40:47
かっこいい!

276 :名無しさん@そうだ選挙にいこう:2010/08/03(火) 17:33:10
複乳さんはよく煽られるけど、俺は全く嫌な感じしないけどね

レスの式が良いか悪いかは考え方にも、こだわり方にもよる。
何より初心者にとってレスがあるだけでも助けになるよ。

まぁコテであることだけで煽る、ある意味嫉妬のようなものかな

277 :名無しさん@そうだ選挙にいこう:2010/08/03(火) 18:19:48
Excel2007ではマクロが動くのに
同じファイルでExcel2003だとエラーが出るんです

どんなエラーか正確には忘れましたが
PC or Excelの性能の問題っぽいです。
どうすればいいですか?

278 :名無しさん@そうだ選挙にいこう:2010/08/03(火) 18:38:38
>>277

そのファイルをExcel2003では使わないようにする。


279 :253:2010/08/03(火) 20:46:11
>>259
VBAを使わず手動で Excelから aaa.csv を開いてみるとイメージがわくと思うけど
Excelの開くで ダイアログが出たら
ファイルの種類を テキストファイル(・・・・・・ *.csv)にしる

つか aaa.csv ってテキストファイルだよね?

280 :名無しさん@そうだ選挙にいこう:2010/08/03(火) 23:12:20
>>277
エラーの内容は正確に書き写すことが基本
性能が問題ならPC買い換えorEXCELのバージョンアップしか無い
どうしても混在の環境でマクロを作りたいなら、2003でマクロを作る

281 :名無しさん@そうだ選挙にいこう:2010/08/04(水) 00:43:32
【1 OSの種類         .】 Windows XP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 少々
【4 VBAでの回答の可否】 可

G列にある、次のような値から右端の"-F"と"-R"だけ削除をしたいです。
("-F"や"-R"がないときは、そのまま)

A100-F
B-200-R
AB-3000-R
C10000
B2500-F

 ↓

A100
B-200
AB-3000
C10000
B2500

現在、データが3万行くらいあり、今後も毎月2,000行くらい
更新されそうなので、手作業で削除するのは辛いです。
値の長さが一定ではないので、区切り位置では
うまく出来ませんでした。
よろしくお願いします。

282 :名無しさん@そうだ選挙にいこう:2010/08/04(水) 02:08:02
>>281
"-F"と"-R"を""に置換

283 :名無しさん@そうだ選挙にいこう:2010/08/04(水) 06:38:52
>>281
Korea-F15K-Manholeとか途中にも-Fとかあるの?
末尾の-Fと-Rだけか?

284 :複乳 :2010/08/04(水) 08:50:51
>>281
A列に対象を入力しておいて
B1=IF(OR(RIGHT(A1,2)="-F",RIGHT(A1,2)="-R"),LEFT(A1,LEN(A1)-2),A1)
下にフィルコピー

285 :名無しさん@そうだ選挙にいこう:2010/08/04(水) 09:14:38
>281 VBAだとこんな感じ
開始行位置と終了行位置はシートのどこか適当なところに設定するようにすればソースをいじらずに済みます

Sub okikae()
 s = 1  '開始行位置
 e = 5  '終了行位置
  For i = s To e
   a = Cells(i, 7).Value
   If (a Like "*-F") Or (a Like "*-R") Then
    Cells(i, 7).Value = Left(a, (Len(a) - 2))
    cnt = cnt + 1
   End If
 Next i
 MsgBox ("置き換え " & cnt & " 件")
End Sub

286 :名無しさん@そうだ選挙にいこう:2010/08/04(水) 09:23:33
"0-*"を"0"に置換

287 :複乳:2010/08/04(水) 09:48:14
>>282 A100-F-A のように途中に"-F"か"-R"があるとダメ
>>286 A101-F と数字の最後が0以外、またA100-A と最後のアルファベットがFR以外でもダメ

288 :名無しさん@そうだ選挙にいこう:2010/08/04(水) 10:20:41
ダメダメじゃん。

289 :名無しさん@そうだ選挙にいこう:2010/08/04(水) 13:21:01
複乳の指摘も駄目だしな


290 :名無しさん@そうだ選挙にいこう:2010/08/04(水) 17:49:32
エクセルって正規表現で置換できなかったっけ?

291 :名無しさん@そうだ選挙にいこう:2010/08/04(水) 19:35:02
よろしくお願いします。
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel 2003
【3 VBAが使えるか    .】そこそこ
【4 VBAでの回答の可否】 OK
【5 検索キーワード     】 配列 min関数 match関数

A列 ・・・ Q列   R列
100602 23000    100
100602 35400    154
100602 102000 443
100634 46500 100
100634 71000 153
100794 489000 100
100794 490000 100
100794 502000 103

きっとずれてますがすみません。

こんな風にA列に同じ数字の行(1行〜10行くらい)がある、
A列の同じ検索値のQ列の最小値を100としてR列に比率を出したいです。
35400/23000=1.5391...ですが、小数点下3桁を四捨五入した100倍の整数にします。
ちなみに4万行近いデータがあります。配列や関数を使ってなんとか出来ないでしょうか。


292 :名無しさん@そうだ選挙にいこう:2010/08/04(水) 20:11:43
>>291
R列に
=ROUND((Q2/MIN(IF(($A$2:$A$10)=A2,$Q$2:$Q$10,10^10)))*100,0)
といれて、CTRL+SHIFT+ENTERを押して確定(式の前後に{}がつく)

けど、4万行だときついかな?どうでしょうかね?
マクロとかの方が後腐れなくできそう

293 :名無しさん@そうだ選挙にいこう:2010/08/04(水) 20:12:54
追記
上記はR2に入れる式で、範囲は2行目から10行目にしているから、そこは変えて。

294 :名無しさん@そうだ選挙にいこう:2010/08/04(水) 20:16:25
>>292
わ、早速ありがとうございます!
そうですね、マクロでのコードも思案中でした。
ですがこれで5000行くらいずつ数式入れてがんばってみます。
ありがとうございました!

295 :名無しさん@そうだ選挙にいこう:2010/08/04(水) 20:18:49
>>292
しかも速攻うまくいきました!
本当に助かりました。ありがとうございました!!!

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

★スマホ版★ 掲示板に戻る 全部 前100 次100 最新50

read.cgi ver 05.04.00 2017/10/04 Walang Kapalit ★
FOX ★ DSO(Dynamic Shared Object)