▲ここまでがテンプレ
▼━質問時の注意・決まり事━━━━━━━━━━━━━━━━━━━━ ・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 書籍や解説サイトの紹介以来はスレ以外。ここは技術的な質問のみで。
★ルールを無視すると…
>>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分野の話ではないので、ここでは聞かないでください。
★ 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セルを分割 (分割したいセル以外を結合)
★ Excelで出来ないこと、仕様上の制限 (括弧内は代用法) ▼数式・関数 ・ 表示形式以外の書式の取得設定、書式情報を条件とする数式 (ユーザー定義関数) ・ 関数式でセルの選択状態を取得する (VBA) ・ セルの値でパスを補完して、開いてないブックのセルを参照する (VBA) ・ 入力したセルに結果を返す (VBA) ・ 範囲を引数にしての文字列連結 (ユーザー定義関数) ・ 値の書き換え、値の保持 (VBA) ・ 複数の結果を抽出、不定な数の結果を返す (VBA、結果の最大数が解っていれば最大数以上の式を論理式で組む) ・ 空白のセルの部分を上詰め、左詰めなどで表示する (作業セルを使って別セルに詰めて表示なら可能、それ以外はVBA) ・ VLOOKUP,HLOOKUP,MATCH等の関数で、検索語を全半角両方にマッチさせる (ユーザー定義関数) ▼VBA ・ ExecuteExcel4Macroの参照で空セルと0値を区別する ・ セルの値や変数値で直接変数名を指定する (配列、コレクション) ・ VBのコントロール配列と同じような操作をしたい (イベント以外ならコントロール名を「同名+連番」にしてControls(名前 & インデックス)で処理、イベントはクラスでWithEvents) ▼ユーザーフォーム ・ フォーム上から変更したプロパティ値の保持 (シートや外部ファイルに書き出して、次回読み込む) ▼グラフ ・ 棒グラフでひとつだけ突出したデータがあった場合に波線を入れて位置を合わせる (オートシェイプなどで見た目だけそうなるように弄る、別アプリでグラフを作り、オブジェクトとして挿入) ┌┐ 〜〜 ||
上記 「Excelで出来ないこと、仕様上の制限」 は、一般的に出来ないとされていること、出来ないと思われるものです。 間違いがある可能性もあるので、上記に挙がってるもので「コレはこうすれば出来るよ」というものがあったらご指摘ください。 Excel2010についても未確認な項目が多いので変更点が有ればご指摘下さい。 また、ここに書かれてないことでも、Excelで出来ないことはたくさんあります。 ここに書かれてないからといって必ず出来るはずだなんて思わないように。 >▼環境・書式 > ・ セルのサイズ(幅、高さ)を、長さの単位(ミリメートルなど)で指定する 補足 2007以降ではページレイアウトビューの表示時に限り、幅・高さともcm単位で表示され、 指定も同じくcm単位でできる。 ただし大元がインチ系なのでなかなかピタリの値は出ない。1cm→0.98cmのように 近い値に勝手に丸められる。
>>1-2 スレ建て乙
>>3-7 テンプレ貼り支援乙
>>3-7 は従わないのも自由だが、貼るのも従うのも自由なので
貼ったことに対してとやかく言うようなお門違いなことはしないように
気に入らなければ
>>3-7 に反する質問にも自分が答えてやれば良いだけだからな
何を偉そうに・・ 気持ち悪い。
まあ偉そうなのは引っかかるが正論だからいいんじゃね?
テンプレ違反だからおまえら回答するなよっていうヤツのほうがきもいな
居ないけどね
いるじゃん マルチがどうのこうのって
いまさらだけど何で
>>3 のテンプレの9以降はABなんだ?10でいいじゃん
>>14 文字がズレるからじゃね?
現行の【1〜9, A, B】でもズレてるけどねwww
【1〜9, A, B】
・8 |うまくいかなかったにしても自分でやって
・9 |マルチはダメ。一度マルチした
・A |テキストボックス(エディトボック
・B |書籍や解説サイトの紹介以来
【1〜11を半角数字】
・8 |うまくいかなかったにしても自分でやって
・9 |マルチはダメ。一度マルチした
・10 |テキストボックス(エディトボック
・11 |書籍や解説サイトの紹介以来
【1〜9を全角数字, 10〜11を半角数字】
・ 8 |うまくいかなかったにしても自分でやって
・ 9 |マルチはダメ。一度マルチした
・10 |テキストボックス(エディトボック
・11 |書籍や解説サイトの紹介以来
プログラマーとか、脳が16進数だったりするからな
17 :
名無しさん@そうだ選挙にいこう :2012/09/01(土) 23:10:40.09
16進数は0からFまで 1から始まると俺の脳は16進数だと認識しない
18 :
名無しさん@そうだ選挙にいこう :2012/09/01(土) 23:11:23.30
>>15 それだったら一桁の1〜9を01〜09って書けばいいんじゃね?
文章での指摘を>>x・yで簡略化って趣旨らしいから文字数の軽減じゃね? ってこの話題もどうでもいいわw
そーいえばuiゴシックはあるのにui明朝ってないよな
そんなことを気にする前にまずこっちを直せよ 『Visual Basic for Application』 → 『Visual Basic for Applications』
これこそ、どーでもいい
23 :
名無しさん@そうだ選挙にいこう :2012/09/02(日) 01:13:22.67
まぁ、次から直せばいいんじゃね? テンプレの記録・編集できるサイトが欲しいな
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2012 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 否 2010でマクロの自動記録をやるとき、 開発タブ→マクロの記録で始まりますが、フォント変更とか関数で他のタブを使うと、 最後はまた開発タブに戻り→記録終了とクリックしなければなりません。 キーボードのショートカットとかで終了せる方法はありますか?
Excelならよねさんに聞けといわれたのですがよねさんとは一体何所の誰なのでしょうか?
>>26 www.eurus.dti.ne.jp/yoneyama/
>>25 2010です、すみません。
リンク先を読みましたがよくわかりません。
Altキーを押す
開発タブに(L)が表示される
Lキーを押す
開発タブがアクティブになり、マクロの開始に(R)が表示される
Rキーを押す
これで記録が始まるのかと思ったら始まっていません。
どこがだめなのでしょうか?
よねさんの顔写真とかは無いのでしょうか?
ggrks
>>32 スレ違い
質問の本質を考えたらスレ違いだとわかるはず
マクロの実行を強制的に止めるにはどうしたらいいですか?→このスレの範疇
とあるノートPCのBreakキーはどこにありますか?→Excel全く関係無し
というわけで、メーカーに問い合わせるか、DELLスレに行ってくれ
キーボード見せたかっただけだろ。
【1 OSの種類 .】 Windows7 【2 Excelのバージョン 】 Excel2010 【3 VBAが使えるか .】 若干 【4 VBAでの回答の可否】 可 列方法のオートフィルタが使いたいんだけどないので、 どなたかマクロでつくってください。 A列にある1つのセルを選択、ボタンをクリック、抽出みたいな
誤 列方法 正 列方向
>>35 リスト作ってイベントマクロで対象列を非表示にするとかは?
38 :
名無しさん@そうだ選挙にいこう :2012/09/03(月) 00:26:49.32
>>35 マクロの記録でコピー、貼り付けで行列を入れ替え
後はいけるだろ
39 :
名無しさん@そうだ選挙にいこう :2012/09/03(月) 00:46:55.37
複合参照ってむずくね
それほどでもない
【1 OSの種類 .】 Windows7 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 何もしないと言えばいいのかな? 例えば、IF(別のシート!A1="",A1="",A1=別のシート!A1)の真の時、A1に空白が入ってしまいます。 A1には既に値が入っていて、別シートのA1に値が入っている時だけ、そのシートの値と入れ換えをしたいのですが、前記の式だとA1が空白になってしまいます。 A1に空白を入れずに、式を完結させるにはどうすればいいでしょうか?
IF文を勉強しなおしたほうがいい
43 :
名無しさん@そうだ選挙にいこう :2012/09/03(月) 19:28:34.59
IF(別のシート!A1="",999,別のシート!A1) 既に入っている値を999とするとこんな感じ
44 :
名無しさん@そうだ選挙にいこう :2012/09/03(月) 20:26:50.93
2010のオートフィルターで「空白以外のセル」を選ぶとき、 「すべて選択」のチェックを外してから、「空白」以外の箇所をチェックしてるんだけど、 20件とか30件とかあるとイラっとするんだよね。 2003みたいに簡単にやる方法はないの?
すべて選択してから空白のチェックを外せばよいのではないだろうか
マクロで全角を半角に変換したいんだけど、カタカナは全角のままにしたいときは どう書けばいいですか? STR = StrConv(F_NAME, vbNarrow)
素直にif文使えば
>>46 ひらがなに変換してから半角、さらにカタカナに。
ひらがなとカタカナが入り混じっているのなら、一文字ずつチェックするしかないんじゃなかろうか。
文字コードでカタカナの範囲を除外するだけかな
【1 OSの種類 .】 Windows7 【2 Excelのバージョン 】 Excel2007 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 Variant型にRange型を代入することで配列を代入しているのですが、 Range型の大きさが1×1だと配列ではなく単なる代入になってしまうので、 後のFor i = 1 to Ubound(v)などでエラーになるので困っています。 1×1のRange型も配列としてVariant型に代入することは可能でしょうか? 何回も処理するのでRange型の大きさは未確定です。 Range型の大きさによってIf分岐で対処可能ですが、 後に続くコードを全て分岐させるのは汚いのでスマートな方法を探しています。
>>49 配列の要素が1つの時に、Redimをどのように宣言してる?
>>50 Redimは使用していません。
v = Cells(1, 1).Resize(x, y)
For i = 1 To UBound(v)
でエラーになるという感じです。
そしてこの場合のxを使ったif分岐をずっと使いたくなく、
この場合でもv(1,1)として代入したいということです。
52 :
46 :2012/09/03(月) 23:23:45.65
>>48 うーむ、やっぱり1文字ずつ判定しないと無理っぽいですね。
もともとやりたかったのは、B4セルにフォルダ名(パス)を書き、
フォルダ内のファイル名を書き出すものをググって拾ってきましたが、
ファイル名が半角でも全角になってしまいます。
どこが駄目なコなんでしょう?
Sub フォルダ内のファイル名を取得()
SN = "LIST"
B4 = Range("B4").Value
Set FS = CreateObject("Scripting.FileSystemObject")
Set FDR = FS.GetFolder(B4)
Set FIL = FDR.Files
i = 7
For Each F In FIL
F_NAME = F.Name
ThisWorkbook.Sheets(SN).Cells(i, 2) = F_NAME
i = i + 1
Next
End Sub
53 :
名無しさん@そうだ選挙にいこう :2012/09/03(月) 23:30:32.25
>>49 isarrayで分岐させるのかUBOUNDを継承して似た関数を作るしかないんじゃないか
それかvariantを使わずに配列を用意する
>>52 そんなふうにはならないな。使用しているフォントのせいで全角に見えるとかの可能性は?
文字コードで調べてみた?
>>43 やはり、何かを挿入しないとダメなんですね…
何もしないって事は出来ないのかorz
>>51 規制で書き込みできなかった〜
Ubound使わないで
for i =1 to Cells(1, 1).Resize(x, y).rows.count
ってやったらどう?
あ〜ごめん。 ちょっと目的と違うね
あれやっぱり良いかな もしかして for i=1 to x でもいいんじゃない? 的外れ?
【1 OSの種類 .】 Windows7 【2 Excelのバージョン 】 Excel2010 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 可 次のような条件の時にフォントの色を変更したのですが、方法がわかりません。 A列に入力された数字をひとつ上のセルと比較して大きければ赤字、小さければ黒字というようにしたいのです 100 105←赤 105 100←黒 110←赤 110 110 よろしくお願いします。
>>60 すいません
黒字ではなく青字です・・・
小さければ黒字・・・×
小さければ青字・・・○
条件付き書式で全部解決
条件付き書式でやってみてたんですが上手くいきません IF文とか使わないと出来ない・・・? ヒントおねがいします
>>53 >>57 >>59 皆様ありがとうございます。
それらの方法だとfor構文をクリアできてもv(1,1)を参照したときにエラーとなってしまします。
完全に僕の説明不足でした。申し訳ありません。
やはり完全な方法は無さそうなので皆様の意見を参考に作りを見直していきます。
>>60 For Each セル In Selection
If セル.Row = 1 Then
GoTo pointA
End If
If セル > セル.Offset(-1, 0) Then
セル.Font.ColorIndex = 5
ElseIf セル < セル.Offset(-1, 0) Then
セル.Font.ColorIndex = 3
Else
セル.Font.ColorIndex = 1
End If
pointA:
Next セル
前スレ
>>963 と似た質問だったので同じ回答だけど。
>>64 それなら、Uboundは忘れて,、かつ、 set をいれて
(受け取っているのがオブジェクトなんで)。
x=1
set v=cells(1,1).resize(x,1)
for i=1 to x
debug.print v(1,1)
next i
としたら通らない?
>>65 ありがとうございmす
VBA使えないので完成した状態のものだとどうなるのでしょうか?
セルの部分はわかるのですが、冒頭部分など無知なもので・・・
sub〜みたいなのが入りますよね・・・?
すいません
68 :
52 :2012/09/04(火) 20:05:04.82
>>54 フォントを変えたら元のファイル名が全角でした・・・(すみません
元のファイル名が取り込めたところまではいいですが、
カタカナを全角に、英数字と全角スペースと()を半角にするには
>>52 のどこをイジればいいでしょうか?
>>67 sub マクロ名()
処理
end sub
をmodule1にでも張って、セルを選択してALT+F8かしら。
ちなみにVBA回答可に対してVBA回答したけれど、
内容わかりませんじゃぁ貰う意味ないんじゃね?
考えて質問すべき。
>>68 F_NAME = F.Name
ここでしょ。
For Each f In FIL
For j = 1 To Len(f.Name)
Select Case Asc(Mid(f.Name, j, 1))
Case Asc("ァ") To Asc("ン")
F_NAME = F_NAME & Mid(f.Name, j, 1)
Case Else
F_NAME = F_NAME & StrConv(Mid(f.Name, j, 1), vbNarrow)
End Select
Next j
ThisWorkbook.Sheets(SN).Cells(i, 2) = F_NAME
i = i + 1
F_NAME = ""
Next
>>64 Set 範囲 = Cells.Resize(x, y)
With 範囲
If .Count = 1 Then
ReDim v(1 To 1, 1 To 1)
v(1, 1) = .Value
Else
v = .Value
End If
End With
For i = 1 To UBound(v, 1)
'処理
Next
For Eachが使えるときはもっと簡単な方法があるが
72 :
70 :2012/09/04(火) 20:51:14.30
Case Asc("ァ") To Asc("ン") F_NAME = F_NAME & StrConv(Mid(f.Name, j, 1), vbWide) に修正よろ
73 :
52 :2012/09/04(火) 21:12:57.81
>>70 おぉぉ・・・凄いぃぃぃ!
でも、全角スペースが半角にならないのと、伸ばす音"ー"が半角"ー"になってしまいます。
Case Asc("ァ") To Asc("ン") Or Asc("ー") にしたら、伸ばす音は全角になるのかと
思いましたが半角のままでした。
また、全角スペースを半角にするにはどうすればいいでしょうか?
74 :
52 :2012/09/04(火) 21:16:51.28
>>67 Excel2000の条件付書式でやったらこうなった
条件1
[セルの値が] [次の値より小さい] [=OFFSET(INDIRECT(ADDRESS(ROW(),COLUMN())),-1,0)]
これで書式を「赤」に設定する
条件2は[次の値より大きい]にして他は変えずに書式を「青」にする
一個上のセルを指定する方法は
なんかもっと良いやり方がありそうだと思うけど俺には分からなかった。
一応、ツール=>オプション=>全般 で
「R1C1参照形式を使用する」にチェックを入れてから条件付書式を設定すると
糞長い[=OFFSET〜]の部分が[=SUM(R[-1])]にできるけど
A1形式に慣れた人には使いづらいかもしれない。
76 :
名無しさん@そうだ選挙にいこう :2012/09/04(火) 21:26:00.48
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003,2010 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 不可 別のブックのデータを引っ張ってきたいと思います。 ブックのアドレスはindirectで指定したいのですがrefエラーとなってしまいます。 Exel2003で作成したときには問題なく表示されたのですが、2010で開くとエラーになります。 参照元のファイルは開いているのですが・・・ ご教授お願いします。 =VLOOKUP(AP3,INDIRECT("["&データ!$B$1&"一覧]Sheet2"&"!$B:$d"),3,FALSE)
77 :
75 :2012/09/04(火) 21:38:11.30
よくよく見てみたら
>>75 のOffsetは要らなかった
[=INDIRECT(ADDRESS(ROW()-1,COLUMN()))]
で良いね(これでも長いけど)
>>72 カタカナは全角、英数は半角でいいんだよな?
For Each f In FIL
For j = 1 To Len(f.Name)
Select Case AscW(Mid(f.Name, j, 1))
Case AscW("ァ") To AscW("ン") Or AscW("ー")
F_NAME = F_NAME & StrConv(Mid(f.Name, j, 1), vbWide)
Case Else
F_NAME = F_NAME & StrConv(Mid(f.Name, j, 1), vbNarrow)
End Select
Next j
ThisWorkbook.Sheets(SN).Cells(i, 2) = F_NAME
i = i + 1
F_NAME = ""
Next
unicodeで見ないといけなかったみたいだ。
79 :
70,78 :2012/09/04(火) 22:31:03.65
すまん。大嘘だった。 テスト用のカタカナファイル名が全角のままだった。 For Each f In FIL For j = 1 To Len(f.Name) Select Case Asc(Mid(f.Name, j, 1)) Case Asc("ァ") To Asc("ン") F_NAME = F_NAME & StrConv(Mid(f.Name, j, 1), vbWide) Case Else F_NAME = F_NAME & StrConv(Mid(f.Name, j, 1), vbNarrow) End Select Next j ThisWorkbook.Sheets(SN).Cells(i, 2) = F_NAME i = i + 1 F_NAME = "" Next
γ⌒) )) / ⊃__ 〃/ / ⌒ ⌒\ γ⌒)( ⌒) (⌒) \ ∩⌒) あげさげ! / _ノ :::⌒(__人__)⌒ 〃/ ノ あげハゲー! ( <| | |r┬( / / )) ( \ ヽ \ _`ー‐' /( ⌒) γ⌒) )) / ⊃__ 〃/ / ⌒ ⌒\ γ⌒)( ゜ ) (。) \ ∩⌒) / _ノ :::⌒(__人__)⌒ 〃/ ノ ( <| | |r┬( / / )) ( \ ヽ \ _`ー‐' /( ⌒) γ⌒) )) / ⊃__ / ⊃__ 〃/ / ⌒ ⌒\ γ⌒)( ゜ ) (。) \ ∩⌒) γ⌒)( ゜ ) (。) \ ∩⌒) / _ノ :::⌒(__人__)⌒ 〃/ ノ ( <| | |r┬( / / )) ( \ ヽ \ _`ー‐' /( ⌒)
>>77 INDIRECTなん必要ねーだろ?
A2にポインタ置いて「数式」が=A2<A1とか=A2>A1などとすればいいと思うが
【1 OSの種類 .】 Windows7 Professional
【2 Excelのバージョン 】 Excel2010
【3 VBAが使えるか .】 いいえ
【4 VBAでの回答の可否】 否
月間売上から折れ線グラフを作っています。
貼ったjpgのように、真ん中のグラフは1992から、右は2001から左のグラフの色と違ってしまいました。
同じ年度は同じ色に統一して見やすくしたいのですが、どうしたら良いでしょうか。
ttp://www.age2.tv/up2/src/age7927.jpg
85 :
84 :2012/09/05(水) 21:42:03.96
>>84 線の色を変える操作方法がわからないってこと?
87 :
52 :2012/09/05(水) 22:22:57.34
>>79 全然ダメなんですが・・・
なんか馬鹿にされてるようで嫌気がさしました。
もう結構です。
ありがとうございました。
なつかしす。
大学の頃に言われた自己満グラフを思い出す・・
>グラフにして何がわかるか?
>なんとなくグラフ化しただけでないか?
>見る気が起こらない。
会社入ってQC7つ道具知ってから指摘の意味やまとめ方を知った。
>>84 >同じ年度は同じ色に統一して見やすくしたいのですが、どうしたら良いでしょうか。
色を同変更しても見やすくなんないよ。
まぁやるなら系列の書式設定(対象折れ線を右クリックね)
89 :
79 :2012/09/05(水) 23:15:14.72
>>87 馬鹿なんだから謙虚にな
横柄な馬鹿ほどたちの悪いものは無い
>>89 てめえ、なに騙りやってんの?
そんなことするぐらいなら、
>>52 が満足するコードでも書いてやれよ。
91 :
79 :2012/09/05(水) 23:21:13.90
セルを結合していると条件付き書式が正常に機能しない(罫線がらみの動作がおかしい)のは仕様?
>>89 79のコードを実行してみたか?
・カタカナを全角に
・英数字と全角スペースと()を半角にする
これらの条件を満たしてないよ
(馬鹿なのはお前もだろw)
全角カタカナの処理をいれ忘れていたな。
荒れていますか?
平常運転です
97 :
79 :2012/09/06(木) 00:55:15.42
うるせーバカ
98 :
84 :2012/09/06(木) 01:44:25.79
>>86 >>88 1本ずつの色を変えるのは出来るんですが、一度に左と同じ色に出来たら簡単でいいなと。
私、零細企業の経営者で、新しい社員が客数の減少を気にして無くて危機感を感じています。
で、「2000年前後を超えられないんか!!」と活を入れるための資料ですw
やはり“系列の書式設定”で地道に行くしか無いでしょうか。
>>92 結合したセルを選んでみ
セルの名前はどうなってるよ?
>>98 地道にっていうほどのボリュームでもないと思うけどな
ここで質問したりSSとってアップしたりしてる時間があるなら終わるだろ
WinXPのExcel2003なんですが 顧客というか取引先というかお得意様というか、そういうようなののリストを更新してるんですが 会社名の欄に株式会社ウンコとか有限会社尻の穴とか大便株式会社とかいろいろ入ってて あ、断っておくとこれは仮名で本当に実際にこの名前では入ってないんですが その欄の左隣にフリガナが入る列を作りたいんですが しかしながら株式会社とか有限会社の部分を省いたフリガナにしたいんですが まずそのままPHONETICというやつを使ってみたんですが 困ったことにカブシキガイシャだけでなくカブシキカイシャとか混ざってるんですが SUBSTIナントカっていう関数で消そうと思ったんですが もうこれはカブシキガイシャとカブシキカイシャと、そして、ユウゲンのほうも それぞれひとつずつSUBSTIナントカを使って消すしかないでしょうか? 正規表現的な、カブシキ[カガ]イシャで一発置換みたいな便利な方法って何かありませんか? なお大変恐縮で申し訳ありませんが VSBとかVBAとかいうやつはまったく使えませんが いい解ケツ方法をなにそつお願いします!
>>101 csvなりで保存して正規表現が使えるテキストエディタで置換したほうが早いんじゃない。
あとSUBSTIナントカは確かワイルドカードが使えたと思うんで カブシキ?イシャ とか?
104 :
名無しさん@そうだ選挙にいこう :2012/09/06(木) 11:41:15.41
>>101 ウンコだチンコだ言って喜んでるやつは精神年齢5歳以下だろ
先生SUBSTITUTEはワイルドカードが使えません! csv案は・・・これ年一回くらいしか更新しさなさせなそうだからそれでもいいかなあ・・・うーん 尻とかうんこは子供から大人まで大人気だと思うんですよ
関数をいっぱい入れたらノートパソコンがスゲー熱くなって再計算が10分くらいかかるのですが、どうにかなりませんか?
107 :
名無しさん@そうだ選挙にいこう :2012/09/06(木) 15:18:59.84
普通に置換は? ワイルドカードが使えるだろ
;っsdlv
>>106 ・関数を消す
・シートを消す
・ブックを消す
・エクセルを消す
・ノートパソコンを消す
・10分早起きしてチャラにする
どれでも効果高いよ。
>>98 仮に出来上がっても、活は入れる側だけで受け手の同調無いと思うよ。
>88の通りで、自分が作りたいグラフが、見やすいグラフでは無いパターン。
物事にはセオリーがあって、それを知らないと自分の知ってる範疇で
事済まそうとするけれども、それが正解とも限らない良い例。
>「2000年前後を超えられないんか!!」と
年の時系列(折れ線がセオリー)で示すべき。
今の段階では納得できないかもしれないが、残念ながら質問に対する
回答を踏まえて完成させたところで、望む結果を生まないよ。
▼━質問テンプレ (必ず使ってね) ━━━ 【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 多変量解析で、(推計値)=ax+by+cz+dのように、係数a,b,c,dを求める関数は何なのでしょうか? x,y,zは説明変数です
変数の数と同じだけ方程式ないと解けなくね?
関数じゃなくてソルバーって奴じゃないか 使ったこと無いから知らんけど
115 :
84 :2012/09/06(木) 22:36:36.04
>>100 >>110 >>111 ご忠告通り、地道に変更したw しかし思ったより時間がかかった。
左表の色などの条件を確認して他の表の変更をする・・・を繰り返すのは時間がかかる。
それと、2013以降のを変える方法がわからないので教えて下さい。
しかし何故に色が途中から変わってしまうものなのだろうか?
あと、凡例の絵で、線の上に蓋が付いてるのと下に付いてるのはどう違うのでしょう。
くだらん質問ばかりですみません。
開業23年で右肩下がり、60歳も近くなると心が折れる ort
正直質問の意味が一番わからん 凡例のやつは背景色が関係してるっていう有名なアレのことか?
>>115 おいおいw その見づらいグラフで説明される社員の方がよっぽどつらいだろ。
おまいさんはオナニーと大してかわらんだろ。
>>113 >>114 アドインで多変量解析を選んで、計算させると係数がわかるんですが、毎回手作業でするのがめんどくさいので関数でもとまったらそっちのほうが速いんですわ
ここ最近、ピボット厨が出てこないね
>>117 まぁ、その指摘はさんざん出てるしいいんじゃね
多分このじーさんは何言っても変えない
>>118 97と98年のこと?ただのマークのバリエーションだよ
ていうか早いとこ後継作りなよ
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 お世話になります。 毎月の顧客ごとの売上げに使用しているのですが、 売上げがある月とない月がある業種の為、 AVERAGE関数を使用すると、顧客ごとのAVERAGEの合計と 全顧客の合計のAVERAGEが違ってしまいます。 かといって=SUM(○:○)/12 等では売上げ月が偏っている顧客の評価が下がってしまいます。 他によい関数がありますでしょうか?
具体的に例を上げて、この方法ではどんな困ったことがあって、どんな結果になってほしいのか説明したほうがいいと思います
今回は難問だな。
>>122 たとえばさ売り上げがない月には0がはいるとして
=SUM(○:○)/(12-COUNTIF(○:○,0))
とかじゃいかんの?
「顧客ごとのAVERAGE」というのが、この場合は そもそも評価対象となる月数が顧客ごとに異なる可能性があるわけで。 その合計を取るという発想がそもそもおかしいような気がする。 全顧客のAVERAGEとは違って当たり前なのでは? どうしても合わせたいなら、「売上月が偏る顧客の評価が下がる」ことは 前提の上でAVERAGEA関数を使い、売り上げのない月には「なし」とか 文字を入れておくくらいしかない。
売り上げのある月とない月のある顧客の平均はaverageifで0<を指定すればいいと思うんだけど(売り上げのない月に「0」が入ってないとだめだろうけど) 全顧客の平均は全月数で割るしかないから同じ数字になるわけがないと思う・・ 違うかな?
128 :
名無しさん@そうだ選挙にいこう :2012/09/07(金) 17:47:37.25
エクセルとは関係ないからスレチ
129 :
名無しさん@そうだ選挙にいこう :2012/09/07(金) 19:50:11.17
OS:Windows 7 バージョン:Excel2003 VBA:忘れてます VBAでの回答:なるべくなら不可 質問 シート1 A あ B A い B シート2 あ い う シート1のようなパターン?のデータを作成したいのですが行き詰っています。 テンプレに囲まれたデータがあり、その間に入るデータが シート2に連番に並べてあります。 一気にデータを作成したいのですが、3行分囲ってフィルハンドルでだら〜っとドラッグしても 「い」に入るべき文字が更に下の「え」になってしまいます。 関数を使って何かできないかと思っているのですが、何かいい方法ありますでしょうか?
何言ってんだ?コイツ
>>129 なるべくならお引取り頂くか、一度頭を整理されてからご依頼ください。
前スレの371なんじゃねーか?ww
133 :
84 :2012/09/07(金) 21:58:54.66
>>116 http://www.age2.tv/rd05/src/up11379.jpg このナベ蓋の位置と長さの関係が分からん。
団子の串刺しになってるのは分かるけど上下どっちかに偏ってるのは設定で変わるのかどうか。
>>117 年寄りをいじめてはいけませんw
“総合相談所”で気軽に聞けないのは窮屈ではないの。
で、そのまま社員に説明するわけじゃないよ、最近5年だけを3枚別々に印字したりするつもり。
このグラフをきっかけに、折れ線グラフの色を統一できないかな?と疑問に思ったところで質問したわけです。
134 :
名無しさん@そうだ選挙にいこう :2012/09/07(金) 22:03:59.90
子供叱るな来た道だもの、 年寄り笑うな行く道だものw
変わるのかどうかとか思考停止すんな 変えろ!
>>122 売り上げのない月にも0を入れているんじゃない?
そうでなければ、Averageでちゃんとした値が出るはずだよ。
137 :
名無しさん@そうだ選挙にいこう :2012/09/08(土) 00:49:32.89
>>133 2000年以降の集客の落ち込みを説明したいのなら
>>111 氏も指摘されているように年度別のデータを折れ線グラフで表すべきです。
>>85 で貼られてたグラフ見せられてもまず最初に分かるのは毎年8月は暇なんだなってことですよ。
138 :
371 ◆UEVzcTevVXFH :2012/09/08(土) 01:11:11.28
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 ちょっちゅれ〜 【4 VBAでの回答の可否】 可 やりたいこと アクティブでないセルの色を変えたい。 D列の任意のセルがアクティブのとき、B列のセルの色と文字色を 反転させるにはどうすればいいですか? 例えば、D7がアクティブのときはB7の色を反転(背景が白で文字色が 黒なら背景を黒にして文字色を白にする)、Enterまたは↓キーで D8がアクティブになったらB8を反転、み・た・い・な感じです。
どうもここ最近、質問者が精神疾患を患っているケースが多く感じる。 当人は面白いと思って書いてるんだろうか? まったくもって痛いだけなんだが。
>>139 中黒がキモイ
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Columns(2).ClearFormats
Set TargetCell = Range("B" & Target.Row)
TargetCell.Interior.Color = vbBlack
TargetCell.Font.Color = vbWhite
End Sub
142 :
名無しさん@そうだ選挙にいこう :2012/09/08(土) 11:06:52.33
すげー、 使い方が判んないけど
おまえには言ってないから安心していい
>>141 アクティブセルがD列にない場合はB列の反転処理をしないようにするともっといいかも
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Columns(2).ClearFormats
If Target.Column <> 4 Then Exit Sub ← D列以外のときは処理を抜ける
With Range("B" & Target.Row) ←変数を使わずに済むため
.Interior.Color = vbBlack
.Font.Color = vbWhite
End With
End Sub
背景が白、文字色が黒ならいいけど、それ以外の色だと強制的にリセットされるのねw
好きなようにいじってくれればいいんだよ?
【1 OSの種類 .】 Windows XPとWindows7 【2 Excelのバージョン 】 Excel2007 と2010 【3 VBAが使えるか 】 こぴぺだけできます 【4 VBAでの回答の可否】 可 封筒の雛型を作り、シートに氏名や住所等のアドレス帳をいれて 別シート作って封筒の雛型として「VLOOKUP」でアドレス帳を参照させて 印刷をしています。 しかし、VLOOKUPの検索値を都度、手入力で変更し→印刷、と言う行程 は時間がかかるので、VBAで自動化できればと思います。 今の状態 ・封筒の雛型シートA1〜AH36が印刷する範囲です(既に印刷範囲にしています) ・セルAK1にVLOOKUPの検索値が入力されています。 ・セルAK2に開始bェ入力されています ・セルAK3に終了bェ入力されています VBAの内容 ・AK1の値をAK2にする→Enter→印刷実行→ 以降AK1の値を1づつ繰り上げて、その都度Enter→印刷実行 この作業をAK3の値まで続けて終了(AK3の値も印刷します)。 宜しくお願いします。
148 :
くるるこ :2012/09/08(土) 16:57:37.97
【1 OSの種類 .】 Windows7 【2 Excelのバージョン 】 Excel2007 【3 VBAが使えるか .】 はい(初心者) 【4 VBAでの回答の可否】 可 会計関係に使うファイルを使っています。シートが2種類あり、1枚目は予算書、2枚目は支払決定書になります。 予算書のD列に項目、F列に品目、G列に単価、H列に数量、M列に金額、O列に通し番号があります。 支払決定書のB列に番号を打ち込むと、D列に品目、Y列に数量、AB列に単価、AF列に金額、 AL列に項目が転記されるように Private Sub Worksheet_SelectionChange(ByVal Target As Range) の下に以下のようなコードを作りました。 Set 予算 = Sheets("予算書") '業者者名から住所付き Set lst = Sheets("シートバックアップ") Set 執行 = Worksheets("執行伺兼支払決定書") 略 For 番号 = 20 To 100 品目1 = 執行.Cells(14, 2) '品目1 数字を増 If 予算.Cells(番号, 15) = 品目1 Then '品目の数字を増 執行.Cells(14, 4) = 予算.Cells(番号, 6) '項目 執行.Cells(14, 28) = 予算.Cells(番号, 7) '単価
149 :
くるるこ :2012/09/08(土) 16:58:08.48
執行.Cells(14, 25) = 予算.Cells(番号, 8) '21を増 執行.Cells(14, 39) = 予算.Cells(番号, 16) '21を増 執行.Cells(14, 40) = 予算.Cells(番号, 14) End If 品目2 = 執行.Cells(15, 2) '品目2 数字を増 Cells(番号, ★)★を増 If 予算.Cells(番号, 15) = 品目2 Then '品目の数字を増 執行.Cells(15, 4) = 予算.Cells(番号, 6) 執行.Cells(15, 28) = 予算.Cells(番号, 7) 執行.Cells(15, 25) = 予算.Cells(番号, 8) 執行.Cells(15, 39) = 予算.Cells(番号, 16) 執行.Cells(15, 40) = 予算.Cells(番号, 14) End If 以下略 この支払決定書では5品目まで記入できるのですが、 予算書にない項目を記入したいときは、マクロなし のシートをコピーして使っています。 できれば、(例えば)品目1〜3は予算書のリストから転記して 品目4〜5は自分で品目、項目、数量、単価、項目を自由に記述 させるといったことは可能でしょうか。できればボタンに登録した マクロで実行というのは避けたいのですが。 よろしくお願いします。
150 :
139 :2012/09/08(土) 19:09:39.43
>>141 サンクス子〜
中黒ってキモいです?
なんかいい漢字なんすけどー。
>>144 ども〜
いいねいいね〜 いいよいいよ〜
こっちを使わせてもらいます。
151 :
くるるこ :2012/09/08(土) 20:17:22.90
148,149です。 自己解決しました。 お騒がせしました。
>>147 Sub Macro1()
For i = Range("AH2") To Range("AH3")
Range("AH1") = i
ActiveSheet.PrintOut
Next
End Sub
これでいけると思う
【1 OSの種類 .】 Windowsxp 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 はい(初心者) 【4 VBAでの回答の可否】 可 例) 2012/08/25 300 2012/08/30 250 2012/09/01 23 2012/09/03 100 2012/09/06 80 ・ ・ と言った感じで1年分のデーターがずらりと縦並びにひたすら並んでいるのですが この状態のまま月ごとの統計とか曜日ごととかの様々な統計を取ることは出来ないのでしょうか? 今は調査したい項目数分表を丸々複製してソートして並べ替えて月ごとや曜日ごとに切分割してそれを分析したりしてます 何十種何百種類もこういうデーターがありもの凄く骨が折れる作業となっています。。 詳しい方いらっしゃいましたら宜しくお願い致します。
>今は調査したい項目数分表を丸々複製してソートして並べ替えて月ごとや曜日ごとに切分割してそれを分析したりしてます 表現が変でしたすみません。 ソートした後にそこからコピペで月別曜日別に分割した表を作ると言う事です。(月は12種類 曜日は7種類ソート結果から抽出して作っています。)
>>153 >>154 引用出来ておらずすみません。
さすがにこんなめんどくさい事はそう簡単にはできないでしょうか。
でもこの問題は年間の統計を取る上ではありがちな問題かと思い聞いてみました。
>153-155 ピボットテーブル使えばええんと違う?
作業列に曜日と月を出してピボットするだけのことだな
>>153 俺も156-157のとおり、作業列として月の列、曜日の列とか作って、ピボットテーブルで作業しているな。
【1 OSの種類 .】 Windows7 【2 Excelのバージョン 】 Excel2007 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 特定の単語だけフォントで色を変えた文字列があって、 そこから色の変わっている単語だけを抽出したいのですが、 文字列操作関数はフォント情報を記憶したまま文字列を抽出することはできないのでしょうか? 試しに、A1セルに7文字目以降を赤くした文字列を入力して、 Cells(1, 3) = Left(Cells(1, 1), 10) というVBAを試したのですが、フォント情報がリセットされてしまいました。
160 :
120 :2012/09/08(土) 22:10:51.17
ピボット厨の自演 キタ━━━━━━━━━━━━━━(゚∀゚)━━━━━━━━━━━━━━ !!
161 :
120 :2012/09/08(土) 22:11:50.39
あ、ごめん リロードしてなかったから書くタイミングを外した・・・
>>159 文字の属性まできちんとコピーするのはけっこう面倒
セル全体をコピーしてから不要部分を削った方がたぶん簡単
163 :
153 :2012/09/08(土) 22:45:12.51
>>158 >>156 ピボットテーブル
なるほどまだ使ったことがありませんが勉強してみます。ありがとうございます!
>>159 フォントの色を赤(ColorIndex=3)で抽出するマクロです
Option Explicit
Dim c As Range, i As Integer, moji As String
Sub test()
For Each c In UsedRange '当該シートのデータ全体を対象としています 必要に応じて範囲制限を
moji = ""
For i = 1 To Len(c.Text)
If c.Characters(Start:=i, Length:=1).Font.ColorIndex = 3 Then '一文字分ずつ色を調べてます
moji = moji & Mid(c.Text, i, 1) '該当すれば出力用変数へ追加して
End If
Next i
If Len(moji) > 0 Then '当該セルに一文字でも該当したら検査対象セルの3列右へ出力
c.Offset(0, 3).Value = moji ' 3 は3列右へ出力することを示す
End If 'なお、抽出したセルへのフォント色指定は入れてないので、必要に応じて追加のこと
Next
End Sub
>>162 じゃあ特定の文字色が何文字目にあるかを取得することはできますか?
mid関数とdo loopで一文字ずつ潰してく方法をやったら無限ループにはまりました・・・。
>>162 ,164
リロードしなかったら・・・
すみません。助かりました。そのコードを基にやってみます。
167 :
164 :2012/09/08(土) 22:56:03.05
>>166 164のマクロはフォントの色=3で抽出しましたが、
標準の色以外のときに抽出する、ということであれば
前略〜.ColorIndex = 3 Then の行を
前略〜.ColorIndex <> 標準のフォントカラーのインデックスを示す数字 Then
にしたらいいと思います。テストはしてません。
ではおやすみなさい
Excelの機能を1つ1つ理解し収得するのは結構な時間と労力と精神力を使う作業で疲れている時に行き詰まって この使ったことが無い機能を2つマスターしないと先へ進めないよという状況になってももう無理!みたいな時もあるかと思うのですが、 そんな時に 代表的な機能の概念と使い方例を動画で説明してくれているような神サイトはないのでしょうか?!
ある程度の知識がある状態なら、動画で見るより解説の文章を読んだ方がずっと早いんじゃないか?ヘルプとか
>>168 具体的な目的は何なの?
自分に必要のない機能や操作まで覚える必要はないと思うけど
>>168 必要になったときに調べたり聞いたほうが効率がいいよ。
仕事に就けば、業種や職種によって使う機能が違うこともあるだろうし。
概念を知りたいなら、同等の機能を有する関数を自作してみればいい。
初心者なんですがよろしくお願いします。 エクセル2010.VBAについて。 マクロでコマンドボタン作成してそのコマンドボタンに別のマクロを登録します、 ここまではできたのですが、ボタンの色変更とcaption で手こずっています。 このマクロで ActiveSheet.CommandButton1.Caption = "あああ" ActiveSheet.CommandButton1.BackColor = &HC0FFC0 と入力してもできません、別のマクロを作ってこのコードだけ実行するとできます。なぜ?? ぜんぜんわかりません、教えてくださいおねがいします、
VBAでArray(10000, 10)って感じの二次元配列からRange("A1:K10001") = Arrayみたいに 一括でデータを書き込んで、Columns("A:K").Sortで書き込んだデータの並べ替えを 行ってるんですが、配列内のデータがセル内改行を含む場合、書き込み及び並べ替えの 処理に異常に時間がかかります。(それぞれ150秒、150秒で計5分くらい) 思えば普通にExcel使ってる時もセル内改行を含むデータを大量にコピペするとえらく処理に 時間がかかってますが、これの原因と対策ってなにかありますか。 コピペの場合、Paste:=xlPasteValuesでAutofitが働かないようにすると一瞬なので、Autofitで 行の高さを調節するのが時間食ってるとかだと思うんですが。
172です。
>>173 ボタン間違っていません。
コマンドボタンをVBAで作成、マクロ登録。
プログラムが全然わからなかったから自動記録でやってみました。
ボタン作成とボタンサイズ、作成位置はプログラムでましたが色の変更、コマンドボタンに表示される名前変更は自動記録でもプログラムがでてきませんでした。
なので 色の変更、ボタン名変更は調べました。
自動記録でできたプログラムの下に色変更、ボタン名変更プログラムを張り付けて実行してもエラーになってしまします。
プログラムは次で書きます。
Sub コマンドボタン作成() ActiveSheet.OLEObjects.Add(ClassType:="Forms.CommandButton.1", Link:=False _ , DisplayAsIcon:=False, Left:=452.647058823529, Top:=27.3529411764706, _ Width:=132.352941176471, Height:=47.6470588235294).Select ActiveSheet.CommandButton1.Caption = "ボタン" ActiveSheet.CommandButton1.BackColor = &HC0FFC0 End Sub 実行すると、、、実行時エラー'438! オブジェクトはこのプロパティまたはメソッドをサポートしていません。と表示されます。 プログラムの空白行上は実行されています。下がだめのようです。 空白行の上と下のプログラムを別の標準モジュールで作成して別々に実行すると、ボタン作成がに色変更、ボタン名変更ができます。
177 :
147 :2012/09/09(日) 12:46:22.05
なんとか同じマクロで目的を遂げたいです。 上記プログラムのどこが良くないのでしょうか? どなたか教えていただけませんでしょうか。 activesheet のところをworksheets で指定もしてみましたがだめでした。 別々にマクロつくって、 空白行下のところを call でやってみたりしましたができませんでした。 どうかよろしくお願いします。
178です、書き忘れましたすみません。 コマンドボタンにマクロ登録するプログラムははぶきました。短くしたかったので。 上記プログラムは、、、 コマンドボタン作成(サイズ、位置も)→コマンドボタン名変更、色変更。のものです。
>>179 Sub コマンドボタン作成()
With ActiveSheet.OLEObjects.Add(ClassType:="Forms.CommandButton.1", Link:=False _
, DisplayAsIcon:=False, Left:=452.647058823529, Top:=27.3529411764706, _
Width:=132.352941176471, Height:=47.6470588235294)
.Object.Caption = "ボタン"
.Object.BackColor = &HC0FFC0
End With
End Sub
ついでに綺麗にして見た Sub コマンドボタン作成() With ActiveSheet.OLEObjects.Add(ClassType:="Forms.CommandButton.1") .Left = 452.647058823529 .Top = 27.3529411764706 .Width = 132.352941176471 .Height = 47.6470588235294 .Object.Caption = "ボタン" .Object.BackColor = &HC0FFC0 End With End Sub
>>180 , 181 , 182 さん ありがとうございます。すごいですね。
最初の質問なんですが内容が伝わりやすいようにマクロ登録部分は削ったのですが(特に問題はないだろうと思ってましたが、)、今度はマクロ登録ができなくなってしましました。
>>176 の空白のところに下記プログラムが入っていてボタン作成(サイズ、位置)とマクロ登録ができていました。
Application.Goto Reference:="テスト"
ActiveSheet.Shapes.Range(Array("CommandButton1")).Select
すみませんが少し教えてくださいお願いします。
185 :
名無しさん@そうだ選挙にいこう :2012/09/09(日) 16:21:31.88
あ
何勝手に削ってんだよ 謝罪はしてくるんだろうな?
コピペや書き込みなら Application.ScreenUpdating = False として、必要な処理を行い Application.ScreenUpdating = True で戻すと、相当処理が早くなるけど、今回の場合これ適用できるかな? 並び替えは、(おそらく書き込み時に時間かかっているので)上記のように書き込んでから シートのソートを行えばどうでしょう。ソート自体は 0.x秒程度しかかからないでしょう。 時間がかかってるのは、書き込み時にセルごとに書式がかかってるからじゃないかな。 書式かけたければ、最初のようにするか、Rangeでまとめてかければ早くなると思う。
>>188 お、レスサンクスです。
しかしApplication.ScreenUpdating = Falseあたりは実は
試したんだけどほとんど改善しなかったのです……。
多分バックグラウンドで行の高さかなんかを計算してるん
じゃないかと思ってるんですが。
>>189 書式抜きに貼ってからソートとか処理して、最後に高さ含めて書式を整える方向で組んだらどう?
>>174 >>187 配列ん中でソートすればいいんじゃないの
後は、全行で高さを最大にしてから行の高さを適宜戻すとかもためしてみるといいかもしれない
>>190 二次元配列からセルに書き出すのって書式を貼ってるわけではないはずなんだけど、
確かにセル内改行を含むデータを入力したセルには「折り返して全体を表示する」書式が
自動的に設定されてるっぽいですね。
Range("A1:K10001").Value = Arrayとかではダメでした。
>>191 一応セル内改行を含むデータが入るまでは書き出してソートの方が早かったので
ちょっと検討してみてるんですが、もう少し頑張ってダメそうなら配列内ソートで
済ませることにします。
行の高さを最大にしてってのはやってみたんですが、現在の行の高さに関係なく
文字を入力すると高さを再計算するみたいでした。
非常に泥臭い手としては一旦二次元配列内のデータをクリップボードに移して
テキスト貼り付けするとか試してみようかな……。
色々ありがとうございました。いくつか思いつくこともあったのでこっから先は
自分で頑張ってみようと思います。
【1 OSの種類 .】 Windowsvista 【2 Excelのバージョン 】 Excel2007 【3 VBAが使えるか .】 はい(少しですが) 【4 VBAでの回答の可否】 可 スレ違いかもしれないのですが かんたんレイアウトというアドインを使って複数列(行)に分割と言う作業をやっています 繰り返し処理をしたいのでこのアドインの操作をマクロとして使用したいのですができるでしょうか?
194 :
名無しさん@そうだ選挙にいこう :2012/09/10(月) 19:27:54.33
184です。 VBAにてコマンドボタン作成しマクロ登録なんですが、、、 184で書いたプログラムなんですが、マクロの自動記録したワークシートでしかコマンドボタンにマクロ登録できませんでした。 他のワークシートではダメのようです。 ぐぐっていろいろみたのですが1つもVBAによるコマンドボタンのマクロ登録がありません。 もしかしてVBAでコマンドボタン作成してマクロ登録はできないのでしょうか?
>>194 登録って?クリックイベントに書いておくだけじゃないの。
>>194 色つかないけどフォームのボタンじゃだめ?
Sub 色なしボタン作成()
With ActiveSheet.Buttons.Add(452, 27, 132, 47)
.OnAction = "テスト"
.Characters.Text = "ボタン"
End With
End Sub
>>194 追いかけるの面倒だから自己紹介の時は
>>176 、
>>184 、…
と全部書いて欲しい
あとbookをアップロードすればすぐに解決しそうな予感
198 :
名無しさん@そうだ選挙にいこう :2012/09/10(月) 20:57:01.97
>>196 できました。本当にありがとうございます。
ぐぐっても全然探せなかったので助かりました。
ボタンについてもうちょっと調べてみます。ありがとうございました。
>>197 すみません。次から気を付けます。
【1 OSの種類 .】 WindowsXP SP3 【2 Excelのバージョン 】 Excel 2010 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 値でなく行番号を返す Large() が欲しくて MatchLarge() という関数を自作したのですが、ワークシート上でうまく動きません。 以下のような結果を期待しているのですが 8 MatchLarge(1, $A:$A) -> 8 1 7 MatchLarge(2, $A:$A) -> 7 2 6 MatchLarge(3, $A:$A) -> 6 3 5 MatchLarge(4, $A:$A) -> 5 4 5 MatchLarge(5, $A:$A) -> 5 5 4 MatchLarge(5, $A:$A) -> 4 6 3 MatchLarge(5, $A:$A) -> 3 7 2 MatchLarge(5, $A:$A) -> 2 8 2 MatchLarge(5, $A:$A) -> 2 9 1 MatchLarge(5, $A:$A) -> 1 10 実際使ってみると5, 9行目が #VALUE! になってしまいます。 次のレスで関数本体を貼ります。
>>199 の関数です。
----
Option Explicit
Function MatchLarge(rank As Double, range_ As Range) As Double
Dim value As Double
Dim rankeq As Double
Dim n As Double
Dim cell As Range
Dim i As Double
value = WorksheetFunction.Large(range_, rank)
rankeq = WorksheetFunction.rank(value, range_)
n = rank - rankeq
Set cell = range_.Find(What:=value, LookIn:=xlValues, LookAt:=xlWhole)
For i = 1 To n
Set cell = range_.FindNext(cell)
Next
MatchLarge = cell.Row
End Function
Sub test()
MsgBox (MatchLarge(5, Range("$A:$A")))
End Sub
----
マクロ test() を実行した場合は期待した結果(5)が表示されるのですが、ワークシート上で MatchLarge(5, $A:$A) と書くと #VALUE! になります。
動かない理由がわかる方がいたらご教示願います。
>>199 は一部コピペミスです。すみません。
8 MatchLarge(1, $A:$A) -> 8 1
7 MatchLarge(2, $A:$A) -> 7 2
6 MatchLarge(3, $A:$A) -> 6 3
5 MatchLarge(4, $A:$A) -> 5 4
5 MatchLarge(5, $A:$A) -> 5 5
4 MatchLarge(6, $A:$A) -> 4 6
3 MatchLarge(7, $A:$A) -> 3 7
2 MatchLarge(8, $A:$A) -> 2 8
2 MatchLarge(9, $A:$A) -> 2 9
1 MatchLarge(10, $A:$A) -> 1 10
が正しいです。
>>199 8 MatchLarge(1, $A:$A) -> 8 1
7 MatchLarge(2, $A:$A) -> 7 2
6 MatchLarge(3, $A:$A) -> 6 3
5 MatchLarge(4, $A:$A) -> 5 4
5 MatchLarge(5, $A:$A) -> 5 5
4 MatchLarge(5, $A:$A) -> 4 6
3 MatchLarge(5, $A:$A) -> 3 7
2 MatchLarge(5, $A:$A) -> 2 8
2 MatchLarge(5, $A:$A) -> 2 9
1 MatchLarge(5, $A:$A) -> 1 10
の意味がわからない
後、左端の数字で2と5がかぶってるんだけどそれはいいの
>>202 重複を許した順位を取得してランキング表のようなものを作りたいという意図です。
例えばテストの得点表が以下のようになっていたとして
A B
----
鈴木 100
佐藤 90
田中 90
中村 80
...
C列に Index($A:$A, MatchLarge(ROW($A1),$B:$B)), ... のように書けば上位n名のリストが出てくる、という感じです。
Large() と Match() を組み合わせる方法だと、同点の人がいた場合常にリストの一番上の人が該当してしまうので
それを回避するために関数を自作しようと思いました。
204 :
名無しさん@そうだ選挙にいこう :2012/09/11(火) 19:03:57.19
>>202 マジ分かりづらい質問ではあるが、多分こういう事だと思う
A列(A1〜A10)に8〜1の数字が書いてあって(君も指摘するように2と5は2つずつある)
B列(B1〜B10)に自作関数とやらが入ってる
その結果が -> の右側のようになってほしい
ということだろうと思われる
で、思ったんだが
Largeと組み合わせるならRankよりもMatchのほうが良いんじゃないかと。
205 :
204 :2012/09/11(火) 19:06:17.42
>>203 >Large() と Match() を組み合わせる方法だと、同点の人がいた場合常にリストの一番上の人が該当してしまうので
>それを回避するために関数を自作しようと思いました。
あー、そういうことか
ピボットつかえばいいじゃん 上位n位っていうフィルターがある
>>206 データの量が多く(130*100000程度)、数式を含む列もあるせいかフィルタで並べ替えようとすると数十分経っても終わらないのです。
一時的に必要な列だけ抜き出して列数を減らせばなんとかなるのですが、集計したい列が多いため毎回それをやるのは避けたいと思っています。
書き忘れましたが、もう一つの理由として データが定期的に追加されていくため、数式の形でランキングを作っておけば自動的にランキングも更新されて楽だというのもあります。 なので、できれば関数で処理したいです。
>>203 デバッグはしてないが、できればその状態で先に本データで試してみて欲しい
130*100000程度のデータとあるが、多分フリーズする。しなければ手伝おうと思う
Findが鬼門になると思う
別の手段として、
>>203 のデータを元にすると
C1=B1+ROW()/1000000
として
Cを参照すればB列の重複がなくなるので、普通にRankかLargeで取り出せると思う
C1=B1+ROW()/1000000
はもちろんVBAでやったほうが軽いが、そこは任せる
問題は少数誤差だが、それもVBAで検知すればいいと思う
C1=COUNTIF(C:C,C1)
で2以上ならどこかおかしいはず
FindNextがNothingを返すのはなぜ?test()から呼び出すと正しく動くのに。 って質問かと思ってた
>>209 本データで試していますが、重複項目は #VALUE! になるものの重複していない項目の行番号はすぐに取得できました。
ただ、
> C1=B1+ROW()/1000000
の方法は検討していなかったので試してみようと思います。実数データもあるので可能かどうかまだ不明ですが、値域次第ではいけるかもしれません。
ありがとうございます。
>>210 値を返すところを
MatchLarge = IIf(cell Is Nothing, -1, cell.Row)
と書き換えてみましたが、やはり #VALUE! のままになってしまいました。
VBAはあまりよくわかっていないのですが、Nothing になっているわけではないようです。
10万行もあるなら Access使ったほうがいいとおもう
213 :
139 :2012/09/11(火) 20:24:27.52
141中黒キモオ氏のを改造して、Excel2010のブックにも取り込みました。 うん、なかなかいい感じ。 罫線があるので、Columns(2).ClearFormatsはやめました。 Private Sub Worksheet_SelectionChange(ByVal Target As Range) Range("B8", Range("B1048576").End(xlUp)).Interior.Pattern = xlNone Range("B8", Range("B1048576").End(xlUp)).Font.Color = 0 Range("B43").Interior.Color = 16777215 Range("B43").Font.Color = 255 Range("B192").Interior.Color = 16777215 Range("B192").Font.Color = 255 Range("B44:B54").Interior.Color = 14281213 Range("B44:B54").Font.Color = 0 Range("B188").Interior.Color = 14281213 Range("B188").Font.Color = 0 Range("B260:B311").Interior.Color = 14281213 Range("B260:B311").Font.Color = 0 Range("B73:B98").Interior.Color = 16777181 Range("B73:B98").Font.Color = 0 Range("B99:B126").Interior.Color = 16382463 Range("B99:B126").Font.Color = 0 Range("B125").Interior.Color = 16382463 Range("B125").Font.Color = 16711680 Range("B172").Interior.Color = 13434879 Range("B172").Font.Color = 0 Range("B312:B317").Interior.Color = 13434879 Range("B312:B317").Font.Color = 0 Range("B199:B247").Interior.Color = 16777215 Range("B199:B247").Font.Color = 10921638 '続く
214 :
139 :2012/09/11(火) 20:27:16.02
'213の続き Set TargetCell = Range("B" & Target.Row) Application.ScreenUpdating = False '←質問その@の箇所 If Target.Row >= 8 And Target.Row <= Range("B1048576").End(xlUp).Row Then TargetCell.Interior.Color = vbBlack TargetCell.Font.Color = vbWhite End If Application.ScreenUpdating = True Set TargetCell = Nothing End Sub ------------------------------------------------------- 今回の質問は3つ 質問その@ 矢印キーで上下させると僅かなタイムラグが出るので、もっと素早く することはできるでしょうか? Application.ScreenUpdating = False(True)を組み込んだら砂時計が出てきて なぜか処理が遅くなりました。 質問そのA 毎月追加するシートなので、毎月マクロを追記することになりそうですが、 どこか1ヶ所に書いておけば、同一ブック内の全てのシートに 繁栄させることができるでしょうか? 質問そのB Excel2010のブックをBook2010.xlsx、Excel2003のブックをBook2003.xlsとしたとき、 Book2003.xlsにマクロを書いて、Book2010.xlsxにこの動作をさせることが できますか?(Book2010.xlsxなので、これにはマクロを書かない)
216 :
名無しさん@そうだ選挙にいこう :2012/09/11(火) 23:23:20.02
VBAで各シートのA列を連結させてその中から重複する行を削除して 新しいシートに張り付けたいのですがやり方としては 全シートを順番にA列をコピーして新しいシートにデータを貼り付ける →並び替えをして1行目から見て行って、上下で同じデータの場合上の部分を削除 こういうやり方があると思いますがこれだとかなり時間がかかります 関数とか使って他に方法はあるのでしょうか?
一般的な回答者って
>>216 みたいな質問は意味を理解できるもんなの?
>>216 ハッシュ的に
scripting.dictionaryを使用したらどうだろう。
コピーせずに、それぞれのシートのデータを順に読み
項目が重複していない場合(新規の項目)は、項目を作成
項目が重複している場合(既存の項目)の場合は処理をパス。
全部読み終わったら、シートに書き出し。
以上となる。
>>216 フィルタオプションの設定で重複レコード無視にすればいいんじゃないの?
>>216 まさか人力で重複を探してるの?
メニューから「重複の削除」で一発だよ
シート数が多くてコピペに時間がかかるってんならVBAで
ピポットを始めたばかりの初心者で1日目にしてわけがわからず挫折しそうなのですが ピポットは大体何週間もしくはヶ月ぐらいでマスターできるのでしょうか?
pivottableな。 俺なら1日。 >222のような間抜けな質問をしちゃう奴なら1年は見た方が良い。
>>222 基本機能覚えるだけなら1日で十分だな。これはもともとエクセルに対する慣れがかなり大きいと思うけど
まぁ気長に使い続ければ、いつかハッと使えるようになる。
マスター、となると話は別でそこまで使い込む機能でもないから一生無理そう
後はグラフとか、図形描画とかな。
>>223 まだ大部分の関数の使い方を知らないExcel初心者です。
ピポットあれこれ試した結果最後に何もかも1列に圧縮されてしまって超細長い表が出来たのを見てだめだこりゃと思いましたw
>>223 ピポットは計算結果をある程度頭の中でシミュレーションできるようにしておかないと危なっかしいかんじがしますね、結構コツと慣れが必要かと思いました。
>>225 ┏┓ ┏━┓ ┏┓ ┏┳┓ ┏┓ ┏━━┓ ┏━━━┓┏┳┓┏┳┓
┃┗━┃○┃┏━┛┗━┓┃┃┃ ┃┃ ┗━━┛ ┗━━┓┃┃┃┃┃┃┃
┃┏━┗━┛┗━┓┏━┛┗┻┛ ┃┗━┓┏━━┓┏━━━┓ ┃┃┗┻┛┃┃┃
┃┃ ┏┓┃┃┏┓ ┏┳┳┓┃┏━┛┗┓┏┛┗━━━┛ ┏┛┃ ┃┃┃┏┓
┃┗━┓ ┃┃┃┃┃┃ ┗┻┫┃┃┃ ┏┛┃ ┏┛┏┛ ┃┃┗┛┃
┗━━┛ ┗┛┗┛┗┛ ┗┛┗┛ ┗━┛ ┗━┛ ┗┻━━┛
だよく見ろ
>>200 の関数ですが、
Set cell = range_.FindNext(cell)
の行を
Set cell = range_.Find(What:=value, After:=cell)
に変更したところワークシート上でも動作するようになりました。
理由はよくわかりませんが、ユーザ定義関数内では FindNext() は使わない方がいいということですかね…。
Excelはピボットを使うためにあるんだよ ピボットできれいな結果を出すために、どういうテーブルを構築するかがコツ
10万行もあるのに関数で抽出するってアホだな ピボットのトップテンって時間はかからねーよな
>>228 そんなことはないと思う
findnext エラ-辺りでぐぐってみては
>>229 へぇ、知らなかった
エクセルは関数が扱えて3割、マクロが使えて7割だ。 関数もマクロも使えないようじゃ、エクセルを使う意味は特に無い。 片手間でも使わざるを得ない内容は、誰かに任せるのが良い。 10倍の効率で処理してくれる。 まぁ俺クラスになると20倍だけどな。
233 :
213 :2012/09/12(水) 19:33:36.79
ねーねー、213だすけど 誰か教えてちょ〜♥
>>233 (>213-214)
@できる
Aできる
Bできる
>>233 オカマみたいな喋り方ね。まぁいいけど
1.解決策としては
a.Application.ScreenUpdating = False は一行目に書く。また自動計算もついでに切る。vba 自動計算 停止 でぐぐれ
b.マクロをまとめる
Range("B43").Interior.Color = 16777215
Range("b192").Interior.Color = 16777215
は
Range("B43,b192").Interior.Color = 16777215
といった感じ
c.もっと範囲を狭める。
具体的にはフォントカラーがvbWhiteのところだけを調べ、上記の色に戻す。
2.シート1に
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
call a
End Sub
標準モジュールに
sub a
さっきの中身
end sub
3.
ファイルをオープンしてrunだったと思う
他ファイル マクロ でぐぐれ
【1 OSの種類 .】 Windows7 【2 Excelのバージョン 】 Excel2007 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 csvファイルを何回も開く、計算、閉じるをすると ファイルを何回も開いて、閉じてるのが見えて処理に時間がかかっているのですが 開いてるのがわからないようにして処理を早くできないでしょうか? 今こんな感じです。 a(1) = "Book1.csv" a(2) = "Book2.csv" a(3) = "Book3.csv" Application.DisplayAlerts = False Application.ScreenUpdating = False for i =1 to 3 Workbooks.Open ThisWorkbook.path & "\" & a(i) call 計算 Workbooks(a(i)).Close next Application.ScreenUpdating = True Application.DisplayAlerts = True
>>236 CSVファイルのオープン・クローズに時間がかかるのは
そのCSVファイルのサイズにもよるけど、どうにも出来ません。
改善できるとすれば
>call 計算
の部分の中身しだいです。
そこのコードが分からないとこれ以上は回答できません。
ファイルの内容をバイナリで読み込んで・・・
>>236 これってCSVファイルをOpenしないとダメなの?
ちょっとスレチで申し訳ないが、高速に読み取るならOpenTextFileとかで出来るよ
240 :
213 :2012/09/12(水) 21:59:05.72
>>235 エロエロ書いてくれてありがとう。
全部検証してないけど、やったものだけ書いておきまする
>a.Application.ScreenUpdating = False は一行目に書く
10秒間で動くカーソルの速度を計ったら、約30%の悪化w
Application.ScreenUpdating = Falseを書かない方が何故か早い
>自動計算もついでに切る
こちらは約5%の改善
>マクロをまとめる
ほとんど変化なし
>もっと範囲を狭める
ほとんど変化なし
取りあえず、途中報告ね
無駄な改行超うぜえ てきとーな%も腹立つわー
242 :
名無しさん@そうだ選挙にいこう :2012/09/12(水) 22:21:56.98
正確なパーセンテージを書いたところでなんら解決には至ってないことに気づけ
>>240 話を聞くだけだと相当古いPCを使ってるかウィルスにでもかかってるのでは?と疑ってしまう。
>Application.ScreenUpdating = Falseを書かない方が何故か早い
なら書かなくてよい
>マクロをまとめる
のは速さだけでなく見やすくするためでもある(主に回答者が)
つまり気を使えって事
で、3.をしっかりやった後でも遅いならPCの性能が低いとしか言いようがない
もしくは劣化している。ノート、Pen4なら恐らく熱で死んでる。
sandy以降のプロセッサに買い換えることをおすすめする。
>>241 >>242 アメブロを見たことあるが、普通に5,10行は開けていた
何が楽しいのかはわからんが、当人たち同士は楽しいのだろう。
%も同じでまぁ遅いか早いかだけみてあとは見ないふりをしよう。
気にしないのが一番。
244 :
名無しさん@そうだ選挙にいこう :2012/09/12(水) 23:26:31.68
>マクロをまとめるのは速さだけでなく見やすくするためでもある(主に回答者が) 回答者のために質問するスレだったのかwww
245 :
名無しさん@そうだ選挙にいこう :2012/09/12(水) 23:28:11.10
>アメブロを見たことあるが、普通に5,10行は開けていた >何が楽しいのかはわからんが、当人たち同士は楽しいのだろう。 なんという情弱www
>>244 >>245 煽るのは構わんがもうちょっとレベル上げて欲しい。
回答の間違いを指摘するとイラッとくるからそこを責めれ。
動作が遅いからPCのせいにする これがレベルの高い回答かね?
>>247 ブログ 改行 でググれ
>アメブロを見たことあるが、普通に5,10行は開けていた
>何が楽しいのかはわからんが、当人たち同士は楽しいのだろう。
これの答えがわかるよ
ブログなら好きにしろ だがここは2chだ 豪に入っては豪に従いたまえよ
他人にはググれと書いてるくせに自分ではググらないんだね それともググったけど分からなかったというオチか
あーもうおまえら全員謝罪しろよ
>>236の改行は許せるの?
ダブル行空けはシングル行空けにするといいとは思うが
それだけだな
>>240 はシングル行空けですら無駄でうざい部分ばかりだろ
大きな違いは意図をもって行っているか、その意図を感じられるか、だ
255 :
名無しさん@そうだ選挙にいこう :2012/09/13(木) 00:47:00.31
236も無駄な改行してるのに一切触れない 235の回答が結果的に的外れだったから240に八つ当たりしてるんだろ? 子供かよ
誰に対してレスしてんだ?
257 :
249 :2012/09/13(木) 00:53:55.50
>>243=>>247にせっかく教えてやったのにお礼もできないなんて人間の屑だな
まったくだ 謝罪しろ
>>249 おぉ、PV稼ぎだったのかありがとう!
メールでもそういう人いるから気づかなかった。
みんな頭おかしいと思ってたわ。
>>257 いいんじゃね?そんなこと気にしてたら胃に穴開くぞ
>>1-100 0
拝啓
平素より格別のお引き立てを賜りまして誠にありがとうございます。
この度は当方の書き込みにより不愉快な思いをさせてしまい
大変ご迷惑をおかけして誠に申し訳御座いませんでした。
またお申し出の際、対応させて頂きましたいた私の態度に
ご無礼のありました件につきましても、重ねて謹んでお詫び申し上げます。
今回のご指摘を頂き、 より一層書き込みへの配慮を徹底する必要性を痛感しております。
今後このようなことが二度とありませんよう、誠心誠意努力をしてまいります。
また今後とも当スレをご利用いただけますよう平に伏してお願い申し上げます。
敬具
誰だおまえ723か?
262 :
213 :2012/09/13(木) 19:47:10.71
>>235 2は、ちょっち後回しね
>ファイルをオープンしてrunだったと思う
>他ファイル マクロ でぐぐれ
ぐぐってみたけど、よくワカラン・・・
1) Book2003.xlsにPrivate Sub Worksheet_SelectionChange(ByVal Target As Range)を書く(以後、鮪1と略す)
2) Book2010.xlsxを開く
3) 鮪1をBook2010.xlsxにインポート
4) Application.Run "Book2003!鮪1"
5) Book2010.xlsxをアクティブにして、カーソルをグリグリ・・・セルの色が反転
という流れになりますの?
(やり方がマズーなのか動かないですが)
263 :
213 :2012/09/13(木) 20:02:56.34
>>243 4年前に買ったPCなので確かに古いですね〜
CPUはインテルT5500というやつですた。
PCウィルスはノートン先生でチェックしてるので大丈夫だと思うますよ〜
で、243さんのPCで213-214のマクロを実行したとき
Application.ScreenUpdating = Falseの有無でどれくらいの
速度差が出ますたか?
VLOOKUP()
【1 OSの種類 .】 Windows7 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】いいえ 【4 VBAでの回答の可否】 否 質問いたします。 エクセル本来の表計算ではなく、エクセルで文章を書きたいと思っています。 エクセルを開いて文書を作成していきます。 完成したら、ページ設定でレビューをみます。 印刷用紙はA4です。そしたら用紙の幅を超えている部分が出てきます。 そのような場合、インデントや自動的に用紙幅で折り返すようにするにはどのようにすればよいのでしょうか?
この内容でインデントがなぜ出てくるかはわからないので、 用紙幅での折り返しについて。 折り返すにはセル内改行でOK。
ごめ、
>>267 のセル内改行間違い。
書式設定の折り返して全体表示のことで。
そして次の質問はセル内改行の行間を調整するにはどうすればいいですか、だ
素直にWordを使え、バカ
【1 OSの種類 .】 Windows7 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】いいえ 【4 VBAでの回答の可否】 否 質問いたします。 エクセル本来の表計算ではなく、エクセルで文章を書きたいと思っています。 エクセルを開いて文書を作成していきます。 完成したら、ページ設定でレビューをみます。 セル内改行の行間を調整するにはどうすればいいですか
>>262 ぐぐりながら掛けるように鳴った方がいい。俺も今ググりながら書いた。
Sub Test1()
Dim OpenFileName As String
Workbooks.Open "2010.xlsx"
Workbooks("2010.xlsx").Activate
'kokokara
Cells(1, 1).Value = 123
'kokoni makurowokaku
End Sub
ワークシートを開いて、アクティブブックを指定。後はマクロを書くだけ。
あとごめん、runいらなかったわ。
>>263 ノートか。熱でやられてるんじゃない?と思う。
i5-2400だけど、Application.ScreenUpdating = Falseは差が全くわからない。
ブックがまっさらってのもあるかもしれない。
>>271 うぜえな・・・遊びたいなら余所でやれ
あと謝罪を忘れるな
▼━質問テンプレ (必ず使ってね) ━━━ 【1 OSの種類 .】 Windows 2000以降バージョン にて対応希望 【2 Excelのバージョン 】 Excel 2000以降バージョン にて対応希望 【3 VBAが使えるか .】 少し 【4 VBAでの回答の可否】 可 とあるページの印刷をマクロにて指示しています。 その際シートの状況によりPageSetup を使用しています。 なお、印刷後はすべて印刷前のPageSetup状態に戻すべく、 変更前のPageSetup各種値を変数に放り込む仕様としました。 ここで.PageSetup.PaperSizeについて質問なのですが、 記述としては以下です。 変数 = ActiveSheet.PageSetup.PaperSize '値格納 ActiveSheet.PageSetup.PaperSize = xlPaperA4 '値変更 プリントアウト処理 '出力 ActiveSheet.PageSetup.PaperSize = 変数 '値復元 このとき値復元時にエラーが出ます。 理由としてはプリンタトレーに無いサイズ(例としてB4)が指定されたためなのですが、 もともとB4がデフォ値で取っており、A4変更後元B4に戻す行為で エラーが返されます。 元ファイルのプリント設定は変えることなく、かつプリント後は ファイル保存を行う必要があるため、困っています。 何か良い手をご教示願います。
>>271 縦位置を両端揃えで行の高さを変える
>>274 それで戻らないのが不思議ね。
途中で変数の内容を変えていると思う。
ウォッチ式でよく確認して欲しい。
それでも無理なら
ActiveSheet.PageSetup.PaperSize = xlPaperB4
でもダメならファイル保存を行なってから印刷すれば?
>>274 そのあたりはプリンタ側の仕様で、今まで設定できてた値が再設定できなくなるのはよくあること
一度ブックを閉じてしまえば、たいてい変更前の値に自動的に戻るんだけど
移転
278 :
264 :2012/09/14(金) 10:16:30.12
>>264 です
>そして二つの相性を足し算。
>そうすると?2、?1、0、1、2、10以上の6パターンができるので、
>これに3を足して整数にする。1、2、3、4、5、10以上
ここまではVLOOKUPでできたのですが、その先ができませんでした…
>10以上を6に変換。
>
>MID関数を使って
>1を▲
>2を△
>3を◯
>4を◎
>5を☆
>6を?
>に割り当てる。
10以上を6に置き換える方法と、MID関数?の割り当てのやり方を教えていただきたいです。
>>278 本人に聞いたほうが早くない?
10以上はvlookupの最後の引数をTRUEにする
それか10以上の数が来た時点でif(a1>=10,6)としておくか、
最初から100を6と入力しておくか
midはこんな感じだろう
mid("▲△◯◎☆?",a1,1)
それか最初から記号で書いておけばいいんじゃないかって思うけど
計算とかで使うのかな。よくわからんけど
280 :
名無しさん@そうだ選挙にいこう :2012/09/14(金) 14:33:37.26
端数を自動で計算する式を作りたいのですが、教えてください 0.25は0に0.50は0.50に0.75は1.0に自動的計算式ないでしょうか?
281 :
264 :2012/09/14(金) 14:43:21.62
>>279 ありがとうございます、できました!
MID関数は存在も知らなかったので、勉強になりました
最初から記号にして、のやり方も、少しためし手みようと思います
どうもありがとうございました
>>280 端数を丸める方法として一番一般的なのは四捨五入だけど、
それを0.5刻みに拡張すれば良いのかな?
ただ、その場合だと0.25は0.5にならないといけないけど。
-0.75≦x<0.25の範囲が0
0.25≦x<0.75の範囲が0.5 <= 0.25はココ、0.5もココ
0.75≦x<1.25の範囲が1 <= 0.75はココ
ってなるのが自然だと思うよ。
で、これらをExcelで実現する方法については単純にIf文で書けば良いと思う。
200MBくらいあるファイルが送りつけられてきて、なかなか開かなくて困ってます。 ふつうのノートパソコンでストレスなく扱う上手い方法を教えていただけますでしょうか?
>ふつうのノートパソコン (略)
287 :
213 :2012/09/14(金) 19:03:51.10
>>272 あのー、サパーリワカランのですが・・・
272に沿って書いてみましたん。
(マクロは141を使用)
Sub Test1()
Dim OpenFileName As String
Workbooks.Open "2010.xlsx"
Workbooks("2010.xlsx").Activate ’←コンパイルエラー
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Columns(2).ClearFormats
Set TargetCell = Range("B" & Target.Row)
TargetCell.Interior.Color = vbBlack
TargetCell.Font.Color = vbWhite
End Sub
End Sub
4行目で コンパイルエラー End Subが必要です。 になってしまうぅぅぅ・・・ orz
もぅ一度書きますが、この条件です。
2010.xlsx --- カーソルを動かすと色が変わるやつ(これにはマクロが書かれてない)
2003.xls ---- これにマクロを書いて、2010.xlsxをコントロールする
なんで入れ子になってんの
289 :
213 :2012/09/14(金) 19:29:20.86
>>288 >'kokokara
>Cells(1, 1).Value = 123
>'kokoni makurowokaku
に沿って141のマクロを書きますた。
Cells(1, 1).Value = 123の意味がワケワカメだけどダミーと解釈
これでどうよ Sub Test1() Dim OpenFileName As String Workbooks.Open "2010.xlsx" Workbooks("2010.xlsx").Activate Columns(2).ClearFormats Set TargetCell = Range("B" & Target.Row) TargetCell.Interior.Color = vbBlack TargetCell.Font.Color = vbWhite End Sub
291 :
213 :2012/09/14(金) 19:48:27.71
>>290 Dim OpenFileName As Stringについて解説してもらえますか?
いや、290は既に試してエラーになるのが分かってるので、
あえて不明な点をお聞きします。
(本音 : そんな子供だましでの茶々入れはやめてくれ)
>>213 とりあえず
>>287 のエラーは
Subプロシージャを入れ子で書いてるから
だってのは俺でもわかった。
んで、根本的な質問内容の
マクロを記述してないブックのシートイベントを
ほかのブックに記述したマクロで制御する件は
無理だと思う。
>>272 で書いてあるマクロとかは「マクロが記述されてるブック(Book2003.xls)から
他のブック(Book2010.xlsx)を開いて、当該セルの色を変えるもの」であって、
たぶん
>>213 が望んでいるであろう「リアルタイムに変更を反映させるもの」じゃないと思う。
最低限Book2010.xlsm(.xlsxじゃない点に注意)にはSheet1モジュールに
Private Sub Worksheet_SelectionChange(ByVal Target As Range)プロシージャが書いてないと
シート上の変更イベントが拾えない。
……んじゃないかなぁ、とおもう。(絶対そうだって言うほど自信ないけど。)
293 :
213 :2012/09/14(金) 21:07:25.34
>>292 マクロのインポート(エクスポート)を、別のマクロで出来そうな希ガスるんです。
234のおっちゃんも Bできる と書いておられる。
でも、そのやり方がワカランのよね〜
294 :
292 :2012/09/14(金) 21:17:34.43
>>293 確かにマクロをインポートすることはできるけど
インポートした時点でマクロ有効ブックになっちゃうから
そうなると「マクロが記述されてないブック」という前提条件には
当てはまらないでしょ?
その辺どうなの?
295 :
213 :2012/09/14(金) 21:26:23.28
>>294 Book2010.xlsx(Book2010.xlsmではない)にマクロを書いて動かすことができる。
しかし、そのままだと保存できない。
入力するときの補助としてB列のセルを反転したかったので、入力が終わったら
マクロを削除して上書き保存・・・という流れを想定してまする。
296 :
213 :2012/09/14(金) 21:28:56.03
てゆーか、 マクロをインポートすることはできるなら、そのやり方を早く教えてよw
297 :
292 :2012/09/14(金) 21:46:22.44
エラそうだな213?
>>297 新規ブックにマクロを書けば、保存しなくても動作しますよ。
>>268 ありがとうございます。
しかし、そうではなくセルを結合することなく、エクセルを開いた状態のセルで文書をどんどんタイプしていきます。
そうしたら書式設定の折り返しではセルを結合させていないので、表示できません。どのようにすればよいのでしょうか?
結合まったく関係ないだろ おまえは何を言っているんだ
>>300 ゴリゴリマクロで押せば何とかなるかもしれないけれど、
どう考えても見合う対価は無いと思うよ。
もともとディスアドバンテージを背負った方法を採って、それを労力かけて克服するってのは
言葉悪いけれど「無駄」だよね。
ちなみにVBAなしではもちろん無理。
【3 VBAが使えるか .】いいえ
につき、以下は読み飛ばして問題なし。やろうとすればできるかも的なメモ。
・フォントサイズ固定
・非プロポーショナルフォント限定
・セルサイズ固定
を条件に、
・ページ最右列セルでのLenとセル内改行の関連をつかむ
・対象セルでセル内改行するかしないかを分岐
・真なら改行以降の文字列を変数格納
・一行挿入
・変数格納値を最左列セルに入力
こんなイメージかしら。
ワードがうんちなのか、使用者がうんちなのかはこれ以下触れないように。
いいこと考えた ワードアートで全文章を打ってから A4の印刷範囲に納めればいいんじゃね
306 :
213 :2012/09/15(土) 12:00:00.11
>>297 なぜか Dim oVBC As VBComponent で止まってしまいます。
まぁ、295が不可能なら234は何をもって Bできる って書いたんだろう?
excel2007〜存在するPERSONAL.XLSBについて、 PERSONAL.XLSBを削除し、同フォルダに旧バージョンエクセル作成のPERSONAL.XLSを設置しても問題なく動作しますか? 当方旧Verのエクセルしかなく、環境確認できずにつき、お手数ですがご確認いただければ幸いです。 ちなみに拡張子を変えるだけでなく、実際のファイル形式自体をXLSB(バイナリタイプ)→旧XLSへ変更するという意です。 よろしくお願い申し上げます。
>>306 参照設定が必要
まぁマクロ自身のアドインみたいなもんだ
これがわからないならそのやり方はやめとけ
309 :
HELP :2012/09/15(土) 15:05:33.03
【1 OSの種類 .】 Windows7 prof 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 W7p にoffice2000(E)を入れて使っています。 突然Excelだけが使えなくなりました(XP mode , XP mode アプリケーション共に)。 ”問題が発生したため、Microsoft Excel for Windows を終了します。 ご不便をおかけして申し訳ありません。 ”の表示が出て終了します。 前日のシャトダウン時にシステムのアップデートを自動でしていたので、そのためにコンフリクトが起きたとお もわれるのですが・・・ Word,Accessは普通に使えます。
>>309 あっそうでしょうね、Word,Accessもじきに使えなくなるでしょう。
今後はWindows7にとってベストなバージョンをご使用なされることですな。
311 :
174 :2012/09/15(土) 16:15:03.31
今更気にしてる人もいないと思うけど相談に乗ってもらったので一応報告。 結局時間食ってた処理はセル内改行を含むデータを貼り付けたときに自動で 発生するWrapText = Trueの設定だった。 この設定はどうも簡単にはOFFれなさそうだったので、DataObject使って Clipboardに連結した配列を投入、pastespecial Format:="テキスト"でセルに 書き出した。 余談だけど、Clipboardからのpastespecialが環境によって失敗する事象に しばらく悩まされたけど、wait入れたらちゃんと通るようになった。 DataObject使ったClipboardの操作ってexcel側では完了見ずに次に 行っちゃうんだね、勉強になりました。 ってことで相談に乗ってくれた人サンクスでした。
>>307 問題が起こるかどうかは知らないが、普通に読み込みはできた
やめておいたほうがいいとしか言えないなぁ
なんでやめておいたほうがいいの?
>>313 msがこの手段を推奨しているという説明文を発見できなかったからな。
2003以前と2007以降は細かいところで互換性がよろしくない。どこがどう影響するかわからない。
大した手間でもないし、俺なら念のため2007でファイルを作るよ。
>>307 問題なく動くよ。
ただし同内容のファイルをxlsとxlsBで作り分けてから、ファイルサイズ見たらわかると思うけれど、
バイナリ化させたことのメリットは大きい。
そこを特に気にしないのであれば、逆に旧バージョンでも扱えるxlsのほうに分があるとも言える。
御好きに。
2003使用で 条件付き書式について質問ですが 条件付き書式を色々駆使した表を別のシートの違う座標へ丸々コピーペーストしますと条件にセル番地を直接指定している箇所の条件がすべてずれておかしくなってしまうのですが 条件を相対座標で指定し他のブックへコピーしても崩れないようにすることは出来ないのでしょうか??!
>>317 おおお!よく見ると ひょっとしてこの
=$G$57
の$マークは絶対座標を指定しているのでこれをとれば良いだけと言うことですね! まだ初心者の域を脱していない感じです。
どうもありがとうございました。m(_ _)m
結構多くの表に$が埋め込まれてしまったのでこりゃ大変、今日は徹夜かw
>>317 >>316 う〜ん条件を指定した表を範囲指定して$を取るとオートフィルで増やしたセルはそれに
合わせて条件の数値も全部ずれちゃうのですね、全部手入力するしかないのか、、 一丁一旦ですね。
320 :
84 :2012/09/16(日) 03:12:19.72
>>319 についてですが条件付き書式で相対座標を指定するとオートフィルで生成された表に関しては自動でオートフィルの秩序に合わせて値が書き換わって生成されてしまうのですが
同じにする方法はあるのでしょうか?
また条件付き書式の条件のコピーペーストは出来ないのでしょうか??! 形式を選択して貼り付けの中には条件付き書式の貼り付けという項目がないのですね。
>>321 そもそもオートフィル使う必要ある?
・オートフィル使わない
・絶対参照使わない
・対象範囲を示す
でいけない?
オートフィルで広げたい場所を対象範囲として書式に埋めれば、
オートフィル使わなくとも、その対象セルに書式が制定されていると思うよ。(相対参照でうまいことズレながら)
>>321 >また条件付き書式の条件のコピーペーストは出来ないのでしょうか?
書式の貼り付け
>>320 何バカなこと言ってんだ
線の色だけだとすぐに限界があるだろ
325 :
名無しさん@そうだ選挙にいこう :2012/09/16(日) 13:56:47.20
初心者です。2007でvistaです セルにコピペしてきたのはいいのですが例えば80と言う数字が セルの左によって数字として認識されていません。数字として認識させるはどうすればいいのですか? お願いします。
326 :
くるるこ :2012/09/16(日) 14:03:23.69
325> ホーム⇒セルの書式設定⇒表示形式⇒数値
327 :
名無しさん@そうだ選挙にいこう :2012/09/16(日) 14:11:00.72
325> 補足 セルの書式設定ていうのは、フォント と書いてある右の小さな四角をクリックすると出てくる
>>326 ありがとうございます。
質問する前にそれをやったんだけど出来なかったので。
他にもやり方があったような気がして。
こういったレスアンカーもまともにできない頭の悪い回答者って、スレからいなくなればいいと思う。
>>322 数千箇所ぐらいある相対座標と絶対座標とピポットテーブルとあれこれ格闘した結果脳の処理能力の限界に達し完全に寝落ちしてしましました・・(笑)
ついさっき起きて見直してみますと
>・オートフィル使わない
>・絶対参照使わない
>・対象範囲を示す
これでうまくいきそうです
マスターの表が安易にオートフィルで代入する単位を増やしたりしていまして結論一から作り直しが速そうです・・・w
どうもありがとうございました。
>>332 通常のオートフィルが頻繁に使われるシートで、
条件付書式は鬼門だよな。
自分のみが使うシートなら問題ないけれど。
手としてはマクロに記述するか、テンプレートシートを念のため用意して
条件付書式がオートフィルによってめちゃくちゃに耕されたら、
リカバリを掛ける。見たいなのが良いかもね。
あと>227
>>328 単に表示が左詰めになってるだけだったりして
>>330 こういったレスアンカーもまともにできない頭の悪い回答者って、スレからいなくなればいいと思う。
<>335 俺もそう思う
>>333 数時間かけて気合いで数百箇所を相対値に書き換えて完全にうまく動くようになりました。どうもありがとうございましたm(_ _)m
>>227 「ぼ」だったのですねお恥ずかしい・・・(笑)
>>338 うん。間違った使い方だね。
コックが、氷で彫刻して喜んでいたりするのと同じだね。
火消しが、ハシゴに登って、天辺で芸をしたりとか、車を片側のタイヤだけで
走ってみたりとか・・。
まあ、面白いのは確か・・ではある。
>>340 Excelの統計結果に応じてシステムを制御するプログラムを自作しようとしている自分にとってはこれらのプログラムの動き方は非常に参考になったw
エクセルマリオは別として、 Excelに向いているかどうかは別として、 ○○を使った方が・・・という意見はたくさんあるだろうが そういうニーズがあるってことだ。 ビジネスチャンスって、いろいろあるってことだな
Excel初心者ですが Excelはマルチモニターでやるなら何インチの何画面がお勧めですが? 横と縦ではとっちが有効でしょうか?
こんな質問する奴たまに居るけど、馬鹿じゃねぇの? 内容も環境も感性人それぞれの中で、何を求めて質問してんだ? エクセル初心者云々じゃないだろ。頭の隅々まで痛んでそうだな。
>>343 マジレスしてあげると
画面の広さと縦か横かは、利用者のアプリしだい。
自分でどんな風に利用することが多いかということ。
一つのシートをマルチモニターで見る人は、見たことない。
だから1シートは1モニターが一般的。
あとは、自分次第。
としか言えない。
開発をするのなら縦横1台ずつがいいな。縦でVBEを開きっぱなしでイミディエイトに変数の内容を書き出して リアルタイムで確認するとか。
BBCのCrickオンラインという番組でMicrosoftの開発者がExcelは超ワイド画面で作業するのが有効みたいなことを言ってたのを覚えている。 巨大な表データーを解析する時にたとえばA列にあるデータとCA列にあるデーターに共通点点がある事を発見するには 1画面にすべてを表示して見渡すと簡単に発見できるが小さな画面で一部分のみを表示した状態では基本隠れているので 見落としてしまう確率が高くなるみたいな事を言ってたな。自分も全部を見渡すというのは大事な事だと思う。
それはそういうデータ、 横にあるいは縦に広い形で一覧するような 利用するのかどうかということ次第。 要は、本人の使い方次第。
そんなもん言い出したらキリがねぇ。 A列とCA列の比較だと2画面分必要だから2モニタ。 その延長でA列とFA列の比較となると、3画面分必要だから3モニタになる。 マイクロソフトの開発者がこんなチープな発想だとダメだな。 1画面で、より効率よく求める作業ができる様作りこめよ。
まずcrickに突っ込めよ 辞書引いてびっくりだわ
>>343 マルチモニターは
>>345 も行ってる通り、エクセルとは相性悪い
エクセル+他の何かなら縦画面を横につけた2画面が見やすい。というか俺がそうしている
個人的には作業をするなら全般的に縦画面のほうがいいと思う
縦に長いデータはあっても横長のデータはそんなにないからな。
(シフト表等、1枚に収まるものは別として)
あとモニタで迷っているなら回転機能付きの
IIYAMA ProLite XB2374HDS-B PLXB2374HDS-B1
がオススメ。簡単に横画面にできる。
あと古い液晶だと縦にした時に死ぬほど見づらいから注意な。
IPSって単語は覚えておいた方がいい。というかモニタスレで聞いた方がいい。
>>347 巨大な表データだと確かにそうかもしれないけど、そうそうないと思う。
しかしもしそんな状況が発生したときは覚えておきたいものだ。
A列とCA列の比較なら B列からBZ列まで非表示にすればいいんじゃないですかね
353 :
名無しさん@そうだ選挙にいこう :2012/09/18(火) 18:38:01.11
>>352 この場合筆者が言いたいのは
影響先がたまたまCA列だったと言う事だから、
あらかじめ非表示の範囲は決められないよね。
何台ものモニターで自分の周りをぐるりと囲めば、 360度パノラマモニターキタコレ!(・∀・)
あらかじめ決めなきゃいけないのか? その都度臨機応変に列の表示非表示を使えよ
意味がわかってない見たいだね
ドーム型のスクリーン2つをつなげて球体を作り そこへ四方八方360度全方向からセルを投影すれば縦列も横列も視界いっぱいに無限にセルの世界が!!w
おまえは予めって言葉の意味がわかってないだろ 謝罪しろよな
ちゃんと最初から読んでご覧
記憶力世界一の人なら1回見ただけで脳の中にセルがコピーされるのでモニターなんて必要ないですね、わかります。
>>362 作ってみて使いやすかったら特許物かもw 縦横範囲を気にせず広範囲のデータを眺められると言うのは絶対に便利だと思います。w
プラネタリウムでやったら面白そう
「予め」って言ったのはオマエだぜ ほら早く謝罪しろよ
>>356 医療関係の解析の結果で、A1:EE100の全セルに数値が入ってる
というケースを想像すれば少しは伝わるかな
例としてAとCA列と言っているだけで、
結局膨大なデータは人の目で見るしか無いという状況
そういう時はスクロールや縮小するより素直にマルチモニタで見たほうがいいよ、といっているようだ
普通無い状況だから気にしなくていいよ
Excelの表計算の世界のプラネタリウム?!www 自分は見たいけど普通の人は絶対来ないだろうなww
あなただけが理解できないみたいね
>>367 球形モニターじゃないけど、
そのイメージをモニター上で表示するような思考は、結構されてる。
まるきり同じじゃないけどね。
大量のデータから必要な物を見る場合とか。結構面白い分野。
ということは、そういうニーズはあるってことなんですよね。
370 :
369 :2012/09/19(水) 01:33:49.31
A列とCA列、としか言ってないのに何を有利な後付コいてんの
甘えてんじゃねえ、さっさと謝罪しろよホラ
そもそも
>>349 は効率よく1画面にしろって言ってんだろ
効率の悪いクソみたいな条件持ち出すなよ糞虫が
謝罪まだか謝罪ィ!!
374 :
名無しさん@そうだ選挙にいこう :2012/09/19(水) 04:37:01.04
おいおい、他人の謝罪文見せて謝ったつもりか? せめてコピペしろよキチガイ
仲良くしようぜ。 細けえことはExcelの中だけで良いんだよ。
377 :
名無しさん@そうだ選挙にいこう :2012/09/19(水) 10:05:53.35
>>375 ていうか謝罪謝罪うるさいよ
お前こそ謝罪しろよ
テメェが先に謝罪するのが筋だろォがよ!! 甘えてんじゃねェぞ糞虫の分際で・・・死ぬか?オイ死ぬか?!
379 :
名無しさん@そうだ選挙にいこう :2012/09/19(水) 11:07:59.55
なにげに誰うまな>376
>>371 喜んでもらえてよかった。
こういう分野を1995年くらいからやってます。
痔が持参 ってヤツですか?
ちゃうちゃう 知らん人のサイト 痔の手術はしたけどね
くっせ!こいつくっせ!!
【1 OSの種類 .】 Windows7 【2 Excelのバージョン 】 Excel 2010 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 グラフのデータにマウスを重ねるとポップアップウインドウにデータの値等が表示されますが 任意の文字列を表示させることは出来ますか? 日 科目 点 1日 英語 100 2日 数学 80 5日 理科 80 5日 社会 60 7日 国語 70 科目をX軸、点をY軸のデータとして ポップアップに日を表示したいです。
>>385 >>386 グラフは折れ線か散布グラフになる予定で、データもかなりあるので使いずらいかな
かなり密集するのでラベル表示では見ずらいです。
ポップアップをいじれるコードがあって、ポップアップに直接表示できるのが理想だけど、
ラベルにマウスの重ねるかクリックで、テキストボックス等に表示するのでもよいです。
礼のひとつもナシかよ? おまえも謝罪したほうがいいようだな! 後付で条件出すんじゃねえクソが
よくやった でかした
390 :
385 :2012/09/20(木) 19:37:25.21
>>388 礼欲しさでやってるような安い回答者は帰れよ
まともな回答もできないくせに、偉そうな事言うなよカス
391 :
名無しさん@そうだ選挙にいこう :2012/09/20(木) 20:46:33.32
【1 OSの種類 .】 Windows7
【2 Excelのバージョン 】 Excel2010
【3 VBAが使えるか .】 いいえ
【4 VBAでの回答の可否】 否
ttp://s.cyrill.lilect.net/uploader/files/201209202031490000.png 上記の画像のように某ゲームでつかう、アイテムを作るために必要な素材の合計を計算する表を作っています、
作りたいアイテムの希望個数を指定すれば、必要な素材の合計が下の方に算出されるようにしたいのですが、
エクセルの使い方は簡単なことしかわからないので、お聞きしたいです。
説明しますと上記の画像の様に「ローリエの小枝」「ピンスティック」「てんびんぼう」を一個づ作るのに
「やわらかい枝」が合計9本、「てっこうせき」が合計3個必要なので、それぞれの素材の列一番下に合計が表示されるようにしたいです。
自分で=SUM(B2*C2):(B33*C33)という数式を入れればいいかな?と思って素人考えでやってみましたが、
これだとエラーがでてしまいました。
こういう使い方ができるのでしたら教えて下さい。
>>391 ネコのおうぎと引き換えに教えてやろう
1つ目の方法
各素材間に1列挿入し、作成数x必要素材数の数式を入れる
2つ目の方法
表はそのままにひたすら数式で$B2*C2+$B3*C3+・・・を作成する
>>391 SUMPRODUCT関数で出来ます
やわらかい枝
=SUMPRODUCT(B2:B33*C2:C33)
てっこうせき
=SUMPRODUCT(B2:B33*F2:F33)
394 :
名無しさん@そうだ選挙にいこう :2012/09/20(木) 21:48:09.87
>>393 ありがとうございました。これでドラクエが少し楽になります。
もう一つお聞きしたいんですが
「(B2:B33*C2:C33)」「(B2:B33*D2:D33)」「(B2:B33*E2:E33)」という風にセルの右下をドラッグアンドドロップしてまとめて計算するときに
Bの列だけ固定してまとめて関数表示することはできないのでしょうか?
実際やってみたら。「(B2:B33*C2:C33)」の隣が「(C2:C33*D2:D33)」になってしまったりするのですが、
これはもうしかたのないことなのでしょうか?
失礼しました$で固定できるんでしたね。もうしわけありません。
>>391 C列の一番下の合計のとこにこの式を入れて、あとはコピペ
=SUMPRODUCT($B2:$B33*C2:C33)
▼━質問テンプレ (必ず使ってね) ━━━ 【1 OSの種類 .】 Windows7 【2 Excelのバージョン 】 Excel2010 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 Windows7、Excel2010の環境でCommonDialogボックスを使いたいのですが、 どうすればよいのでしょうか? WindowsXP、Excel2003の環境では使えています。 フォームコントロールにCommonDialogが現れません。
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 否 条件付き書式についての質問です。 1ヶ月分の日付がシリアル値で入力されていて、祝日の場合は文字列 「祝」 に入力し直します。 土・日・祝の背景色を変更したいので、以下の条件を設定しました。 数式が =OR(WEEKDAY(A1,2)>5,A1="祝") ところが、これでは文字列 「祝」 に反応しませんでした。 色々試してみたのですが一向に解決できませんでしたので、以下の条件に書き直しました。 【条件1】 数式が =WEEKDAY(A1,2)>5 【条件1】 数式が =A1="祝" 一応は求めた反応にはなりましたが、1つの条件で設定出来ないものでしょうか? 条件付き書式での「OR関数」の使い方に特殊なルールがあるのでしょうか? ご存知の方がいらっしゃいましたら、是非ともご教示頂きたく存じます。 また、「OR関数」でなくとも1つの条件で設定できる方法でも構いません。 どうぞよろしくお願い致します。
399 :
398 :2012/09/22(土) 00:39:05.49
表記にミスがありました。大変失礼致しました。 誤 【条件1】 数式が =WEEKDAY(A1,2)>5 【条件1】 数式が =A1="祝" 正 【条件1】 数式が =WEEKDAY(A1,2)>5 【条件2】 数式が =A1="祝"
>>398 WEEKDAY関数の第一引数はシリアル値じゃないとダメなので
ISNUMBERとかで値を判定してからWEEKDAY関数を使用するとか
=OR(IF(ISNUMBER(A1),WEEKDAY(A1,2)>5,false),A1="祝")
401 :
400 :2012/09/22(土) 01:30:35.47
ORは別になくてもいいか =IF(ISNUMBER(A1),WEEKDAY(A1,2)>5,A1="祝")
暇だし横からつまらん補足でもやっちゃうか そのOR関数なんだけどOR(式A,式B)としてAかBかどっちかがTRUEならいいみたいに思ってるけど AかBかがエラーになった時(今回の#VALUE!とかね)は残りがTRUEでもエラーが返ってくるって話 セルに直接打ってたらエラー戻ってきて気づいたんだろうけど条件付き書式で気づかなかったんだろうね あとどうでもいいんだろうけど俺はA1="祝"よりはEXACT(A1,"祝")をクセで使っちゃうな
つまんねぇし、どうでもいい
>セルに直接打ってたらエラー戻ってきて気づいたんだろうけど
セルに直接打って気づいたのは恐らく
>>402 だろうなw
つか、シリアル値が並んでる列に文字列を入力しちゃうなんて正気の沙汰じゃない
weekdayなんて関数使うのも正気の沙汰とは思えないな 曜日なんて書式のAAとかでも取り出せるだろう
407 :
名無しさん@そうだ選挙にいこう :2012/09/22(土) 13:51:55.75
Excelでセル内部のデータを一部変更しようとセルをダブルクリックすると 少しズレたのか全く関係ないシートの場所へワープさせられ非常にムカつきます。 これを防ぐにはどうすればいいですか?
F2でセルの編集すればいいんじゃない?
410 :
名無しさん@そうだ選挙にいこう :2012/09/22(土) 13:58:30.62
>>407 >少しズレたのか
それはお前の操作ミスじゃ?
操作ミスを防ぐにはゆっくり慎重に作業するしかないと思うよ
拡大率を上げてダブルクリックするセルがズレないようにするとか
>>407 更年期障害、もしくは知能発育異常。
おまいにはエクセル操作はレベル高すぎるんじゃねw
>>407 スポーツやオナニーはストレス発散に聞くよ
たかがエクセルの作業で非常にムカつくとか・・
まず精神科行く事が先決
>>407
ただ、あれはあまりいらない機能だと思うんだよね。 下や上に飛びたいならCTRL+矢印で飛ぶし。
418 :
398 :2012/09/22(土) 17:36:56.29
俺は毎日が休日だな。
workdayを併用するとかしてもいい シリアル値がめんどい?
>>407って前スレの371だろwww
基本的にExcel2003ですが 同じテンプレートで作成された統計データの .xls ファイル50個を 一気に統合して一つのブックにまとめてくれるよう機能はあるのでしょうか?
>>424 なるほどVBAはつい最近手を付けたばかりで、
コピーペーストを自動でやる物を作ったぐらいです
まだまだ先は長そうですね。
>>423 ちなみに自分でやり方を汁必要が無いとかなら、Vectorとかにあるよ。
>>428 それらしき物を見つけました ありがとうございます。
Excelで統計分析をしていて関数などを駆使して色々と合理化すると浮いた時間で 更に巨大なデーターやより詳細な箇所の分析などについつい手を出してしまい結局寝る暇が無くなってしまうのですが これは日々集計データが増え続け変化し続けている以上はきりがないと思うのですが一体どうすれば良いのでしょうか?
>>430 人工知能で言うところのフレーム問題ですね。
時間がないなら支障のないところまでデータを処理し、適当なところで切り上げなさい。
でも学生まど、基本暇な方ならとことんまでやるのもいいかも知れません
それが貴方の血となり肉となるでしょう。出来ればその際はVBAやゴールシーク等、
新しい機能や使ったことのない関数も使うとよいでしょう。
もしくは別ソフトや、数学の公式の勉強も良いと思います。
同じ関数を使って多少の最適化を突き詰めても得るものは少ないです。
【1 OSの種類 .】 WindowsVista 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 少し 【4 VBAでの回答の可否】 可 ツールバーにあるセルの結合と同じ動きをするマクロを作ろうとしていますが 選択範囲を増やして結合範囲を増やすとき下のコードでは結合されません ツールバーの方では結合されるのですがどこを変えればいいのでしょうか? Sub セルの結合解除() Application.DisplayAlerts = False If Selection.MergeCells = True Then Selection.UnMerge Application.DisplayAlerts = True Exit Sub End If If Selection.MergeCells = False Then Selection.Merge Application.DisplayAlerts = True Exit Sub End If Application.DisplayAlerts = True End Sub
433 :
名無しさん@そうだ選挙にいこう :2012/09/23(日) 21:04:56.42
よろしくおながいします 【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 条件付書式でまかないたいんですけども 数式をどうしたらいいのかわかりませんです A列に数値、B列にローソンとかファミマとか店名入ってます(空白の場合もあります) で、A列のセルを店名によって色分けしたいので、 A列に「B列に"ローソン"が含まれていたら青」みたいな条件付書式を入れたいのですが 数式でいけますでしょうか
>>432 Sub セルの結合解除()
If Selection.MergeCells = True Then
Selection.UnMerge
Else
Selection.Merge
End If
End Sub
選択範囲を増やしたとき(おそらくMergeCellが混ざった状態)の分岐がないだけでは?
True以外はelse Merge=trueにする。とすれば?
>>435 よ、よろしくお願いします
自分で組み立てられませんm(__)m
437 :
432 :2012/09/23(日) 21:25:51.40
>>434 コードもすっきりして質問通りの答えです
ありがとうございました
438 :
名無しさん@そうだ選挙にいこう :2012/09/23(日) 22:14:14.98
てか If hoge = True Then … End If は無駄がある If Hoge Then … End If でいいにょ
初歩的な質問かもしれません。 セル内でたとえば『話し方』とうって『話方』と”し”を消したいとき 左のカーソルで“し”のところに行って消そうとすると セルが移動してしまうのがいつもいらだつんですが。 どうすれば簡単にセル内でカーソルの位置を移動できるのでしょうか?
>>439 F2を押すと、セル内の文字の編集モードになる
441 :
439 :2012/09/23(日) 22:57:11.78
>>440 ありがとうございます!!簡単ですね!!
>>430 目的により違いがあるので一概には言えないけど、
もしビジネス利用だとすれば、
その分析結果を実務利用できるか=>利用者が理解できる形にできるか。
という点に重点を置いた方が良いかもしれない。
利用者に教育をしないと理解できないものなら、利用されないものとして
そのやり方は考え直した方がいい。
データが大規模になるなら、統計解析手法だと常に有意になってしまうことがあるでしょ。
その面では、大きなものを使っても意味が見いだせないことがある。
逆に大数の法則を考えれば、大容量なら難しい統計解析手法に固執する必要もないしね。。
>>431 >>442 素晴らしい回答をありがとうございます。。
>数学の公式の理解
やはりこれが大事ですね、今まで思い起こしてみますと問題にマッチした優れた
公式こそが最大の時間短縮につながっていたなあと気づきました。
データー分析は半分仕事で家で行っているのは個人的な趣味でもありますが、
PC数台を付けっぱなしにしてとあるビックデータに挑戦中です。w
その分析結果を実務利用できるか=>利用者が理解できる形にできるか。
データーが大量に貯まってきますとここ重要ですね、、ひしひしと感じています。
>大数の法則
コイン投げで偏りが出るってぐらいしか知識がありません、、w これを機に詳しく勉強してみます。
どうもありがとうございました。
>>433 >B列に"ローソン"が
これはB列全体から"ローソン"を検索して存在したら、ってこと?
それともB列の特定のセルの値が"ローソン"だったら、ってこと?
>"ローソン"が含まれていたら
部分一致ってこと?それとも完全一致ってこと?
>>445 おまえ在日か?日本語理解できないなら書き込まなくてもいいぞ
無理に輪の中に入って来なくていいからそこで眺めてろ
447 :
名無しさん@そうだ選挙にいこう :2012/09/24(月) 11:32:59.85
なぜかアスペ同士って仲がいいんだよな
>>433 とりあえず条件付き書式の数式を
=ISERROR(SEARCH("*ローソン*",$B1))=FALSE
とかにしておけば色分けできるよ。
*ローソン*の部分を必要に応じて入れ替えればいい。
ただし2003の条件付き書式では3種類にしか塗り分けられない
(3種類のコンビニにしか色を付けられない)ので、
実用になるかどうかは不明。
2007/2010なら制限ない。
449 :
448 :2012/09/24(月) 12:03:30.96
すまん。*要らんわwww =ISERROR(SEARCH("ローソン",$B1))=FALSE で。
>>433 です
>>448 回答ありがとうございます
しかしうまく着色されんとです
何がいけないのかよくわからんです
データはこんな感じです
A B
1 500 ローソン
2 300 ファミマ
3 700
4 900
5 200 セブン
6 100
7 600 ローソン
・
・
・
【1 OSの種類 .】 Windows7 【2 Excelのバージョン 】 Excel2007 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 Sub Csv() aaa= "text;C:\Book1.txt" With ActiveSheet.QueryTables.Add(Connection:=aaa, _ Destination:=Range("A1")) .TextFileCommaDelimiter = True .TextFilePlatform = 932 .Refresh .Delete End With End Sub txt等は↑のようにQueryTablesを使って早く読み込めるようになったのですが QueryTablesを使って、別Bookのsheet2のデータを取得できますか? できればB10〜C100ぐらいまでのデータが欲しいです。 Workbooks.Open Filename:= "C:\Book2.xls" でsheetが10以上あるファイルのsheet2のデータが欲しいのですが エクセルを開くだけで15秒ぐらいかかるので、 ファイルを開いてるのが見えてるのが見えないようにできればしたいなと思ってます。
>>451 >Workbooks.Open Filename:= "C:\Book2.xls"
>でsheetが10以上あるファイルのsheet2のデータが欲しいのですが
↓に訂正
Workbooks.Open Filename:= "C:\Book2.xls"
でsheetが10以上あるファイルのsheet2のデータを開いているのですが
>>450 少なくとも手元の2003では、
同じ形のデータのA列に条件付き書式を使い、
「数式が」に
>>449 の式を入れてやれば
指定した書式の色が付く
後は精進してくれ
456 :
454 :2012/09/25(火) 00:09:32.95
>>455 だめですね。
データがあるところを選択して、別のブックにコピペすると直りますが、
列の幅とか行の高さとかセルの色(微調整したやつ)までコピってくれないので困ってます。
457 :
名無しさん@そうだ選挙にいこう :2012/09/25(火) 00:12:23.59
OS10.8.2 excel:mac2011使ってます。 使ってるといても8月に買ったmacbookでは使用に耐えられないくらい重くて困ってます。 なんで重いのかもさっぱりわからなくて困ってるのですがなにか考えられますでしょうか?
>>456 データの入ってない230行目以降、念のため500行目ぐらいまでを一気に選択、削除してから保存、開き直してもだめ?
>>460 買い替える前のMACBOOKでは普通に動いてました。今の方がメモリー多いしデータもスカスカです。
何が悪さしてるか見当もつかなく困ってます。
mac excel 重いでぐぐったら、色々原因あるみたいだけど、2つほど Users > Library > Preferences >com.microsoft.office.plist を削除すればOKというのがあった。 ググった先を読んで、一応バックアップ取って自己責任でな。
2つほど のもう一つは?
>>456 最初なにかのオブジェクトが500行目くらいにあって
行をズバーっと消しても行と行のスキマの中に
いともたやすく行われるえげつない行為のごとく
薄くなったオブジェクトが潜んでいるんじゃあないのかね?
「09/01」「09/08」と入力してドラッグするとオートフィルで毎週土曜日 「09/02」「09/09」と入力してドラッグするとオートフィルで毎週日曜日 でも「09/01」「09/02」「09/08」「09/09」では毎週土日になりません。 切り貼りして合成する以外に手軽な方法があれば教えてください。
>>466 土曜日分をオートフィルで作る
↓
そのすぐ下のセルから日曜日分をオートフィルで作る
↓
昇順で並べ替え
>>466 A1:9/1
A2:9/2
A3:=A1
んでA3をオートフィルとか
excel2003 VBA不可 初心者ですが ごにゃごにゃ男ほにゃらら →男 ごにゃ女ほにゃららごにゃ →女 ごにゃほにゃららごにゃ →未検出 このように不特定な文章の中に指定ワード この場合「男」「女」 が含まれているかどうかを検出することができる関数はありますでしょうか? (調べる文章に「男」「女」両方は含まれる場合はありません。) 宜しくお願いいたします。
>>469 両方は→両方が 間違えました、、 (すまほより気合で入力。スマソ。)
>>469 こんなんどうでしょう?
=IF(0<FIND("男",A1),"男","")
>>471 >>472 うまくいきました!どうもありがとうございました! これで家に帰れます ^^;
>>473 ごめんこっちの方にしてくださいまし・・・Orz
=IF(ISERROR(0<FIND("男",A1))=FALSE,"男","見検出")
ひひひひひひひっひっひっひっひっひっひひひひ ひひひひひひひひひひひひひひひひひひひひひ ひひひひひひひひひひひひひひひひひひひひひ ひひひひひひひひひひひひひひひひひひひひひ ひひひひひひひひひひひひひひひひひひひひひ ひひひひひひひひひひひひひひひひひひひひひ ひひひひひひひひひひひひひひひひひひひひひ ひひひひひひひひひひひひひひひひひひひひひ ひひひひひひひひひひひひひひひひひひひひひ ひひひひひひひひひひひひひひひひひひひひひ ひひひひひひひひひひひひひひひひひひひひひ ひひひひひひひひひひひひひひひひひひひひひ ひひひひひひひひひひひひひひひひひひひひひ ひひひひひひひひひひひひひひひひひひひひひ ひひひひひひひひひひひひひひひひひひひひひ ひひひひひひひひひひひひひひひひひひひひひ ひひひひひひひひひひひひひひひひひひひひひ ひひひひひひひひひひひひひひひひひひひひひ ひひひひひひひひひひひひひひひひひひひひひ ひひひひひひひひひひひひひひひひひひひひひ ひひひひひひひひひひひひひひひひひひひひひ ひひひひひひひひひひひひひひひひひひひひひ ひひひひひひひひひひひひひひひひひひひひひ ひひひひひひひひひひひひひひひひひひひひひ ひひひひひひひひひひひひひひひひひひひひひ ひひひひひひひひひひひひひひひひひひひひひ ひひひひひひひひひひひひひひひひひひひひひ ひひひひひひひひひひひひひひひふひひひひひ ひひひひひひひひひひひひひひひひひひひひひ ひひひひひひひひひひひひひひひひひひひひひ ひひひひひひひひひひひひひひひひひひひひひ ひひひひひひひひひひひひひひひひぃ〜〜\(^o^)/
>>466 A1: 9/1
A2: 9/2
として
A3: =A1+7
これをオートフィル
477 :
466 :2012/09/26(水) 14:08:38.38
>>467 こんな基本を思いつかないなんて応用力がないなぁ。
>>468 これはわからなかったです。
>>476 美しい!
数学的センスが必要ですね。
みなさんありがとうございました。
478 :
468 :2012/09/26(水) 14:12:10.50
479 :
454 :2012/09/26(水) 18:58:27.00
>>459 だめでした。
てゆーか、230行から一番下の行までを選択し行削除・・・というのは454で書いたんですけどね(^e^;)
>>433 ス
>>453 遅くなりますた、教えてもらった数式でうまいこといけますた
なんか最初の数回は全然だめで、
別シートでやってみたらなぜかうまく動作しますて、
???と思いながらもそこからコピペしたらうまくいったという
いまだにちょとワケワカランですが、とにかくうまくいきますた
どうもありがとうございますた!m(__)m
482 :
名無しさん@そうだ選挙にいこう :2012/09/27(木) 10:36:48.87
2列にわたる文字列でフィルターしたりVLOOKUPしたりしたいんですが どうやるのが一番効率的ですか?
>>482 2列分の文字列を & でつないだ作業列を作り、
そこを使ってフィルタだのVLOOKUPだのをやる
見栄えは悪いが一番ラクで確実
484 :
482 :2012/09/27(木) 10:57:25.71
>>483 ありがとう。
言ってる意味がわかったことに驚き。
しかも4分でレス。
でもこのような作業は仕事でよく使えれば便利と思えるものだから、似たようなこと考える人はいっぱいいるってことですかね。
ところでA列"東京"
485 :
482 :2012/09/27(木) 11:02:41.23
ところでA列"東京"、B列"都"のみをフィルターしたいとき A列"東"、B列"京都"のものや A列"東京"、B列"都新宿区"のものも 抽出されてくるので これを防ぐために 作業列に =A1 & "+" & B1 & "+" の+みたいにダミー文字を入れてて これがめんどくさいんだけど もっとシンプルにできる方法ない?
>>485 2007/2010なら▼→テキストフィルタ
2003なら▼→オプション
いずれも「〜を含む」を条件にしてやればいいだけだと思う
即レスはたまたまタイミングが合っただけ
いつもそうだと誤解せんようにw
>>485 >ところでA列"東京"、B列"都"のみをフィルターしたいとき
作業列を置いといて元の列に戻り、単純にA列とB列の両方
でフィルタかけりゃ済むような気がしますが。
作業列ばかりを使うんじゃなく、必要に応じて元の列も使う。
あとは>486でワイルドカードを駆使すれば、
なんとでもなるんじゃないですかね。
488 :
名無しさん@そうだ選挙にいこう :2012/09/27(木) 14:39:58.60
excel2002を使っています テキストボックスのデフォルトのフォントを MSゴシック 11 にしたいのですが デフォルトを設定できる裏技を教えてください
ググればすぐに分かるのに・・・ 何でも聞けばいいってもんじゃないだろ?
>>491 Sheet2にA列1行目に
=IF(Sheet1!$C1>10,Sheet1!$A1,"")
Sheet2にB列1行目に
=IF(Sheet1!$C1>10,Sheet1!$B1,"")
後は下方向にオートフィル
491 :
名無しさん@そうだ選挙にいこう :2012/09/27(木) 23:39:24.67
すいません、どなたかご教授下さい。 Sheet1にA列B列C列の3列でできた表があって、C列の数値が10以上ならSheet2にA列B列を表示させたいのですが 関数で表示させるとしたら、どういう関数式になりますか?
492 :
名無しさん@そうだ選挙にいこう :2012/09/27(木) 23:40:34.36
>>491 あぁ、間違えた。
>490の大なりを大なりイコールに変える必要がある。
C1>10 (10より大きい値の場合)
↓
C1>=10 (10以上の場合)
494 :
名無しさん@そうだ選挙にいこう :2012/09/27(木) 23:41:23.76
まちがえました。
>>490 ありがとうございます!
495 :
名無しさん@そうだ選挙にいこう :2012/09/27(木) 23:49:17.61
>>493 出来ました!ありがとうございます、やっと寝れそうです!
助かりました!
496 :
名無しさん@そうだ選挙にいこう :2012/09/28(金) 00:52:48.50
497 :
名無しさん@そうだ選挙にいこう :2012/09/28(金) 02:06:55.97
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2007 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 ■実現したいこと FFFTP上にアップロードされたExcelファイル A,B,Cがあり、FFFTPからAを開いて、 A内に設定されている ハイパーリンクをクリックして BまたはCを開くという動作 (「B」と記載されているセルをクリックすればBファイルを開き, 「C」と記載されているセルをクリックすればCファイルを開く。) VBAやバッチを使う処理になっても構わないので、 どうにか実現方法ないでしょうか。
>>497 FFFTPじゃなくてFTPだぞ、たぶん
本当にFFFTPなら、まずそれが何なのか説明してもらわないと
>>499 FFFTPとFTPの違いがわからないのはどうかと思うが
FFFTPが何なのかわからないのもどうかと思う
エスパーすると、質問者はFTPとFFFTPの違いがよくわかってない(もしかするとFTPという単語を知らない そこまで予測した上で揚げ足を取ってんじゃないの?
どっちにしてもやな奴の部類だな
12ケタの数字(例えば123456789012)を打ち込むと、1.23457+E11となってしまいます。 んもー!! プンプンo(*≧д≦)o))
>>505 スゴ━━━ヾ(*≧∀≦*)ノ━━━イ!!! でもね、右はしに半角スペースが入っちゃうの どーにかして
>>506 表示形式を「ユーザー定義」にして、
「種類」のとこに 0 だけ入れとく
>>506 右端に半角スペースあったほうがいいと思うけど、
それが嫌なら、、
書式設定で「負の数の表示形式」を△1234(▲1234)にしよう。
どーにかしてみw
>504,506は、察するに21歳事務員で、小柄で腐っぽい感じで眼鏡。
510 :
497 :2012/09/29(土) 02:29:05.31
数値で右側にスペースができるのは表示形式でアンダーバー(_)の右側にスペースがあるからだ アンダーバーは右側の文字の文字幅のスペースを空けるという意味 たとえば0_@とすれば@の文字幅のスペースを右側に空ける 表示形式でアンダーバー以降を消せば右側にスペースは入らない
512 :
名無しさん@そうだ選挙にいこう :2012/09/29(土) 11:45:32.61
>>ぷんぷん 姉さん ってことは、 ユーザー書式で 0 または #,##0 を選べば 良いってこと見たい。
>>512 ユーザー定義で表示させて消すんだよ
もっとも最初からアンダーバー以降がない表示形式もあるからそれを選んでもよい
>>473 亀レスですみません
ご丁寧にありがとうございます。こちらも使わせてもらいます。
amazonでアカデミック版を購入しようと思うけど学生証はどこで提示すればいいのでしょうか? 普通に買えるようですが?
エクセルのカメラ機能を使うんだよ
購入ボタンをクリックするとき、声に出して「学生です」という
520 :
名無しさん@そうだ選挙にいこう :2012/09/30(日) 12:50:56.76
521 :
名無しさん@そうだ選挙にいこう :2012/09/30(日) 14:24:12.46
2010でマクロを使いたい場合 Excelの拡張子はxlsmだと思いますが これをxlsにした場合具体的に 2007以前はxls、それ以降はxlsx、xlsmに分かれたってのはわかるのですが 具体的に2010でxlsで使う事メリット、デメリットって何があるのでしょうか?
>>521 xlsは2003以前との互換形式
メリットは同じブックを2003でも2007/2010でも読み書きできること
デメリットは2007/2010の機能の一部が使えない(使っても保存できない)こと
ブックのサイズはxlsのほうが多少大きくなる
障害者施設に通っているんだが就職する時にワードとエクセルが使えないと就職が不利になると 言われて今から勉強しようと思うんだけど今は2010だけど来年になったら新しいバージョンとか 発売されるの? いまさら2010買うってのはどうなの?
問題ない
Excelのセルを目で追っていると ほんの数十秒で無性に眠くなり意識が遠のく事があるのですが一体どうすれば良いのでしょうか?
>>524 GUIがめちゃくちゃ変更されているってないよね?2010勉強してもいいのか
>>525 セルがあるからいけない。
Naxcelをつかおう。
べつに来年Excel2013がでるとして、世間のExcelユーザーが一斉に買い換えるわけでもなし このスレではいまだに2000つかってるへんなひともいるわけだし
バージョンが違っても大丈夫なのよね? 何でも2007は糞難しいって話だけど・・・・( *`ω´)n
誰がそんなコト言ってんだか 難しいのは 「2003までのインタフェースに慣れきった人が 事情で仕方なく2007や2010を覚えにゃならんとき」 くらいのもんだ。 新しく勉強するなら、むしろ2007や2010からのほうが 覚えやすいと思うぞ
ほっほっほっほっほっほ( *`ω´)n 525円の本で勉強するよ
実技試験でもない限りExcelなんて余裕ですって言っておけばいい アプリなんて必要になったら必然的に使えるようになるんだから
私の趣味はExcelです。
Excelは俺の嫁
最近Excel勉強し始めたけど面白いな趣味はExcelって言ってもいいぐらいやってる
>>536 Excelでやりたいことが、はっきりしてるんじゃない?
>>537 そうそう
やりたいことを勉強していったらその途中でいろいろ知って思った以上にExcelでいろいろ出来て
Excelすげーって面白くなってるとこ
>>538 そういうのは、精神的にもいいね!
Gooood
お?名前変わってんな どこで選挙あるんだ?
【1 OSの種類 .】 Windows7 home 64ビット 【2 Excelのバージョン 】 Excel2010 【3 VBAが使えるか .】 少しは 【4 VBAでの回答の可否】 可 関数で出来るなら関数でしたいです A列に日付がズラーと入っていてその翌月月初を知りたい 2005/10/23 2008/6/29 などと入っていてB列には 2005/11/1 2008/7/1 などとしたいんですが。
月末+1
=(EOMONTH(セルの日付,0)+1) で出来ました。ありがと
A1に入ってるとすると =DATE(YEAR(A1),MONTH(A1)+1,1) 2010に最近変えたんだけど、 2001/12/1に一月足すと自動的に一つ年が繰り上がった。前からだっけ?
>>544 2003と2007と2010で試してみた
どれも結果は同じ
ちなみに2002/1/1から1を引くと2001/12/31になる これを利用して任意の月の月末日を表示するというテクニックもある 豆な
547 :
名無しさん@そうだ選挙にいこう :2012/10/01(月) 12:51:11.15
>>546 ふつうに日付を関数やVBAで常用的に使ってる人には
基本ともいえないくらいあたりまえのこと。
あなたの民度がバレたな。
民度(
あたりまえに使っている人にとってはあたりまえのテクニックなのはあたりまえだろバカか
あたりまえ〜 あたりまえ〜 あたりまえ体操〜♪
ほっほっほっほっほっほ( *`ω´)n 書店のパソコンコーナー見てきたがexcelやwordの本が沢山あったぞ どれを選べばいいのやらわからん 525円の本がなかったぞ
「豆な」 ってなぁに?
おおさか
555 :
名無しさん@そうだ選挙にいこう :2012/10/01(月) 20:06:29.56
質問二つ Excel2010で重複の削除はあるのですが 重複以外の削除、つまり重複データだけをピックアップして 何が重複しているかを知りたい場合、そういうのって可能でしょうか? それともVBAを使わないときつい? もう一つは 選択されている範囲の中にある空白チェック(スペースだけのセル含む)をしたい場合 これもVBAを使わないときついでしょうか? そうすると上のから一列一列見ていくと時間がかかるので うまいやり方とかあるのでしょうか? 検索を使ったやり方とか
>ちなみに2002/1/1から1を引くと2001/12/31になる 試にやってみた A1セルに =2002/1/1-1 と入力しEnter すると、あーら不思議・・・・ 2001/12/31 とはならずに 2001 になっちゃった!
>>555 条件付き書式>セルの強調表示ルール>重複する値
検索と選択>条件を指定してジャンプ>「空白セル」を選択してOK
これでなんとかなるでしょ
558 :
名無しさん@そうだ選挙にいこう :2012/10/01(月) 21:14:27.89
>>555 A列にそのデータ
B1=IF(1<COUNTIF($A$1:A1,A1),"",IF(COUNTIF(A1:$A$100,A1)>1,"tyoufuku",""))
下にオートフィル
で、オートフィルタ
>>556 2002÷1÷1−1 とおなじになるね。一瞬迷ったw
念のため補足しておくとa1に日付、b1にa1-1って感じね
559 :
名無しさん@そうだ選挙にいこう :2012/10/01(月) 21:16:13.29
>>558 訂正します
>>555 A列にそのデータ
B1=IF(1<COUNTIF($A$1:A1,A1),"",IF(COUNTIF(A1:$A$100,A1)>1,"tyoufuku",""))
下にオートフィル
で、オートフィルタ
>>556 2002÷1÷1−1 とおなじになるね。一瞬迷ったw
念のため補足しておくとa1に日付、b1にa1-1って感じね
560 :
名無しさん@そうだ選挙にいこう :2012/10/01(月) 22:50:12.28
たとえば A1セルにあああ B1セルにいいい C1セルにあ と合った場合 A1からC1までの「あ」の数が4て言うのを取得したい場合 教えてください countifでもcountaでもないし
>>560 「excel 文字の数 カウント」でググったら出てきた
=SUMPRODUCT(N(MID(A1:C1,ROW($1:$50),1)="あ"))
559の訂正箇所がワカラン
項目1 111 項目2 あああ 項目3 aaa 項目4 @@@ 項目1 222 項目2 いいい 項目3 bbb 項目4 *** 項目1 333 ・ ・ ・ みたいなn*2のデータを 項目1 項目2 項目3 項目4・・・ 111 あああ aaa @@@・・・ 222 いいい bbb ***・・・ 333 ・ ・ ・ と整形したいのですがどうすればよいでしょうか 列と行の入れ替えやピボットテーブルは試したのですが上手くいきませんでした
A,B列に表示されているとして、まずA列でソート。 仮にD列以降に項目1,2,3,4...と整理するとして、、 D1に"項目1" D2に =IF(ROW()-1<=COUNTIF($A:$A,D$1),OFFSET($A1,MATCH(D$1,$A:$A,)-1,1),"-") とでも入れて 下と右に必要分オートフィルすれば、 項目1 項目2 項目3 項目4 111 あああ aaa @@@ 222 いいい bbb *** 333 - - - - - - - こんなかんじにはなるけど
ピボットテーブルでいっぺんにやろうとするとだめ 項目1でいったん作成、それをどこかにコピペしてつぎは項目2、て具合にやらないと
Sub Macro1() Range("A1:M1").Select Range("M1").Activate Selection.AutoFilter ActiveSheet.Range("$A$1:$M$123").AutoFilter Field:=11, Criteria1:=Array("-1" _ , "12", "-12", "2", "3", "-3", "-5", "6", "8"), Operator:=xlFilterValues End Sub マクロの自動記録で、K列の中から0と空白セルを除外したものを抽出しましたが、 Criteria1:=Array("-1", "12", "-12", "2"・・・ と汎用性がありません。 他のデータでも使えるよう、「0と空白セルを除外」を指示するにはどう書けばいいですか? 【1 OSの種類 .】 WindowsXP、7 【2 Excelのバージョン 】 Excel2003、2010
>>566 ActiveSheet.Range("$A$1:$M$123").AutoFilter Field:=11, Criteria1:="<>0", Operator:=xlAnd, Criteria2:="<>"
こういうのは 全部3文字なのかどうか 順番はずっと一定なのかどうか という部分の正否で処理がウンと変わるんだよな
569 :
名無しさん@そうだ選挙にいこう :2012/10/03(水) 19:58:17.47
あああ/いいい/ううう えええ おおお/かかか … こういったデータがある場合 えええ あああ いいい ううう おおお かかか みたいに、もともとの/データは削除して、/でデータを分割して下に付け足していく こんなことをしたいのですがやり方とかあるのでしょうか?
動的配列とsplit関数を使う
571 :
名無しさん@そうだ選挙にいこう :2012/10/03(水) 21:07:49.71
>>569 VBAなら頑張れば
多分数式だと相当きついと思う。区切り位置でもなんともならんしなぁ
しかし
あああ
いいい
ううう
えええ
の順番じゃないの?
572 :
名無しさん@そうだ選挙にいこう :2012/10/03(水) 21:09:37.62
ありがとうございます できれば/があるセルの内容を分割して、無いセルの下に順番に追加していきたいです
>>572 VBAでやれ
A列に元のデータ、B列に加工後のデータ
Sub abc()
r = 1
r_end = Cells(Rows.Count, 1).End(xlUp).Row()
'スラッシュなし
For i = 1 To r_end
If InStr(Cells(i, 1), "/") = 0 Then
Cells(r, 2) = Cells(i, 1)
r = r + 1
End If
Next
'スラッシュあり
For i = 1 To r_end
If InStr(Cells(i, 1), "/") > 0 Then
tmp = Split(Cells(i, 1), "/"): tmp2 = UBound(tmp) + 1
Cells(r, 2).Resize(tmp2) = WorksheetFunction.Transpose(tmp)
r = r + tmp2
End If
Next
End Sub
574 :
566 :2012/10/03(水) 23:15:55.73
575 :
名無しさん@そうだ選挙にいこう :2012/10/06(土) 11:27:27.27
Excel2010で画面上には表示されないけど 印刷時にヘッダーにシート名を表示したい
577 :
名無しさん@そうだ選挙にいこう :2012/10/06(土) 12:20:51.05
>>575 う〜ん。 おれのより
>>577 を見るほうが利口だな。
2007だとヘッダー設定が「表示」リボンにあるから。
2010も同じあたりかな?
2007でも2010でも 「挿入」リボンの「ヘッダーとフッター」からやるのが わかりやすいし楽だと思ったりする
580 :
563 :2012/10/06(土) 17:59:09.35
レス大変遅くなりました、アドバイスありがとうございました
>>564 に書かれてあるやり方が一番うまくいきそうでした
しかし右へのオートフィルは問題ないのですが、下へのオートフィルがどうも上手くいきません
項目1 1
項目2 あああ
項目2 @@
項目2 xxxx
項目3 \\\\\
項目4 sss
項目1 2
項目2 いいい
項目4 xxx
項目1 3
…
といったように項目の内容の文字数が一定でないことや、項目によっては存在しなかったり複数の要素があるのが原因でしょうか?
581 :
名無しさん@そうだ選挙にいこう :2012/10/06(土) 19:14:34.42
【1 OSの種類 .】 WindowXP-Pro 【2 Excelのバージョン 】 Excel2000(実際はCSV) 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 0〜999の整数を3桁揃えで保存したいのですが上手く出来ません。 3桁揃え自体は【ユーザー定義】→【種類】→「000」でOKなんですが、これをCSVで 保存し再度開くと2桁以下の整数からアタマの0が消えてしまいます。 例: 65 → 065 → 保存 → 開く → 65に戻る セルは「形式を選択して貼り付け」→「値」→「保存」でも不可でした。どうすべきでしょうか。
>>580 情報の後付けをするな!!!!
何故最初から正しい情報を出さん!!
なめてんのか!なめてんのか人間を!!!
おまえには人間の誇りがないのかって聞いてんだ!!
もう二度とここに来るな・・・おまえの顔は見たくない
拡張子を.txtにして開くと065になってる? なってれば拡張子を.csvに戻してセルの書式設定→表示形式で文字列を選択
584 :
581 :2012/10/06(土) 20:02:14.75
>>583 さんきゅう。
Txtで開くとちゃんと3桁(065とか)になってた。
586 :
名無しさん@そうだ選挙にいこう :2012/10/07(日) 13:46:13.99
>>580 データ追加するたびにソートとかミスのもとだよ
A列に、「項目○○」B列に、「1」「あああ」とか入ってるとして
C列に、「=MID(A1,3,100)」で下にフィル
D列に、D1だけ「1」を手入力、
んでD2は、「=COUNTIF($C$1:C2,C2)」で下にフィル
E列に、「=C1&","&D1」で下にフィル
出力先は別シートに作るとして
第1行とA列に値を手入力してこんな枠を作る
×12345・・・
1ω
2
3
4
・
・
・
この枠の中に出力させる
上で「ω」が入ってるセルに
「=INDEX("入力シートのB列",MATCH(B$1&","&$A2,"入力シートのE列")」
を入力
あとは右でも下でもコピーでいける
これなら「A列は「項目○○」B列にデータ」という規則さえ守られていればソートなんか不要
>>580 ソートしないの考えてみた
C1 =COUNTIF($A$1:$A1,$A1)
D1 =COUNTIF($C$1:$C1,$C1)
E1 =IF($C1,$A1&"_"&$C1,"-")
と入れておいて下にオートフィル。 F列以降に整理するとして、
F1 =OFFSET($A$1,MATCH(COLUMN()-COLUMN($F1)+1,$D:$D,)-1,)
F2 =IFERROR(OFFSET($B$1,MATCH(F$1&"_"&ROW()-1,$E:$E,)-1,),"")
として下と右にオートフィル。
これだと項目がどんな場合でもいけると思う
588 :
563 :2012/10/07(日) 20:04:43.30
度々申し訳ありません、アドバイスありがとうございました
重複項目の区別化や空白項目のスペース化は上手くいきませんでしたが、
>>586-587 のやり方で近いところまで整形することができました
当初自分が望む形を詳細に把握せずに書き込んでしまい、情報が後付けになり大変申し訳ありませんでした
589 :
582 :2012/10/07(日) 20:13:48.27
ぜんぜんかまいませんよ きついこといってすみませんでした
質問じゃなく愚痴に近いのですが。俺の周囲は、VLOOKUPやSUMIFの時点で分からないという人ばかりです。 マクロ入りブックを渡しても、迷わずマクロを無効にして開くことしかしませんし、ましてピボットテーブルなんて論外です。 俺は、自分用よりも、他人に頼まれ他人が使う用にExcelファイルを作ることが多い。その際、集計の効率的方法などを考えると、 どうしてもSUMIF(できればSUMPRODUCTまで)関数だとかピボットテーブルだとかを使ってしまいたくなる。しかしそうすると彼らは、 計算式のメンテは自分達では一切できず、少し変える必要が出ただけでお手上げになり、全て俺に投げてくる。 ピボットテーブルだって、データの更新をするとかがまず受け付けられないし。 こういうとき思うのが、自分って他人にExcelファイルを作ってあげるにつけ、分かりやすくする力が足りないのかなあということ。 よりシンプルに、簡単に、とは思い自分なりにやってるのですが・・・。 というか、他人向けに分かりやすく作れとかいくら言ったって、SUMIFやVLOOKUPまで使うなとかいうことになったら、そりゃもう何も出来んって話にならんかな?
>>590 やってあげればいいんじゃないの?それが仕事なら
やりたくないとかやらなくていいなら断ればいいし
教えたいなら教えればいいし
マクロを組んでやればいいじゃん。 データを更新するなら、更新用のブックを作ってフォルダに入れてやり、ボタンクリックで集計終了。 エラーが出たら MsgBox "エラーだってお! ○○さんを呼んでね〜" と書いておき、面倒をみる。
Excelに限ったことではないがスキル無いやつって自分で努力もしないで 「できねー、わかんねぇーw」でやらずに済むもんな
教え方が下手なやつって、何でも他人のせいにしたがるよねw ここのスレでも逆ギレする先生がいるしw
日曜は趣味のExcelを満喫する日だよな今日も1日Excelをやり続けて楽しんだよ!www 本当にやる過ぎると次の日頭が重くなるけどね(笑)
下っ端社員は色々雑用を押し付けられるもんだよ 愚痴ってても仕方ない 頑張って仕事して早く偉くなろうね
創・価 死・ね 創・価 死・ね 創・価 死・ね 創・価 死・ね 創・価 死・ね 創・価 死・ね 創・価 死・ね 創・価 死・ね 創・価 死・ね 創・価 死・ね 創・価 死・ね 創・価 死・ね 創・価 死・ね
逆に考えるんだ!
>>590 苦手な人たちにとっては神の存在なんだから。
いや ただの便利屋さん
【1 OSの種類 .】 Window7 【2 Excelのバージョン 】 Excel2010 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 以下の<Sheet1>と<Sheet2>のデータから<得たい結果>を得たいのですが、 どうやったら良いのかわかりません。統合ではうまくいきませんでした… <Sheet1> ID 名称 10 AAA 20 BBB 30 CCC 40 DDD 50 EEE <Sheet2> ID 金額 単位 20 1000 個 40 2000 個 50 3000 本 <得たい結果> ID 名称 金額 単位 10 AAA 20 BBB 1000 個 30 CCC 40 DDD 2000 個 50 EEE 3000 本
Vルックうp
ヴイlookuぷ
vぉおくp
604 :
600 :2012/10/08(月) 22:50:42.46
>>601-603 みなさんありがとうございますw
「Vルックうp」でググったらVLOOKUPのことだとわかりました。
おかげで望む結果が得られました。
「Vルックうp」でググったら、もしかして: Vルックアップ って出てきたw
俺のExcelの先生はみんな大好きぶいるっかとか言ってたな
【1 OSの種類 .】 Windows7 【2 Excelのバージョン 】 Excel2010 【3 VBAが使えるか .】 いいえ Excel普段全く使わないわけですが、とある名簿管理的な事をしたいのです 1あああ 2いいい 3ううう という感じでセルごとに番号と名前だけあればいいのですが ここで2の名前だけ消した後に 1あああ 2ううう と自動で名前を詰める事はできるのでしょうか? 番号は100近くあり、今までtxtファイルで手動でやっていました
>>607 名前を消す時に Ctrl+「-」キーを使えば、消えると同時に自動的に詰まってくれる
609 :
名無しさん@そうだ選挙にいこう :2012/10/09(火) 14:17:37.78
>>607 A1に=row()といれ、下にオートフィル
row()は行番号を返すので、行削除しても数字は変わらない
>>609 さんの方法でとりあえず出来ました
場合によって右にいくつか続けたい時もあるのですがこれは無理でしょうか
1あああ 2いいい
3ううう 4えええ 5おおお
6かかか
7ききき
無理
612 :
名無しさん@そうだ選挙にいこう :2012/10/09(火) 20:01:58.81
マクロ実行で Do until=200 Do until=300 Do until=100 処理 loop loop loop 上記のような処理をした場合200 とか 300 、100のように回数が多くなる場合エクセルがフリーズしてしまうんですが良い解決法はありますか? 少ない回数でやるとできるのですが、、、 回数多くても待っていればできるかな?と思い20分くらい待ちましたが実行が終わりませんでした。 待っていればそのうち実行終了しますでしょうか?それともずっとフリーズじょうたいなのでしょうか? 教えてください、お願いします。
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2010 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 PDFファイルに直接編集が出来ないのでエクセルに貼り付けて編集しようと思っています。 挿入から図でPDFを貼り付けて、挿入からテキストボックスで文字を書こうと思います。 (職場からデータを持ち出せないのですぐには出来ません) ほかにPDFに直接加工する方法をご存じでしょうか? (フリーソフト、市販のソフトは職場では使えないです) よろしくお願いします。
PDFを変えれば出来るけど? (テキスト枠を作って入力可能状態にしておく)
>>614 PDF 編集 とか PDF 加工 でぐぐれ
スレ違い
618 :
名無しさん@そうだ選挙にいこう :2012/10/09(火) 20:35:20.48
>>610 それをそのまま再現するなら
a1=row()&"aaa"&row()+1&"iii"
a2=row()+1&"uuu"&row()+2&"eee"&row()+3&"ooo"
とかになって結構めんどくさいけど、まぁ仕方ない
解決するなら正規化だろうけど正規化するのもめんどくさそうなデータなのは伝わってくるのでそのままで、良い
>>612 無限ループなら待ってても終わらないし
無限ループじゃなければ待ってれば終わる
質問です。 シートに文字、図形、画像があり、図形のみを削除する方法ってありますか? いくつか図形があるので一つ一つ切り取るのは面倒なので何か方法があるかと思いました。 ウィンドウズ7、2007です。
「excel vba 図形 削除」とかで検索してみたらどうかな
ジャンプ→セルの選択→オブジェクトでどうよ!
>>621 ググります
>622挿入した写真も選択されてしまいます。
図形だけならいいですけど。
624 :
名無しさん@そうだ選挙にいこう :2012/10/10(水) 00:43:25.06
>>619 ありがとうございます。
ちなみに無限ループではありません。
ということは1時間とかでも待っていれば実行は完了してくれるということでいいですか?
コンピュータの性能の限界もありますしある程度までの容量?以上はフリーズしちゃうのかな?と勝手に思っていました。
1年半前に10万くらいで買ったPCでもこれだけ時間がかかってしまうのですが、今の最新モデルだと相当処理スピードに差はあるのでしょうか?
また、ワークステーションというのを聞いたことがあるのですがそれだと処理がはやいのでしょうか?
はやいのであればどのくらい違いがあるのでしょうか?
詳しい方すこし教えてください。よろしくお願いします。
626 :
名無しさん@そうだ選挙にいこう :2012/10/10(水) 01:17:57.09
>>625 本当にありがとうございました。
よくこんな題材をすぐにうpできましたね。すごいですね。
内容みて少し切なくなってしましました。
みんなも見てみて、最初8分?なげーと思ったけど見始めたらすぐだった。
おもしろかったです、ありがとう。
バカにしてんのか?
計算してみたら? 600万回の繰り返しだから。 20,30,10にして6000回でやってみて その時間×1000
629 :
名無しさん@そうだ選挙にいこう :2012/10/10(水) 01:50:04.09
>>628 その手がありましたね。
待っていればできそうだというのが分かったので出かける前に実行開始してみます。
帰ってきたら確認できます。
みなさんありがとうございました。
630 :
名無しさん@そうだ選挙にいこう :2012/10/10(水) 12:54:33.23
小数点以下って何でしたっけ
小数点より右の部分
632 :
名無しさん@そうだ選挙にいこう :2012/10/10(水) 13:39:33.93
フリーズは普通にするぞ。XP以前か2003だと良くなった win7、2010だとメモリ消費多すぎって止まるように。OSかエクセルのバージョンかどっちが影響してるのかはわかんねぇ
633 :
名無しさん@そうだ選挙にいこう :2012/10/11(木) 11:13:27.03
【1 OSの種類 .】 WindowsXP
【2 Excelのバージョン 】 Excel2003
【3 VBAが使えるか .】 いいえ
【4 VBAでの回答の可否】 否
http://www.odnir.com/cgi/src/nup61195.png 上記リストのタイトル欄別に合計をSUM関数で計算したいのですが、このようなリストが数千行あり、
1つ1つSUMの範囲を指定していると家に帰れなくなります。
タイトル毎にSUM関数を一発で指定できる方法はありませんでしょうか。
よろしくお願い致します。
>>635 そうとう元データを変形(加工)しないとピボットテーブルは使えねえだろ
633くらい単純ならまだしも、実際のデータはもっと複雑な可能性あるし
637 :
名無しさん@そうだ選挙にいこう :2012/10/11(木) 16:56:43.10
助けて下さい・・・ 簡単な家系図を作るように頼まれたのですが、私の知識ではできません。 名前、年齢、亡くなった年のみを書く家系図を作ろうとしております。 何か良いテンプレ、方法はありませんか? =で結んだり縦線でツリー型作ったりさっぱりなのですが。 2〜3時間中にしないといけません。 よろしくお願いします;;
>>637 セルを結合して罫線引いてもいいし
テキストボックスとコネクタのオートシェイプでやってもいいし
そもそもExcelじゃなくてもいいし
639 :
637 :2012/10/11(木) 17:12:56.56
早速の回答有難うございます
>>638 ワードの方が簡単だったりしますか?
>>639 Excelで作れる人ならWordでも作れるし
Wordで作れる人ならExcelでも作れるよ
ExcelでもWordでも簡単だと思うよ
>>638 親父が亡くなって土地家屋の相続の関係で「相続関係説明図」というのをexcel
で最近作って他の書類と一緒に法務局へ出した。
司法書士を介さずどうにか出来たよ。
そんなことじゃないかも知れないけどまぁ頑張って下さい。
642 :
641 :2012/10/11(木) 17:37:04.74
643 :
637 :2012/10/11(木) 17:45:47.97
レス有難うございます
>>640 知識がある方にとっては簡単なのでしょうか・・・
>>641 単なる親戚の集まり時に使うだけなので、堅苦しい感じじゃありません。
でも書き方のルール等全く分からないのです
夫婦は=で結ぶ、等は分かりますが・・・
手書きでいいんじゃね?
646 :
641 :2012/10/11(木) 18:53:05.65
647 :
名無しさん@そうだ選挙にいこう :2012/10/11(木) 19:12:25.00
単なる親戚の集まり時に使うだけなのになんでそんなにフォーマットにこだわる必要があるんだよ…
649 :
637 :2012/10/11(木) 23:04:07.09
レス有難うございます・・・
実はまだできてません・・・
>>646 大変参考になりました!
しかし、縦書きじゃなくてもいいのでしょうか?
縦書きが基本だというから余計に頭の中ごっちゃになります。
>>647 下書きですか・・・
ってか亡くなった日付とか書かないといけないのでそれもごっちゃになりますorz
>>648 単純に書けばいいといいますが、単純に書く知識すらないのです;;
>>649 そもそも家系図の書き方に決まりなんてあるの?
そして、仮にそんなルールがあったとしても
たかが身内の集まりで使うものでそこまで厳密にやる必要あるの?
図の向きが縦でも横でも、夫婦が二本線だろうが太線だろうが、
見て分かればそれで良いじゃん。
下書きすら書けないってのは家系そのものを把握してないってことでしょ。
それってExcelが分からないとか何とか以前のお話だよね。
651 :
名無しさん@そうだ選挙にいこう :2012/10/12(金) 09:30:02.33
セルA1に英単語もしくは熟語をいれると セルB1に日本語訳が出るようなことって可能でしょうか? ネットを使える環境としても
>>652 たとえばブック内のどこかに英単語と日本語訳の対応表を用意しておけば
vlookupでOKだけど、そういうこと?
それともネット経由でエキサイト翻訳とか使って日本語訳を表示させたい、ってこと?
後者は分からないや
>>652 2010には翻訳機能あるからうまくやればVBAとかでお望みのことができるかもね
>>652 VBAのWorksheet_Changeイベントでやればいい
【1 OSの種類 .】 Windows 7 【2 Excelのバージョン 】 Excel 2010 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 可 リストのプルダウンメニューボタン(四角の中に逆三角のボタン)を常に表示させたいのですが、 ネットで調べたところコンボボックスにするのが良さそうということまでは辿り着きました。 しかし、リストで選択した値(文字列)を使って検索(VLOOKUP)を行いたいので、 リストから選択した文字列がちゃんとセル内に収まっていて検索値として選択出来るようにしたいです。 コンボボックスだとセル内には収まりませんよね? コンボボックスで選択した文字列を検索値として指定する方法、 若しくは、ただのリストでもプルダウンボタンを常に表示させる方法で 何か良い方法を知っている人がいましたら、ご教授願います。 因みに図形でプルダウンボタンを作るのは、リストが余計分かりずらくなるだけだったので、それ以外の方法でお願いします。
>>659 >コンボボックスだとセル内には収まりませんよね?
コントロールの書式設定のプロパティで
・「セルに合わせて移動やサイズ変更をする」
を選択すれば、セルに合わせた大きさになる。
コンボボックスの値をセルと連動させれば良いだけでは?
>>660 セル内に収めたいのはサイズではなく、値(文字列)です。
分かり難い文章で申し訳ないです。
>>661 セルと連動、というのは「リンクするセル」を選ぶということでしょうか?
これを選んでも行番号しか返ってこなかったので困っていました。
が、少し頭を捻って、返ってきた行番号からINDEX関数で元の文字列を指定することが出来ました。
アドバイスありがとうございました。
しかしもうちょっとスマートな方法を知っている方がいましたら、
引き続きご教授お願いします。
この程度のことで質問なんかせず、INDEX使ってササッと解決しちゃうのがスマート INDEX使うのはスマートじゃないとか言って駄々こねる事こそがスマートじゃない
664 :
名無しさん@そうだ選挙にいこう :2012/10/16(火) 10:06:35.55
>>663 >>662 は方法があるかどうかを聞いてるのであって
スマートかどうかについてのお前個人の評価を望んでいるわけではない
665 :
名無しさん@そうだ選挙にいこう :2012/10/16(火) 12:29:45.06
有給の申請日数、残日数を自動計算する表を作りたいです。 1.開始日、開始時間、終了日、終了時間のセルに入力する。 2.1日は9:00〜18:00の8時間で計算。 3.12:30〜13:30は昼休み。 以上前提で、 例えば9月16日9:00から9月18日14:00と入力すると 申請日数2.5日と計算されるようにしたい。 日曜日や祝日は考慮しなくてもかまいません。 以上をどのように計算するか 教えていただけませんでしょうか。
>>665 例えば9月16日8:38から9月18日13:07と入力すると
申請日数はどうなればいいの?
質問内容に書かれていないパターンが多すぎて答えづらいし
単なる日時の算数ならそもそもExcelの質問ではない
>>665 イレギュラーな入力は考慮してないけど、
A1:開始日、B1:開始時間、C1:終了日、D1:終了時間と仮定して
=(DAY(C1-A1)-1)+(("18:00"-B1-IF((B1-"12:30")<=0,"1:00",0))/8/"1:00")+((D1-"9:00"-IF((D1-"13:30")>=0,"1:00",0))/8/"1:00")
668 :
名無しさん@そうだ選挙にいこう :2012/10/16(火) 17:32:44.10
>>666 入力規則で9:00〜18:00しか入力できないようにします。
>>667 大変ありがとうございます。
教えていただきました数式にCEILING関数を組み合わせて
想定通りの計算結果になるようになりました。
ある数値の範囲(A1:A100)があるとして、その中で条件に該当する数字をカウント。 <条件> 0以上10未満 10以上20未満 30以上40未満 50以上60未満 求めるにはこのような式になると思います(例:0以上10未満) =countif($A$1:$A$100,">=0")-countif($A$1:$A$100,">=10") 数式の入ったセルをコピーした時に">=0"や">=10"の条件の数値部分を次々に変化させられるような方法は無いでしょうか?
データベース関数ってのがある
>>669 sumproduct使えばいいんじゃないの?
countifs使えばいいんじゃないの?
675 :
673 :2012/10/16(火) 21:47:56.83
countifsは、Excel2003以前だと関数が無かったと思います。 汎用性がありそうなものを探していたので・・・
結構エクセルでできちゃうもんなのね。 過去よりの経験で、オートフィルが思うように行かないことなんかが 数え切れないほど合ったけど、すべてエディタで処理してきた。 文字列の置換とか、正規表現使えると物凄い幅広がるしね。
677 :
名無しさん@そうだ選挙にいこう :2012/10/17(水) 15:42:00.99
【1 OSの種類 .】 Windows7 【2 Excelのバージョン 】 Excel2010 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 olapキューブについて質問です EXCEL2003で作成したolapキューブをEXCEL2010で開いて更新しようとすると OLEDBプロバイダーがありませんと返ってきます ちなみに OFFICE2010 ホームアンドビジネスをインストールした PCで発生します Windows2003に OFFICE2010 プロフェッショナルをインストールすると 正常に動作します どなたかお知恵を下さい
678 :
名無しさん@そうだ選挙にいこう :2012/10/17(水) 15:43:15.73
【1 OSの種類 .】 Windows7 【2 Excelのバージョン 】 Excel2010 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 olapキューブについて質問です EXCEL2003で作成したolapキューブをEXCEL2010で開いて更新しようとすると OLEDBプロバイダーがありませんと返ってきます ちなみに OFFICE2010 ホームアンドビジネスをインストールした PCで発生します Windows2003に OFFICE2010 プロフェッショナルをインストールすると 正常に動作します どなたかお知恵を下さい
679 :
名無しさん@そうだ選挙にいこう :2012/10/17(水) 15:44:30.31
すみません二重に書き込んじゃった
680 :
名無しさん@そうだ選挙にいこう :2012/10/17(水) 15:54:37.35
677 ですが 情報不足でした 元データはMs-access2003のクエリです
681 :
名無しさん@そうだ選挙にいこう :2012/10/17(水) 16:01:59.73
Windows2003→WindowsXP 慌てものです ごめんなさい
>>677 そういうのはココじゃなくMSのサポートに聞くべき内容だと思うよ
685 :
名無しさん@そうだ選挙にいこう :2012/10/17(水) 20:28:17.04
色々調べたけど わかんないんだよ 該当するPCにaccess2010のランタイム入れてみたり データベースアクセスドライバー入れてみたり 調べられることは全部やった でも解決できん ソフト屋さんにも投げられた 何とかならんかな ダメなら作り直しジャ
>>685 こういう症状の時はクリーンインストール
687 :
名無しさん@そうだ選挙にいこう :2012/10/17(水) 21:01:14.08
買ったばっかのPCなんだけど なぜwindowsXPのexcel2010なら動くのかな DBへの接続文字列は違うような気がせんでもないけど よくわからんのよ hpもrenoboも一緒の症状 何でだろ windowsxpにはドライバが残ってるってこと????? 35年以上COMPUTERにかかわってるけど解決できんのは なんかイヤなのよね msだからとかpcだからとか でも最悪作り直しかもね 今はそんなもんか
688 :
683 :2012/10/17(水) 21:13:37.75
>>684 青森・岩手・宮城ですね。
失礼しました。
なんで宮城じゃなく山形なの?
あ〜、単なる誤記ね。了解
>>683 Dim AKB As String
AKB = "A02"
Range("A3:F9").AutoFilter Field:=Application.WorksheetFunction.Match(AKB, Range("A3:F3")), Criteria1:="<>"
【1 OSの種類 .】 Windows7 【2 Excelのバージョン 】 Excel2010 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 フォームオブジェクトのテキストボックスの中の値を取得するために OLEObjects("textbox").Object.Text を使用しています。 通常はテキストボックスに入力した値が取得出来るのですが 別の端末で実行すると 「OLEObjectクラスのObjectプロパティを取得できません」 とアラートメッセージが出ます デバッグモードでテキストボックスをウォッチしてみましたが ウォッチ式の値にも同様のメッセージが出ており 内容が表示できませんでした 環境や設定の問題だとは思いますがどこに原因があるか不明です 原因や原因の特定方法、または解消方法などありましたら教えていただけますでしょうか
>>692 OLEObjectsをウォッチしてみたらいいんじゃないのかな
694 :
692 :2012/10/18(木) 23:28:34.44
>>693 OLEObjects("textbox")
をウォッチしてちゃんと値は表示されるのですが
Objectの項目にはエラーが出てるのです
>>694 ミニマムのブックをアップするのが一番早い
696 :
名無しさん@そうだ選挙にいこう :2012/10/19(金) 11:33:00.14
MOSーExcelの検定試験が明後日あるんですが その会社の対策テキストの模擬試験で90点以上安定してきたんだけど 確実に合格できますか?
697 :
名無しさん@そうだ選挙にいこう :2012/10/19(金) 11:34:06.43
Excel2010
>>696 とりあえず
>>1 以下を読んで、
その質問がスレ違いだということを理解汁
ほんで本番の試験では
「注意書きだの問題文だのを真っ先によく読む」
程度の基本は頭に叩き込んどいたほうがよかろ
他人が合格できるかどうかなんぞ保証できる人間はおらんわ
>>701 ヘルプの中にそういった記述はございませんでした
>HYPERLINK(リンク先,別名) 別名は?
>>677 Windows7 64bitは、そのままだとOLEDB使えないようだけど、そのこと?
【1 OSの種類 .】 Windows7 【2 Excelのバージョン 】 Excel2010 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 可 描写ツールを使う際、図形のスタイルのデフォルトカラーが気に入らないので変えたいのですが、変更できません。 また、図形挿入時、図形別にショートカット、もしくはウィンドウを切り離して使いたいのですが、できませんでした。 解決方法があれば、アドバイスよろしくお願いします。
Excelを使いこなしていと最大行数をオーバーするデータが世の中にはたくさんある事に気が付きますが 最大行数も列数も全部使い切ってしまうようなデーターはあるのでしょうか? 1シートの全セルを使っても足りないというデータがありましたら差し支えなければ具体的な名前を教えて下さい。 宜しくお願い致します。
>>706 会社で使っていたら行数が足りないデータっていくらでもあると思うよ。
うちの会社でも製品の出荷データや請求データなんて、アイテム別にしたら数ヶ月で100万行越えるよ。
>>706 2chの全ログとか
挙げだしたらキリがないと思うし、そもそもExcelの質問からかけ離れてる
2010でもか?
ビッグデータといってな
一括置換すると対象のセルに赤文字にしていたりすると すべて黒になってしまいますが これを色を変えずにまとめて置換する方法ってあるのでしょうか?
VBA
>>711 置換時に「オプション」をクリックして、
「置換後の文字列」にも書式設定してやりゃいいだけと思うが
>>711 現実的じゃないだろうけど
赤文字にしているセルを全部選択(要はCtlキーで選択)したうえで
それに名前をつけておく。たとえば「RED」とか。
全部黒にしてから。
セル名で「RED」を選んで、赤にする。
とかすればできることはできるけど、選ぶこと自体いやなんだろな。
>>716 ピンポイントでセル洗濯しなくてもシートごとコピー、置換、書式だけ貼り付けすればいい
セル全体に色がついているのか、セル内の文字列の一部分に色がついているのか、 それによって変わってくる
今日もほぼ一日中Excelとにらめっこしてたけど ここに常駐してる人たちは皆そうだよな?!
721 :
名無しさん@そうだ選挙にいこう :2012/10/22(月) 00:31:13.64
>>721 まだ続いている VBAで完全オートパイロットにして最後はこっちが笑って勝つ予定・・・。
笑うどころが普通に頭が重いがw
10年後にはある程度の人工知能を持つようになってて、 にらめっこ機能とかも付与されると思うよ
725 :
683 :2012/10/22(月) 19:12:52.82
>>691 ありがとうございます。
683のサンプルではうまくいきましたが、本家本元のファイルに組み込むと
全く違う番号を拾ってしまいます。
未だ解決には至らず・・・
あれ?過疎ってるなあ みんなExcelやってないのか?!
やってるよ 昨日も3回ぐらいやったし
excelを"やる"ってなんぞwww
そっか みんなー、エクせる? でいいのかな
すみません教えて下さい。 1ヶ月ぐらい前のmicrosoft updateの後から、毎回 excelを立ち上げた直後に必ず「名前を付けて保存」のウインドウが表示されて、 その後一切の操作を受け付けなくなりました。ウインドウはどうやっても消えないですし、 試しに適当な名前で保存してもまた出ます。タスクマネージャー等で強制終了しか 出来ません。出来れば再インストール以外の方向で解決策をお願いしたいのですが・・・。
Excel2003,2007,2010,2013がパソコンにインストールされているのですが、xlsファイルは2003、xlsxやxlsmファイルは2007で開くよう設定はできませんか 今はすべて2010で開かれてしまいます・・・
スレチです。 Windowsのスレへどうぞ
>>733 関連付けでも修正できるし、最後に2003をインストールすればそっちが優先になる
>>733 起動時のオプションで /regserver を指定するとか
ってゆうか、そんなに入れる必要が… 最新版あればじゅうぶんじゃね? デバッカの方ですか?
>>735 ウソは良くないな。
両方ともならないよ。
Excel初心者ですが Excelを思い通りに自在に使いこなせるようになるとお金持ちになれるのでしょうか?
なれますん
>>741 エクセルはできて当たり前
カネモチになりたいなら、HTMLでホームページ作れないとダメだ!
744 :
名無しさん@そうだ選挙にいこう :2012/10/24(水) 23:50:20.02
イチローの父はチチローですが イチローの母はなんですか?
スルー検定実施中
パソコンを自作したら、開発費が億超えだぞ!
残業時間の端数処理について回答お願いします。 15分単位なのですが、15、30、45でそれぞれ端数処理の仕方が違います。 15以内(15含む)切り捨て 30以内(30含まず)切り捨て 45以内(45含む)切り上げ 例20:15→20:00 例20:30→20:30 例20:45→21:00 どうかよろしくお願いします
750 :
名無しさん@そうだ選挙にいこう :2012/10/25(木) 09:00:37.27
751 :
名無しさん@そうだ選挙にいこう :2012/10/25(木) 09:15:04.63
【1 OSの種類 .】 Windows7 【2 Excelのバージョン 】 Excel2007 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 質問です。 セルA1に数字を入力、もしくは書き換えをした場合 セルA2にその入力または書き換えた日付を取得することはできるでしょうか? 例えばセルA1に18と入っていたものを20と書き換えた場合 セルA2に書き換えた日付「10月25日」を表示させるといった感じです。
A2にA1の数字から日付を算出する計算式を書けばいいだけじゃね? 20で10月25日になるっていうだけじゃ関連性わかんねえけど チカラワザするなら ="10月"&A1+5&"日" みたいなのでもいいやな 30入れたら10月35日になるが構わないのだろう?
753 :
名無しさん@そうだ選挙にいこう :2012/10/25(木) 09:45:23.53
>>752 すいません。質問の仕方がよくありませんでした。
>セルA1に数字を入力、もしくは書き換えをした場合
>セルA2にその入力または書き換えた「日の」日付を取得することはできるでしょうか?
セルA1に商品の個数を入力したとき、その入力した今日の日付(もしくは書き換えた
今日の日付)を横のセルA2に表示したい考えてます。
計算方法が手動になってる。
>>755 全っ然気づきませんでしたorz
ありがとうm(__)m
【1 OSの種類 .】 Windows7 【2 Excelのバージョン 】 Excel2007 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 ピボットグラフで、理想的なグラフ化ができず質問いたします。 以下のようなデータで、IDが100項目あるとします。 ID Date Value a 1/1 10 a 2/1 20 b 1/1 30 b 2/1 10 c 1/1 20 上記をX軸にDate Y軸にIDを入れ、Valueの値が大きい上位200項目くらいを表示した結果、 私の理想では200項目が表示されてほしいのですが、画面には1つの線(Valueが集計されたデータ)のみ表示されます。 集計されないようにしたいのですが、設定方法を教えて頂けないでしょうか。よろしくお願いいたします。
>>758 なんか、ピボットで最初の指定(IDとDateを入れる場所)から
おかしいんじゃないかな。
それと、
>Valueの値が大きい上位200項目
Dateによって、あるいは、IDによってValueの順位は異なるでしょ。
それとも、Vlaueの合計値の上位?
760 :
758 :2012/10/25(木) 20:31:38.63
>>759 返信ありがとうございます。
現在の指定場所などが分かるように、jpgでUPいたします。
http://www.dotup.org/uploda/www.dotup.org3554291.jpg >Dateによって、あるいは、IDによってValueの順位は異なるでしょ。
>それとも、Vlaueの合計値の上位?
ご指摘どおり、Valueの合計値の上位を表示させたい。を意図しております。
凡例が255を超えると警告が出るのですが、
合計値が大きいものを上位から表示させたいです。
しかし、jpgを見て頂きますと、データは1つだけで、凡例の場所に【集計】とだけ表示されるのみです・・・
>>760 1日分だけでいいからid別のデータを上げてみんさい。
762 :
758 :2012/10/25(木) 21:34:18.25
【1 OSの種類 .】 Windows vista 【2 Excelのバージョン 】 Excel2007 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 エクセルのマクロでホームページの訪問者数を記事ごとに自動集計していくことは可能でしょうか? A1に「記事Xの訪問者数」、A2に「記事Yの訪問者数」、という感じです。
>>763 前提条件が不明で【4 VBAでの回答の可否】が否なので具体的には答えられないけど
可能でしょうか?という質問に対する回答は「可能です」
自動集計という言葉がちょっと引っかかるんだけど、 データはExcelにためていくの? それとも、別にためられていて、それを毎回読み込むという事?
767 :
758 :2012/10/26(金) 01:00:11.89
>>766 ありがとうございます!
そのグラフを表示させるにはどのように操作するのでしょうか?
失礼しました、768=763です
770 :
名無しさん@そうだ選挙にいこう :2012/10/26(金) 06:09:48.14
>>756 ありがとうございます。
Worksheet_Changeでなんとかなりそうです。
【1 OSの種類 .】 Windows7home 【2 Excelのバージョン 】 Excel2007 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 可 複数の条件を満たすセルの数値の合計を出したいのですが困ってます。 sumifs関数を使ってますが、数値の範囲を条件として指定する場合には、 どうすれば宜しいでしょうか? 条件は日付が 20121031 このような数値で入力されており、 20121001〜20121031範囲を条件として、指定したいのですが… どなたか助けて頂けると助かります、宜しくお願いいたします。 =SUMIFS(G2:G747,B2:B747,A4,C2:C747, 【この部分】 )
>>771 sumifsでググれば山ほどサンプル出てくるけどそれじゃ不満ってこと?
作業列つくればいくらでも
2010を使用しています。 セルの表示形式のユーザー定義について、質問させて下さい。 セルに、20120401と入力した時に、2012/04/01と表示させるように、「#"/"00"/"00」と作成してみました。 次に、0402と入力した時には、04/02と表示させたいのですが、上記の定義では、/04/02となってしまいます。 どうしたら2つの表示を兼ねられますでしょうか? 宜しくお願いします。
[<10000]00"/"00;#"/"00"/"00
Mac版Excel2008と2011ですが、command+Fで検索窓を表示するとシートを編集できなくなります。 Windows版Excelのように検索窓を表示したままシートを編集する事はできないのでしょうか? お手数ですがご教授頂ければと思います。
>>775 レスありがとうございます
条件で差別化するんですね!
ありがとうございました
Excel2010を使用しています。 例えば、A列に [1] エクセル料金A [2] 料金B と入力したとします。 [2]のスペース([1]の「エクセル」の4文字分)の丁度中央に、「〃」と入力したい時、 スペースまたは、セルの書式設定の配置のマージン?で設定すると、 文字数によっては、ズレが生じてしまいます。 何か良い方法はありませんでしょうか? 宜しくお願い致します。
>>778 フォントやフォントのサイズでズレないように調整
>>776 仕様や制限や基本的な使い方はメーカーサポートへ
>>779 レスありがとうございます。
フォントやフォントのサイズで調整ですが、
同じ、フォント、サイズのままにしたいのですが…orz
>>782 ありがとうございます。
やはり、複数のセルで、力技でレイアウトするしかないんですね。
Excelは、セルの結合しかありませんが、分割もあって欲しいものです…
ありがとうございました
エクセルというものが全くわかりません なんかオススメの本とかあったら教えていただきたく思います
>>785 MCAS対策の問題集一冊こなせばある程度使えるようになるよ
MOSに戻ったんだっけ MOS対策ね
>>785 書籍すら自分で選べないような人には無理だと思うよ
Excelはあきらめた方がいいと思う
>>788 同感一票。
本屋に行って、相性が合いそうなのを選べばいい話。
本屋に行くと初心者用のがけっこうあるとおもうよ。
エクセルに画像を貼り付けたりしてるのですが・・・ コピー貼り付けより図の挿入で画像を貼り付けた方が エクセルのファイルサイズが小さくなるのですが、何ででしょうか? 後エクセルのファイルサイズって 元のエクセルファイルサイズ + 画像をファイルサイズ にはならないのでしょうか? 貼り付けた画像のファイルサイズが1MBだとして エクセルファイルのサイズは1MB以下になってたりします
>>791 >エクセルのファイルサイズが小さくなるのですが、何ででしょうか?
そういう仕様だからです
>元のエクセルファイルサイズ + 画像をファイルサイズ にはならないのでしょうか?
画像は画質や圧縮率でサイズは変化します
>>790 本が多すぎてドレを選んでいいか解らない件
結局俺は壁にぶち当たったら都度ググるようにしてるよ
たぶん、基本はできてないと思う
>>791 動作原理の件はわからんが、最後のファイルサイズの件は、自動で圧縮がかかってるからじゃね?
トリミングとかすると、トリった部分がファイル保存時とかに抹殺されてた希ガス
>>791 前者はコピペ貼り付けだといったん画像がエクセルで扱うのに
都合がいいように自動変換され、図の挿入だと元の画像形式を
そのまま保つのが原因だったように思う。
だから常に、コピペ貼り付け>図の挿入になるというわけではなく
そうなるケースもあるというわけじゃないかな。
後者は>793さんが答えてくれている通りだと思う。
2007/2010だと保存時に自動的に圧縮がかかるから。
795 :
791 :2012/10/27(土) 19:52:28.18
みなさん。どうもありがとうございます。 本来の画像をそのまま貼り付けたい場合は 挿入コマンドを使った方がいんですね! あと使ってるエクセルは2003です。 jpegとbmpの画像ファイルがあって 画像自体のファイルはbmpの方が大きいのに エクセルに挿入して保存するとエクセルのファイルサイズは jpegを貼った方が大きくなるんです。 2003なのでデフォルトでは自動的に画質圧縮されないはずなんですが・・・
>>785 あまり書籍は紹介しにくい。
なぜなら、書籍に頼らず慣れたほうが速いから。
たとえ自宅でも、サイトとかめぐって自力で家計簿でもつくってみたほうが良い
まぁそれでも質問に答えるなら、横幅のサイズが大きく薄いものオススメ
基本開けっぱなしになるので、その状態を維持できるものが良い
内容的には数式を多少かけて、書式設定、グラフが作れればなんでもいい
>>791 エクセルの使用だね。画像サイズが変わってる
png形式で
1224*1632 → 792*1056
に変更されていた
小さい画像では試していないけど、基本的に画質は劣化する、ということは覚えておいたほうがいいかもね
勝手に変更された画像のサイズってどうやって調べれるの?
「縮小して全体を表示する」のショートカットキーを教えてください
>>799 ないんじゃないかな。
「縮小して全体を表示する」操作をマクロに保存して、
それに適当なキーを割り当てりゃよかろ。
>>799 結構頻繁に使う機能なのに、2010になってもリボンに搭載されてないよね。
いちいちプロパティとか開くのめんどうなのだが、みんな使わない機能なのかな?
探すのが面倒だから聞いてんのに リンクだけ張るやつってなんなの?
今日、上司に怒られてしまいました。 エクセルに大きいサイズの画像を貼り付けて エクセルの中の倍率50%で画像の大きさを小さくしたんですが・・・ 倍率100%になるように最初から小さい画像を貼り付けろ!って言われたんです。 そこで質問です! エクセルに大きい画像を貼るのは無意味ですか? すこし大きめの画像の方が、印刷したときに画質が良いような気がします。 これは気のせいでしょうか? お願いします
エクセルで画像を小さくしてもペイントソフトで画像を小さしても一緒 でも上司が怒った理由はわからんわ 一つ一つのセルが小さくなるからか?
>>804 ダメな奴は何やってもダメ。
怒られたから○○しなくちゃいけません。
とかじゃなくて、何の理由があって注意を受けたのか
社会人として問わないのか?
つか社会人になって怒られるとう表現を用いる事に、違和感感じろよ。
ちなみに、なぜ倍率100%で貼り付けろといったのか、
そこには何か理由が添えられてたんじゃないか?
ファイルサイズがデカイとか。
画像のサイズとファイルサイズを取り違えているなんてことはないよな?
上司はファイルサイズに言及したくて注意したとかなら話は別。
まぁ結論はダメな奴は何やってもダメ。
スーパーサラリーマンの俺が言うんだから間違いない。
>>806 違和感感じろ という表現に違和感を感じたよ
社会人として、正しく言葉を使おうよ
え? ・ペイントで画像を縮小してからエクセルに貼り付け ・大きい画像のままエクセルに貼り付けて、エクセル機能で縮小 この2つを印刷した場合、2つとも画像の画質は一緒なんですか?
>>808 同じ画質になるわけないだろ
試せば簡単にわかることだが
Excelの書き方に詰まったからご教授いただきたい 部署名とシフトを参照してAという部署のCというシフトの人を抽出する表を作りたいんだが、どういう風に書けばいいだろうか? 部署名一覧と所属員一覧とシフト名一覧の表は出来てて、 リストで部署名を出すと右のリストに所属員一覧のリストが出るようにはしてる。
ピボットテーブル
814 :
名無しさん@そうだ選挙にいこう :2012/10/30(火) 01:33:45.06
ピボットテーブルとは何ですか?
>>813 ピボットテーブルだとAグループかつCシフトの人(複数名)を抽出とかは難しくないですか?
やり方があるなら是非教えていただきたいです。
すいません。ちょっと書き直してきました。 書き直している間に全然違うことを書いてたことに気づきました。すいません。 本日のシフト ┌────┬────┬────┐ │A部署 │1さん │aシフト│ │A部署 │2さん │cシフト│ │B部署 │3さん │bシフト│ │A部署 │4さん │eシフト│ │B部署 │5さん │dシフト│ │B部署 │6さん │cシフト│ │A部署 │7さん │bシフト│ │B部署 │8さん │aシフト│ │A部署 │9さん │aシフト│ │A部署 │10さん│bシフト│ │B部署 │11さん│cシフト│ │A部署 │12さん│eシフト│ └────┴────┴────┘ こんな感じの表から、 A部署 B部署 ┌────┬────┐┌────┬────┐ │aシフト│1さん ││aシフト│8さん │ │aシフト│9さん ││bシフト│3さん │ │bシフト│10さん││cシフト│6さん │ │cシフト│2さん ││cシフト│11さん│ │dシフト│7さん ││dシフト│5さん │ │eシフト│4さん │└────┴────┘ │eシフト│12さん│ └────┴────┘ みたいな感じに分けたいんです。 毎日変わるものなので上の表が変わったら下の表も変わるようにしたいと思っています。上の表はリスト式で部署や名前を変えれるようにしています。 わかりにくいかと思いますが、ご教授お願いします。
>>816 この表に項目名「部署名」、「担当」、「シフト」をつけて、ピボットで下記のようなレイアウトでどうでしょう
ページ=「部署名」
行=「シフト」「担当」 (シフトの集計は合計が入っちゃうので、集計”なし”を選択)
データ=データの個数「担当」 (ここはダミーなのでなんでも良いです)
このピボットを2つ作って、ページを片方A部署、もう一方をB部署と選択すると
>>816 の下の2つの表が得られます。
ダミーのデータ列は適当に隠してください。
見かけがあれなら、別シートでこれらのピボットを参照する表作れば綺麗に作れると思います。
>>816 上の表が正しいのなら、普通に上の表だけでいいだろ
必要に応じてフィルタで絞ればいいし、サイズも節約できるし、管理しやすい
>>818 各部署にプリントアウトした表を渡したいとかで
加工してんじゃないの?
とかエスパーしてみる。
おまいのは一人でデータ集めて一人で使えばいい場合の発想だと思うぞ。
820 :
名無しさん@そうだ選挙にいこう :2012/10/30(火) 10:22:32.02
スレチだったらすみません。
情報処理のレポートを手伝っているのですが、教科書に載っている求め方と、解答欄の書き方?違っていて、この問題がわかりませんorz
F2のセルに入る数式を求めろという問題で、答えは=_(_,_,_)となるみたいなのですが_にはなにが入るのかどなたか教えていただけないでしょうか…
http://imepic.jp/20121030/371060
なんだこの実用性皆無の表・・・・
>>821 高校生のレポートなので、そこは触れないで頂けると嬉しいですorz
>>822 =INDIRECT(ADDRESS(C2+7,C3+3))
一応これでいけると思うけど、表ちょっといじっただけで使えなくなるし、高校生のエクセルの授業でこんな関数やるとも思えない
けど俺にはこのやり方しか思いつかないわ
>>820 Excelでやるなら
INDEX関数+MATCH関数でしょ
実用上それで差し支えないし
解答欄のほうがおかしいんじゃねえの?
>>823 ご回答ありがとうございます。
>>824 この問題の前にINDEX関数の問題は出てるのですが、MATCH関数っていうのが教科書に載っていませんでしたorz
単純な公差1の表だからMATCHは使わなくてもINDEXだけでいけるでしょ 実用性は皆無だけど、これから順番に覚えてくんだからしょうがない
=INDEX(C8:H12,C2,C3+1) こうかね
VLOOKUPでいいじゃん
VLOOKUPでどうやってやるんだよ
頭悪いなー =VLOOKUP(C2,B8:H12,C3+2,0)
全角+人 は書式で実現
学校の宿題は本人に解かせましょう。
>>832 表はすでにあるものとして使うのが普通だと思うが??
なんか、普通に考えたらVLOOKUPとMATCHかINDEX+MATCHの問題だけど半角全角の違いとか、ひっかけ問題かね。 C2&"人"でVLOOKUPしてもだめじゃん。
半角文字を全角文字に変換する関数 JIS関数
>>835 シンプルにINDEX関数の基本の使い方で、
>>827 さんのとおりでしょ。
理解のための教科書的な問題だと思うよ。
以前は、ガッコの宿題はスルーしてたのに何で皆でカマッテるの?
>>838 面白いから
SUMとかPRODUCTとかだったら無視するけど
じゃあ、みんなの意見まとめて =VLOOKUP(JIS(C2)&"人",$B$6:$H$11,C3+2,FALSE) これでいいですね。
要は回答は一つじゃないということだね。 その前の授業で、配列の要素を取り出すということだったindexだろうし、 Vlookupを授業でやった後なら、Vlookupだろうし。
1つのExcelファイルで求めた数字を、めちゃ沢山の資料に飛ばしたい時、どうするものなんでしょうか。 数が少なければ、同じExcelファイル間にシートを入れて、普通にシート間参照の数式を入れて行けばいいでしょうけど、 飛ばす先が多くなってきたらどうするものでしょうか。ブック間で参照する計算式を入れたり、マクロを組んだりする ものでしょうか?それとも、シート数が多くなってでも1つのExcelファイルにシートを挟みまくってシート間参照の 計算式でどうにかするものなんでしょうか。
な、、な、なんだ なにが言いたいんだ?
>>842 決まったルールなんてないからあなたの好きにすればいいんですよ
>>842 ケースバイケースと言う以外に答えようがない
1つのブックに収めておいたほうが処理しやすい限りは
まとめておけばいいだろうし、
無理があるなら分けるしかない
>>842 求めた数字が頻繁に入れ替わるならそのまま挟まずに使ったほうがいいだろうし、一度求めたらそうそう変わらないのであれば挟んだほうがいいかも
シート開くたびに更新しますか?って聞かれるのウザいし
ってゆうか、めっちゃ沢山の資料に飛ばす時点で、リンクさせるしか無い気もするが…
飛ばす先が多ければ多いほど、挟む余地ないと思う件
【1 OSの種類 .】 Windows7 【2 Excelのバージョン 】 Excel2010 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 AD5からAF7に、下記のような数式が入っています。 これらをAG5からAI7にコピペした後、AG5からAI7の範囲だけ"10月"を"11月"に 変えるにはどうすればいいですか? 置換を使うとAD5からAF7も変わってしまいダメでした。 AD AE AF 5 ='10月'!$D5 ='C:\2012data\[2012売上表.xlsx]10月'!$D5 =AC5+AD5-AE5 6 ='10月'!$D6 ='C:\2012data\[2012売上表.xlsx]10月'!$D6 =AC6+AD6-AE6 7 ='10月'!$D7 ='C:\2012data\[2012売上表.xlsx]10月'!$D7 =AC7+AD7-AE7
AG5からAI7の範囲を選択して置換
>>849 もう少し具体的にお願いします。
置換のオプションを見ても、検索範囲が"シート"と"ブック"のみでセルがありません。
月を+1にするだけで済まないのか? (日付関数なら12月+1を翌年1月にしてくれるし) before、afterを示してくれよん。
ある給与ソフトでCSVデータを受け入れさせようとしたら 10(日数)は1000 40(時間)は4000 と成っていないと受け入れないみたいです。 10を1000と表示させるにはどうしたらよいでしょうか? 宜しくお願いします。
>>853 ファイル→オプション→詳細設定→編集設定→少数点位置自動的に挿入する→
入力単位→-2
とすれば入力する数字下位2桁に00が自動的に入る。
【1 OSの種類 .】 Windows7 【2 Excelのバージョン 】 Excel2010 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 これはExcelスレで聞いていいのかどうかわかりませんが、当方PCに疎いゆえ質問をご許しください。 現在Excelでパンフレットを作ってて、最終的にはドラクエ風に仕上げたいのですが、オートシェイプでこしらえた 枠の中にテキストボックスで美咲フォントを使用して入力しようとしたら、 セルの中には美咲フォントが打てるんだけどテキストボックスだと使えないんです。 インストールはうまくいってるかと思うのですが、テキストボックスだと使用できないフォントとかってあるのでしょうか。 無理なら無理で別のアプリケーションの使用を考えようかと思うのですが、どうにもPCに疎いもんで、ほかのアプリケーションでうまく作れる自信がなくて・・・ もし解決方法をご存じの方がいらっしゃいましたら、どうか回答願いたいです。
856 :
名無しさん@そうだ選挙にいこう :2012/11/02(金) 20:57:41.70
「数値が文字列として保存されてます」はどういう意味ですか?
>>854 ありがとうございました。
入力済みデータも変換されるのかな?
月間日にやってみます。
>>855 下記の環境では使用できたので、Excel自体の仕様では無いと思います。
Windows7/Excel2007
WindowsXP/Excel2000
オートシェイプ内に、美咲フォント以外のフォントでは書けますか?
>>800-801 亀ですんません、返レスありがとうございます
やっぱないですか・・・
仕事が作表の嵐なので、けっこう使うんですよね
折り返して〜の方はあるのに何でないんだろうorz
>>802 そこ、行ってみますたけどやっぱないですよ
ちなみに
>>803 は自分じゃありませんです
861 :
名無しさん@そうだ選挙にいこう :2012/11/03(土) 21:59:55.89
C1の内容をD1に表示するには =C1ですが 書式や改行は消えてしまいます そこで書式を含めた形で全く同じように表示したい場合 これは関数だけでで実現したい場合可能でしょうか? Excelのオプション−詳細設定ではできるのですが あくまで関数だけで実現可能か知りたいです
【1 OSの種類 .】 Windows7 【2 Excelのバージョン 】 Excel2007 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 商品単価×数量を計算して、それに消費税を計算し それぞれの合計を出した表を作りました。 商品が1つだとよいのですが、複数になると 消費税の合計が+1または-1の誤差が出る場合があります。 例えば F1に数量「1」入力 F2に単価「5429」を入力 F3に仕入金額(F1*F2) F4に消費税 =ROUND(F3*0.05,0)=¥271になるので合計5700で問題ないのですが 数量を2にすると単価*数量で10858となり消費税は543。 合計11401になり+1の誤差がでます。 正解は11400です。 どうしたらよいでしょうか
>>863 それexcelの質問じゃなくて小学校の算数レベルでは?
865 :
名無しさん@そうだ選挙にいこう :2012/11/04(日) 02:57:54.39
ワークシートイベントのチェンジイベントは、式の変化は認識されないんですか? 例えばA1セル「=B1」でB1の数値が変わっても、イベント対象をA1にしていたらイベントは発生しない。 これをどうにかA1でイベント発動できるようにしたいんですが無理ですか?
>>863 切り捨てってこと?
rounddown関数を使えばok
もし1つずつ消費税を求め、その合計ってなら
=ROUND(F2*0.05,0)*F1
になる
867 :
名無しさん@そうだ選挙にいこう :2012/11/04(日) 08:50:45.71
エクセルVBAを利用して作ったエクセルファイルは エクセルさえインストールしてあれば、 他に必要なファイル(ランタイムファイルとか)が 必要なことって無いですか? 会社でエクセルでVBAを使ったものを作るんですが、 他のパソコンでも動くのが条件なので。 お願いします。 同じバージョンのエクセルだし、ウィンドウズ7です。
>>863 それ、請求時の話だよね?
業務で使う場合、取引先との関係や商品によって切り捨て、切り上げ、
四捨五入と書式を分けるのが一般的じゃないのかな?
俺のところは中小から買うときは切り上げ、売るときは切り捨てにしてる。
大手が相手だと四捨五入になり複雑だ。
863の例だと、取引先が中小で、売るなら\11,400となり買うなら\11,401となる。
ただ、実際の取り引きは買掛金が多いので、見積書上は消費税別にしておき
小数点第二位(銭の単位)で取りかわし月別に集計、その合計値に
消費税を加算するから数千万円規模でも1円の誤差で済むけど・・・
>>863 基本的なことでいえば、
原則として消費税は合計額から計算し、端数切り捨て。
とはいえ四捨五入は間違いで税務署に怒られる
というわけではない。
>>867 その条件なら、よほど特殊なことをしない限り問題ないと思うぞ。
ただし念のため、複数のPCで動作確認をするのは忘れずに。
勝手に斜め上の環境を作ったり、自分でエクセルの環境を
壊したりしている人もいるかもしれないので。
871 :
870 :2012/11/04(日) 10:05:12.73
ごめん
>>867 じゃあなくて
>>863 ね
あたりまえだけど、1つ1つ計算だと。単価安いもの、一つずつ消費税計算して
合計すると、消費税0円になっちゃうな。
まあ、こんなことする人いないけど、。
872 :
869 :2012/11/04(日) 10:06:42.30
わ〜また間違えてる失礼。再度
ごめん
>>867 じゃあなくて
>>863 ね
あたりまえだけど、1つ1つ計算だと。単価安いもの、一つずつ消費税計算して
合計すると、消費税0円になっちゃうな。
まあ、こんなことする人いないけど、。
>単価安いもの、一つずつ消費税計算して合計すると、消費税0円になっちゃうな。 へぇ〜 どんな例でそうなるの?
10円の商品を複数セルで消費税計算して合計したらってこと?
実際にそうすることはないけど 単価5円のもので、一ずつ四捨五入あるいは切り捨てで消費税計算すると 0.25円が0円になっちゃうんで、あとで消費税だけ合計しても0円 そんなことする人いないよね、ってこと。 だから合計してから消費税計算でしょう〜 ということ言っただけ。 聞き流して〜〜
【1 OSの種類 .】 Windows7 【2 Excelのバージョン 】 Excel2007 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 A B 1 55 3 2 23 1 3 45 2 4 87 4 5 91 4 6 71 3 A列の値が0〜9の場合は0、10〜39の場合は1、40〜49の場合は2 50〜79の場合は3、80〜99の場合は4、100〜149は5を・・・ というように、B列に指定した値を返したい場合、どのような関数を使って どのようにやると良いのでしょうか? 場合分けが10個以上あるのでif関数は使えなくて困っています。 VLOOKUPを使えばうまくいくような気もするのですが、いまいちよく分かりません。 よろしくお願いします。
877 :
876 :2012/11/04(日) 21:02:47.75
今確認したら、 ExcelのバージョンはExcel2010でした。すいません。 よろしくお願いします。
取引先・伝票・締日とかで決済方法はいろいろあるんだが、、、 それと、決算時にはそれまでの仮払・借受消費税を無視して再計算するのが一般的で、 最終的に丸めても1円の違い。 と、スレ違い orz
879 :
名無しさん@そうだ選挙にいこう :2012/11/04(日) 21:25:25.52
【1 OSの種類 .】 Windows7 【2 Excelのバージョン 】 Excel2010 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 可 たとえばセルA1に「1234」と打ち込むとセルA2にA1の千の位の数字1だけを表示させるようにするにはどうすればいいのでしょうか こんな表示にしたいのです A 1 1234 2 1 3 4
>>876 こういうことか?
=IF(A1<10,0,IF(AND(A1<=10,A1<40),1,IF(AND(A1<=40,A1<50),2,IF(AND(A1<=50,A1<80),3,IF(AND(A1<=80,A1<100),4,IF(AND(A1<=100,A1<150),5))))))
あとはこれをフィルすればいい
IF関数って5回までしか重ねられないでしょ
882 :
879 :2012/11/04(日) 21:46:41.47
すみません自己解決できました mid関数というのを使うのですね
>>881 ネストは2003なら7個2007以降なら64個だったはず
>>880 の式だと49でも3と表示されるな何でだ?
不等号逆だからじゃない
>>876 =AND(A1>=0,A1<=9)*0+AND(A1>=10,A1<=39)*1+AND(A1>=40,A1<=49)*2+AND(A1>=50,A1<=79)*3+AND(A1>=80,A1<=99)*4+AND(A1>=100,A1<=149)*5+・・・
桁数がわからんのでそ。 1万以下を抽出するなら100,000の剰余を出し、 その後10,000で割って整数化する、でok
>>876 =HLOOKUP(A1,{0,10,40,50,80,100,150;0,1,2,3,4,5,6},2,TRUE)
=VLOOKUP(A1,{0,0;10,1;40,2;50,3;80,4;100,4;150,6},2,TRUE)
>>876 適当な列に(仮にC) 0,10,40,50,80,100,150,,,
B1: =MATCH($A1,$C:$C,1)-1
とでも入力して下にオートフィル
890 :
876 :2012/11/04(日) 23:11:21.39
891 :
名無しさん@そうだ選挙にいこう :2012/11/05(月) 22:06:54.92
A1に何か数値 A2、A3が空白の場合 A4にA1の数値の+1を入れたい場合どうすればいいのでしょうか? もちろんA1に数値以外ならエラー値です。
D列にA〜Cの項目があり、E3〜E136にデータがあり、2行1組になっています。 138行目以降に項目別の合計を書きたいです。 項目Aなら{=SUM(IF($D$3:$D$136="A",E3:E136,0))}で算出できますが、 項目Aに対する項目C、項目Bに対する項目Cを算出するには どう書けばいいでしょうか? D E F G ------------------- A 20 30 30 C 10 10 30 ------------------- A 20 50 30 C 20 30 50 ------------------- B 10 10 20 C 20 10 10 ------------------- A 40 80 60 C 30 40 80 B 10 10 20 C 20 10 10
>>891 もう少し待てばもっとすっきりした答えがあるかもしれないけどこれでもできるよ
A4セルに
=IF(AND(ISNUMBER(A1)=TRUE,A2="",A3=""),A1+1)
>>891 A2,A3が空白じゃない場合はどうすればいいのよ
データの形が悪い 2行1レコードなんて最悪 やるとしたら作業列追加してこうする D E F G ------------------- A 20 30 30 A C 10 10 30 ------------------- A 20 50 30 A C 20 30 50 -------------------
896 :
名無しさん@そうだ選挙にいこう :2012/11/05(月) 23:15:12.61
COUNTIF(範囲、対象)の関数で、範囲のところを、A1〜A10、A11〜A20と指定する方法はないのでしょうか?
>>896 =countif(A1:A10,対象)
=countif(A11:A20,対象)
こんな感じ
=COUNTIF(A1:A20,対象) でいいやんw =COUNTIF(A1:A10,対象)+COUNTIF(A11:A20,対象) は?
>>897-898 ありがとうございます
私の最初の質問が間違っていたのですが、やりたいことは何かというと、
A1〜A10から○と△の数、
A12〜A21から○と△の数
途中送信しました、すいません やりたいことは何かというと、 A1〜A10から○と△の数、 A12〜A21から○と△の数 を求めたいんです。 COUNTIF(A1:A10, "○")+COUNTIF(A12:A21, "○")+COUNTIF(A1:A10, "△")+COUNTIF(A12:A21, "△") とかいう風に書くしか無いんでしょうか
>>892 D列がAやBの場合、SUMIF関数で計算すると
E138 =SUMIF($D$3:$G$136,$D138,E$3:E$136)
で横にコピペすれば出ますが、Cはめんどいね。
一つの関数で、複数の範囲をカンマ区切りで指定したいってことか 無理だ
まずCOUNTIF関数の第二引数は判定対象って指定されてるからな
>>900 (A1:A21)-A11
という考え方でもいいよ。
>>905 COUNT関数は個数を求める関数だから至って普通に出来るでしょ。
907 :
900 :2012/11/06(火) 00:04:41.36
みなさんありがとうございました
>>892 1)A、あるいはBの1行下に必ず対応したCが来る
2)今回だけの計算でいい
両方満たす場合、Aの方なら
{=SUM(IF($D$3:$D$136="A",E4:E137,0))} //合計の範囲だけ1つ下にずらした
一時しのぎでないなら、
>>895 の言うようにデータを作りなおした方がいいと思う。
新しぃバージョンにApplication.FileSearchが無い。みなさんどうしていますか?
色塗りだけうまいこと数式でコピー出来ないでしょうか? やっぱ条件付き書式を使うのがセオリーでしょうか?
▼━質問テンプレ (必ず使ってね) ━━━ 【1 OSの種類 .】 Windows7 【2 Excelのバージョン 】 Excel2010 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 セルにある値、例えば30が記録されていたとして それを現在の日付で自動的に割るということは可能ですか? 具体的に言うと、A1セルに今月の総勉強時間を記録した値(例:30)があり それを今日11月6日なら6で割り、1日の平均勉強時間を5と出すようなこと。 さらにもう少し正確にするため、6日15時現在なら分母を(5*24+15)/24に自動的にして 平均5.625とするようなことは可能ですか? TODAYやDAYをうまく使うとできるような気もするのですが、自分では無理でした。 よろしくお願いします。
>>912 =((DAY(NOW())-1)*24+HOUR(NOW()))/24
>>911 >色塗りだけうまいこと数式でコピー出来ないでしょうか?
出来ません
>やっぱ条件付き書式を使うのがセオリーでしょうか?
要件次第です
916 :
892 :2012/11/06(火) 19:19:19.18
>>895 データの形が悪いと言われてもねぇ・・・
どれが答えになってるのかもイミフだし・・・
>>908 できました。
なんでその数式で計算できるのかワカランのですが・・・
>>916 >>895 の形にしておけば「AかつC」のCの値がSUMIFでかんたんにだせるやん
わかんないならもういいけど
918 :
892 :2012/11/06(火) 20:21:42.36
>>917 なんで「AかつC」って勝手につくり変えちゃうんだか・・・
わかんないので、もういいです
919 :
1 :2012/11/06(火) 20:59:23.68
よろしくおながいします 【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2007 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 仕入れたものごとのデータを入れる元データがありまして、 りんご 10 みかん 20 いちご 30 りんご 10 いちご 10 みかん20 という感じです。 A店のりんご、B店のりんごなど、店に関係なくどんどん入れてくので、 果物は何回も同じものが出ます ので、その下にSUMIF使って合計出した表が1シートに1つずつあります 月ごとなので、12ヶ月分、12シートあります りんご 20 みかん 40 いちご 40 という感じで、果物の種類は月によって変動するため、 (基本のりんごとかみかんにプラスして、唐突にマンゴーとかライチが出たりする) 元データもSAMIFの表も行数が一定しません ので、串刺しができません
今度、12ヶ月をひとまとめにした表(新しいシートにて)を作るのですが、 りんご 12ヶ月分の合計 みかん 12ヶ月分の合計 みたいな感じです このように行数が変動する場合、 総合計を出すのにはどうしたらいいでしょうか 地道にSUMで各シートから拾ってみますたが、かなり要領悪いつーかカコワルイですorz
ピボットテーブルで
922 :
909 :2012/11/07(水) 00:30:21.61
>>910 FSOでゴリゴリ書き直します。サンキュー! ヽ(´▽`)/
923 :
908 :2012/11/07(水) 01:24:29.27
924 :
名無しさん@そうだ選挙にいこう :2012/11/07(水) 12:25:40.69
【1 OSの種類 .】 Windows7 【2 Excelのバージョン 】 Excel2010 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 編集したExcelファイルを保存し、メールに添付して送信したところ、白紙の状態になることがあります。 以下が一連の流れです ローカルに保存済みの「雛形.xls」を開き、「12月7日.xls」という名前でデスクトップに名前を付けて保存します 商品名や数値を入力し、フロッピーディスクのアイコンをクリックし「上書き保存」してから 同じく、クイックアクセスツールバー上の電子メールをクリックします Outlookが起動し、作成された「見積り.xls」が添付された状態で、 新規メールが開き「見積り添付します」などメッセージを付け加えて送信します。 同じ作業をしているのに、Windows7に変えてから週に2度ほど上記の現象が起こっております 以前使用していたXPでは1度もありませんでしたので、人為的なミスはないと仮定して、 どのような原因が考えられるでしょうか、過去数ヶ月前の書類でこのようなことが起こると 記憶も曖昧ですし、業務に支障が出てしまうため、困っております 宜しくお願いします
>>924 「12月7日.xls」を作っておいて「見積り.xls」を送るからそういうことになるんじゃね?
「12月7日.xls」を送れば解決
>>924 >人為的なミスはないと仮定して、
人為的なミス以外考えられない
927 :
名無しさん@そうだ選挙にいこう :2012/11/07(水) 17:26:04.48
>>925 間違えました、見積もり.xlsではなく、12月7日.xlsでした
雛型を開く→名前を付けて別名でそのまま保存する→編集する→上書き保存する→
アイコンを押す→添付された状態で新規メールが立ち上がる→
送信する→未編集のまま送信され、編集した文字列が保存されていなかった
です
>>926 XPでは上記の現象が起こらなかったこと、
7に入れ替えてから稀に発生しています。
【人為的なものと考えないとして】その他になにか
原因は考えられるか、教えて頂けませんでしょうか
>>927 デスクトップに保存した「12月7日.xls」は正しく編集されていて
Outlookで送信した「12月7日.xls」は編集前の状態ってこと?
人為的なミスと考えないのであればExcelかOutlookのバグとしか考えられないから
もうちょっと正確に再現性を確かめてからメーカーに報告してみたら?
完全に同じ手順で100回繰り返して何回発生するか、とか。
完全に同じ手順を再現させるときは人為的なミスを排除するために
HiMacroExとかUWSC等の自動化ツールを使うといいと思うよ。
原因の切り分けもまあ必要だろうな。 ・自分の送信済みアイテムにある該当添付ファイルの中身の確認 ・Outlook側で新規メール作成し、Excelファイルを添付した場合は問題は再現されるか このへんも最低限確認が必要だと思う。
メールを自分に送ってみる
>>928 編集→上書き→添付→送信→の手順を踏んでいるので、保存されていると思いますよね。
しかし稀に、デスクトップの「12月7日.xls」が正しく編集されていなかった、
同様に、添付した「12月7日.xls」も正しく編集されていなかったことに気付くんです
そうですね、私のPCでなく事務の女性の新調したPCでのみ起こっているので、
彼女のPCで自動化ツールを用いて、テストしてみたいと思います。
ありがとうございます。
>>929 殆どの送信済みアイテム中の添付ファイルは正しく編集され保存されていますが、ごく稀に起こっています
2番目に関しては手順は増えますが、再現されるか試してもらおうと思います
ありがとうございます。
>>930 100回自分に送ってみると、何度かは再現されると思います…
932 :
名無しさん@そうだ選挙にいこう :2012/11/08(木) 17:12:22.33
【1 OSの種類 .】 Windows XP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 シート2に商品名一覧があり、シート1にはシート2で名前の定義で登録したものを入力の規則でリストを選択するようになっています。 シート2で1つの商品を選択し、名前の定義で登録し、それをシート1で選択できるのですが、 シート2で列や行を違うものを選択し、名前の定義で登録したものを、同じ様にシート1で入力規則でリストにしようと思うのですが、 どうしてもここで≪リストの元の値は、区切り文字で区切られたリストか、または単一の行または列の参照でなければなりません。≫となってしまいます。 ちなみに名前の定義で選択した参照範囲は =Sheet2!$A$53,Sheet2!$C$58 となっています。 名前はセット4という名前で、入力規則ではリストを選択し元の値には =セット4 と入力しています。 初心者でうまく説明できずに申し訳ないのですが、お教え下さい。
>>932 「単一の行または列の参照でなければなりません」って事だから、
「=Sheet2!$A$53,Sheet2!$C$58」だと、複数の行かつ複数の列だからエラーになります
「=Sheet2!$A$53:$A$54」みたいに定義しましょう
934 :
名無しさん@そうだ選挙にいこう :2012/11/08(木) 17:40:41.12
>>933 早々の回答ありがとうございます。
ということは、必ず名前の定義で選択するものは上下もしくは左右に続いているものしか選択しないといけないのですね。
セットごとにまずは1列にまとめることから始めないとだめなようですね。
【1 OSの種類 .】 Windows7 【2 Excelのバージョン 】 Excel97 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 どうしても帳票デザイン上必要で、縦の幅を半分の高さにして、2行ずつをセル統合して表を作成しているのですが、 データ>入力規則でプルダウンを作ると、どうしてもプルダウンのボタン[▼]が1行の高さに合わせて小さくなってしまいます。 提出する帳票の規則上、どうしても半分の高さで段違いにする必要があるのでそのフォーマットを変えずに、 プルダウンのボタンを通常サイズにする方法はないでしょうか?
>>936 試してみたのですが、コンボボックスの位置が微妙に帳票からずれたり、
コンボボックスは高さが中途半端で、行から少しはみ出してしまって
びっしり15行(セルにして30行分)コンボボックスで埋めるには問題があり、
印刷もおかしくなるので、ちょっと・・・
>>937 Altを押しながらサイズ変更ハンドルをドラッグ
【1 OSの種類 .】 Windows7 【2 Excelのバージョン 】 Excel2010 主に使うフォントは、MSゴシック、MS Pゴシック、MS明朝の3つですが、 ホームタブのフォントのプルダウンをクリックすると100種類くらいの フォントが出てきて、これらを探すのが大変です。 なにか良い方法がありますか?
>>940 プルダウンでフォントの一覧が出たところで素早く「ms」とタイプすると、その近くへ一気に飛ぶ
942 :
名無しさん@そうだ選挙にいこう :2012/11/10(土) 09:11:36.99
2007 でvistaです。 H24.11.10ってありましてセル内の数字だけを取るにはどうすればいいでしょうか? 241110ってなればいいのですが。MID関数でやったのですがちょっと出来なくて。
>>942 該当する日付がA1に入っていると仮定して、
平成だけで良ければ下のいずれか。
昭和以前の計算となると変なことになるから注意
(1) =(YEAR(A1)-1988)*10000+MONTH(A1)*100+DAY(A1)
(2) =((YEAR(A1)-1988)&MONTH(A1)&DAY(A1))*1
また、セルの見た目だけでいいのなら日付のセルを
「右クリック>セルの書式設定>表示形式」で
分類(C):ユーザー定義/種類(T):emmdd
で行けるかな。こっちは昭和以前にも対応。
こっちのほうがかんたん =TEXT(A1,"emmdd")
>>943 ありがとう。結構大変なこと考えてくれてすみません。
貼り付けてみたら数式として認識されないw
何でだろう。
>>944 ありがとう。セルの中で数字として扱われないけど
数字として認識するのはセルの書式なのかな。
【1 OSの種類 .】 Windowsvista,WindowsXP 【2 Excelのバージョン 】 Excel2007,Excel2003 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 変数に数値を入れてから変数に-1などの計算をすると 計算前に変数内で四捨五入してるみたいです 四捨五入させずに計算結果を出す方法を教えてもらえないでしょうか 変数の型をLong→Integerに変えてもダメでした Sub test() Dim a As Long a = 15.5 MsgBox a - 1 End Sub これだと15と表示されます
じゃあこれで =TEXT(A1,"emmdd")*1
>>946 Long も Integer も整数型だから小数は扱えない
小数が使いたければ Single とか Double で宣言する
あるいはいっそ Variant で宣言とかだな
>>945 別にそのままでも計算に使えるけど強制的に数値にしたい時は数式を
=TEXT(A1,"emmdd")*1
に変更してからセルの書式を数値にする(書式だけを変えてもダメ)
950 :
946 :2012/11/10(土) 11:22:47.79
>>948 出来ましたありがとうございます
今まで数値はLongかIntegerで覚えてたので小数もいけるものだと思っていました
エクセルファイルを Webページで保存した際のことなのですが、 コメントを付けた個所に、 [ 1 ] といった具合でコメントのある印?が表示されてしまいます。 この表示を消す、また表示位置を調整するなどはできるのでしょうか??
953 :
952 :2012/11/11(日) 15:43:02.70
テンプレ欄を入れるのを忘れてしまいました。 申し訳ありません。 【1 OSの種類 .】 Windows 7 【2 Excelのバージョン 】 Excel 2010 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 よろしくお願いいたします。
>>952 そいつぁExcelの仕様じゃなくてWebの仕様じゃあないかな?
コメント消してからウェブページで保存すればええやん
>>954 ,955
ありがとうございます。
しかしながら、Webページにてコメントを表示したいのです。
その場合に、この[1]といった表示が消せないものかと思いまして。
ある項目について、カーソルを重ねた時にコメントが浮き出るようにしたいのですが、
コメントを付けた項目には、常に[1]といった印が出てしまうのです。
仕様じゃないかな。 仕様がないけど仕様なのという感じでしょ。
審議中…(AA略
略されてしまった・・・・・ ・・・以下同文と一緒かな
VBA覚えようと思ったけど難しすぎる上に目的がわからんようになってきた
とりあえず while,for,if,selectだけ覚えて後は必要に応じて調べればいつか出来るようになる
VBAは構文覚えるのも大事だけど、オブジェクトの構造覚えないとな それがわかれば、その属性がプロパティで操作するのがメソッドと頭にすっと入ってくる
1つずつ辛抱強く試行錯誤すれば良い 意外とすんなり覚えられる。 当然と言えば当然だけど、1年も取り組んでいれば 職場で一番のエクセル使いになっていたりする。
覚え始めから半年ぐらいたつけどどうも注意力が散漫になってくる これはこれで別の病気かもしれんばいが・
1番目の平均=(100+345)/2 ってこと?
>>965 「\100-\345」がA1に入力されているとして
=AVERAGE(MID(A1,2,FIND("-",A1)-2),RIGHT(A1,LEN(A1)-FIND("-",A1)-1))
VBAも割りとオブジェクト指向だからな。 素人さんにはとっつきにくいと思う。
おまいら知ってる? =0.3-0.2-0.1-0と入力し、Enter押すと0にならないんだぜ
データテーブルの意味が分かりません。 シュミレーションする機能て??
さすがにその誤字は有名すぎて誰も突っ込んでくれないかと
>>965 マジレスすれば、
このデータから平均値の計算はできない。
>>965 なにかほかに条件が付いているはずなんだけど。
なにか忘れていない?
rand()あたりを使って、 まるでコイン投げて裏表を出すかのようにできないかな。
>>976 =IF(RAND()<0.5,"表","裏")
>>976 そんなあほな。
この場合、そんなことしなくても(しても)
期待値は範囲の真中にしかならないよ。
でもそれじゃおかしいし。
980 :
名無しさん@そうだ選挙にいこう :2012/11/14(水) 16:15:50.61
書式設定のユーザー定義だけで距離のm単位で表した数字をKm単位に変換表示出来るでしょうか。 例えば 1256 → 1.3 125600 → 125.6 ってな感じです。
うめ
983 :
名無しさん@そうだ選挙にいこう :2012/11/14(水) 19:21:29.59
できまる子
986 :
名無しさん@そうだ選挙にいこう :2012/11/14(水) 22:34:24.28
自殺願望のあった複乳さんを見かけないんですが 彼は元気でしょうか?
彼、ミスしたの?
988 :
980 :2012/11/15(木) 08:37:34.71
>>985 ありがとうございます。質問しました
1256 → 1.3
125600 → 125.6
は実現できました。
これで
29000 → 29.0
と表示出来ないでしょうか。##.#,の場合 29. と表示されます。
##.0,
990 :
988 :2012/11/15(木) 09:04:45.70
>>989 ありがとうございます。ネットで文言の意味とか調べたのですが
なかなか理解しづらくて助かりました。
あ
うめ
馬
海
有無
梅
1001 :
1001 :
Over 1000 Thread このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。