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

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

Excel総合相談所 85

1 :名無しさん@そうだ選挙にいこう:2009/07/24(金) 20:12:51
Excelに関する質問は、ここで!

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

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

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

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

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


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


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

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

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

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


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

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

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

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

5 :名無しさん@そうだ選挙にいこう:2009/07/24(金) 20:16:13
★ Excelで出来ないこと、仕様上の制限 (括弧内は代用法)

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

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

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

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


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

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

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


7 :名無しさん@そうだ選挙にいこう:2009/07/24(金) 20:22:29
msgbox ">>1乙"


8 :名無しさん@そうだ選挙にいこう:2009/07/24(金) 21:15:57
' こ、これは>>1乙じゃなくてただのポニーテールなんだからね!
' 勘違いしないでよね!

debug.print "(・ω・゛)乙"

9 :名無しさん@そうだ選挙にいこう:2009/07/24(金) 21:27:57
>>1


10 :名無しさん@そうだ選挙にいこう:2009/07/24(金) 21:38:43
前スレで流れたので改めておながします

【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 はい
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 セル 入力 マクロ 実行

ユーザーフォームにデータ入力→自動でセルにデータ入力→セルにデータが入ったらあるマクロを実行

が、したいです。セルにデータが入るところまでは出来ました。
誰か優しく教えて


11 :名無しさん@そうだ選挙にいこう:2009/07/24(金) 21:48:04
>>10
人の話聞いてねーのかよw
>>982
call マクロ名
で別のマクロ呼び出せます

後はvba call 等でぐぐれ

12 :10:2009/07/24(金) 22:22:41
そうしたのにならないんだもん・・

なんてね

call マクロ名

だけでいいの?

動かないんだよねぇ

13 :名無しさん@そうだ選挙にいこう:2009/07/24(金) 22:24:36
>>12
ttp://officetanaka.net/excel/vba/statement/Call.htm
標準モジュールにかかないとダメ。後privateにしてるとダメだと思うけどしてないと思うけどしてたらなおせ

14 :10:2009/07/24(金) 22:29:19
>>13
ありがとうございます。でもさっぱり意味がわかりません・・

もう少し具体的に教えていただけると非常に嬉しいのですが・・
文系女子大卒の私にはきついです・・

15 :名無しさん@そうだ選挙にいこう:2009/07/24(金) 22:31:08
>>14
Sub Sample()
Dim rc As Variant
Call myProcude 'myProcudeを表示します
MsgBox myFunction(123) '246を表示します
End Sub

Sub myProcude()
MsgBox "myProcude"
End Sub

Function myFunction(arg1 As Integer)
myFunction = arg1 * 2
End Function
を標準モジュールに入れる
F8でステップインで実行

これ以上の具体的は無いよ

16 :名無しさん@そうだ選挙にいこう:2009/07/24(金) 22:37:45
女相手になると優しいなw

17 :10:2009/07/24(金) 22:53:22
これってどこがおかしいですか?

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 1 Then
Adfilter2 '←マクロ名です
End If
End Sub

18 :名無しさん@そうだ選挙にいこう:2009/07/24(金) 22:54:02
>15

言わんとすることは分かるが>10にはイミフだろうな。

>10

モジュールとは何ぞやから説明するのメンドクサイ。
多少は自分で勉強汁。

あと、「セルにデータが入ったら」をコマンドボタン押したら
とかにしてとりあえず自分で組んでみな。

19 :名無しさん@そうだ選挙にいこう:2009/07/24(金) 22:55:35
>17

・・・

さて、どっから説明すればいいんだろ・・・
まぁ俺はパスする。

エロイ人よろしく

ノシ

20 :名無しさん@そうだ選挙にいこう:2009/07/24(金) 22:59:11
>>17
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 1 Then
call Adfilter2 '←マクロ名です
End If
End Sub


21 :10:2009/07/24(金) 23:01:54
コマンド押したら、は一応?出来ました

「セルにデータが入ったら」は
If Target.Column = 1 Then
なんですよね?
マクロ名宣言の書式がわかんないです

22 :名無しさん@そうだ選挙にいこう:2009/07/24(金) 23:16:23
>>21
If Target.Column = 1 Then
Targetの行が1(A列)だったら
の意味です

↓も参考にされてみては。
Sub a()
bbb = InputBox("あああ")
Selection = bbb
Call Adfilter2
End Sub


23 :名無しさん@そうだ選挙にいこう:2009/07/25(土) 00:00:42
Excel2003において例えばA1に網掛けしたら連動してA5からA10までも網掛けされる、
というのを設定したいのですが条件付き書式の記述の仕方がわかりません。
数値ならわかるのですがパターンの場合はどう書くのか…

誰でも編集しやすいようにVBAは避けたいのですが無理なのでしょうか?

24 :名無しさん@そうだ選挙にいこう:2009/07/25(土) 00:12:52
>>16
より詳しく回答を得るためには”女”になるのがこういう場でのテクだったり
するわけだが。w

25 :名無しさん@そうだ選挙にいこう:2009/07/25(土) 00:17:28
私フランス人金髪美少女だけど、A5からA10までの条件付書式で、数式の設定に「=$A$1=""」を入れればいいと思う

26 :名無しさん@そうだ選挙にいこう:2009/07/25(土) 01:16:46
>>23
質問にそのまま答えるなら「無理」

以下、シートの内容がわからないから適当だけれど
A1に「網掛けする」と誰か判断して網掛けするわけだから
判断→A1に網掛け ではなくて判断入力用のセルを用意しといて
そのセルに何か入力されたら という条件書式をA1とA5からA10に設定しておけばいいのに と思ったりする
想像で書いてるから的外れかもしれんけどな

できるだけ何がしたいか具体的に書く方が解決しやすい回答がくるはず
あやふやな内容の女子高生からの質問よりもな

27 :23:2009/07/25(土) 01:33:10
>>26
レスありがとうございます。やはり無理ですか。

シートの内容はチェック台帳なんですが、祝日の日に検印欄に網掛けすれば
他のチェック欄が全て網掛けされるようにすれば便利だなと思いまして。
職場は私を含めて素人が多いのでカレンダー参照などを使うと壊された時に大変かなと思いました。

他にトリガー仕込んで検印欄及びチェック欄に網掛けされるようにするのが確実みたいですね。

28 :名無しさん@そうだ選挙にいこう:2009/07/25(土) 01:51:36
カレンダー作るなら、条件付書式で曜日判定出来る
1.weekday関数で土日該当したら網掛け
2.祝日データと同じ日付だったら網掛け

行1に入れるカレンダーでA列に網掛けするなら、
A1の日付を条件付書式で反映すればいいとおもう

女子中学生だけども

29 :名無しさん@そうだ選挙にいこう:2009/07/25(土) 01:54:06
A1に決まった文字とか記号を入力したらA5からA10まで色が付く、
みたいなのなら簡単にできるんだが
色を判断するのはマクロを使わないと無理

使う人は別にマクロを知らなくても、
ボタンを貼り付けるとかショートカットを割り当ててやればいいんでないの?

30 :名無しさん@そうだ選挙にいこう:2009/07/25(土) 01:54:51
>>28
A1に”休日”と入れれば網がけする条件書式にでもすれば?

31 :名無しさん@そうだ選挙にいこう:2009/07/25(土) 02:04:46
>>27
「検印欄」ってことは印刷して使うんだろうからセルに何か入力してても見えなければ問題ないだろうし検印欄自体をトリガーにつかえるべ

使いやすくするならまず検印欄に入力規則を設定(入力する値をリストにして「稼働,休業」から選べるとかにしとく)
検印欄の書式をユーザー定義「;;;」にするなどして見えなくする
検印欄含む網掛けが必要なセルに検印欄が「休業」ならの条件書式設定

あたりでどぎゃんかならんとね

32 :30:2009/07/25(土) 02:05:23
アンカーミスった
>>27ね。

おちゃめな女子短大生っ!

33 :名無しさん@そうだ選挙にいこう:2009/07/25(土) 02:07:29
休日設定用に行を作って、行の幅を0にして保護とか

34 :23:2009/07/25(土) 02:20:07
みなさん色々とアドバイスありがとうございます。
様々な支店からのアドバイスをいただき自分の視野の狭さを実感しました。

いただいた例を試してみつつ使い勝手の良い方法を考えます。

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

35 :10:2009/07/25(土) 05:48:05
皆さん色々とありがとうございます
もうちょっと自分であがいてみます
やはり3流工業高校出身のおいらには結構荷が重いです・・

36 :10:2009/07/25(土) 06:19:31
まあ、そういうわけですよ。
またコード見せますんで。
今日例のやつ見ますね

独り言でスレ汚しすいません

37 :名無しさん@そうだ選挙にいこう:2009/07/25(土) 11:29:03
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2007
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 SUMIF関数

金額 数量
100  11
101  13
102  31
103  82 のような表から、
数量が10以上20未満の金額合計(100+101)は
どのように計算すれば良いのでしょうか?
よろしくお願いします。

38 :名無しさん@そうだ選挙にいこう:2009/07/25(土) 11:35:04
SUMIFのヘルプ読めばわかるだろうに

39 :名無しさん@そうだ選挙にいこう:2009/07/25(土) 11:54:45
数量が10以上20未満の指定方法がわかりません。
AND(">10","<=20")では集計できないのですが
どう指定すれば良いのでしょうか?

40 :名無しさん@そうだ選挙にいこう:2009/07/25(土) 12:30:56
20未満から10未満を引く

41 :37:2009/07/25(土) 12:52:01
>>40

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

42 :名無しさん@そうだ選挙にいこう:2009/07/25(土) 21:24:09
2007なら…

43 :名無しさん@そうだ選挙にいこう:2009/07/25(土) 22:08:50
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 excel タイムテーブル

某チャットシステムの運営の新人社員をしております。
ある人が、誰と何時から何時までチャットしていて、何時にチャットすることが多いのかを、エクセルで自動計算しタイムテーブルを作ってくれるエクセルのやり方が知りたいのです。

既に存在する管理用データは

Aさんチャット時間情報
開始時間     終了時間    相手の名前
2009/7/25 19:45 2009/7/25 19:46 田中太郎
2009/7/25 19:13 2009/7/25 19:13 鈴木一郎


のような形になってます。

このデータを利用して、
時間    10:00〜11:00〜12:00〜13:00〜14:00〜15:00〜
チャット数  5回   6回  2回   7回  28回  1回
のようなタイムテーブルを簡単に作成して、「あ、あさんは14:00台にいつもチャットしてるんだな!」
というのが分かるエクセルデータを作りたい・作り方を知りたいのです。

説明下手で申し訳ありませんが、何卒宜しくお願いします。

44 :名無しさん@そうだ選挙にいこう:2009/07/25(土) 22:28:43
>>43
ピボットテーブル使いなはれ

45 :名無しさん@そうだ選挙にいこう:2009/07/25(土) 22:28:47
>>43
下のチャット数のはチャット相手は特定しない単純回数ですか?
それとも特定の相手とのチャット回数ですか?

46 :名無しさん@そうだ選挙にいこう:2009/07/25(土) 23:06:09
>>43
このスレの住人を利用して楽して管理しようとしているウェブ管理者でつか?

47 :名無しさん@そうだ選挙にいこう:2009/07/25(土) 23:45:24
>>43
hour関数で時間だけ取り出す。
後はピボットでも、sumifでも

48 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 00:18:39
某一部上場企業の情シスの新人社員をしております。
ある人が、誰と何時から何時まで社内電話をしていて、
何時に社内電話することが多いのかを、エクセルで自動計算
しタイムテーブルを作ってくれるエクセルのやり方が知りたいのです。

とかだったら回答くれるかな w

49 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 00:33:17
>>48
時間は終了-開始
回数はcountif関数
順位はRANK関数
あとだぶりゅーはつけないほうがいいと思う

50 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 04:37:12
>>48
そういうシステムはその通話システム自体に備わっていると思うが。

51 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 09:11:46
> 某一部上場企業の情シスの新人社員をしております。

システムくらい買えよw

52 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 11:09:37
>>50
時間の記録はあっても集計機能なんてないと思うけどなぁ


53 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 11:59:25
悪党です、違反申告協力を
http://pc12.2ch.net/test/read.cgi/yahoo/1247937350/8

54 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 13:28:31
よろしくお願いしますm(__)m

Excelで店舗の営業日報を作れるデータを作成しました。
他人がそのデータを使うワケなのですが、

データに打ち込んで、上書き保存などはできるが、
データそのものを複製やコピーする事を防止する事は可能ですか?

また、暗証番号機能などで、その複製のロックを管理する事は可能でしょうか?
あるとすればどのような手段でデータをその人に預ければよいのでしょうか。

わかりずらいかも知れませんが
よろしくお願いしますm(__)m

55 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 13:36:48
>>54
無理です

一応考え付くことといえばpcの外部デバイス(フロッピーやCDドライブ)を全て無効にし、
そのPC自体を厳重に管理するしかないでしょう
当然、ネットやLANにつなぐのも×です

56 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 14:33:55
>>55
やはりそうですか。
解答ありがとうございましたm(__)m

57 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 14:59:19
>>54
複製のロックはできないが読み取りパスワード設定するだけじゃだめなん?

58 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 15:11:42
流出を気にするなら最低限各データをファイルに入れないこと。毎日ファイルを送らせる。記入できる以上そのデータは記入者によって流出可能だから、それ以外の他人に取られる可能性を低減させるために何がいいかを考えることだな。
メールの誤送信も考慮し最低限ファイルにパスワード設定しておく。

59 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 15:12:43
>>58
各データ→過去データ


60 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 16:09:50
177 :デフォルトの名無しさん :2009/07/26(日) 13:48:35
よろしくお願いしますm(__)m

Excelで店舗の営業日報を作れるデータを作成しました。
他人がそのデータを使うワケなのですが、

データに打ち込んで、上書き保存などはできるが、
データそのものを複製やコピーする事を防止する事は可能ですか?

また、暗証番号機能などで、その複製のロックを管理する事は可能でしょうか?
あるとすればどのような手段でデータをその人に預ければよいのでしょうか。

わかりずらいかも知れませんが
よろしくお願いしますm(__)m


61 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 16:58:49
Excel2007で
A列に次のように繰り返し入力したいのですがどのようにすればよいでしょうか
規則は001 002 .....500くらいまでを予定しています
作業列は使えます

KEY [NUM0]
KEY [NUM0]
KEY [NUM1]
KEY [RET]
KEY [NUM0]
KEY [NUM0]
KEY [NUM2]
KEY [RET]


62 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 17:08:33
>>61
ソートをうまく使えばできる。


63 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 17:12:02
コピペで行列を入れ替えるをうまく使えばいけるかな。。。

64 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 17:15:52
>>62
がんばってみる。。

65 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 17:16:34
挫折w

66 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 17:18:16
>>63
どれに対する回答なの?

67 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 17:28:51
全て置換を使い分けてやってみる

68 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 17:30:34
>>64
最初に4n(n=0..499)行目のデータばかり連続して入力する。
この時、第一作業列には1から500までの連番を入力し、第二作業列には1を入力しておく。
次に4n+1(n=0..499)行目のデータばかり連続して入力する。
この時、第一作業列には1から500までの連番を入力し、第二作業列には2を入力しておく。
次に4n+2(n=0..499)行目のデータばかり連続して入力する。
この時、第一作業列には1から500までの連番を入力し、第二作業列には3を入力しておく。
次に4n+3(n=0..499)行目のデータばかり連続して入力する。
この時、第一作業列には1から500までの連番を入力し、第二作業列には4を入力しておく。

このデータを適当にソートしたらいい。

69 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 17:32:46
>>61
A1="KEY ["&IF(MOD(ROW(),4)=0,"RET","NUM")&CHOOSE(MOD(ROW(),4)+1,"",RIGHT(INT((ROW()+3)/4/100),1),RIGHT(INT((ROW()+3)/4/10),1),RIGHT(INT((ROW()+3)/4/1),1))&"]"
下にオートフイル
こういうのはVBAでやるほうがいいんだけどねぇ

70 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 17:35:31
すげぇw

71 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 17:45:11
>68
理解するのに30分はかかるので待ってください(*´Д`)数学の天才か・・

>>69
出来ました・・・・あなたが神・・・
ち・・ちなみに関数が複雑でよくわからないのですが
KEY[RET]の後にもう一行

TEST

と入れたい場合はどのように挿入すればよいのでしょうか

72 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 17:46:58
A1:B3 に次を入力 1500行オートフィル
KEY [NUM0]   1
KEY [NUM0]   2
KEY [RET]     3
A1501:B1502 に次を入力 500行オートフィル
KEY [NUM1]   2.5
KEY [NUM2]   5.5
ソート

73 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 17:48:17
A1:B3 に次を入力 1500行オートフィル
KEY [NUM0]   1
KEY [NUM0]   2
KEY [RET]     3
A1501:B1502 に次を入力 500行オートフィル
KEY [NUM1]   2.5
KEY [NUM2]   5.5
ソート

74 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 17:49:48
ごめん、リロードと書き込み間違えた orz

75 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 17:50:55
>>71
>>68は決して難しくない。
ソートを利用する方法を理解しておいた方が条件が増えた場合にも対応しやすいぞ。


76 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 17:52:34
>>73
これはわかりやすい

77 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 18:02:04
>>69のようなROW()とMODを組み合わせて関数作る手法はあまり感心しない。
少し条件変わるだけで大手術になる。
VBAでやるほうがいいとも思わない。


78 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 18:03:47
>>71
="KEY ["&IF(MOD(ROW()+1,5)=0,"RET",IF(MOD(ROW(),5)=0,"TEST","NUM"))
&CHOOSE(MOD(ROW(),5)+1,"",RIGHT(INT((ROW()+3)/5/100),1),RIGHT(INT((ROW()+3)/5/10),1),RIGHT(INT((ROW()+3)/5/1),1),"")&"]"
死ね

79 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 18:07:07
>>72
やってみたのですが

KEY [NUM0] 31
KEY [NUM0] 32
KEY [NUM11] 32.5


みたいになってしまうのですがやり方が間違っていますか?

80 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 18:10:38
>>78
これは大変だったでしょう
関数だと条件が増えたときにきついよね

81 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 18:19:16
>79
KEY [NUM0] 31
KEY [NUM1] 32
KEY [NUM1] 32.5

ああ、こうしたい訳か、誤解してた。

82 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 18:25:30
>>61
>>69はKEY [NUM9] 以降、
KEY [RET]
KEY [NUM0]
KEY [NUM1]
KEY [NUM0]
KEY [RET]
KEY [NUM0]
KEY [NUM1]
KEY [NUM1]
ってなるけど問題無い?

83 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 18:31:10
ROW COLUMNを駆使するやつ。
INDEX MATCHをやたらすすめてくるやつ。
たかが連番うったり集計するのにVBA使うやつ。

こいつらはネジが一本足りない。

84 :>>61:2009/07/26(日) 18:56:11
>>81
おっしゃる通りです。

>>82
間違いありません
それを望んでいました。
最初の質問で書き方が悪かったですね;;
ちょっと行が増えていますが途中の部分 正しくはこうですね

KEY [NUM0]
KEY [NUM0]
KEY [NUM9]
KEY [RET]
TEST1
TEST2
TEST3
KEY [NUM0]
KEY [NUM1]
KEY [NUM0]
KEY [RET]
TEST1
TEST2
TEST3


7行だから4n+6まで作ればいいのかな(´・ω・`)。。

85 :>>61:2009/07/26(日) 19:31:16
みなさんうまくできました
本当にありがとうございました(´・ω・`)

ソートキー生成のテクニックは勉強して覚えるようにします(`・ω・´)ゞビシッ!!

86 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 19:33:46
>>85
TEST1
TEST2
TEST3
を追加するのはもういいの?

87 :>>61:2009/07/26(日) 19:55:35
>>86
し・・・しりたいです(´・ω・`)



88 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 20:17:02
>>87
=IF(OR(MOD(ROW(),7)=5,MOD(ROW(),7)=6,MOD(ROW(),7)=0),"TEST","KEY ["&IF(MOD(ROW(),7)=4,"RET","NUM")
&CHOOSE(MOD(ROW(),7)+1,"",RIGHT(INT((ROW()+3)/7/100),1),RIGHT(INT((ROW()+3)/7/10),1),RIGHT(INT((ROW()+3)/7/1),1),"")&"]")

89 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 20:30:23
今見たばかりだが>>61を関数でやるにしても、3行目だけを関数にするだけで十分だろ?
KEI[NUM0]
KEI[NUM0]
="KEY[NUM"&INT(ROW()/4+1)&"]"
KEY[RET]
としてからA5:A2000に1を入力して、A1:A4を選択して右下のフィルハンドルをダブルクリック。
あとはコピー、形式を選択して貼り付け、値だな。

VBAでも一分だな。
真っ先に浮かんだのは俺もソートだけどな。

>>83
君がもし馬鹿の一つ覚えでVLOOKUPしか使ってないとしたら、ネジが3本ぐらい足りないよ。

90 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 20:34:21
>>89
INDEX+MATCHは何の役に立つの?

91 :89:2009/07/26(日) 20:36:43
なんか質問をよく読んでなかったかな?
なんか数式の結果と違うから俺の勘違いみたいだ。
上は忘れてくれ。
最後の書き込みは本当のことだ。

92 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 20:38:22
>>90
お前はVLOOKUPだけ使ってりゃいいんだよ。
背伸びせずに身の丈にあったことしてなさい。

93 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 20:38:52
>>91
わかった。上は忘れる。
で、INDEX+MATCHは何の役に立つの?

94 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 20:41:04
>>92
いつもそんなこと言って。
INDEX+MATCHの何がいいのか全然説明がない。

95 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 20:41:51
>>90
VLOOKUPもどきでそのままではVLOOKUP出来ないやつとかあるな。

96 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 20:56:44
INDEX+MATCHを使うと

できること1.VLOOKUPのようなものを作ることができる。
→そんなものは不要。VLOOKUPがあるから。

できること2.一覧表をタテヨコに検索できる。
→そんなものは不要。データは縦に並べるべし。

できること3.検索のキーをA列以外にも設定できる。
→そんなものは不要。キーを一番左に動かせばよい。



結局、いらない方向の柔軟性なんだよね。


97 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 20:58:54
キー列もデータ列も数式で算出される可変値の場合はINDEX+MATCHを使わざるをえないけどな

98 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 21:01:08
>>97
キーを可変にするだと?
ザンシン!

99 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 21:07:44
ひとつ勉強になったね

100 :>>61:2009/07/26(日) 21:09:23
>>88
すごいおー(*´Д`)/


今日頂いたの眺めながら勉強します(`・ω・´)ゞビシッ!


101 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 21:09:29
>>99
バカにされてるんだよ。

102 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 21:12:27
>>97
ところでキーを可変にすることでどんな処理が可能になるの?
その処理はキーが不変では実現できないの?

103 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 21:19:14
>>90は前からいる基地外だからみなさんスルーで行きましょう。

104 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 21:24:09
INDEX+MATCHなんてつかったことないな
つかわなくてもなんの不自由もないし

105 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 21:30:43
INDEX+MATCHが必要になるのはキーの値が可変である場合だけということでよろしいか?


106 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 21:42:15
>>101
彼がバカにしてるつもりなのは解ってる
ついでにバカにできるほどの頭が無いこともね
だからこその>>99

107 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 21:45:17
>>106
君に頭があるのならINDEX+MATCHの優位性が納得できるように説明してみたら?

108 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 21:46:01
>>107
キーが可変ということがどんなに不思議なことかわかってる?

109 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 21:47:08
間違えた。

>>106
キーが可変ということがどんなに不思議なことかわかってる?

110 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 21:54:01
横列を15個くらい使ったので印刷するとひとりでに2ページになっちゃうですが、
どのページにも左端にA列を印刷したい時はどうすればいいですか?



111 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 21:55:43
データのキーが可変というのは良くないが
検索のキーとなるデータの位置が可変というのは
何ら不思議でもおかしくも無いよ

データ構成ではなく数式の話をしてるんだから
キーというのは式の上でのキーだってことをお忘れなくね

112 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 21:57:42
>>111
はい。意味不明。書き直し。

113 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 22:01:00
>110
下記のページを参考にしてください。
http://www.eurus.dti.ne.jp/~yoneyama/Excel/insatu.htm

114 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 22:01:28
別に君に理解させるのは俺の仕事じゃないから
理解できないなら理解できないままでいいよ

115 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 22:02:32
>>114
哀れ。

116 :113:2009/07/26(日) 22:06:28
>110  補足説明

>113で紹介したページの「タイトル行を各ページに印刷するには」は>110の例とは異なり
行数が多くて複数ページになるときのタイトル行(4行目部分)を指定するものです。

列が多くて複数ページになるときは、「列のタイトル」に(>110ならば)$A:$Aを指定します。

117 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 22:37:36
結論:INDEX+MATCHは柔軟な処理が可能だが、その柔軟性は不要である。

INDEX+MATCHを使うと

できること1.VLOOKUPのようなものを作ることができる。
→そんなものは不要。VLOOKUPがあるから。

できること2.一覧表をタテヨコに検索できる。
→そんなものは不要。データは縦に並べるべし。

できること3.検索のキーをA列以外にも設定できる。
→そんなものは不要。キーを一番左に動かせばよい。

できること4.数式で算出される可変値をキーにすることができる。
→キーを可変値だと?論外。


118 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 22:51:48
>数式で算出される可変値をキーにすることができる
VLOOKUPでも可能

119 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 22:52:58
おまいら馬鹿にかまうな。
教えるだけ無駄だから。

120 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 22:54:23
>>117
1は逆に言うとmatchindexで代用可能、だな
2はHLOOKUP
3はVLOOKUPの仕様上ダメなとこだと思う。
4.はvlookupでもできるんじゃないの?

俺は好きでvlookup使ってるな
matchindexは単純に数式が長くなるから使わない
もし3の状態が来た時は使うかもしれないけど

121 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 23:04:03
質問です。Excel2003です。
シート1に、

A B C
2009/1/1 0:00 2.3
2009/1/1 0:10 3.4


のように10分ごとのデータが入ってます。(1ヶ月分ぐらい)
このシートの日付は、全て値が入力されています。また、B列の時刻は、時刻のみが入力されていて、これも全て値で入ってます。

シート2には、
A B
2009/1/1 0:00 19.2
2009/1/1 1:00 20.4


のように、1時間ごとのデータが入ってます。(1ヶ月分ぐらい)
こちらの時刻は、A1の2009/1/1 0:00のみが値で、以下は=A1+1/24 のように数式で生成されています。

ここで、シート2のC列に、シート1のC列の値をvlookup等で呼び出したいのですが、
単純に、作業列をシート1のA列に追加し、=B1+C1 として日付のシリアルを生成してそれを用いてvlookupすると、
シート2の数式で生成した値とは微妙に異なるらしく、上手く呼び出してくれません。
falseを指定するとエラーになり、trueを指定すると1つ前の値が呼び出されたりします。

このように、時刻を用いたvlookupを結構頻繁にやるのですが、上手くやる方法はないでしょうか。
ちなみに、値だったらよいのかと思い、上記のシート2の数式をやめて、
A1の値を下向きにオートフィルすると、途中で1秒ぐらいずれてしまいます。
ずれていなくても、やっぱりうまくvlookupできないことが多いです。

どなたかよろしくお願いいたします。

122 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 23:11:24
日付と時刻はExcel内部で小数で保持されてる関係上、そういう使い方は
端数の誤差でうまくいかない。
なのでキーを文字列にするといい
1月1日1時なら2009010101てぐあい

123 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 23:19:35
>>121
>>122と同じ意見で、式は=year(a1)&month(a1)&day(a1)&hour(b1)&minute(b1)
小数誤差っていうんだけどこれを防ぐには整数以上にするしかない

後は、=round(B1+C1,5)のような感じで、シート1とシート2に作業列を作って
両方とも大きい数字にするとかかな。かなりオススメできないけど

124 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 23:21:32
>>113
ありがとうございました。
次は、A列だけじゃなく、A列とB列の二つを各ページに印刷する術を調べてみたいと思います。



125 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 23:23:39
>>124
タイトル行を各ページに印刷するには
で列のタイトルってとこに「A:B」と入れればok

126 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 23:25:24
何か日本語がおかしかった
>>124
ttp://www.eurus.dti.ne.jp/~yoneyama/Excel/insatu.htm#taitoru
で行のタイトルには何もいれずに列のタイトルってとこに「A:B」と入れればok

127 :113,116:2009/07/26(日) 23:27:27
>124
なぜ $4:$4 や $A:$A のように ":" を使ってあるのかを考えてみましょう。

128 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 23:32:36
>>97
INDEX+MATCH使う理由無くなったな。
今まで他人がVLOOKUP使ってるの見て優越感に浸ってたのかもしれないが、
それは勘違いだったんだ。わかったかな?

129 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 23:34:34
>>127
なんで質問が続いても無いのにコテ付けてるの?
自己主張はウザいだけだよ

130 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 23:36:01
>>129
うぜえ。
お前が消えろ。

131 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 23:38:21
>>129みたいなやつがいてうざいから固定ハンドルつけるのはだいぶ前にやめた。
回答者みんながハンドルつけてればそれぞれの個性がわかって便利なんだが。


132 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 23:39:08
>>128
キーの左にある場合にわざわざシートごと作るなんて事をしなくて済むわけだけど
lookupでもいいけどね

133 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 23:41:17
PDFで取り込んだ画像をEXCELに貼り付け、
オリジナルと同じ大きさでEXCELから印刷したいのでですが、
上下左右の余白を0にしても、小さく印刷されてしまいます。
どうしたら良いでしょうか。


134 :名無しさん@そうだ選挙にいこう:2009/07/26(日) 23:45:53
>>133
仕様です
プリンタドライバの設定を変えて左上にずらせば全面に印刷されるかもしれませんが
他の文書も全てずれてしまいます
諦めたほうがいいと思います

135 :133:2009/07/26(日) 23:53:05
ありがとうございました。
やはり無理なんですね。

客先指定のFAX用紙があり(コピーして使う)、
記入して返信しないといけないのですが、
これだと手書きで面倒なので、
PDFで取り込み記入欄だけEXCELで入力して印刷しよと思ったのですが。


136 :121:2009/07/26(日) 23:59:36
>>122
>>123
やっぱりそのままでは無理そうですね。
200901010000等に変換してlookupさせることにします。
早いレスありがとうございました。

137 :名無しさん@そうだ選挙にいこう:2009/07/27(月) 00:01:53
>>131
俺はどっちでもいい派だが、スレ自体はかなりキモくなると思うぞ


138 :名無しさん@そうだ選挙にいこう:2009/07/27(月) 00:03:40
>>135
Excelに貼るときに余白をトリミングしたらいいんじゃないの?
多分余白の分だけ小さくなっちゃうんだと思うけど。

139 :名無しさん@そうだ選挙にいこう:2009/07/27(月) 00:06:56
>>137
もともと大学でNetNews使ってたからその時は実名で議論するのが当たり前だった。
ここはどうも空気が違うな。

140 :名無しさん@そうだ選挙にいこう:2009/07/27(月) 00:11:32
>>139
そもそも2ちゃんは匿名が売りだろw

141 :名無しさん@そうだ選挙にいこう:2009/07/27(月) 00:13:58
INDEX +MACTHって、Lookup系の動作を理解するために
知っておいても損はないと思うが。
Vlookupっだって、中じゃINDEX +MACTH使っているはずだし。

142 :名無しさん@そうだ選挙にいこう:2009/07/27(月) 00:18:29
>>141
コンピュータ歴20年です。
今さらそんなのいいんです。


143 :名無しさん@そうだ選挙にいこう:2009/07/27(月) 00:23:36
どっちにしろ使ってから文句は言った方がいいよな

144 :名無しさん@そうだ選挙にいこう:2009/07/27(月) 00:27:22
他人がハンドル使ってることにたいしてとやかく言うような空気は気持ち悪い。
本当に気持ち悪い。

145 :名無しさん@そうだ選挙にいこう:2009/07/27(月) 00:55:18
アスペルガーのひとは匿名を嫌うらしい 本当にがまんできないらしい

146 :名無しさん@そうだ選挙にいこう:2009/07/27(月) 01:11:52
>>145
アスペルガーだろうが凡人だろうがなんでもいいよ。
ROW COLUMNを駆使するやつ。
INDEX MATCHをやたらすすめてくるやつ。
たかが連番うったり集計するのにVBA使うやつ。

こいつらはネジが一本足りない。

147 :名無しさん@そうだ選挙にいこう:2009/07/27(月) 01:17:44
出来ないよりずっとマシじゃん

148 :名無しさん@そうだ選挙にいこう:2009/07/27(月) 01:31:10
自分の方式が一番優れてると思ってる柔軟性のない脳味噌を持った人間にはなりたくない。

149 :名無しさん@そうだ選挙にいこう:2009/07/27(月) 07:14:40
>>61
もう見てないかな。
よく見たら昨日のTEST1TEST2TEST3じゃなくてTESTTESTTESTになってた。
修正したんでよかったら使ってくださー
=IF(OR(MOD(ROW(),7)=5,MOD(ROW(),7)=6,MOD(ROW(),7)=0),"TEST"&CHOOSE(MOD(ROW()-4,7),1,2,3),"KEY ["&IF(MOD(ROW(),7)=4,"RET","NUM")
&CHOOSE(MOD(ROW(),7)+1,"",RIGHT(INT((ROW()+3)/7/100),1),RIGHT(INT((ROW()+3)/7/10),1),RIGHT(INT((ROW()+3)/7/1),1),"")&"]")

150 :名無しさん@そうだ選挙にいこう:2009/07/27(月) 07:23:58
相変わらずVLOOKUP基地外が暴れてるなぁ。
>>148
まったくそのとおりだね。
一番すぐれていると思ってるのは完全に勘違いだもんなぁ。
VLOOKUPじゃどう頑張ってもすぐれた式は書けない場合がほとんどだもんな。

151 :名無しさん@そうだ選挙にいこう:2009/07/27(月) 07:33:22
すぐれた式ワロタ

152 :名無しさん@そうだ選挙にいこう:2009/07/27(月) 07:33:46
>>150
例えばどんな式が優れているの?

153 :名無しさん@そうだ選挙にいこう:2009/07/27(月) 07:44:15
>>150
どうせ教えたってこいつら聞く耳は持たないんだから書くだけ無駄だから書かなくていいよ。
声の大きい方が勝ちと思ってる哀れな奴らだ。

154 :名無しさん@そうだ選挙にいこう:2009/07/27(月) 07:57:52
>>153
どちらかと言えば、声がでかいのはINDEX+MATCH派だと思うな。毎度必要ないのにしゃしゃり出てくるし。
例えば私は、データは縦に並べるのが優れているというふうに「何が優れているのか」を公開している。
君たちも公開すればいいのに。

155 :名無しさん@そうだ選挙にいこう:2009/07/27(月) 07:59:30
>>153
そうするが逆にvlookup基地外に質問してみたいもんだよw


156 :名無しさん@そうだ選挙にいこう:2009/07/27(月) 08:36:53
INDEX+MATCH使うのは自由だけどVLOOKUPの回答に便乗して、しかもVLOOKUPはダメみたいな発言はやめてほしいな。


157 :名無しさん@そうだ選挙にいこう:2009/07/27(月) 08:48:31
前スレだったか?
何十列も取得するのにVLOOKUP使う回答見たな。
すげーこいつ天才だなと思ったよ。


158 :名無しさん@そうだ選挙にいこう:2009/07/27(月) 09:36:28
>>139
氏名どころか勤務先、部署、学生なら学校名と学部まで書いてたもんな。
おかげで自分の本名で検索すると20年前のfjのログがヒットするよ。

159 :名無しさん@そうだ選挙にいこう:2009/07/27(月) 10:26:02
相変わらずこのスレはw

160 :81:2009/07/27(月) 10:27:23
>>61 昨日は質問を読み間違えたんで亀だけど

A1  ="KEY [NUM" &INT((ROW()+6)/700)&"]"
A2  ="KEY [NUM" &MOD(INT((ROW()+5)/70),10)&"]"
A3  ="KEY [NUM" &MOD(INT(ROW()+4)/7,10)&"]"
A4  KEY [RET]
A5  TEST1
A6  TEST2
A7  TEST3

これをコピーして必要なだけ(3500行?)貼付け

>149 型を自動キャストしてくれるとはいえ
>RIGHT(INT(…  はさすがキモチ悪いな。
俺もネジが1本足らないらしいが、、

161 :名無しさん@そうだ選挙にいこう:2009/07/27(月) 17:44:19
>>157
目的が果たせるならいいと思うな。
やりたいことを素直にモデリングしたらそうなったんだろう。むしろこんなありそうなモデルを最適化できないExcelが頼りない。

とはいえ、計算量もたかだか列数に比例する程度。それほど気にならないね。


162 :名無しさん@そうだ選挙にいこう:2009/07/27(月) 18:34:52
>>161
ありそうなモデルを最適化なんて作業列にMATCHとINDEXで簡単じゃん。
まぁExcel2007ならVLOOKUPでも検索を1回で済ます方法はあるけどね。
A列を検索して、C列B列,D列G列,F列の順に取得するなら
横に5セルを選択して=VLOOKUP(検査値A$1:F$1000,{3,2,4,6,5},FALSE)の配列数式だ。
Excel2002だと式を数千行入力すると動作が不安定になり使えなかったが、2007は大丈夫みたいだ。
ただA列以外をいじってもA列を検索するから、作業列にMATCHとINDEXに比べりゃかなり劣るな。

163 :名無しさん@そうだ選挙にいこう:2009/07/27(月) 18:44:50
>>162
それじゃモデルが汚れるんだよ。
わずかな最適化のためにモデルを変更すべきじゃない。

与えたモデルをソフトウェアが最適化すべきだとは思わないか?
ExcelでINDEXだMATCHだと大騒ぎしているようでは、そこまで考えたことないか。

164 :名無しさん@そうだ選挙にいこう:2009/07/27(月) 18:47:19
馬鹿には何言っても通じねーナ。
初心者は作業列を嫌うから仕方がねーか。

165 :名無しさん@そうだ選挙にいこう:2009/07/27(月) 18:50:35
それにわずかの最適化ってなんだ?
1回の検索で済むものを数式の列数だけ検索するなんてアホだな。

166 :名無しさん@そうだ選挙にいこう:2009/07/27(月) 18:56:09
>>165
お説はごもっともだが、ここで正論吐いても通じないよ。
VLOOKUPに何も疑問を抱かんやつがほとんどだ。
>>163は理屈は分っていそうだがな。

167 :名無しさん@そうだ選挙にいこう:2009/07/27(月) 18:57:46
作業列って何?

168 :名無しさん@そうだ選挙にいこう:2009/07/27(月) 19:00:21
>>165
そこが発想の違うところだな。
現実的な時間で解が得られるなら冗長でもいいんだよ。
最適な検索方法の実装などやりたくないんだ。

それに、列数に比例する程度の計算量なんぞ大したことないだろう?

169 :名無しさん@そうだ選挙にいこう:2009/07/27(月) 19:12:06
たとえばコードの最適化がアルゴリズムの最適化となるわけではなし
保守に適したコードもあれば拡張に優れた記述もある
対照性を保つために冗長性を許容しなければならないこともある

ただ美しいからとか、最適化できるからといった理由で、安易な改変を行うべき

170 :名無しさん@そうだ選挙にいこう:2009/07/27(月) 19:14:35
>ただ美しいからとか、最適化できるからといった理由で、安易な改変を行うべき

肯定したかったのか?

171 :名無しさん@そうだ選挙にいこう:2009/07/27(月) 19:19:47
INDEX MATCHのような小手先のテクニック使ったところで、SQLの圧倒的な速さの前では無力。
つまらない五十歩百歩だよ。
そんなわずかなスピードアップのためにモデルを汚したくないな。

172 :名無しさん@そうだ選挙にいこう:2009/07/27(月) 19:30:04
ルンバだな。

173 :名無しさん@そうだ選挙にいこう:2009/07/27(月) 19:33:23
SQLが内部でどんなアルゴリズムでサーチしてるか知らなかったりしてなw

174 :名無しさん@そうだ選挙にいこう:2009/07/27(月) 19:40:05
>>173
若いというか幼いというべきか。
知らなくても使えるんだということに幸せを感じないのか?だとしたらなぜExcelなんか使ってるの?

175 :名無しさん@そうだ選挙にいこう:2009/07/27(月) 19:57:43
【OSの種類】 Windows Vista
【Excelのバージョン】 Excel 2007
【検索キーワード】 "Excel2007" 枠線 表示されない

Excel2007で枠線が表示されず、困っています。
検索で以下の方法がヒットし、確認いたしました。

1.表示タブの枠線・・・チェックが入っています。
2.Excelのオプション→詳細設定→次のシートで作業するときの詳細設定→枠線の色・・・自動(黒)になっています。
3.Excelのオプション→詳細設定→次のシートで作業するときの詳細設定→枠線を表示する・・・チェックが入っています。

この状況で枠線が表示されない場合、この他に何が原因と考えられるでしょうか。
どうすれば枠線は表示されるでしょうか。どうぞ教えてください。

176 :名無しさん@そうだ選挙にいこう:2009/07/27(月) 21:09:14
>>175
ぱっと思いつくのは
・セルの塗り潰しが白になってる
・改ページプレビューになってる
あたり?

177 :名無しさん@そうだ選挙にいこう:2009/07/27(月) 21:51:20
条件付き書式
背景に白い図形

178 :10:2009/07/27(月) 22:06:56

CriteriaRange:=Range("B1:B2"),
となっているコードを
CriteriaRange:=Range("B1:B列の最終行”)
とするのは
CriteriaRange:=Range("B1").End(xlDown).Row
でいいのでしょうか?
なんだかうまくいかなくて・・

文系女子大卒の私には(ry

179 :名無しさん@そうだ選挙にいこう:2009/07/27(月) 22:13:44
>>176-177
ありがとうございます!
あした職場で確認してみます。

今自宅でやってみたところ、「セルの塗りつぶし」、「条件付き書式」で枠線がなくなることが確認できました。
「改ページプレビュー」と「背景に白い図形」では、家のパソコンの環境では枠線は消えないようです。

180 :名無しさん@そうだ選挙にいこう:2009/07/27(月) 22:32:03
【1 OSの種類         .】 Windows XP
【2 Excelのバージョン   】 Excel 2003
【3 VBAが使えるか    .】 なんともいいがたい
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 マクロ 印刷 両面 別シート 等

どうにもこうにもVBAを組み上げていく出来ないので教えてください。
現在、個人情報の表を作成し、それを別シートでVlookUPを使って
拾い上げ、一枚の紙にして出す、という作業を行っています。
インターネットの解説サイト等を参考(パクリ)にさせて頂き、
呼び出したテキストボックスに「○番〜○番」と数字を入れれば、
その番号に対応した人のデータシートを連続印刷する
というところまではできました。Dimってやつでしょうか。

で、でして。

この紙、表紙もあるんです。個人個人の名前入りで。
なので、出来るならばデータシートと表紙で裏表印刷を一気にしたい。
同じシート内に表紙を「図のリンク貼り付け」でもってくればいける、
というのは分かっていますが、どうもそれは違うような気がしまして。

そこで質問です。
1:別のシートをまたいで裏表印刷をしつつ、番号順に連続印刷が可能かどうか
  (1表→1裏→2表→2裏→3表→3裏……といった感じ)
2:可能であれば、どういう構文を組めばよいか。

次のレスで連続印刷の構文を貼らせていただきます。
分かりにくい説明で申し訳ございませんが、よろしくおねがいします。

181 :名無しさん@そうだ選挙にいこう:2009/07/27(月) 22:36:18
Private Sub CommandButton1_Click()
Dim BAN As Long, 開始 As Long, 終了 As Long

Unload Me

開始 = CLng(Me.TextBox1)
終了 = CLng(Me.TextBox2)

For BAN = 開始 To 終了
[Y1] = BAN

ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True

Next

Selection.Select

End Sub

これに、「別シートで作った表紙」を裏表で入れ込んでいきたいのです。
いやはや、難しい。[Y1}というのはVlookUPで拾うための数字です。

182 :名無しさん@そうだ選挙にいこう:2009/07/27(月) 22:42:44
>>178
一般的に修正すれば
CriteriaRange:=Range(Range("B1"),Range("B1").End(xlDown))
うまくいくかは知らん
上の>>175みたくテンプレどおりの質問だと手探りながら回答しやすいが
テンプレ強制でないにしても質問の手を抜き過ぎのような

183 :名無しさん@そうだ選挙にいこう:2009/07/27(月) 22:57:56
>>181
プリンタの設定がからむから環境によるしいちがいには言えないけれど
今のコードだと一枚ずつ印刷してるから両面は難しいだろうし少しアルゴリズム見直し必要かも

たとえば印刷用のブックをつくってシートが表紙→中身の順番にならぶようにする
印刷設定は別途(使ってるパソコンのデフォルトを両面にしとけば不要)

184 :名無しさん@そうだ選挙にいこう:2009/07/27(月) 23:04:46
>>183
ありがとうございますありがとうございます。

印刷用のブックですか。それだとブック全体の印刷ということで
すっきりと構文が組めるかもしれませんね。
ただ、パソコンド素人の人も使うので出来うる限り簡略化して
ボタン1クリック、というふうにしたいのです。やっぱり、難しいのかなあ。

何れにせよ、回答ありがとうございました。

185 :名無しさん@そうだ選挙にいこう:2009/07/27(月) 23:12:39
>>184
いやいやボタンクリックで印刷用のブックに編集してから印刷するコードにしてはどうかという意味だったんだけど。
表紙の保存状態とかわからないから具体的なアドバイスはできないけれど

186 :名無しさん@そうだ選挙にいこう:2009/07/27(月) 23:16:23
ドラクエみたく一文字ずつ時間差で表示させるにはどうしたらいいすか?

187 :名無しさん@そうだ選挙にいこう:2009/07/27(月) 23:28:09
どこに?

188 :名無しさん@そうだ選挙にいこう:2009/07/27(月) 23:31:49
userformのtextboxに

189 :名無しさん@そうだ選挙にいこう:2009/07/27(月) 23:35:46
>186

 Application.Wait Now() + TimeValue("00:00:**")

190 :名無しさん@そうだ選挙にいこう:2009/07/27(月) 23:41:01
>>184
手掛かりないと難しそうだから
元のコードのfor nextのあたりを
dim 印刷用 as workbook,原本 as workbook
set 原本 =ActiveWorkBook
For BAN = 開始 To 終了
[Y1] = BAN
if BAN = 開始 then
ActiveSheet.Copy
set 印刷用=activeworkbook
else
ActiveSheet.Copy after:=印刷用.Sheets(印刷用.Sheets.Count)
End if
ActiveSheet.cells.value=ActiveSheet.cells.value
原本.activate
Next
あたりで表紙なしの印刷用のブックにならないか?

あとは表紙を挟む部分を足して最後にブック全体の印刷

191 :名無しさん@そうだ選挙にいこう:2009/07/28(火) 00:45:24
>>188
こんな感じ?

Option Explicit
Private Declare Sub Sleep Lib "kernel32" (ByVal ms As Long)

Private Sub CommandButton1_Click()
  Dim s As String
  Dim i As Integer
  s = "ゆうていみやおうきむこうほりいゆうじとりやまあきらぺぺぺぺぺ"
  For i = 1 To Len(s)
    TextBox1.Text = Left(s, i)
    Sleep (150)
    DoEvents
  Next
End Sub

192 :名無しさん@そうだ選挙にいこう:2009/07/28(火) 00:48:59
文字をちょっとずつ表示しながら別の動作も同時にやるにはどうしたらいいすか?

193 :名無しさん@そうだ選挙にいこう:2009/07/28(火) 00:57:17
やりたいことによって方法が変わる

194 :名無しさん@そうだ選挙にいこう:2009/07/28(火) 00:57:53
それをVBAでやるのが間違いだというのが正しい答えだが
あえて方法を上げるとすればOnTime

195 :名無しさん@そうだ選挙にいこう:2009/07/28(火) 01:06:58
OnTimeだと1秒単位しか指定できないから、表示スピードがめちゃめちゃ遅くなってしまう。
定番はSetTimer API

196 :名無しさん@そうだ選挙にいこう:2009/07/28(火) 01:26:18
>>160
自動キャスト前提なんだよ
C言語ぐらい使える上での話し
むしろ「気持ち悪い」を理由に非効率的なコードを書くならそちらのほうが問題
だがそちらの方が早く掛けるならそれもまた良し哉

あとそもそも>>157ってどんなvlookup使ってたのよ
●買ってないから直近のスレは探し出せないぜ


197 :名無しさん@そうだ選挙にいこう:2009/07/28(火) 01:33:07
なんかAPI関数ってのを使うといいっぽいですね
ありがとうございました

198 :名無しさん@そうだ選挙にいこう:2009/07/28(火) 07:14:51
みなさんが使ってるエクセルのバージョンってどれですか?
また、mac用にもエクセルってありますか?

199 :名無しさん@そうだ選挙にいこう:2009/07/28(火) 09:36:48
>>198
ExcelはもともとMac用のソフトでした。あとからWindows用のが出てきました。
今でもMac用はあります。

使ってるバージョンは気にしてもしょうがないでしょう。
好みだけでなく、人それぞれ事情がありますから。

200 :名無しさん@そうだ選挙にいこう:2009/07/28(火) 09:38:20
>>196
つ 専ブラ

201 :名無しさん@そうだ選挙にいこう:2009/07/28(火) 10:36:40
>>200
専ブラでも2chのID持っててログインしないと過去ログは読めないんじゃね?

>>196
式を想像で書けば=VLOOKUP(値,表,COLUMN(B1),FALSE)みたいなのを横に沢山じゃね?
知らない人は普通みんなそうするよね。
関数の中で一つ一つ検索してるなんて考えないから。

202 :名無しさん@そうだ選挙にいこう:2009/07/28(火) 11:22:27
●無しでも読めるけど?

ただ●無しでの取得はちょっと煩わしいし、
決して金持ちではないが月額換算300円程度の金も払えないほど貧乏じゃないし
スレ立てテンプレ貼りスクリプト使うにも必要だから、俺は●持ってるけどね

203 :名無しさん@そうだ選挙にいこう:2009/07/28(火) 11:39:17
>202
うゎ、かわいい〜

204 :10:2009/07/28(火) 12:13:29
【1 OSの種類         .】 Windows XP
【2 Excelのバージョン   】 Excel 2003
【3 VBAが使えるか    .】 なんともいいがたい
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 マクロ 実行 自動 抽出

昨晩は手を抜きすぎた質問で失礼いたしました。やりたいことの詳細は>>10も参照していただければ幸いです。

で、
今はユーザーフォームにデータを入力するとセルにデータ入力
→データが入力されたことをきっかけにマクロ発動、までは出来ました。
今度は入力されたデータを元に表内を検索する、というところで詰まっています。
コードは
Sub Adfilter2()
Range("A4:I14").AdvancedFilter _
Action:=xlFilterCopy, _
CriteriaRange:=Range(Range("B1"), Range("l1").End(xlDown)), _
CopyToRange:=Worksheets("実験").Range("A18"), _
Unique:=False
End Sub

ユーザーフォームからのデータがL列に入力されるようになっています。
で、その入力されたデータで表内を検索したい、と。
例えば合計が300以上とか。

今の状況は、マクロは発動するけど、L列のデータで検索がかからないです。
セルB1に検索する列を指定しなければいけないのですが、どうもその辺が怪しいとは思うのですが・・

よろしくお願いいたします。

205 :名無しさん@そうだ選挙にいこう:2009/07/28(火) 16:45:35
CriteriaRangeがおかしくないか?
試してないけど項目名の行が必要みたいだし項目数も多すぎるだろ

206 :名無しさん@そうだ選挙にいこう:2009/07/28(火) 16:55:11
■■■民主党勝ちすぎ注意報発令中■■■

民主党はマニフェストに比例区定数削減を明記した!

死票を多く生み出す小選挙区制に偏重することは
多数の民意を切り捨てることを意味する。
こんな政策を掲げる政党は、果たして本当に民主主義的だろうか?

民主党を牽制するために比例区は小政党へ投票しよう!


207 :名無しさん@そうだ選挙にいこう:2009/07/28(火) 18:39:48
民主塔が民主的でないのは自明だが、その主張はずれているぞと

208 :10:2009/07/28(火) 20:08:42
>>205
項目数が多いというのは?
adfilterは「何処を検索するか」「検索する条件は?」の2つを指定する必要があります
セルB1は「何処を検索するか」 Range("l1").End(xlDown)、つまりL列の最終行が「検索する条件」に当たります

の、つもりでコード組み立てたんだけど・・

識者の方おながします

209 :名無しさん@そうだ選挙にいこう:2009/07/28(火) 20:26:53
>>201
ch23ネット

210 :名無しさん@そうだ選挙にいこう:2009/07/28(火) 21:12:40
>>204
いろいろおかしそうではあるけれど
見た範囲で思うのはクライテリアがそんな場所にあるのがまず怪しい
そのコードは手作業でいえばツール→フィルタ→フィルタオプションのことだから
vbaじゃなくてExcelの方のヘルプ見て検索条件の設定が正しいか考えてみたら?

よくわからなければ自分にわかりやすそうな方法に変えるのも手
検索ならループさせて順番に見ていったりAutoFilter使ったりFindメソッドつかったり
ワークシート関数使ったりいろんなやり方があるわけだし

211 :名無しさん@そうだ選挙にいこう:2009/07/28(火) 22:01:43
>>208
B1〜L列の最終セルまでが検索条件範囲っておかしいだろ?
なんか検索条件範囲を勘違いしてそうだな。
フィルタオプションの設定のヘルプは読んでみた?

212 :名無しさん@そうだ選挙にいこう:2009/07/28(火) 22:09:49
>>202
貧乏じゃないけどクレカはなぁ
さんざん流出だのスパイウェアだの騒がれると使う気になれんのよね
webマネーだっけ?あれはよさげなんだけどね

213 :10:2009/07/28(火) 22:39:29
>>211
なるほど。ちょっと見直してみます

214 :名無しさん@そうだ選挙にいこう:2009/07/29(水) 00:33:45
教えてエロイ人

パスかけてるファイルを二人目が開いた時に表示される「使用者」が
一人目じゃ無くて二人目の名前だったりするのは超既出??

回避方法が分からん。。

215 :名無しさん@そうだ選挙にいこう:2009/07/29(水) 01:10:02
ふたりめが保存すればそうなるのは当然

216 :214:2009/07/29(水) 01:23:20
レスありがと
細かく書かなかったのは有名なのかと思って弱腰だったw
本人以外が保存している場合、ローカル上、サーバ上に関わらず
もうちょっと検証します

217 :名無しさん@そうだ選挙にいこう:2009/07/29(水) 07:15:22
>>190
突然新しいブックが出てきておっどろきました。
マクロって、本当に粗方できるものなんですね。
しかし、そこから先の構文を組む技量が自分にはないという情けなさ。

昨日色々考えまして、いやだった「表のリンク貼り付け」を
マクロに組み込み、実行したときだけ貼って、終わったら消す、
というものをやってみようと思いました。

今回は本当にありがとうございました。精進します。

218 :名無しさん@そうだ選挙にいこう:2009/07/29(水) 07:43:58
>>216
端末が複数あるなら、同一のブックを開かせるのは整合性が破壊される
クライアントファイルをそれぞれ用意して、データソースファイルにアクセスするDBS形式がオススメ
頻発に更新するなら、アクセスを利用したRDBMSがオススメ
ACCがなくてもエクセル上で制御構築できるリレーショナルなデータベース

219 :名無しさん@そうだ選挙にいこう:2009/07/29(水) 10:49:46
Excelでクロス集計をやりたいのですが過去ログとかみるとVBAが思いっきり叩かれてます。
本当にVBAは駄目なんでしょうか?

220 :名無しさん@そうだ選挙にいこう:2009/07/29(水) 11:10:21
>>175>>179でお世話になったものです。

職場のパソコンで確認したところ、
Excelのオプションで、枠線の色を自動ではなく黒にすると、
Sheet1の枠線が表示されますが、Sheet2,3は白いままです。

さらに、Excelを閉じて再び開くと、枠線は消えます。

ということで、Excelが「異常」のようなので
 1.Office診断プログラムで診断および修復する
 2.Windowsアップデート(手動で更新プログラムを確認)
 3.Excelのアンインストール→再インストール
の3つを、行ってみようと思います。

 a.それはやっても無駄じゃないの?
 b.上の方法ではなく、この方法がいいのでは?

というものがあれば、お知らせいただけましたら幸いです。
よろしくお願いいたします。

221 :名無しさん@そうだ選挙にいこう:2009/07/29(水) 11:12:24
>>219
正規化されたデータを1回クロス集計するだけならVBAの出番はありません。
それに付随する別の処理、例えば結果を整形して印刷したりメールで送ったり、
純粋な集計以外の処理まで全自動でやりたいような場合にVBAが必要になります。

ほかには、毎日決まった時間に集計したり、ファイル操作やデータベース接続を
したいような場合もVBAを使うことになります。

222 :名無しさん@そうだ選挙にいこう:2009/07/29(水) 12:01:55
>219

VBAを知らない、あるいは何でもVBAっていう一部の人が
叩いたり叩かれたりしてるだけ。

適材適所。VBAが駄目な訳ではない。

223 :名無しさん@そうだ選挙にいこう:2009/07/29(水) 14:54:36
>>222
なんでもピボットはいたみたいだが何でもVBAって人いたっけ?
ほとんどの人は適材適所でやってると思うが。
ピボットにしても制限がある以上VBAでやるしかないケースもあるわな。
試しにアイテム数の制限のないと思われる2007で100万行、50万アイテムで隣の列の合計を配列をクイックソートして合計したら
予想に反してピボットテーブルより速かったよ。
ただ一度ピボットを作っておいて、データ変更して更新ならピボットが少し速かった。
Dictionaryは予想通りお話にならなかったが。

224 :名無しさん@そうだ選挙にいこう:2009/07/29(水) 15:12:26
>>223
ピボットでできるのにVBAのコードを提示するやつならいたと思う
まあ質問者がVBAでの回答を要求したってのもあるが、
そもそも質問者がピボットを知らなかった可能性が高いのに
聞かれた通りにバカ正直に回答するのは、むしろ不親切だろと思った。

あとは、どっちが速いとかすぐ比較したがるベンチマーク厨。
手段と目的が逆転してる。

225 :名無しさん@そうだ選挙にいこう:2009/07/29(水) 16:43:12
速くするのに100倍コストがかかるならまだしも、たいしたコストがかからなくて速いのなら遅いよりはいい罠。
遅い手段しかとれない人には僻みもでてくるだろうけど。

226 :名無しさん@そうだ選挙にいこう:2009/07/29(水) 19:00:20
>>225
ピボットテーブルって結構速いでしょ。
そして実施コストは極端に小さい。秒単位で完成するからね。

227 :名無しさん@そうだ選挙にいこう:2009/07/29(水) 19:13:41
お前ら良くレス乞食の糞みたいなごしつもんに
変わり映えの無い答え書きこみ続けられるな
感心するわ

228 :名無しさん@そうだ選挙にいこう:2009/07/29(水) 19:22:34
>>221
Excelの利点を利用しないなら、最初からExcel使わないのも選択肢として考えてみてもいいんだよ。
VBAが必要になる時って結局Excelじゃ歯が立たないからプログラミングしようということでしょ。


229 :名無しさん@そうだ選挙にいこう:2009/07/29(水) 19:32:14
速さを追及するベンチマーク厨こそピボットテーブルを使えばいいのにな。
みんなだいたいVBA大好きになってしまう。
そんで、「ループの最中は表示をオフに」的などうでもいい回答。


230 :名無しさん@そうだ選挙にいこう:2009/07/29(水) 19:34:01
>>218
良いこと言ってると思うけど
よく分からん。勉強します。共有ファイルの使いかたを考えます

231 :名無しさん@そうだ選挙にいこう:2009/07/29(水) 19:52:46
はじめまして。お願いします。
【1 OSの種類         .】 Windows vista
【2 Excelのバージョン   】 Excel 2007
【3 VBAが使えるか    .】 使えません。。。
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 並べ替え アルファベット


教えてください。

並べ替えやオートフィルタで列を昇順に並べ替えたときに、
アルファベットでは、
  A 
  AH
  C 
  DJ
  E
と並びますが、これを、
  A
  C
  E
  AH
  DJ
という風に並べ替えたい場合、どのようにしたらよいのでしょうか。
Excelの列のような順番で並べたいのです。

ユーザー設定で「A、B、・・Z、AA(*A)、・・AZ(*Z)」を追加してみたり、
単純な方法で思いつく範囲で試してみましたが、
できませんでした(>_<)

よろしくお願いします。


232 :名無しさん@そうだ選挙にいこう:2009/07/29(水) 19:59:44
001 A
002 B
003 C

とか番号ふって、番号順に並べるようにしたら?

233 :名無しさん@そうだ選挙にいこう:2009/07/29(水) 20:19:15
正直、このスレの色々な厨のおかげでかなーり勉強になってるのは否めない
中でも一番すごいのは関数厨だな。どれだけ関数好きなんだよって思う
>>231
B1=LEN(A1)
AB列選択して、データ→並び替え
最優先されるキーがB列、2番目がA列にしてみてはどうでしょう

234 :名無しさん@そうだ選挙にいこう:2009/07/29(水) 20:19:31
>>231
隣の列にでもLENワークシート関数で文字数表示して、それを優先キーにして並べ変えればいいんじゃね?

235 :名無しさん@そうだ選挙にいこう:2009/07/29(水) 20:34:54
>>224
聞かれたとおりに回答するやつって、どっちかつうと関数厨に多いんだなぁ。
集計や抽出を関数で出来ますかとかの質問があると、待ってましたとばかりのクソ回答w

>>233
関数厨でも配列数式厨はアホだから真似せん方がいいぜ。
ここでは幸い回答は少ないけどな。

>>234
16秒負けたな。

236 :名無しさん@そうだ選挙にいこう:2009/07/29(水) 20:49:43
数式から算出される可変値をキーにするような連中だぞ。
関数厨は無視してオッケー。

237 :名無しさん@そうだ選挙にいこう:2009/07/29(水) 21:08:04
>>231
単純に1文字の次に2文字を持って来たいのとは違うような・・

右の文字の昇順で並び替えたいのなら、
B1に、=RIGHT(A1,1)と入れて下までコピーしてB列をキーにして並び替え

受け取り方が複数ある質問はして欲しくないよな



238 :名無しさん@そうだ選挙にいこう:2009/07/29(水) 21:09:29
>>220
同じファイルを別のパソコンのExcelで開いてみれば
アプリケーションが壊れてるかファイルが壊れてるか手掛かりになるのでは?
Excelに問題ありそうなら再インストールとかも無駄とは思わない

239 :名無しさん@そうだ選挙にいこう:2009/07/29(水) 21:10:21
>>237
>Excelの列のような順番で並べたいのです。

240 :名無しさん@そうだ選挙にいこう:2009/07/29(水) 21:13:59
>>228
それは正論なんだがな

>>230
ひとつのファイルを二人で開くと、両方に変更があった場合、後にした保存しか反映されない
データ保存用のファイルを用意(テキストでもなんでもいい)して、変更した瞬間だけ自動で更新するようにしておけば、リスクが少なくなる。
使う人も、開く時や保存するときに出るメッセージに右往左往しなくてすむ

241 :名無しさん@そうだ選挙にいこう:2009/07/29(水) 21:18:44




AA
AB


AAA
AAB

て形か?
文字列判定するか、アスキーコードに返還して並べ替える
Aは「65」、Bは「66」だから、複数文字列ABなら「6566」のようになる
数が多くなければ検索オプションでユーザーリスト指定する

242 :名無しさん@そうだ選挙にいこう:2009/07/29(水) 21:22:40
>>233-234でなにか不都合があるんだろうか?

243 :名無しさん@そうだ選挙にいこう:2009/07/29(水) 21:24:49
>>229
いくらなんでもベンチマーク厨は「ループの最中は表示をオフに」なんて言うわけないと思うが?

244 :名無しさん@そうだ選挙にいこう:2009/07/29(水) 21:25:03
>>241
そうか、その方がいいな
と思ったが関数でアスキーコードに変換されるのは先頭の一文字だけなんだよな
文字数が決まってるなら使えなくも無いが。関数名ってなんだっけ?

245 :名無しさん@そうだ選挙にいこう:2009/07/29(水) 21:30:55
ASC

246 :名無しさん@そうだ選挙にいこう:2009/07/29(水) 21:33:50
CODE
そっか、コード変換はワークシート上で使うなら現実的じゃないな
数桁なら端から文字列ぶんどればいいけど、そこまでややこしい式にする必要性ないし

247 :名無しさん@そうだ選挙にいこう:2009/07/29(水) 21:34:15
ASCは違うと思うぜ

248 :231:2009/07/29(水) 21:36:45
みなさん、どうもありがとうございました。
なんか・・変な質問しちゃってすみませんでした。
LEN関数を使ってやってみます!
助かりました、ありがとうございました。



249 :名無しさん@そうだ選挙にいこう:2009/07/29(水) 21:36:51
ああそうだCODEだ。これは本当に使いにくいんだよなぁ・・

250 :230:2009/07/29(水) 21:52:40
>>240
言われてることは分かります。
自分の会社も,共有ファイルでデータ管理していて面倒だなと思っていました。
複数人で更新できることが分かりました。一つ勉強します

251 :名無しさん@そうだ選挙にいこう:2009/07/29(水) 21:59:53
エクセルは一つのファイルを共有するより、個々がファイルを作ってそれを集計するようにしたほうがいいよ


252 :名無しさん@そうだ選挙にいこう:2009/07/29(水) 22:14:07
>>231
A1に
=CODE(LEFT(A1,1))*100+IF(LEN(A1)>1,CODE(MID(A1,2,1))*10,0)+IF(LEN(A1)>2,CODE(MID(A1,3,1)),0)

253 :252:2009/07/29(水) 22:35:10
すまそ、A列にデータが入ってるとして、B列に↑ね。

254 :名無しさん@そうだ選挙にいこう:2009/07/29(水) 23:05:03
>>252
お前は本当にアホだな

255 :名無しさん@そうだ選挙にいこう:2009/07/29(水) 23:08:43
>>252
あほだ。
関数厨だ。

256 :名無しさん@そうだ選挙にいこう:2009/07/29(水) 23:15:00
まあその前に100倍10倍をする意味がないぞ、文字列連結すりゃいいんだし
それにするなら10000倍100倍だ

つうかVBAスレが別にあるんだから、こっちは基本VBA以外メインの回答で問題なかろう

一番阿呆なのは・・・

257 :名無しさん@そうだ選挙にいこう:2009/07/29(水) 23:15:07
たまたまスレを開いた時に>>206が1番上に見えたから
名無しのせいもあって来る板間違えたかと思ったじゃないかw

258 :名無しさん@そうだ選挙にいこう:2009/07/29(水) 23:19:06
>こっちは基本VBA以外メインの回答で問題なかろう
!?
最適な回答で良いと思うのだが

259 :名無しさん@そうだ選挙にいこう:2009/07/29(水) 23:23:35
なんのための総合質問スレだ

260 :名無しさん@そうだ選挙にいこう:2009/07/29(水) 23:26:46
Excelいじり好きな人が質問者にネタもらって暇つぶしするためのスレだろ?
それ以外の存在理由なんてあったか?

261 :名無しさん@そうだ選挙にいこう:2009/07/29(水) 23:30:55
>>238
そのパソコンで新規で開いたとき、枠線がない状態であり、
保存して他のパソコンで開いた場合は枠線があるので、
Excelの修復をして、それでダメなら再インストールをしてみます。
ありがとうございました。

262 :名無しさん@そうだ選挙にいこう:2009/07/29(水) 23:54:57
>こっちは基本VBA以外メインの回答で問題なかろう

〜回答でも〜だな

>最適な回答で良いと思うのだが

まさしくそのとおりです><

263 :名無しさん@そうだ選挙にいこう:2009/07/30(木) 00:01:12
なんで?
LEN関数で問題ないんじゃね?
並び替えキーが二つが気に入らなければ=LEN(A1)&A1とするだけじゃん。
10文字以上もあるなら=TEXT(LEN(A1),"000")&A1とでもすりゃいいし。



264 :名無しさん@そうだ選挙にいこう:2009/07/30(木) 00:16:34
小文字はどうすんだろ?
小文字ありなら連結もまずいわな。
65 66(AB)と100 97(da)じゃ後者が小さいし。


265 :名無しさん@そうだ選挙にいこう:2009/07/30(木) 01:05:38
>>264
>>231の質問内容なら、>>233-234の回答で十分だと思うが
全角・半角、大文字・小文字が混在する可能性があるならば(普通は混在前提で考えると思うが)、
ASC・JISで半角か全角に統一、LOWER・UPPERで小文字または大文字に統一すればいい。
俺に言わせれば「あとは応用しろ」だけどね。

266 :名無しさん@そうだ選挙にいこう:2009/07/30(木) 01:07:05
国語辞書形式とも違うんだよなあ
あえて言えば26進数か

267 :名無しさん@そうだ選挙にいこう:2009/07/30(木) 02:59:44
頭に'0'やスペースを付けて固定長にしてやればいい

268 :名無しさん@そうだ選挙にいこう:2009/07/30(木) 07:11:41
>>267
>>263で書いてるよ。

269 :名無しさん@そうだ選挙にいこう:2009/07/30(木) 07:30:32
【1 OSの種類         .】 WindowsXP sp3
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 はい
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 シート名 数式

例えば,「北海道,青森,秋田,岩手・・・」と47枚のシートがあり,
全て同じ書式でデータが入力してあります。

ある県とある県の値が一致するかどうかを班別したいので,
1行目と2行目に北海道,青森,秋田,岩手・・・と入力し,
3行目に
=if(北海道!A3=青森!A3,"一致,"不一致")
のような数式を延々と入れています。

このとき,1行目と2行目に入力してある,北海道,青森,秋田,岩手・・・を
数式の中に取り入れる方法はないでしょうか?具体的には
=if(A1&!A3=B1&!A3,"一致,"不一致")
などと試してみましたがダメでした。

270 :名無しさん@そうだ選挙にいこう:2009/07/30(木) 07:31:59
訂正

具体的には
=if(A1&!A3=B2&!A3,"一致,"不一致")
などと試してみましたがダメでした。

271 :名無しさん@そうだ選挙にいこう:2009/07/30(木) 07:34:54
>>269
indirect関数
=if(indirect(a1&"!A3")=indirect(b2&"!A3"),"一致,"不一致")


272 :名無しさん@そうだ選挙にいこう:2009/07/30(木) 07:43:52
串刺しは使えないんだっけ

作業シートに転記するのが簡単かな
1行目に北海道、2行目に青森……といった具合

273 :名無しさん@そうだ選挙にいこう:2009/07/30(木) 08:22:09
>>269
とりあえず、県別にシート分けるのやめろとアドバイスしておこう。

県名  項目 値
北海道 人口 5
北海道 面積 100
青森 人口 2
青森 面積 80

のように縦一列に1枚のシートに入力していくこと。
すでに入力してあるので変更が大変なら変更プログラムをVBAで組めばいい。
串刺しとかindirectの方向に行かないことを願う。


274 :名無しさん@そうだ選挙にいこう:2009/07/30(木) 08:25:51
>>273
【4 VBAでの回答の可否】 否

275 :名無しさん@そうだ選挙にいこう:2009/07/30(木) 08:28:44
>>274
なら手作業で変更したらよい。

276 :81:2009/07/30(木) 09:03:21
足を靴に合せろ ってやつだな。

277 :名無しさん@そうだ選挙にいこう:2009/07/30(木) 12:22:55
>>276
不細工な足では、Excelという靴をかっこよく履きこなせない。
VBAで崩して無理やり履いてもかっこよくはない。

278 :名無しさん@そうだ選挙にいこう:2009/07/30(木) 13:09:52
この場合の靴はデータテーブルだろ
VBAは靴べらってとこか

エクセルの足を生やしたんだからしょうがなかろ

279 :名無しさん@そうだ選挙にいこう:2009/07/30(木) 13:56:46
>>273
なんで項目と数値で分けてるんだ?
都道府県がユニークなんだから47レコードにしたほうがいいんじゃない
特に各都道府県ごとに重複する項目をわざわざレコードにして列挙する必要はないような
これからデータベースをつくるなら正規形を考えるけど、本件についてはそこまで細分化はしないでもよかろ

280 :名無しさん@そうだ選挙にいこう:2009/07/30(木) 15:15:42
>>268
>>263>>267は違うよ

281 :名無しさん@そうだ選挙にいこう:2009/07/30(木) 16:02:29
>>280
あぁA1も含めての固定長ね。
俺はまたLEN関数の戻り値の固定長かと思ったよ。
なるほどそれもいいね。
3文字までなら=RIGHT("00"&A1,3)ってことか。

282 :名無しさん@そうだ選挙にいこう:2009/07/30(木) 17:37:32
>>279
うん。その通りだな。
ここまでしなくてよかった。

283 :名無しさん@そうだ選挙にいこう:2009/07/30(木) 18:55:52
携帯からでごめん。「1」と入力したら「0.5」と表示されるんだが。データ上は「1」と表示されてる。誰か早急に教えてくれ、いや、教えて下さい。緊急事態だ。

284 :名無しさん@そうだ選挙にいこう:2009/07/30(木) 19:01:59
>>283
セルの書式設定の表示形式タブは”標準”になってますか?

285 :名無しさん@そうだ選挙にいこう:2009/07/30(木) 19:02:02
書式設定を標準に

286 :名無しさん@そうだ選挙にいこう:2009/07/30(木) 19:05:35
ありがとう。助かった。仕事が止まるとこだった。ほんとありがとうございます。

287 :名無しさん@そうだ選挙にいこう:2009/07/30(木) 20:09:10
ずーっとエクセル2003使ってたんですけど今度2007使おうと思ってて
慣れるのやっぱり時間かかりますかね?


288 :名無しさん@そうだ選挙にいこう:2009/07/30(木) 20:14:04
>>287

んなこと聞くような馬鹿には難しいかもなw

289 :名無しさん@そうだ選挙にいこう:2009/07/30(木) 21:50:51
ちょっと質問なんですが、
全商の情報処理検定1級とエクセルエキスパート試験では、エクセルエキスパートの方が全然知識上なんですか??




290 :名無しさん@そうだ選挙にいこう:2009/07/30(木) 22:06:46
>>288みたいな
定番のお決まりが湧いてくるとは思ったが
エクセル総合相談スレだったので参考までに聞いてみた


291 :名無しさん@そうだ選挙にいこう:2009/07/30(木) 23:02:49
ヒストグラムから半値幅を求めたいのだけど
目視だちょっとブレがでるし時間かかるから
すぐ分かるようにしたいのだけどなかなか方法がみつからない
ヤフーの質問箱で同じ主旨の質問があったので引用

「データポイントを平滑線でつないだ散布図を作成し、
そのポイント以外の線上の座標が知りたい場合、どうしたら良いでしょうか。
近似曲線はグラフが歪でどれも大きく外れてしまうので、使用できません。
エクセル以外で、数値を入力しグラフ上のポイント以外の座標値がわかるソフトでも構いません。
宜しく御願い致します。」

要は上のようなことができれば助かるのだけど
どなたか心当たりあるかたはいらっしゃいませんか?

データソ−スはcsvなんで
csv開けて半値幅が解析できるものならなんでもかまいません
よろしくお願いいたします。

292 :名無しさん@そうだ選挙にいこう:2009/07/30(木) 23:40:30
>>290
これはヤバイと思って上司に進言して2003に戻してもらった
他の人も数名続いた
クビになってもいいかと思って言ったつもりだが案外すんなりとおって拍子抜け
しかしあれは本当にストレスが溜まるね

293 :名無しさん@そうだ選挙にいこう:2009/07/31(金) 07:30:04
>>292
Excelのバージョンごときで使いにくいだとかクビだとかおおげさなやつ。


294 :名無しさん@そうだ選挙にいこう:2009/07/31(金) 08:26:26
>>291
つ 算盤

295 :名無しさん@そうだ選挙にいこう:2009/07/31(金) 09:49:05
>>291
直線でつないでるんなら、ポイントのデータから比例計算

296 :名無しさん@そうだ選挙にいこう:2009/07/31(金) 18:59:12
EXCEL2003です。

データシートと同じシート上に作成したピボットテーブルを
削除するには、どうすれば良いのでしょうか?

よろしくお願いします。


297 :名無しさん@そうだ選挙にいこう:2009/07/31(金) 19:06:59
ピボットテーブルの範囲を選択して削除

298 :名無しさん@そうだ選挙にいこう :2009/07/31(金) 19:26:28
初心者的質問で申し訳ないのですが お願いします。

VLOOKUPで表示させたい列が 検索値より左側にあるときは
どのようにすればいいのでしょうか?

299 :名無しさん@そうだ選挙にいこう:2009/07/31(金) 19:42:03
検索値の右側に表示させたい列を参照する列を作成する
参照したい列の左側に検索値を参照する列を作成する
お好きな方法をどうぞ

300 :名無しさん@そうだ選挙にいこう:2009/07/31(金) 21:17:47
簡単だが融通の利かないVLOOKUPではなく、INDEX+MATCHを使う

301 :名無しさん@そうだ選挙にいこう:2009/07/31(金) 21:30:21
マルチ…に引っかかるのかどうかわかりませんが、質問したスレで
だれも答えが返ってこなかったのでここで質問をさせてください。

1年位前に旅行でイタリア行ったときGPSでログを取ってたんですが、
日本時間の設定のままにして使用していた為、実際の撮影時間から8時間くらい?
ずれた状態で記録されてるログが作成されました。
カメラで撮ったJPEGにそのGPS情報を連動させて埋め込んでやりたかったのですが、
GPS(GPXファイル)の時間情報が8時間くらいズレていて、JPEGと連動させる事が出来ませんでした。
GPXファイルの中身をどうにか8時間分だけズラすことが出来れば、と思いノートパッドでGPXファイルを
開いてみたところ、以下のような文字列が出てきました。

<trkpt lat="45.419117" lon="9.157150">
<time>2008-05-26T18:43:22Z</time>
<name><![CDATA[Point 11281]]></name>
</trkpt>
<trkpt lat="45.419121" lon="9.157162">
<time>2008-05-26T18:43:27Z</time>
<name><![CDATA[Point 11282]]></name>
</trkpt>

連続してこれらの文字列が並んでおり、その中に<time></time>で囲われているところに
時間情報らしきものがあります。これをエクセルで編集して、8時間ズラすことができないだろうかと
思っていましたが、エクセル能力が無い自分には考えも付きません…
一気に変える手段を教えていただけませんでしょうか?

302 :名無しさん@そうだ選挙にいこう:2009/07/31(金) 21:35:36
関数でもできるがVBAの方がラクかも
VBA厨 出番だぞ

303 :名無しさん@そうだ選挙にいこう:2009/07/31(金) 21:36:09
能力ないのに聞いてどうする

for each FSOでもなんでもいいから取得したファイルリスト
ファイルを開いて該当する行を差し替え
next

304 :名無しさん@そうだ選挙にいこう:2009/07/31(金) 21:36:24
>>301
VBAで出来るけど、完全にExcelとは関係ない話
マルチなので問題外だが、マルチじゃなかったとしても>>2・7該当でさようならだ

305 :名無しさん@そうだ選挙にいこう:2009/07/31(金) 22:36:31
おまえら口ばっかしだなw
A列に文字列があるとして

B1=IF(LEFT(A1,6)="<time>",1,0)
C1=IF(B1,DATE(MID(A1,7,4),MID(A1,12,2),MID(A1,15,2)),"")
D1=IF(B1,TIME(MID(A1,18,2),MID(A1,21,2),MID(A1,24,2)),"")
E1=IF(B1,C1+D1,0)
F1=IF(B1,E1+TIME(6,,),0)
G1=IF(B1,CONCATENATE("<time>",TEXT(F1,"yyyy-mm-ddThh:mm:ssZ"),"</time>"),A1)

B-G列を下までコピー
もっと短くできるけど可読性を優先

306 :名無しさん@そうだ選挙にいこう:2009/07/31(金) 22:38:13
あ 6時間じゃなくて8時間だったか そこは修正してくれ

307 :名無しさん@そうだ選挙にいこう:2009/07/31(金) 23:09:20
何やってんだかw

308 :名無しさん@そうだ選挙にいこう:2009/07/31(金) 23:25:25
いやそれ普通にxmlでしょ?
2003以降ならそのまま読み込めばいいだけじゃ?
vba使いたいならxmlmapだったかな?そんなの

309 :名無しさん@そうだ選挙にいこう:2009/07/31(金) 23:30:02
古い奴でもvbaでやりたいならfsoなんて使わないでmsxmlで直行った方が楽なんじゃねーの?

310 :名無しさん@そうだ選挙にいこう:2009/07/31(金) 23:31:41
XMLだと・・・?
使ったことないわ

311 :sage:2009/08/01(土) 03:25:13
EXCELでマクロを編集中に強制終了してしまい
ドキュメントの回復が自動起動したので自動回復したファイルを確認し
罫線などのデータが飛んでいるものの大丈夫そうだったので上書き保存しました。

で、回復した状態で作業を続行しようとしたところ
編集していたマクロのデータが全部消えていることに気付きました。
どうにか復帰させる方法はありませんでしょうか?
まさか、全部真っ白に消えてるなんて思わなかったもので、、、、、

312 :名無しさん@そうだ選挙にいこう:2009/08/01(土) 03:52:44
vba使えても基本的なこと知らない人っているんですね。

sageの使い方とか・・・

313 :名無しさん@そうだ選挙にいこう:2009/08/01(土) 06:13:46
Sage
【人名】

セージ
sage
【1名】

1. 賢者{けんじゃ}、聖人{せいじん}
2. 《皮肉》物知り{ものしり}

【1形】

1. 賢い、賢明{けんめい}な、思慮深い{しりょ ぶかい}
2. 《皮肉》賢人{けんじん}ぶった、知識人{ちしきじん}ぶった
3. 厳粛{げんしゅく}な

ワロタ

314 :名無しさん@そうだ選挙にいこう:2009/08/01(土) 07:41:31
>>313
それいいな

315 :名無しさん@そうだ選挙にいこう:2009/08/01(土) 11:22:10
SAGE法(Serial Analysis of Gene Expression)とは、対象とする
細胞や組織における mRNA の発現状況を把握する、いわゆる
遺伝子発現プロファイリングの為の分子生物学的手法である。

Sage (数式処理システム)
Sageとは数式処理システムの一つ。プロジェクトリーダーは
ワシントン大学の準教授William Stein


316 :名無しさん@そうだ選挙にいこう:2009/08/01(土) 11:22:53
 [1点]
  ‖∧∧ 
  ∩・ω・`)
   (    )
   `u-u´


317 :名無しさん@そうだ選挙にいこう:2009/08/01(土) 13:41:30
sage

まつりごと
転じて政を司る行為
特に国家による体制の維持を現す

ネトウヨ乙

318 :名無しさん@そうだ選挙にいこう:2009/08/01(土) 13:53:51
つまんねー流れだな

319 :名無しさん@そうだ選挙にいこう:2009/08/01(土) 14:05:55
夏休みははじまったばかりだ

320 :名無しさん@そうだ選挙にいこう:2009/08/01(土) 16:06:18
本当は500年ぐらい続いてるんだけどな

321 :名無しさん@そうだ選挙にいこう:2009/08/01(土) 18:04:15
 [0点]
  ‖∧∧ 
  ∩・ω・`)
   (    )
   `u-u´


322 :名無しさん@そうだ選挙にいこう:2009/08/01(土) 19:46:33
誰もまともに答えてないのかよw
>>311
強制修了前に保存したファイルならデータ復旧ソフトとか使えば取り出せるかもしれん
でもたいていの場合それに期待するより作り直したほうが早くて確実

323 :名無しさん@そうだ選挙にいこう:2009/08/02(日) 00:03:52
【1 OSの種類         .】 WindowsMe
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 少し
【4 VBAでの回答の可否】 可

失礼します。
セル内に画像を表示するために、「挿入→図→ファイルから」ではなく、
関数を使ってファイルのパス指定によってそのExcelファイルを開く度に
アクセスして画像を引っ張り出しそのセル内に表示する、というような
方法があれば御教示お願い致します。
ハイパーリンク型のようにクリックすれば、という方法ではなく、
そのエクセルファイルを開いた段階での画像表示をしたいと
思っております。

データが多いため、出来ればさらに、そのセルに合わせて原寸に関係
無く画像が自動的に画像が大きければセルに合わせて縮小・小さければ
拡大されると理想です。

宜しくお願いします。


324 :名無しさん@そうだ選挙にいこう:2009/08/02(日) 00:48:34
>>323
Workbook_Open

325 :名無しさん@そうだ選挙にいこう:2009/08/02(日) 01:25:54
>>323
起動についてはWorkbook_openを使うという事ですか。なるほど。
御回答有難う御座います。

画像の表示についてはどうすれば良いでしょうか。それとも
Workbook_openで画像の表示やサイズ指定までする流れを
築いた方が良い、という事でしょうか。

補足としましては、セル内にパスを入れておくか、他のシートか
データベース内に文字列としてリストを入れておき、それを元に
指定セル内に表示したいと考えております。

最終的には

【画像(変更する可能性があるためパスで引っ張ってくる】 品名 単価

という感じで行がずらーっと下に伸びるように作りたいと思っております。


宜しくお願い致します。

326 :323:2009/08/02(日) 01:26:42
>>323ではなく>>324のアンカミスでした。失礼しました。



327 :名無しさん@そうだ選挙にいこう:2009/08/02(日) 06:27:11
>>325
マクロの記録

328 :323:2009/08/02(日) 10:38:45
>>324>>327
アドバイスのお陰で何とか出来そうです。
助かりました。ありがとうございます。

329 :名無しさん@そうだ選挙にいこう:2009/08/02(日) 11:14:51
ちっともアドバイスになってないじゃん。
本当に何とかできるの?

330 :名無しさん@そうだ選挙にいこう:2009/08/02(日) 11:31:36
>329

大きなお世話じゃね?

331 :323:2009/08/02(日) 12:22:25
>>329
いえ、イケると思ったら頓挫しました orz


途中までは出来たんですが、ハマって2時間近く経ち、今に至ります(汗
またご助力を切にお願い致します。

Sub Macro7()

Dim seru As Variant
Dim basyo As Variant
Dim iseru As Long
basyo = "D" & 2 + isuru
seru = "L" & 2 + isuru
Do Until isuru > 10
Range(basyo).Select
ActiveSheet.Pictures.Insert(Range(seru).Value).Select
Selection.ShapeRange.LockAspectRatio = msoFalse
Selection.ShapeRange.Height = 57#
Selection.ShapeRange.Width = 79.5
Selection.ShapeRange.Rotation = 0#
isuru = isuru + 1
Loop
End Sub

上記マクロで1つめの画像貼り付けまでは上手く行ったのですが、
その後ループのあたりが上手くいかないからか、同じ場所に10枚
同じ画像が貼られる状態です。変数をいじったりやってみましたが、
上手く行きません。
何度もすみません、出来たら助けて下さい・・・・ orz


332 :名無しさん@そうだ選挙にいこう:2009/08/02(日) 12:25:30
すみません、補足です。
変数seruのL列には画像へのパスが文字列で入っています。
変数basyoのD列のセルに画像を入れるため指定しようとしています。
宜しくお願い致します。

333 :名無しさん@そうだ選挙にいこう:2009/08/02(日) 13:00:31
ループの中でL列移動させてないだけじゃない
isuruの初期値わからんけど0でいいのかね?

Do Until isuru > 10

basyo = "D" & (2 + isuru)
seru = "L" & (2 + isuru)

Range(basyo).Select
ActiveSheet.Pictures.Insert(Range(seru).Value).Select
Selection.ShapeRange.LockAspectRatio = msoFalse
Selection.ShapeRange.Height = 57#
Selection.ShapeRange.Width = 79.5
Selection.ShapeRange.Rotation = 0#
isuru = isuru + 1
Loop

334 :名無しさん@そうだ選挙にいこう:2009/08/02(日) 13:24:14
>>333
理想通りに出来ました!loopの前で位置指定していることに
疑問を感じていませんでした。有難う御座います!
ちなみにisuruの初期値は指定していないので0だと思います

ただ、
「実行時エラー 1004 pictures クラスの Insert プロパティを取得できません。」
となり、
ActiveSheet.Pictures.Insert(Range(seru).Value).Select
の部分が黄色くなります。処理は問題なく理想通りに行っているのに
どこかおかしいという事なのでしょうか・・・


335 :名無しさん@そうだ選挙にいこう:2009/08/02(日) 18:36:03
ワードもエクセルも03年度のほうが使いやすい。
07年度版はマニアにはいいかもだが、老人やメカ苦手な人には不便。



336 :名無しさん@そうだ選挙にいこう:2009/08/02(日) 19:21:58
>>335
ということは私には使いやすいのかも。

Excel2007ずいぶん評判悪いみたいだな。
使ったこと無いのに決め付けるのもなんだが、どうせもともとおかしな使い方してるようなやつのたわ言じゃねーの?
方眼紙エクセルとか、セルの結合とかやってる情弱は何使ったってだめ。

337 :名無しさん@そうだ選挙にいこう:2009/08/02(日) 20:37:06
>>336
こういう問題はエクセルに限らず、使ってから言ってくれ
エクセルは約十年ぐらいお世話になってるが、2007だけは本当に使いにくい

338 :名無しさん@そうだ選挙にいこう:2009/08/02(日) 20:55:40
おれも2007を5年くらい使ってるけど使いにくいな







ごめんうそ

339 :名無しさん@そうだ選挙にいこう:2009/08/02(日) 21:02:35
>>336
方眼もセルの結合も便利だし
セルの結合が情報弱者しか使わないダメな機能なら
開発したMicrosoftはどれだけ頭悪いのかって話しだろ
セルの結合が出来ないとかなり不便

340 :230:2009/08/02(日) 21:12:12
方眼紙は迷惑

341 :名無しさん@そうだ選挙にいこう:2009/08/02(日) 21:13:27
ちょw 

342 :名無しさん@そうだ選挙にいこう:2009/08/02(日) 21:14:46
方眼紙勝手に使う分には問題ないと思うけどな
あれ結構読みやすかったりする。midとcolumn組み合わせてるなら作る労力も低いしいいと思うんだけどな



343 :名無しさん@そうだ選挙にいこう:2009/08/02(日) 21:44:39
まったくここは情弱の溜まり場か?
方眼紙ねえ。あきれた。

344 :名無しさん@そうだ選挙にいこう:2009/08/02(日) 22:28:45
方眼紙より簡単で便利に位置合わせとか罫線様式つくれる方法があれば
そうするよ

345 :名無しさん@そうだ選挙にいこう:2009/08/02(日) 22:38:26
>>344
自分で作ったレイアウトに愛着がわくのはわかるが、そんなのは誰も求めていない。
罫線もそう。
なんでお前ら書類の周りを全部線で囲むの?その線の意味は何?

346 :名無しさん@そうだ選挙にいこう:2009/08/02(日) 22:50:38
>345

学生か?
宿題してろw

347 :名無しさん@そうだ選挙にいこう:2009/08/02(日) 23:23:27
>>246
方眼紙で一生懸命文字並べ。
罫線を引いたり消したり。

無意味な仕事ばっかやってんなよ。


348 :名無しさん@そうだ選挙にいこう:2009/08/02(日) 23:25:33
無意味だよな 羅線とか

349 :名無しさん@そうだ選挙にいこう:2009/08/02(日) 23:37:49
羅線なんてつかったことないなー つかおうとおもったこともない
考えたやつはあほだなw

350 :名無しさん@そうだ選挙にいこう:2009/08/02(日) 23:46:31
ちょ、ちょっと待って!方眼紙って別に罫線は引かないと思うんだ
単純に文字列を等間隔で並べるだけだろう
今はテキストボックス使うけど、大昔やってた
ワードは使いたくないわ


351 :名無しさん@そうだ選挙にいこう:2009/08/02(日) 23:50:41
>>350
お前の不細工なレイアウトよりワードのほうが優秀なんだよ。

352 :名無しさん@そうだ選挙にいこう:2009/08/02(日) 23:56:15
ワードのテキストボックスは便利

353 :名無しさん@そうだ選挙にいこう:2009/08/02(日) 23:59:01
>>351
知ってるよ
でも印刷した物が承認されるならそれでオッケー


354 :名無しさん@そうだ選挙にいこう:2009/08/03(月) 00:30:45
>>353
パソコン使わなくてもいいね。

355 :名無しさん@そうだ選挙にいこう:2009/08/03(月) 00:32:21
おまえらおちつけ 羅線と罫線の区別もつかないのか

356 :名無しさん@そうだ選挙にいこう:2009/08/03(月) 00:33:07
>>354
パソコンを使わずに大量に早く作成できて、変更にも柔軟に対応できるなら使わないよ

357 :名無しさん@そうだ選挙にいこう:2009/08/03(月) 00:35:32
羅線とかいう単語を使ってるのは348と349だけ。
別にこの二人にレスは返してないよ
ところで羅線って何?


358 :名無しさん@そうだ選挙にいこう:2009/08/03(月) 00:35:38
>>355
気付いていたがつまらないから無視した。

359 :名無しさん@そうだ選挙にいこう:2009/08/03(月) 00:38:10
>>356
ならExcel方眼紙はないな。


360 :名無しさん@そうだ選挙にいこう:2009/08/03(月) 00:58:49
トーナメント表作るのに
方眼にして作図するなぁ
楽だと思うけど

361 :214:2009/08/03(月) 01:04:33
>>218
超遅レスだけど詳細レスありがと。
原因は変わらずに不明で、今後はお勧めのRDBMSにします。

362 :名無しさん@そうだ選挙にいこう:2009/08/03(月) 01:36:29
>>360
あっそう。

363 :名無しさん@そうだ選挙にいこう:2009/08/03(月) 02:35:31
羅線てのは昔なんかであったネタだな

364 :名無しさん@そうだ選挙にいこう:2009/08/03(月) 03:53:14
>>334
画像ファイルの名前が間違ってるか、ファイルが存在しない

365 :名無しさん@そうだ選挙にいこう:2009/08/03(月) 07:18:38
うっせーな、書類の形式って決まってんだよ
形式どおりに作らないと決済ではねられるんだよ
エクセル使うなって話ならともかく形式に文句つけんなよ

366 :名無しさん@そうだ選挙にいこう:2009/08/03(月) 07:42:36
>>365
君はエクセルでトーナメント表描いていなさい。君はそれでいい。


367 :名無しさん@そうだ選挙にいこう:2009/08/03(月) 07:47:57
簡単な作図に便利だって言いたいのさ

368 :名無しさん@そうだ選挙にいこう:2009/08/03(月) 07:52:14
トーナメント表みたいなもの作図するなら
素直にテキストボックスや直線やコネクタ使っとけよ

369 :名無しさん@そうだ選挙にいこう:2009/08/03(月) 07:53:53
方眼紙やvlookup嫌いな人ってなんでそんなに嫌いなんだろう??

370 :名無しさん@そうだ選挙にいこう:2009/08/03(月) 08:34:41
方眼紙は別に否定しない。
様式が固定されている文書は公的にも多々あるし。
ただ、セルの結合やら幅調整した結果、そこに直接入力してまで
使っている人はアホだと思う。

また、対象によってvlookup/hlookup/lookupを使い分けてまで
lookup系を使う人はアホだと思う。


371 :名無しさん@そうだ選挙にいこう:2009/08/03(月) 08:43:04
より優れたものを知っているから、より劣ったものを使いたがらないだけの話
別に使っちゃいけないとは言ってないが、自分は使わないし人にもより優れた方を奨めるだけ

372 :名無しさん@そうだ選挙にいこう:2009/08/03(月) 10:19:18
方眼紙は用途によって有りだと思うが
VLOOKUPはないわw

373 :名無しさん@そうだ選挙にいこう:2009/08/03(月) 10:39:22
レス乞食うぜえよ
糞スレになったなあ

374 :名無しさん@そうだ選挙にいこう:2009/08/03(月) 11:06:27
>>372
方眼紙が有りな用途をいくつか挙げてください。

375 :名無しさん@そうだ選挙にいこう:2009/08/03(月) 11:31:52
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2007
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 *

よろしくお願いします。
年  月  日
2009 08  01
のように、年、月、日を別セルにした表の日付を
一つのセルに09/08/01のようにまとめるには
どうすればいいでしょうか?

よろしくお願いします。

376 :名無しさん@そうだ選挙にいこう:2009/08/03(月) 11:37:59
使用者の表示が変わるのは仕様
ツール→オプションで情報を変更

レイアウト構成とかでセルドットを使うだろ
DBには使わないけど

「ぼくのかんがえたさいきょうのエクセルのつかいかた」以外を排除したいなら脳内でやってろ餓鬼



でもVlookupはないわ

377 :名無しさん@そうだ選挙にいこう:2009/08/03(月) 11:43:57
>>375

A1が年、A2が月、A3が日と仮定。

文字列のままでいいのなら、
=A1&"/"&A2&"/"&A3

書式で処理するなら、
=DATE(A1,A2,A3)

でいいんじゃないか。

378 :377:2009/08/03(月) 11:46:28
訂正

文字列のまま(西暦2桁表示)でいいのなら、
=RIGHT(A1,2)&"/"&A2&"/"&A3




379 :名無しさん@そうだ選挙にいこう:2009/08/03(月) 11:47:09
>>375
日付型として扱いたいなら
=Date(A2,B2,C2)
を入れて、書式設定のユーザー定義を
yy/m/d
にする
文字列なら
=A2&”/”&B2
を使って連結

380 :名無しさん@そうだ選挙にいこう:2009/08/03(月) 11:49:44
おっと書こうとしたら……スデに!

381 :375:2009/08/03(月) 12:08:01
ありがとうございます。できました。

382 :名無しさん@そうだ選挙にいこう:2009/08/03(月) 16:11:11
>>334
エラーが出るのに理想通り動いたって、訳わからんやつやな。

For i = 2 To 11
  Cells(i, "D").Select
  ActiveSheet.Pictures.Insert(Cells(i, "L")).Select
  With Selection.ShapeRange
    .LockAspectRatio = msoFalse
    .Height = 57#
    .Width = 79.5
    .Rotation = 0#
  End With
Next

383 :名無しさん@そうだ選挙にいこう:2009/08/03(月) 23:25:07
MOSの資格取得のためエクセル2003をインストールしたいのですが、ヤフオクとかで売ってる中古のソフトも、認証して使えるようになりますか?
2003を使っていたので、家でも練習したいのですが・・

384 :名無しさん@そうだ選挙にいこう:2009/08/03(月) 23:34:04
ヤフオクは基本コピーソフト

385 :名無しさん@そうだ選挙にいこう:2009/08/03(月) 23:44:23
以下のようなデータを散布図にしたいのですが、データが多すぎますというようなメッセージが表示されてうまくいきません。
多数のデータがある場合に散布図でうまく表示できる方法はないでしょうか。

1行目    日付(120列)
2行目    データ1 データ2 ・・・ データ120
3行目    データ1 データ2 ・・・ データ120
 :
 :
1000行目  データ1 データ2 ・・・ データ120

386 :名無しさん@そうだ選挙にいこう:2009/08/04(火) 00:01:46
>>384
コピーソフトって認証できないんですか?
新品未開封見つけたのですが、正式に使えますか?

387 :名無しさん@そうだ選挙にいこう:2009/08/04(火) 00:09:38
未開封ならだいじょぶ

388 :名無しさん@そうだ選挙にいこう:2009/08/04(火) 00:12:05
そうだねだいじょうぶだねがんばってね

389 :386:2009/08/04(火) 00:25:27
ありがとうございます。

390 :名無しさん@そうだ選挙にいこう:2009/08/04(火) 00:31:39
お願いします。
=if(a5=5,"◎","×")
みたいのをコピペすると
a5の部分が勝手に6,7,8と増えてしまいます。
増やしたくない場合どうすればいいですか?

391 :名無しさん@そうだ選挙にいこう:2009/08/04(火) 00:35:02
>>364
有難う御座います
>>382
ご丁寧にコードまで綺麗にして頂き、申し訳ないです。
お陰さまでエラーが出なくなりました。
有難う御座います。 orz


392 :名無しさん@そうだ選挙にいこう:2009/08/04(火) 00:35:12
a$5

393 :名無しさん@そうだ選挙にいこう:2009/08/04(火) 00:35:43
>>392
ありがとうございます。

394 :名無しさん@そうだ選挙にいこう:2009/08/04(火) 08:37:55
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2007
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 セルのコピー

セルの右下にマウスカーソルを置くと + マークが出て
それを左ドラッグしたまま下に下げるとセルのコピーが出来ますが、
7万行とか同じ操作でセルのコピーをする場合、
随分長い間ドラッグをしたまま下にスクロールさせなければなりません。
これを一瞬で出来る操作というのはあるものでしょうか?

395 :名無しさん@そうだ選挙にいこう:2009/08/04(火) 08:46:17
>394

編集→フィル→連続データの作成

2007は持ってないが似たようなモンじゃないかな?

396 :名無しさん@そうだ選挙にいこう:2009/08/04(火) 09:09:46
>>395
編集というのがなく、まだ上手くいきませんがフィルなど単語検索してみたら、なんとかなりそうです。
ありがとうございました。

397 :名無しさん@そうだ選挙にいこう:2009/08/04(火) 09:51:40
>396
2007だと、ホーム→編集に[↓]アイコンがある。
しかし質問を読むと、単なるコピーにオートフィルを
使っているみたいなんで、単なるコピーなら
元セルコピー→名前ボックスに最終セル入力(a70000 とか)
→Sift+Enter→貼付け  でいける。


398 :名無しさん@そうだ選挙にいこう:2009/08/04(火) 10:12:33
>>397 おー。出来ました。ありがとうございました。

399 :名無しさん@そうだ選挙にいこう:2009/08/04(火) 18:37:22
>>391
Select しない方法(ついでにDセルの大きさに合せる)

PicP = Cells(2, "D").Height
PicT = -Cells(2, "D").Top '位置合せの為マイナス
PicL = Cells(2, "D").Left
PicW = Cells(2, "D").Width
PicH = PicP - 2 '写真の間を2ピクセルあける

For i = 2 To 11
  ActiveSheet.Shapes.AddPicture Cells(i, "L"), _
  False, True, PicL, PicT + i * PicP, PicW, PicH
Next

400 :名無しさん@そうだ選挙にいこう:2009/08/04(火) 21:39:54
      ____
     /∵∴∵∴\
    /∵/∴∵\∵\     
   /∵<・>∴∴.<・>∵|    
   |∵∵/ ●\∵∵|     同じ板にコピペするとそのままだけど、
   |∵ /三 | 三|∵ |     違う板にコピペすると鬼のような怖い顔
   |∵ |\_|_/| ∵|    に変わる摩訶不思議な佳子様コピペ。
    \ | \__ノ  |/    .  
     \___/:、       
     /∵━○━∵ヽ       
    /∵人∵∵∵ \:\     
  ⊂´:_/  )∵∵∵∵ヽ:_`⊃  
       /∵人∵(      
      /∵ノ  \:\    
      ノ∵/    ヽ∵ヽ   
     (__)   .  (__) 


401 :名無しさん@そうだ選挙にいこう:2009/08/05(水) 00:57:43
【1 OSの種類       】 WindowsXP Home Edition SP3
【2 Excelのバージョン    】 Excel 2007 (12.0.6504.5001) SP2 MSO (12.0.6425.1000)
【3 VBAが使えるか     】 いいえ
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 Exsel2007 互換 制限 色
互換ファイルxlsで使用できる色を表示することは可能でしょうか
xlsファイルの上書き保存時に、使用できる色に変換されるという動作でもいいのですが

「選択したファイル形式でサポートされていない書式が、このブック内の
 一部のセルまたはスタイルに設定されています。このような書式は、選
 択したファイル形式で使用できる最も近い書式に変換されます。」
と表示されたときに、 [続行] を選択して上書き保存をしました
一旦閉じて開いてみると色は変更されておらず
何も編集せずに再度上書きをかけると、同じ警告が表示されます

反・資格宣言(第213号)Excel2007の互換モードは要注意
ttp://archive.mag2.com/0000139928/20090724182000000.html
上のページを参考に「標準の色」を使用しましたが、同じ警告が出てしまいます
指摘個所を黒にすると警告は出ません

402 :名無しさん@そうだ選挙にいこう:2009/08/05(水) 01:30:39
>>401
一番確実な方法は、古いExcelで開いて保存しなおすこと

403 :名無しさん@そうだ選挙にいこう:2009/08/05(水) 05:43:08
>>399
誰も国籍の話なんかしてねえよ
形容詞的に朝鮮人って言ってんだ

404 :名無しさん@そうだ選挙にいこう:2009/08/05(水) 14:21:38
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2002
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 並び替え

前任者が使っていた住所録を使って入力をしています。
前任者のデータはあいうえお順に並び替えられるのですが、私が入力したものはどうやっても並び変えることができないで困っています。
データ→並び替え→ふりがな(オプションでのふりがな使うはチェック済み)等いろいろ試してみましたが、わかりません。
ご教授お願いします。


405 :名無しさん@そうだ選挙にいこう:2009/08/05(水) 15:47:49
具体例ないとわからんが、漢字の並び替えかな?
オプション→ユーザー設定で並び替え登録してない?

406 :名無しさん@そうだ選挙にいこう:2009/08/05(水) 15:55:22
【1 OSの種類         .】 WindowsXP home dition sp2
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 おそらく可
【5 検索キーワード     】 なんと検索すればいいか分かりません。

ファイル名:001.html
内容:<a href="002.html"><img src="a/001.jpg"border="0"></a>

こんなファイルのファイル名の001.htmlと内容の002.htmlと001.jpgの数字を
それぞれ1づつ上げて、他の内容は変えずに
002.html、003.html・・・と、ファイルをどんどん作るにはどうすればいいのでしょうか。
エクセルでできると聞いたのですが、私にはさっぱり・・。

407 :名無しさん@そうだ選挙にいこう:2009/08/05(水) 16:14:50
恐ろしいくらいに丸投げきたなw

408 :名無しさん@そうだ選挙にいこう:2009/08/05(水) 16:19:08
A1に1を入れて、A2に
=A1+1
を入れる
A2をコピーしてA3から下に張り付ける
B1に
=”〜00”&A1&”.html〜”
コピーしてB2から下に張り付ける

B1から一番下までコピー
右クリック→形式を選択して張り付け→値

409 :名無しさん@そうだ選挙にいこう:2009/08/05(水) 16:36:54
>404
>前任者のデータはあいうえお順に並び替えられる
>私が入力したものはどうやっても並び変えることができない
とは、具体的にどの項目で並び替えを行った場合でしょうか?「漢字氏名」の項目ですか?
また、並び替えは「ボタン」クリック(VBAマクロの実行)、それとも範囲指定→メニューから
データ−並べ替え−キー設定などの手順をとっているのでしょうか?

たとえば、以下のような状況だとあなたが入力したデータは並べ替えがうまくいかないことになります。
・漢字氏名の項目のほかに「ふりがな」の項目がある(普段は非表示となっている)
・前任者が「並び替え」処理をVBAで行っていて、ソートキーに「ふりがな」の列を用いている。
・前任者はふりがなを入力していたが、引き継いだあなたは「ふりがな」列を入力していない。
もしくは
・前任者が「並び替え」処理をVBAで行っていて、ソート範囲を指定していたために、あなたが
入力したデータの部分が「並び替え」の対象になっていない。



410 :名無しさん@そうだ選挙にいこう:2009/08/05(水) 16:49:38
>406
Alt+F11 → 挿入→標準モジュール → 下記をコピペ
1 To 3 の3を繰り返したい数に書き換える → VBAを閉じる
エクセルから ツール→マクロ→マクロ→ hoge 実行


Sub hoge()
  For i = 1 To 3
    Open Format(i, "000") & ".html" For Output As #1
    Print #1, "<a href=""" & Format(i + 1, "000") & ".html""><img src=""a/" & Format(i, "000") & ".jpg""border=""0""></a>"
    Close #1
  Next
End Sub

411 :名無しさん@そうだ選挙にいこう:2009/08/05(水) 17:06:06
>>408,410
ありがとうございます!
エクセルってすごいですね。
ほんとに感謝。

412 :名無しさん@そうだ選挙にいこう:2009/08/05(水) 17:06:48
【1 OSの種類         .】 Windowsxp
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 はい
【4 VBAでの回答の可否】 可
【5 検索キーワード     】ファイル コピー オープン
全て同じフォルダにファイルが複数あり、
集計.xlsという集計ファイルと、2005-01-01北海道.xls、2005-01-01東京.xls、・・2005-01-01沖縄.xlsとあります。
それ以外のファイルは含まれていません。

集計ファイルの「2005-01-01北海道」シートに「2005-01-01北海道.xls」の中の「売上」シート、
「2005-01-01東京」シートに「2005-01-01東京.xls」の「売上」シート・・「2005-01-01沖縄」シートに・・・
とコピーしたいのですが、どのようにすればいいでしようか?

集計ファイルにシート名は既に入ってありますが、邪魔なら消しても構いません。
シートごとコピーでも、シートの内容を値でコピーでも構いません。
シート名は出来れば頭の10文字を取って(文字数は決まっています)
「北海道」「東京」「沖縄」としたいのですが、「sheet1」「sheet2」「sheet3」など自動的につく名前でも構いません

色々コードを書いてますがファイルやシートの操作をするとエラーが頻発してしまい、全く進みません
誰か助けてください。よろしくお願いします。

413 :名無しさん@そうだ選挙にいこう:2009/08/05(水) 17:24:52
ファイル操作まで出来てるなら自分で試行錯誤すべき
エラー吐くのはアクティブなブックと操作するブックが異なる可能性が大
ブックを開くとIDが振り分けられるので、変数に保存して処理するといいんじゃね

414 :名無しさん@そうだ選挙にいこう:2009/08/05(水) 17:52:25
>412
集計.xlsのSheet1に北海道から沖縄の名前を羅列しておいて
他のシートは削除しておく。
For Each で回して、"\フォルダ\2005-01-01" & .Value & ".xls" を開く
売上シートコピー>ファイル閉じる>シート名を .Value に書替え
Next
こんなカンジかな?
テストデータ作るのが面どいのでコードは勘弁。


415 :名無しさん@そうだ選挙にいこう:2009/08/05(水) 17:56:17
マクロの記録
シート削除する
ファイル開く
シートコピーする
ファイル閉じる
シートの名前を変える
記録終了

で、ファイルの名前とかを適宜変更
シートはシート名のところをmid(シートの名前,11len(シートの名前)-4)とかでいいんじゃね


でも各ファイルに入ってるデータ形式が同じなら、しかも集計するなら、帳票方式じゃなくてデータをちょくせつ取ってくればいいと思うの

416 :名無しさん@そうだ選挙にいこう:2009/08/05(水) 18:14:25
ありがとうございます!
参考にして作ってみます

417 :名無しさん@そうだ選挙にいこう:2009/08/05(水) 19:27:54
ハシハシハシハ

418 :名無しさん@そうだ選挙にいこう:2009/08/05(水) 19:53:21
ファイル名が"CSA52_09"で始まるCSVのコピペでうまくいきません。
If文で、↓のエラーが出てしまいます。

 実行時エラー438
 オブジェクトは、このプロパティをサポートしていません。

どこを直したらいいでしょうか?

Sub コピペ()

 For Each CSV In Workbooks
  If Left(CSV, 8) = "CSA52_09" Then
   Exit For
  End If
 Next

CSV.Cells.Copy Workbooks("新垣結衣.xls").Worksheets("DATA").Range("A1")

End Sub

419 :名無しさん@そうだ選挙にいこう:2009/08/05(水) 20:21:35
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2000
【5 検索キーワード     】 エクセル マクロ  パス DPB= 24文字

会社で使ってるブックにマクロが書かれていますが、制作者が辞めてしまって
マクロの書き換えができません。バイナリで開いたら、DPB="" のところが
24文字なんですけど、どんな文字なら24桁になるでしょうか?
いろいろ試してみたところ、76桁か78桁になってしまい、ググっても
24桁は探せませんでした。

420 :名無しさん@そうだ選挙にいこう:2009/08/05(水) 20:31:50
>>419
ttp://www.geocities.co.jp/SiliconValley-Bay/6854/others/exceltips.html#VBAのパスワードを外すには
1.ターゲットの.xls(.xla)ファイルをバイナリエディタで開き、DPB=""とGC=""の桁数を確認する以下略
GCがどうとか

421 :名無しさん@そうだ選挙にいこう:2009/08/05(水) 20:55:14
>>420
えーと、知りたいのはDPB=""のところが24桁になる例なんですが・・・
かれこれ100回くらい変えてはバイナリで開いて・・・を繰り返してますが、
76桁か78桁になってしまい、24桁にはなりません。

422 :名無しさん@そうだ選挙にいこう:2009/08/05(水) 20:55:19
>418
念のため、おたずねします。CSA52_09.CSVを含む複数のブックを開いている状態ですよね。

423 :418:2009/08/05(水) 21:10:51
>>422
そうです。

If文は、↓で出なくなりました。

If Left(CSV.Name, 8) = "CSA52_09" Then

しかし、CSV.Cells.Copy Workbooks("新垣結衣.xls").Worksheets("DATA").Range("A1") で
同じエラーが出てしまいます。

424 :名無しさん@そうだ選挙にいこう:2009/08/05(水) 21:16:49
>>421
それは試行錯誤するしかない

425 :名無しさん@そうだ選挙にいこう:2009/08/05(水) 21:18:27
今宵の先生は、レベルが低杉ですなwww

426 :名無しさん@そうだ選挙にいこう:2009/08/05(水) 21:25:09
>418、423
おなじようなマクロを試した訳ではないけれど、
>CSV.Cells.Copy では ブックは特定しているけどシートを指定してませんよね。
CSVファイルを展開したからシートはひとつだけかもしれないけど、sheet(0)かなにか
必要な気がする。


427 :名無しさん@そうだ選挙にいこう:2009/08/05(水) 21:40:55
>>425
大先生!お待ちしておりました。
どうぞよろしくお願いします。

428 :大先生:2009/08/05(水) 22:07:15
>>427
おまいは、どのひつもん(←なぜかうまく変換できない)をしたんだ?

>>423
For Each CSV In Workbooks
  しぃえすぶぃ = CSV.Name
  If Left(しぃえすぶぃ, 8) = "CSA52_09" Then Exit For
Next

Set 新垣結衣 = Workbooks("新垣結衣.xls").Worksheets("DATA")
Workbooks(しぃえすぶぃ).Activate
Cells.Copy 新垣結衣.Range("A1")
Set 新垣結衣 = Nothing

429 :名無しさん@そうだ選挙にいこう:2009/08/05(水) 22:19:50
MOSってとっておいたほうがいい?

430 :名無しさん@そうだ選挙にいこう:2009/08/05(水) 22:38:49
>>419
ttp://www.happy2-island.com/excelsmile/smile01/capter00700-08.shtml
これは試した?

431 :401:2009/08/05(水) 23:44:27
>>402
有り難う御座います
複数バージョンインストールを試してみます
調べてみると、Excel 2007がすでにインストールされている場合は一旦削除してから、古いバージョンを入れ、2007を入れれば良いとありました
『Office Enterprise 2007』を入れているのですが、これをアンインストール後
『Office Professional 2000』を入れて2007を入れた場合、正常に共存出来るでしょうか

432 :名無しさん@そうだ選挙にいこう:2009/08/06(木) 00:17:01
>For Each CSV In Workbooks
Workbooks のメンバって何なのかね?
ユーザー変数にCSVと付けるとWorkbooksの
メンバはCSVファイルの名前を現す?
何かもう滅茶苦茶

433 :名無しさん@そうだ選挙にいこう:2009/08/06(木) 00:19:02
【1 OSの種類         .】 Windows2000
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 コピペ程度なら
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 ピボット 集計
小売店の客層ごとの集計をしています

A列に1(男性若者)、2(女性若者)、3(男性壮年)
と入っていて、
B列が1日、C列が2日・・AFが31日になっています。
交差点には購買点数が入っています。
レジごとに取っているデータなので、同じ日に同じ客層が重複することがあります

その表を加工し、客層ごとに毎日何点買っているかを知りたいのですが、
どういう風にすれば簡単でしょうか?

ピボットテーブルを使ってみたのですがあまりよくわかりません。
こういう場合は1日、2日、3日・・と全てドラッグしなくてはならないのでしょうか?

あと少し別件なのですが、後学のために動画サイトなどがあればすごく嬉しいのですが、無いものでしょうか・・?
知ってる方いましたら教えてください。

434 :名無しさん@そうだ選挙にいこう:2009/08/06(木) 00:50:38
>>425
答えてやれ

435 :名無しさん@そうだ選挙にいこう:2009/08/06(木) 01:21:31
>>433
列と行が逆になっていれば簡単にピボット作れる。
ので、表全体をコピーして、
別のシートでもいいので右クリック→形式を選択して貼り付け→行列を入れ替えるにチェックしてOK
で表の行列を入れ替えてからピボット作ればよい。

436 :名無しさん@そうだ選挙にいこう:2009/08/06(木) 01:42:28
>>433
客層が縦向けに重複されているのを無くして、縦に客層別、横に日付別の合計結果(例だと31x3の表)にしたいのかな?

A1に「客層」と項目名入れてから、ウィザード従って「行」に「客層」、1日、2日、3日・・・をデータ欄にドラッグして一旦作成。
出来たピボットの「データ」とかいてある項目名を横に(計と書いてあるあたり)にドラッグして完成。

小さめな範囲で試行錯誤してみな。

437 :名無しさん@そうだ選挙にいこう:2009/08/06(木) 02:22:25
>>436 はあくまで対処的な方法なのですが、本来は下記のように元のデータの並び方を変えたほうがよいです。

1行目に項目名「客層」、「日付」、「購買点数」として、2行目以降がそのデータのイメージです。
それぞれの行は 「男性若者」、「8月3日」、「5」
などのようにして、だらだらと下にデータを追加する感じです。重複や順番は気にしないでください。たぶん下にえらく長くなるかもしれません。
後はピボットで項目名を行や列に入れて購買点数をデータ欄に入れればOKです。
これがピボットの本来の使い方で、直感的に分かりやすいと思います。

この並べ方の利点は応用がききやすいことです。
項目を増やす(たとえばレジ番号とか購買金額とか曜日とか)してレジ別の集計とか曜日別の売り上げとか簡単に集計できるようになります。

438 :名無しさん@そうだ選挙にいこう:2009/08/06(木) 07:37:30
>>435->>437
アナルほど、行列が逆だったりデータの並びが変でしたか
精進します

439 :名無しさん@そうだ選挙にいこう:2009/08/06(木) 09:30:25
えっと、単純な質問なんですが、例えば、セルA1にB列の最終行の値が
常に入るようにするにはどうすればよいのでしょう?
VBAで該当するコードを書きたいのです。

440 :名無しさん@そうだ選挙にいこう:2009/08/06(木) 09:50:05
>>409

>>404ですが、データ→並び替え→最優先キーで「ふりがな」を試してみました。
しかし私が打ったものは一番リストの一番下に移動してしまいます。
また前任者は入力の際に「'氏名等」と入力していますが、これが関係しているのでしょうか?
手作業で同様に入力しても変化ありません。


441 :名無しさん@そうだ選挙にいこう:2009/08/06(木) 10:10:59
>>439
VBAでいいのか?
cells(1,1)=cells(rows.count,2).end(xlup).value

442 :名無しさん@そうだ選挙にいこう:2009/08/06(木) 10:11:38
>>440
PHONETIC関数やふりがな表示などを使うとどうなっているのでしょう

443 :名無しさん@そうだ選挙にいこう:2009/08/06(木) 10:19:29
>>439
もしくは空白がないことが前提で
=offset(a1,counta(b:b)-1,1,1,1)

444 :名無しさん@そうだ選挙にいこう:2009/08/06(木) 11:31:43
よろしくお願いいたします。
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2002
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 シート間 リンク 変更 $A$1

シート間でリンクを張ったセルの数式を変更したいのですが、
そうすると参照できていたものが参照できなくなってしまいます。
具体的にいうと、
='表1'!$A$1と入っているセルを='表1'!$A$2に変更すると
表1のA2の中身ではなく、='表1!$A$2'という文字列が表示される感じです。
これを表1のA2の中身が表示されるようにしたいのです。
パソコンに詳しくない人に教えるので、できるだけカンタンな方法で
お願いします。

445 :409:2009/08/06(木) 12:25:33
>404,440
まだ、いくつか確認できてない項目があります。
並べ替えは手作業(範囲指定やソートキーの指定はその都度?)ですか?それともVBAマクロ?
ソートキーは具体的にどの項目ですか? また、非表示の項目がありませんか?
VBAマクロによる自動化でなければ、手順書に範囲やソートキーをどうするか書いてあるはず。
VBAマクロならば、当該部分だけでもアップしてもらうしかありません。
「最優先されるキー」は氏名とは別の項目になっている可能性があります。

なお、データの頭に ' を付けても並べ替えには影響しませんでした。


446 :名無しさん@そうだ選挙にいこう:2009/08/06(木) 12:27:44
>>444
セルを右クリック
書式設定
標準
おk

セルをダブルクリック
エンター

447 :名無しさん@そうだ選挙にいこう:2009/08/06(木) 13:19:34
>>446
ありがとうございます。

448 :439:2009/08/06(木) 13:29:08
>441
ありがとうがざいました。

449 :名無しさん@そうだ選挙にいこう:2009/08/06(木) 14:02:29
EXCEL2003です。VBA使用しない。

集計(合計)を計算する時、
「年月日」(1セル内)データを使って、「年月」単位で集計する方法を
教えて下さい。


450 :名無しさん@そうだ選挙にいこう:2009/08/06(木) 14:25:26
>「年月日」(1セル内)
ってどういう状況下全然わからん

451 :名無しさん@そうだ選挙にいこう:2009/08/06(木) 14:58:22
>449

=year(A1)&month(A1)


452 :名無しさん@そうだ選挙にいこう:2009/08/06(木) 15:39:53
【1 OSの種類         .】 WindowsXP SP3
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否

指定した範囲のセルから指定した「数字以下」のセルを赤く染める関数
また、指定したセル番号を羅列して表示してくれる関数を教えてください。
たとえばA1からEの100までお願いします。
どちらか一つの質問でも構いません。
宜しくお願いします。

453 :名無しさん@そうだ選挙にいこう:2009/08/06(木) 15:50:41
さてこれはどうしようかな

454 :名無しさん@そうだ選挙にいこう:2009/08/06(木) 15:51:54
>452
条件付書式じゃだめですか?

>指定したセル番号を羅列して表示してくれる関数
ひょっとして、最初の質問の方の「赤く染めた」セルの列挙ということ?


455 :名無しさん@そうだ選挙にいこう:2009/08/06(木) 16:16:48
>>454
>ひょっとして、最初の質問の方の「赤く染めた」セルの列挙ということ?
そうです

456 :名無しさん@そうだ選挙にいこう:2009/08/06(木) 17:18:04
>>455

マクロ覚えろ。

457 :名無しさん@そうだ選挙にいこう:2009/08/06(木) 18:19:42
VBA無しでは無理だ

458 :名無しさん@そうだ選挙にいこう:2009/08/06(木) 18:40:09
まず1から100までの連番をつくる(オートフィルで簡単にできる)
="A"&A1等の方法でA1からA100ができるので値のみコピぺ
これをコピペしてAをBに置換 以下同様

459 :名無しさん@そうだ選挙にいこう:2009/08/06(木) 19:54:17
【1 OSの種類         .】 WindowsXP SP3
【2 Excelのバージョン   】 Excel2000 →(確認をしたのは2003)
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否

取引先からもらったエクセルファイルのシート(sheet1〜sheet3)と書いているところが
カラフルに色分けされて見やすかったです。
私も試したいのですが、どの操作をすればできるのでしょうか?

460 :名無しさん@そうだ選挙にいこう:2009/08/06(木) 20:10:27
>459

シートタブを右クリック→シート見出しの色

461 :名無しさん@そうだ選挙にいこう:2009/08/06(木) 20:33:23
>>460
ありがとう 手持ちの2003できました。
2000では対応してないかもしれまん
明日会社で確認します。
ありがとうございました

462 :名無しさん@そうだ選挙にいこう:2009/08/06(木) 21:34:30
VBAにて質問です
一つの処理が確実に終わってから次の動作をさせるにはどうすればよいでしょうか?
具体的には↓です。

"あああ"ファイルのセルに"いいい"ファイルへのリンクが張ってあります
1シートの1000セルぐらいをリンクさせています
で、閉じたままでは更新できないので、

Workbooks.Open Filename:="いいい.xls"
Workbooks("あああ.xls").Activate
※あああファイルの内容を値でコピーするコードがここに入っています
Workbooks("いいい.xls").Close SaveChanges:=False

というコードで、一度開いてコピー、閉じるという動作をさせているのですが、
コピーする動作より閉じる動作が早いためか、#REFのエラーを表す文字列で保存されてしまっています
(F8のステップインだとエラーで保存されることはありませんでした。また、古いパソコンほど多くREFエラーが残ってしまいます)

一箇所だけならApplication.OnTime等で解決するのですが、どれだけ待てばよいか分からないというのは不便です。
よろしくお願いします。

463 :名無しさん@そうだ選挙にいこう:2009/08/06(木) 21:39:10
>462
Close する前に msgbox で何か表示させ、[OK]クリックを待つようにしたら?

464 :名無しさん@そうだ選挙にいこう:2009/08/06(木) 21:43:21
>>463
折角の自動化なのに自分が操作しなきゃいけないのはちょっと・・
それに早く押してしまう可能性がある等、根本的に問題が解決できていないと思います。

再計算が全て終わったら次の処理、とか探してみたけど無いですね・・

465 :名無しさん@そうだ選挙にいこう:2009/08/06(木) 21:50:14
俺はそういう時は、えええ.xls用意して
そこに必要な処理を書いたり
それをツールバーのボタンに登録したり
それが正しいかは分からないけど

466 :名無しさん@そうだ選挙にいこう:2009/08/06(木) 21:53:18
>>465
やっぱり同じことになりませんか?
それかシートごとコピーしたほうがいいのかなぁ
それかdowhileでREFが無くなるまで待つか・・


467 :名無しさん@そうだ選挙にいこう:2009/08/06(木) 21:54:44
あれ?
コピーして貼りつけて閉じるでなんでエラーが出る?

468 :名無しさん@そうだ選挙にいこう:2009/08/06(木) 22:07:23
すいません、ちと間違ってました
※あああファイルの内容を値でコピーするコードがここに入っています

※あああファイルの"かかか"シートの内容を同ファイルの"ききき"シートに値でコピーするコードがここに入っています
でした

とりあえず
一つの処理が確実に終わってから次の動作をさせる方法
はないということで良いんでしょうか?

469 :465:2009/08/06(木) 22:07:37
>>466
ちゃんと読んで無かった
件数が少ない場合は置きないのか
先に閉じるなんて経験した事無かった

470 :名無しさん@そうだ選挙にいこう:2009/08/06(木) 22:10:28
いやifで記入が出来たら閉じるにすればいんじゃね

471 :名無しさん@そうだ選挙にいこう:2009/08/06(木) 22:13:21
これは仕様上の難問

472 :名無しさん@そうだ選挙にいこう:2009/08/06(木) 22:19:04
【1 OSの種類       】 WindowsXP Home Edition SP3
【2 Excelのバージョン    】 Excel 2007 (12.0.6504.5001) SP2 MSO (12.0.6425.1000)
【3 VBAが使えるか     】 いいえ
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 Exsel 複数選択
Ctrlを押しながらの複数選択において、2007だと選択したセルの色が微妙に変わりますが、これでは解りにくいです
2000のように、複数選択したセルの枠線を、単独選択したセルと同じように太いままにしたいのですが
これはどうすれば設定出来るのでしょうか

473 :418:2009/08/06(木) 22:26:36
>>428
大先生さま、ありがとうです。
感動(完動)しますた。

474 :名無しさん@そうだ選挙にいこう:2009/08/06(木) 22:31:55
>>470
しかないですかねぇ
>>471
ですよねぇ

コード自体もう少し考え直して見ます


475 :名無しさん@そうだ選挙にいこう:2009/08/07(金) 00:34:42
1 定期的にDoEvent
2 常駐ループで条件満たすまでSleep
3 処理終了したら戻り値取得(ただしAPI)

どれかでぐぐれ

476 :名無しさん@そうだ選挙にいこう:2009/08/07(金) 03:08:14
当方、ノートパソコンにてウィンドウズXPをつかっています。

エクセルのバージョンは2002です。
OCRソフトでPDF文書をエクセルに転写したのですが、
日付や数値などのある部分がどうしても枠組みされたセルに
収まらずにテキストボックスの中に入って10個前後転写されてしまいます。

このテキストボックスの真下のセルの中に一つ一つコピペではなく、自動的に
内容を転写できるような方法などはあるんでしょうか?もしご存知の方が
いらっしゃいましたらよろしくお願い致します。

ググって調べてみたのですが、セルの内容をテキストボックスに表記するという
方法はよくでてくるのですが、それを逆に移すというのが出てこないのです。

477 :名無しさん@そうだ選挙にいこう:2009/08/07(金) 07:48:16
>>475
ありがとうございます!!!!!!1
これでなんとかなりそうです


478 :449:2009/08/07(金) 09:11:19
>>450,451
レスありがとうございます。


479 :名無しさん@そうだ選挙にいこう:2009/08/07(金) 13:36:22
>476
Sub hoge()
  For Each sh In ActiveSheet.Shapes
    If sh.Type = msoTextBox Then
      ActiveSheet.Shapes(sh.Name).Select
      i = 1
      Do While Cells(i, 1).Top < Selection.ShapeRange.Top + Selection.ShapeRange.Height
        i = i + 1
      Loop
      j = 1
      Do While Cells(1, j).Left < Selection.ShapeRange.Left
        j = j + 1
      Loop
      Cells(i, j) = Selection.Characters.Text
      'Selection.Delete ' 元データを消す時
    End If
  Next
End Sub


480 :名無しさん@そうだ選挙にいこう:2009/08/07(金) 14:40:57
エクセルのフリースケジュールを使おうと思ってDLしたんですが、
パスワードがわからなくて書き込めません。。。
http://www.vector.co.jp/soft/win95/personal/se309568.html
ここから落としたんですけど、手順通りやってもパスワードがなかったので
手順通りにいきません。

どうやったら使えるんでしょうか?
教えてください、エクセルな人。

481 :名無しさん@そうだ選挙にいこう:2009/08/07(金) 14:48:31
 
  知らんがな

482 :名無しさん@そうだ選挙にいこう:2009/08/07(金) 17:47:14
Excel2007でシェイプの位置合わせするときに
shape.left=range(10,10).left
ってやると数ポイントずれる人いる?
Excel2000ではピッタリになるのにどうして

483 :名無しさん@そうだ選挙にいこう:2009/08/07(金) 18:33:30
俺も2000で作った線引きマクロが
2007でずれるんで、何で?って
だいぶ前にここで訊いたけど
知らんがなと言われた。

484 :482:2009/08/07(金) 19:00:52
知らないならしょうがないw
今ちょっと色々試してみたんだけど見てみたんだけどズーム倍率を100%にしてからやるといい気がしてきた

シェイプのLeft値がズームの倍率変えると微妙に変わってる。セルのLeft値は倍率では変わらなかったから、これが原因かもしれない
とりあえず ActiveWindow.Zoom = 100 にしてからやったほうがいいかな
だとしたら2007めちゃめちゃ糞仕様じゃん
とりあえず試してみて

485 :439:2009/08/07(金) 21:54:04
Private Sub commandbutton1_click()                             
Range("A18:i28").Select
Selection.ClearContents
Dim lRow As Long
With Worksheets("実験")
lRow = .Range("l" & Rows.Count).End(xlUp).Row
.Range("l" & lRow + 1).Value = TextBox1.Value
End With
TextBox1.Value = ""
TextBox1.SetFocus
With Worksheets("実験")
lRow = .Range("M" & Rows.Count).End(xlUp).Row
.Range("M" & lRow + 1).Value = TextBox2.Value
End With
TextBox2.Value = ""
TextBox2.SetFocus
Unload UserForm1
UserForm1.Show
End Sub

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 12 Then
Call Adfilter2 '←マクロ名です
End If
End Sub



486 :439:2009/08/07(金) 21:56:15
続き

Sub Adfilter2()
Cells(1, 2) = Cells(Rows.Count, 12).End(xlUp).Value
Cells(2, 2) = Cells(Rows.Count, 13).End(xlUp).Value
Range("A4:I14").AdvancedFilter _
Action:=xlFilterCopy, _
CriteriaRange:=Range("B1:B2"), _
CopyToRange:=Worksheets("実験").Range("A18"), _
Unique:=False

End Sub

というコードですが、user formのcommand buttonを2回クリックしないとうまく検索がかかりません
どこがおかしいでしょうか?

487 :名無しさん@そうだ選挙にいこう:2009/08/07(金) 22:52:45
キッタネェ〜コードだな。
見る気がしない・・・

488 :名無しさん@そうだ選挙にいこう:2009/08/07(金) 22:58:51
わざわざフォームを開閉してるからじゃね

489 :名無しさん@そうだ選挙にいこう:2009/08/07(金) 23:01:38
>485

確かにひどすぎるな。
これでは回答しても理解できないだろう。
丸投げはお断り。

一冊本でも買って基本の勉強しろ。
あるいは丸投げOKの暇な人を待て。


490 :名無しさん@そうだ選挙にいこう:2009/08/07(金) 23:05:57
>>485
L列が変わった時にフィルタマクロを呼び出してるじゃん
M列もフィルタ条件じゃないの?


きったねえコードには同意だが
少し前に見たこんなコードがらみの質問者と多分同じなんだろうけど
よくここまでたどりついたなあと変に関心する

491 :名無しさん@そうだ選挙にいこう:2009/08/07(金) 23:06:21
こんな程度でも一応マクロを作れるのが
最大の利点でもあり最大の欠点でもある。

492 :名無しさん@そうだ選挙にいこう:2009/08/07(金) 23:47:53
Call Adfilter2 '←マクロ名です

なめとんのか!

493 :名無しさん@そうだ選挙にいこう:2009/08/08(土) 00:11:44
おまえら人を見下して何がしたいんだ
コードが綺麗とか汚いとかどーでもいいだろ
もっと華麗なコードを知ってる僕ってすげーだろな主張とか更にどーでもいいだろ

あとエクセル総合だけど、VBAは専用スレがあるから次からはそっち行ったほうがいいかも

494 :名無しさん@そうだ選挙にいこう:2009/08/08(土) 00:22:49
検索掛けても見あたらないけど
板はどこ

495 :名無しさん@そうだ選挙にいこう:2009/08/08(土) 00:37:29
プログラム
一度こっちに張ったんだから、今回はこっちで聞くべきだけどね

スレ違いってわけでもないからマルチ扱いされる
ってかするから

496 :名無しさん@そうだ選挙にいこう:2009/08/08(土) 00:38:40
Excel VBA質問スレ Part12
http://pc12.2ch.net/test/read.cgi/tech/1247566074/

497 :名無しさん@そうだ選挙にいこう:2009/08/08(土) 03:35:34
>>479
ありがとうございます。VBAはまだよくわからないのですが、調べて
使わせてもらいます。

498 :439:2009/08/08(土) 05:37:37
数々の叱責と少しのお褒めの言葉をありがとうございます。

で、具体的には何処がまずいですか?

499 :439:2009/08/08(土) 07:49:45
あと、綺麗に書き直すとどんな風になりますか?
自分でもまだるっこしいコードだという実感はあるので。

ちなみにこのスレで検索関係の質問してるのはほぼ私です

500 :名無しさん@そうだ選挙にいこう:2009/08/08(土) 08:52:20
うごけばそれでいいんじゃない?
保守のために可読性が必要なわけで、保守等しないのなら別に可読性低くても構わないかと

501 :439:2009/08/08(土) 09:40:49
だから、コマンドボタン一回クリックで動くようにしたいんです

502 :名無しさん@そうだ選挙にいこう:2009/08/08(土) 09:42:15
キレタ(;゚д゚)ァ

503 :名無しさん@そうだ選挙にいこう:2009/08/08(土) 09:43:17
コード実行時にF8すれば挙動わかるんじゃね

504 :名無しさん@そうだ選挙にいこう:2009/08/08(土) 09:44:47
>501

動けば良いならプロシージャを2回まわせば。

505 :名無しさん@そうだ選挙にいこう:2009/08/08(土) 10:51:29
>>504

正解

〜終了〜

506 :名無しさん@そうだ選挙にいこう:2009/08/08(土) 10:57:50
せっかくコード頑張って読んで回答してるのに・・・
if target.column=13 thenは試してみた?

507 :439:2009/08/08(土) 11:09:20
お結局雑魚の集まりでしたっと
もうこねー

508 :名無しさん@そうだ選挙にいこう:2009/08/08(土) 12:27:23
VLOOKUP関数で範囲の中に複数の検索値があったら、一番上

509 :名無しさん@そうだ選挙にいこう:2009/08/08(土) 12:29:17
すみません。再送します

VLOOKUP関数で範囲の中に複数の検索値があった場合、一番上の行のセルが導き出されますよね?
これを任意の行のセルが出されるように設定することってできないんですか?


510 :名無しさん@そうだ選挙にいこう:2009/08/08(土) 12:39:20
できないし できたところで意味がない
ユニークな検索値を設定しよう

511 :名無しさん@そうだ選挙にいこう:2009/08/08(土) 12:44:38
EXCEL2007、VistaUltimateです。

書式コピーのボタンについての質問です。

(1)セルや行をコピーすると「書式コピー」のボタン(ウィザード?)が
 出てきます。これがでないようにするにはどうすれば良いのでしょうか?

(2)「書式コピー」のボタンがツールバー(リボン?)に見当たりません。
 「書式コピー」したい時には、どうすれば良いのでしょうか?

「書式コピー」アイコンが必要ない時頻繁に出て来て、
使いたい時に見つけにくくて困っています。

宜しくお願いします。

512 :名無しさん@そうだ選挙にいこう:2009/08/08(土) 12:56:20
>>509
3番目の"xxx"の位置のB列を求めたければ{=INDEX(B1:B10,SMALL(IF(A1:A11="xxx",ROW(A1:A10)),3))}だな
式がひとつならこれでいいだろう。

513 :名無しさん@そうだ選挙にいこう:2009/08/08(土) 13:13:23
>>511
> (1)セルや行をコピーすると「書式コピー」のボタン(ウィザード?)が
>  出てきます。これがでないようにするにはどうすれば良いのでしょうか?


なんのことかわからない
何をどうやってコピーすれば何がでるのか俺にはわからなかった
普通にコピーしても普通は何も出ない


>(2)「書式コピー」のボタンがツールバー(リボン?)に見当たりません。
>  「書式コピー」したい時には、どうすれば良いのでしょうか?

> 「書式コピー」アイコンが必要ない時頻繁に出て来て、
> 使いたい時に見つけにくくて困っています。

普通にホームタブの左の方にあるが、無茶みつけやすい場所に。


なんかよっぽど変わった環境で使ってるのか?

514 :名無しさん@そうだ選挙にいこう:2009/08/08(土) 13:23:04
>>509
念のため補足しとくと>>512を使うならctrl+shift+enterで確定させんといけんよ
個人用ブック以外ではできるだけ避けた方がいいかも
メンテできる人少ないから

しかししばらく見なかった配列使いさんが出てくるとはw

515 :名無しさん@そうだ選挙にいこう:2009/08/08(土) 13:40:22
かわいそうなイマドキの子がいるけどなんで名前が

516 :名無しさん@そうだ選挙にいこう:2009/08/08(土) 14:00:24
>>514
配列数式なんてほとんど使えないからねぇ。
「メンテ出来ないかも」との理由で不要なINDEXつけてるやついるが、どうせほとんどクソな式で使えないんだからそれは杞憂だ。

517 :名無しさん@そうだ選挙にいこう:2009/08/08(土) 14:34:38
いや杞憂して作ってるほうがまだいい。
配列数式を使いつつ杞憂して作ったブックの評価がB-だとすればなんも考えず作ったブックはC--くらいの差はあると思う

とは言いながら自分が配列数式使うときは杞憂もなんもしないなめったに使わないしめんどくさいし

518 :439:2009/08/08(土) 14:54:54
>507
こいつは偽物です!

皆さんアドバイスありがとうございます。
もう少し精進して、皆さんと同じレベルになれるよう頑張ります。

519 :439:2009/08/08(土) 15:00:16
変な偽者が沸いてます、みなさん注意して下さい。

520 :名無しさん@そうだ選挙にいこう:2009/08/08(土) 15:01:27
つーか配列数式使ったこと無いな
作業列の方が早いし確実
あと配列数式って編集しにくくなかったっけ?一部だけ編集が出来なかったような。あれ最悪だ

521 :名無しさん@そうだ選挙にいこう:2009/08/08(土) 15:56:16
>>520
一部だけ編集出来ないのはどっちかというとまぁ許せる配列数式。
ズリズリ出来る配列数式は駄目な配列数式。


522 :名無しさん@そうだ選挙にいこう:2009/08/08(土) 16:00:12
>ズリズリ出来る
?

523 :名無しさん@そうだ選挙にいこう:2009/08/08(土) 16:05:30
配列数式なんて年寄のボケ防止のパズルだよ。
実用になるものはほとんどない。
お年寄りは大事にしないといけないから生温かい目で見守ってあげましょう。

524 :名無しさん@そうだ選挙にいこう:2009/08/08(土) 16:11:24
>>520-521
一部が編集できない配列数式ってどんなの?

525 :名無しさん@そうだ選挙にいこう:2009/08/08(土) 16:29:13
>>524
たとえばA1:A10000の数値が重複してたら"重複"とB列に表示したいとき
B1:B1000を選択して=IF(FREQUENCY(A1:A10000,A1:A10000)>1,"重複","")としてCtrl + Shift + Enter
これはまぁいい配列式の部類だ。
配列数式じゃないけど=IF(COUNTIF(A$1:A$10000,A1)>1,"重複","")はあまり良くない式だ。

526 :名無しさん@そうだ選挙にいこう:2009/08/08(土) 16:31:40
525はB1:B1000を選択してじゃなくてB1:B10000を選択しての間違いな。

527 :名無しさん@そうだ選挙にいこう:2009/08/08(土) 16:37:23
意味分らん

528 :名無しさん@そうだ選挙にいこう:2009/08/08(土) 19:02:28
すまん、>>525の式は間違いな。
実際には=IF(FREQUENCY(A1:A10000,A1:A10000)=1,"","重複")なのは分っていたが
ここに書き込むとき"重複"を先に書きなおして間違ってしまったよ。


529 :名無しさん@そうだ選挙にいこう:2009/08/08(土) 19:03:41
偽物ってかレス番間違えただけな気もするが
まあもうこないらしいしどうでもいーや

530 :名無しさん@そうだ選挙にいこう:2009/08/08(土) 19:04:33
書き忘れ。
>>525はこのようにするつもりだった。
=IF(FREQUENCY(A1:A10000,A1:A10000)<>1,"重複","")
これなら正しい。

531 :名無しさん@そうだ選挙にいこう:2009/08/08(土) 22:31:51
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 はい
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 マクロ Excelファイルのコピー

お願いします。
A B C D というExcelファイルがあり、AというExcelファイル
で問題無く作動するマクロをまず作りました。
その後、他のBCDでも全く同じ作業をするため、Aを基本フォー
マットと考えて、Aというエクセルファイルをコピーし、コードの
中のファイル名等も修正しているのですがBCDというファイル
名では同じように作動してくれません。

しかしそのAというファイルをフォルダの外に移し、さらにBという
ファイルをAという名前に変えると問題無くマクロが動作します。

コードの内容としては、画像ファイルの指定されたフルパスから
画像を挿入し、次の行に移り画像ファイルをまた挿入するの繰り
返し作業です。

原因が見当もつかず困っております。
お手数ですが、宜しくお願いします。


532 :名無しさん@そうだ選挙にいこう:2009/08/08(土) 22:44:13
>>531
ファイル名変えれば動くなら
どう考えたってファイル名が原因だろ
コード晒さないと具体的にどうこうは言えんけど

533 :名無しさん@そうだ選挙にいこう:2009/08/08(土) 22:48:36
エスパーなら分かるけど

534 :531:2009/08/08(土) 22:51:12
汚いコードですみません。宜しくお願いします。
Sub gazouire()
Dim seru As Variant
Dim basyo As Variant
Dim iseru As Long
Dim basyoi As Variant
Dim iserui As Long
Dim d As Variant
Dim i As Variant
d = Range("A65536").End(xlUp).Row
For i = 1 To d
basyo = "G" & (4 + iseru) seru = "A" & (4 + iseru)
basyoi = "I" & (4 + iseru) serui = "B" & (4 + iseru)
owari = "J" & (4 + iseru)
Range(basyo).Select
If Range(owari).Value = "" Then GoTo E:
ActiveSheet.Pictures.Insert(Range(seru).Value).Select
On Error Resume Next
Selection.ShapeRange.LockAspectRatio = msoFalse
Selection.ShapeRange.Height = 60#
Selection.ShapeRange.Width = 79.5
Selection.ShapeRange.Rotation = 0#
Range(basyoi).Select
ActiveSheet.Pictures.Insert(Range(serui).Value).Select
On Error Resume Next
Selection.ShapeRange.IncrementLeft 12#
Selection.ShapeRange.IncrementTop 3#
iseru = iseru + 1
Next i
E:
End Sub


535 :名無しさん@そうだ選挙にいこう:2009/08/08(土) 22:53:20
すみません、seruとseruiの値には画像へのフルパスが入っています。


536 :名無しさん@そうだ選挙にいこう:2009/08/08(土) 22:56:53
Workbooks(A).worksheets(B).Range("A1", Range("Z65536")).Copy Workbooks(C).worksheets(D).Range("A1")
ブックAのA1セル〜Zの最下行までをブックBへコピペしたいのですがエラーになります。
どこがだめなのでしょうか?

537 :名無しさん@そうだ選挙にいこう:2009/08/08(土) 22:57:40
>>534
ざっと見てファイルがらみの指定ないじゃん
ファイル名修正したってどこのこと?

538 :名無しさん@そうだ選挙にいこう:2009/08/08(土) 23:00:40
>>537
すみません、
ファイル名については、このマクロを使う前段階として、
Accessで取り込んだデータ→このExcelファイル指定セルへ
とやっており、その修正も行ったので自分の中でごっちゃに
なってました。

Access自体は値の挿入以外Excelファイルに関わらないので
ファイル名修正云々は無かったことにして下さい。


539 :名無しさん@そうだ選挙にいこう:2009/08/08(土) 23:03:57
>>536
ちょっとだけエスパーしたがこれでは駄目?
Workbooks(A).worksheets(B).Range("A1", Range("Z65536")).Copy Workbooks(C).worksheets(D).Range("A1", Range("Z65536"))

540 :名無しさん@そうだ選挙にいこう:2009/08/08(土) 23:25:54
>>538
このコードでAではほんとに動作するんなら他のブックでも動作するはず
アクティブシートへの指定ばかりだろ?
ひょっとしてコード書いてる場所がおかしいとか?

541 :名無しさん@そうだ選挙にいこう:2009/08/08(土) 23:43:23
>>540
画像のフルパス以外はそのブックの中だけ完結していると思うのですが・・・
他のブックで同じようにやると下記が黄色くマークされます。

ActiveSheet.Pictures.Insert(Range(seru).Value).Select

ただ、テストもかねて、Aと同じ内容で値をすべて入れているので、
Aと全く同じ画像が入るようにしている状況で、画像が無い・パスが
間違っている、という事は有り得ない状況です。
ちなみにブックは全て同じフォルダ内。
テストという事で、同時に起動したりはしていません。


542 :531:2009/08/08(土) 23:49:18
追記
コードとしては、コマンドボタンを押すと、上記マクロが動作する以外は
特に設定していませんし、テスト段階では、そのボタンからではなく、
ツール→マクロ→マクロ→マクロ名実行でやっていました。
マクロの保存先の問題でしょうか?現在「開いているすべてのブック」
となっておりますが、これは変えてみたりしましたが、結果に変わりは
ありませんでした。

543 :名無しさん@そうだ選挙にいこう:2009/08/09(日) 00:15:55
>>541
> ActiveSheet.Pictures.Insert(Range(seru).Value).Select
ここで止まるならここのせいだろ。
Range(seru).Valueは何をさしてる?
Insert(seru)だったらいけたりしない?
この段階でのアクティブシートが正しいかどうかと変数seruに何が入ってるかだな

544 :名無しさん@そうだ選挙にいこう:2009/08/09(日) 00:24:38
どうせズコーな理由に100ペリカ

545 :名無しさん@そうだ選挙にいこう:2009/08/09(日) 00:31:33
>>543
seru = "A" & (4 + iseru)
で、このRange(seru).Valueはフルパス(例 C:\画像\XXX.JPG 等)の値が
入っているセルの値です。
Insert(seru)でも駄目なようです。

546 :名無しさん@そうだ選挙にいこう:2009/08/09(日) 00:42:26
フォーカスとかファイルのパスの問題だと思うけど
コードを見てみないとなんとも、、
そーゆー時はエラー行のひとつ前に
Cells(y,x)=Range(seru).Value
とか入れて、値を確かめてみるのも手

547 :名無しさん@そうだ選挙にいこう:2009/08/09(日) 07:48:37
>>546
ウォッチ式使えよww初心者かw

548 :名無しさん@そうだ選挙にいこう:2009/08/09(日) 07:53:49
>>534
basyo = "G" & (4 + iseru) seru = "A" & (4 + iseru)
basyoi = "I" & (4 + iseru) serui = "B" & (4 + iseru)
動かす以前にここで構文エラー出るんだけど
basyo = "G" & (4 + iseru) seru = "A" & (4 + iseru)
この三つを"A" & (4 + iseru)の値にしたいなら
"G" & (4 + iseru) seru = "A" & (4 + iseru)
basyo = "G" & (4 + iseru) seru
と二行に分ける必要がある

549 :531:2009/08/09(日) 09:05:26
>>546
ファイルのフルパスが入っています。コードは>>534にある物です。

>>548
書き込みの行制限のため、並べて表記してしまいました。
実際には改行して下記のとおり書いています。
basyo = "G" & (4 + iseru)
seru = "A" & (4 + iseru)
basyoi = "I" & (4 + iseru)
serui = "B" & (4 + iseru)
owari = "J" & (4 + iseru)
紛らわしくて御免なさい。

ブックをコピーすると急に使えなくなるのが全く理解出来ず・・・・


550 :名無しさん@そうだ選挙にいこう:2009/08/09(日) 10:13:08
>>545
ほんとにパスが代入されてるかが知りたいから>>545>>546見て

俺もどうせズコーな理由に10000ジンバブエドルと言いたいがなかなかたどり着かないもんだな

551 :名無しさん@そうだ選挙にいこう:2009/08/09(日) 10:14:37
安価間違えた>>549

552 :名無しさん@そうだ選挙にいこう:2009/08/09(日) 11:03:45
シートにファイルのフルパス書いてるんだろ?
そこのファイル名がA.xlsになってるんだろ?

553 :名無しさん@そうだ選挙にいこう:2009/08/09(日) 11:31:22
つーかコードを略さずに全部あげてくれ
あーだこーだ予想するのはダルイ

554 :531:2009/08/09(日) 11:47:54
一応出来るようにはなりました。
Accessから吐き出されるデータ(又はAccessへ入れたデータ?もしくは
データ型)がおかしかったみたいです。
始め、一連の流れが成功するデータテーブルから「テーブル構造のみ」
コピーし、さらに中のデータはコピペでエクセルから貼り付けました。
今回は一度成功するデータテーブル以外を全て削除し、もう一度、
今度は「テーブル構造とデータ」でコピーし、テーブル名を該当する
よう付け直しました。
元データのAccessへのデータの入れ方で成否が変わるようです。
Excelファイルをインポート→エラー
Excelファイルから行でコピーしてAccessのテーブルへ
ペースト(この時書式等は成功した場合に統一)→エラー
成功するAccessテーブルからExcel形式でエクスポートしさらにインポート→エラー
成功するAccessテーブルをテーブル構造とデータをコピーし、一度全てのレコードを
削除した後Excelから数十行をコピー→エラー
成功するAccessテーブルをテーブル構造とデータをコピーし、Excelより1行ずつ
新たなレコードをコピペ→成功
この違いが何なのかは解らないのですが・・・
皆様、お手数をおかけし申し訳御座いません。

>>553
コードは>>534
basyo = "G" & (4 + iseru)
seru = "A" & (4 + iseru)
basyoi = "I" & (4 + iseru)
serui = "B" & (4 + iseru)
owari = "J" & (4 + iseru)
の改行以外は略してはいなかったのですが、一応これが
全てのコードになります。

555 :名無しさん@そうだ選挙にいこう:2009/08/09(日) 13:54:31
>>554
できたんならそれでいいけど
データ型のファジーさが許される度合いは
Excelワークシート>ExcelVBA>Access
なのは覚えといた方がいい
あえて誰もつっこんでないが提示されたコードのデータ型のあやうさから見て
Accessとの連携には危なっかしいなーと思う

まあ動けばうるさいことはいいたくない立場だから今回はそれでいいんでない

556 :名無しさん@そうだ選挙にいこう:2009/08/09(日) 14:12:19
Variant宣言するぐらいならしなくていいと思うんだよなぁ

557 :名無しさん@そうだ選挙にいこう:2009/08/09(日) 14:23:24
>>556
何もしないよりはした方がいいだろ
宣言強制にして走らせればバグ取りがずっと楽になる

558 :名無しさん@そうだ選挙にいこう:2009/08/09(日) 14:28:15
この量のコードなら宣言せずにちゃっと終わらせた方が楽かな、と
これは好みになるかねぇ

559 :名無しさん@そうだ選挙にいこう:2009/08/09(日) 14:58:28
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2002
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 Excel 日付 おかしい など

日付の表示がおかしくなりました。日付を入力する列のセルの書式設定を、
ユーザー定義でyyyy/mm/ddにしてリストを作製していて、以前は問題ありませんでした。
たとえば090809と入力すると、2009/08/09と表示される、といった具合でうまくいっていたのが、
数日前から、特にエクセルの設定などいじっていないのに、2148/08/15とずっと未来の日付が表示されます。
(既に入力済みの日付は書き換えない限りは以前のままで表示されています)
セルの書式設定をユーザー定義から既存のものに戻しても同様に、未来の日付になります。
調べてみてもこのような症状は他に見つからず、インストールし直してもやはり以前のようになりません。

直し方、および表示がおかしくなった原因について、よろしくお願いします。

560 :531:2009/08/09(日) 15:12:27
>>556-558
宣言については、正直どうしても、とか、>>557さんが言うように
バグ取りのために、とか考えてではなく、参考にしていた本を
読んでいくうちに、「宣言しなきゃ駄目・動かない」みたいに
勝手に思い込んでわざわざ書いてました。

>>555
そういうそれぞれのデータ型ももう少し踏み込んで考えな
きゃいけなかったんですね。勉強になりました。有難う御座います。

皆様、アドバイス有難う御座いました。

561 :名無しさん@そうだ選挙にいこう:2009/08/09(日) 15:13:57
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2007
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 並び替え

曜日 日付
金  99/01/01
月  99/01/04
火  99/01/05



金  99/01/29
月  99/02/01
火  99/02/02



金  99/02/26
月  99/03/02
火  99/03/03


のように平日のみの日付から、
月始(99/01/01、99/02/01、99/03/02)を
抜きだすにはどうすれば良いでしょうか?
よろしくお願いします。

562 :名無しさん@そうだ選挙にいこう:2009/08/09(日) 15:30:43
>560
>391 で礼言ったわりには全然改善してないね。
For Next で i を回してるのに i 使ってないし
seru が Long なら当然 i, d は Long だし
Accessと受け渡しの不具合より、
マクロを見直した方がいいと思うよ。

563 :名無しさん@そうだ選挙にいこう:2009/08/09(日) 15:45:45
Excel2007のテーブル上で抽出を試みているのですが、
17:00:00
17:01:00
17:02:00
・・・
とあるデータの中から「00:00(で終わる)」という条件でフィルタすると全部消えてしまいます。
なにがいけないのでしょう?

564 :名無しさん@そうだ選挙にいこう:2009/08/09(日) 15:53:43
時間の値は1未満の小数。表示形式でフィルタリングはできない。
別のセルにTEXT(A1,"00:0:00")で抜き出すとかしないと。

565 :名無しさん@そうだ選挙にいこう:2009/08/09(日) 16:16:24
>>559
元のシートには入力と同時にyyyy/mm/ddに形式になるマクロが入ってたのでは?
Alt+F11でVBE開いたら↓こんなのない?

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

(中略)

End Sub

566 :名無しさん@そうだ選挙にいこう:2009/08/09(日) 16:18:05
>>561
作業列使ってもいい?
=DAY(B1)で日付だけとりだして1のみをオートフィルタ。

567 :名無しさん@そうだ選挙にいこう:2009/08/09(日) 16:19:16
>>559
090809は90809になる。これはエクセル上2148/08/15として認識される
>090809と入力すると、2009/08/09と表示される、
は何かを勘違いしてる。エクセルではマクロを使ってない限りそんな挙動にはならない
直し方は無い。09/08/09と入力すれば2009/08/09と表示される
またmid関数とtextやyearを組み合わせれば別セルに表示できる。必要なら作ってあげる
>>560
コードの始めにOption Explicit
を漬けると必須。付けなきゃ宣言は無くてもいい
ちなみにその場合は全部variantで宣言したことになる
variantと書かなくてもvariantになる。カンマで区切ってまとめることも出来る
Dim seru
Dim basyo,basyoi,d,i As Variant
>>561
土日以外ってこと?
曜日がA1、日付がB1なら
C1=IF(AND(WEEKDAY(B1)<>1,WEEKDAY(B1)<>7),B1,"")
D1=MIN(C:C)
D2=MAX(C:C)
D1D2は表示形式変えないと30000ぐらいの数字が表示されると思う

568 :567:2009/08/09(日) 16:20:15
>>561
ごめんちゃんと読んでなかった


569 :名無しさん@そうだ選挙にいこう:2009/08/09(日) 16:22:03
>>566
1日が平日だとダメなんだぜ

570 :567:2009/08/09(日) 16:39:18
>>561
よく見たら連続した日付じゃないのか・・まぁいいや

別シートのB列に連続した日付データを作り、
C1=IF(DAY(B1)=1,CHOOSE(WEEKDAY(B1),B1+1,B1,B1,B1,B1,B1,B1+2),"")
下にオートフィルタ

後はvlookupでこのシートのC列を引っ張ってくる。該当無ければエラーになる
>>563
B1=(MINUTE(A1)=0)*(SECOND(A1)=0)
分と秒が0なら1になるから、オートフィルタで1を取り出す

ちなみに17:00:00は17/24という数字なので00:00(0)で検索しても引っかからない
一度コピーして値で貼り付けした後なら可能かもしれない

571 :名無しさん@そうだ選挙にいこう:2009/08/09(日) 16:43:02
workday関数で一日の1日前から1日後の稼働日を求める感じでいけんじゃね?
=workday("1/1"-1,1)みたいな

572 :567:2009/08/09(日) 16:50:15
>>561
C1=IF(MONTH(B1)=MONTH(B2),"",B2)
下にオートフィルで完了
完全にボケてた

573 :名無しさん@そうだ選挙にいこう:2009/08/09(日) 17:16:56
>561

程度の低い回答者に当たっちゃったねw

574 :名無しさん@そうだ選挙にいこう:2009/08/09(日) 17:32:36
>>559
>>565がいうようにマクロが入ってたんだろ
シートにではなくPERSONAL.xlsに入ってたんじゃないかなあと予想
最近パソコン変えたりとかしてない?

575 :名無しさん@そうだ選挙にいこう:2009/08/09(日) 17:38:06
>>567
> variantと書かなくてもvariantになる。カンマで区切ってまとめることも出来る
> Dim seru
> Dim basyo,basyoi,d,i As Variant

嘘は書いてないが質問者が混乱しそう。
Dim basyo,basyoi,d,i As Long
はiだけLongになる。他の変数は型宣言省略してるからVariant
>>567の例は全部Variant

576 :名無しさん@そうだ選挙にいこう:2009/08/09(日) 18:34:32
Option Explicitしてなければ、コードを見てやる価値もない。


577 :561:2009/08/09(日) 19:00:47
せっかく回答していただいたのですが、
私のレベルでは理解できません。
もう少し簡単な方法はないですか?
よろしくお願いします。

578 :名無しさん@そうだ選挙にいこう:2009/08/09(日) 19:07:57
>>577
ざっと見たかんじ>>572が簡単な回答。
>>572のなにが理解できないか質問するのが早道かも

579 :名無しさん@そうだ選挙にいこう:2009/08/09(日) 19:16:22
いやよく見たら>>572も間違ってるのか
日付がB列に並んでるとするだろ
C1に=IF(MONTH(B1)<>MONTH(B2),B1,"")
って入れるじゃん
それを下にオートフィル(わからなければ手動コピペ)

でどうか?

580 :名無しさん@そうだ選挙にいこう:2009/08/09(日) 19:18:09
このスレの人たち優しいな・・・

581 :名無しさん@そうだ選挙にいこう:2009/08/09(日) 19:19:33
いやこれも違うな
なんか回答間違うの伝染したか

582 :名無しさん@そうだ選挙にいこう:2009/08/09(日) 19:28:56
なにやってんだか

583 :名無しさん@そうだ選挙にいこう:2009/08/09(日) 19:29:44
>>577
というわけで>>579は無視して>>578を見れ
完全ではないけど正解に近いから

584 :名無しさん@そうだ選挙にいこう:2009/08/09(日) 20:24:30
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2002,2007
【3 VBAが使えるか    .】 はい
【4 VBAでの回答の可否】 可
【5 検索キーワード     】vlookup 元データ 編集 マクロ

元になるデータがあって
別シートで検索値をを入力してVLOOKUPで呼び出す式があります
編集ボタンを追加して呼び出したシート内で値を編集したら
元データのほうに反映ということがやりたいです。
マクロの動きとして
いったんシートを丸ごとコピーして編集用のシートを作る
反映ボタンで元データを変更した値にしたいのですが……
検索値=元データのNoが上手く探せず
横に入ってるデータを変更もうまく行かない状態です

力をお貸しください

ttp://www.dotup.org/uploda/www.dotup.org18971.zip.html

585 :561:2009/08/09(日) 21:33:19
なんとかできました。ありがとうございます。

586 :名無しさん@そうだ選挙にいこう:2009/08/09(日) 22:17:52
>>584
簡単なのは、呼び出した時に元データの行をセルに書き込
変更するときに書き込みを参考

587 :名無しさん@そうだ選挙にいこう:2009/08/09(日) 23:12:47
質問者はまだしも回答者も質が落ちとるなぁ〜

夏休みだからかな?

588 :名無しさん@そうだ選挙にいこう:2009/08/09(日) 23:28:14
>>584
Sub Macro1()
gyo = Sheets("元データ").Range("A65535").End(xlUp).Row
For i = 1 To gyo
If Sheets("元データ").Cells(i, 1) = Sheets("表示用").Range("k5") Then
Sheets("元データ").Cells(i, 2) = Sheets("表示用").Range("e4")
Sheets("元データ").Cells(i, 3) = Sheets("表示用").Range("e8")
Sheets("元データ").Cells(i, 4) = Sheets("表示用").Range("e12")
Sheets("元データ").Cells(i, 5) = Sheets("表示用").Range("i4")
Sheets("元データ").Cells(i, 6) = Sheets("表示用").Range("i8")
End If
Next

Sheets("表示用").Range("e4").Formula = "=VLOOKUP($K$5,元データ!A:F,2,0)"
Sheets("表示用").Range("e8").Formula = "=VLOOKUP($K$5,元データ!A:F,3,0)"
Sheets("表示用").Range("e12").Formula = "=VLOOKUP($K$5,元データ!A:F,4,0)"
Sheets("表示用").Range("i4").Formula = "=VLOOKUP($K$5,元データ!A:F,5,0)"
Sheets("表示用").Range("i8").Formula = "=VLOOKUP($K$5,元データ!A:F,6,0)"
End Sub

Sheets("元データ").Cells(i, 1) Sheets("表示用").Range("k5")
この二つが同じなら表示用を元データに放り込んで、最後に表示用のvlookupの式に戻す
コマンドボタンにマクロを登録してこのマクロをcallで呼び出せば使いやすいかなぁ
チェンジイベントだと下手に変えてしまって戻せなくなりそう。そんなことないかな

589 :名無しさん@そうだ選挙にいこう:2009/08/10(月) 00:10:25
>>587
俺に対するレスなら許さん
お前のレス全てを許さん
もしリアルで会ったら開口一番で「許さん」って言うくらい許さん

そうじゃないならどうでもいーや

590 :名無しさん@そうだ選挙にいこう:2009/08/10(月) 00:19:20
え、お前の事だよ?

591 :名無しさん@そうだ選挙にいこう:2009/08/10(月) 00:20:02
>>589
自分で気付くって事が大人への一歩だ。頑張れよ!

592 :名無しさん@そうだ選挙にいこう:2009/08/10(月) 00:29:24
いやいやお前だろ?

593 :名無しさん@そうだ選挙にいこう:2009/08/10(月) 00:33:56
>>589
何、その誘い受けw

594 :名無しさん@そうだ選挙にいこう:2009/08/10(月) 03:59:22
アーアー(ry

595 :名無しさん@そうだ選挙にいこう:2009/08/10(月) 12:35:31
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 可
 
   A  B  C  D  E ・・・
1  3  6  0  1  0
2  0  5  0  2  0
3  5  5  0  9  9
4  1  2  4  0  4
5  2  2  5  8  1




各セルにこんな感じで数値が入っていてセルの数値がゼロの場合には下のセルをコピーするという事がしたいのです

↓こんな感じです

   A  B  C  D  E ・・・
1  3  6  4  1  9
2  5  5  4  2  9
3  5  5  4  9  9
4  1  2  4  8  4
5  2  2  5  8  1




今は手で一つ一つコピペしてるんだけど
もっと楽ちんな方法はないですか


596 :名無しさん@そうだ選挙にいこう:2009/08/10(月) 13:09:41
データが A1からZ256まであるとして
AA1:AZ256 選択 AA1に
=IF(A1=0,AA2,A1)
を入れて Ctrl+Enter
後はコピー値貼付け


597 :名無しさん@そうだ選挙にいこう:2009/08/10(月) 13:21:14
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 不可

Aの列に県名が入ってる表で、地方ごとに集計をしたい場合って
例えば関東だと下みたいに、一個ずつ関数を作らないといけないの?

   A     B 
1 東京   名前1
2 北海道  名前2
3 埼玉   名前3
4 香川   名前4
5 大分   名前5
6 神奈川  名前6
7 
8 関東   

B8=COUNTIF(A:A,"東京")+COUNTIF(A:A,"神奈川")+COUNTIF(A:A,"埼玉")+COUNTIF(A:A,"千葉")+COUNTIF(A:A,"茨城")+COUNTIF(A:A,"栃木")+COUNTIF(A:A,"群馬")+COUNTIF(A:A,"山梨")

598 :名無しさん@そうだ選挙にいこう:2009/08/10(月) 13:40:21
>>595
シートを別にして参照したりしないといかんな

599 :名無しさん@そうだ選挙にいこう:2009/08/10(月) 13:58:20
ピボットテービルの詳細データ内に自動で、合計・平均などを加えたいのですが、出来ますか?

【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel 2003
【3 VBAが使えるか    .】 いいえ。(貼るだけなら可)
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 ピボットテーブル 詳細データ VBA 合計 平均 マクロ




600 :名無しさん@そうだ選挙にいこう:2009/08/10(月) 18:50:06
>>597
データ形式を工夫する。
県名テーブルをつくり、県名に対応した地域名を入力しておく。
C列にVLOOKUPで地域名を表示して、そこでCOUNTIFを使用。

601 :595:2009/08/10(月) 18:59:55
>>596
実はデータの行は100行ほどなんですが列がIBまであるんです・・


602 :名無しさん@そうだ選挙にいこう:2009/08/10(月) 19:40:23
>>601
本当にやりたいことを書いてみて。
本当にやりたいことは、データを下から上にコピーすることじゃないんでしょ。

請求金額を求めたい。
在庫管理をしたい。
発注数量を求めたい。
従業員の移動履歴を検索したい。


603 :名無しさん@そうだ選挙にいこう:2009/08/10(月) 20:32:29
>>602
えと株の時系列データなんです
ある時間間隔で自動的に取得していて得売りや得買いで値段がつかないとゼロと記録されてしまうんですが
ちょっとこれだと不都合があるんで寄り付いた価格を寄り付かなかった時間帯に記録してゼロのセルを
埋める必要があるんです

604 :名無しさん@そうだ選挙にいこう:2009/08/10(月) 20:35:55
データが A1からIB100まであるなら
A101:IB200 に
=IF(A1=0,A102,A1)

あるいは別シートの A1:IB100に
=IF(Sheet1!A1=0,A2,Sheet1!A1)

605 :名無しさん@そうだ選挙にいこう:2009/08/10(月) 20:54:32
>>604
ありがとうございます
上のを使わせてもらいます

606 :名無しさん@そうだ選挙にいこう:2009/08/10(月) 21:04:33
>>588
遅くなりました
動作ばっちりでした、頂いたコードを元にがんばります

607 :名無しさん@そうだ選挙にいこう:2009/08/11(火) 00:18:19
誰か>>599
ピボットテーブルでこれは実現できないのでしょうか


608 :名無しさん@そうだ選挙にいこう:2009/08/11(火) 00:25:52
>>607
無理

609 :名無しさん@そうだ選挙にいこう:2009/08/11(火) 06:47:21
VBA使っても良いって言ってるんだから、無理では無いよ
ピボットは綺麗なソース食わせてお決まりのデータ吐かせるには簡単便利な機能だが
食わせるソースにも、吐かせるデータにも、如何せん融通が利かないからな
その弱点を補えるのがVBA
ただ、VBAは言語としては簡単な部類だが、ピボットの簡単さとは比べ物にならないし
融通が利きすぎて、初心者が扱うと見当違いな値を弾き出したりするので
その弱点を集計の分野で補えるのがピボット
両方を上手く使えば良いだけの話

ただ、
> 【3 VBAが使えるか    .】 いいえ。(貼るだけなら可)
という丸投げ君にコード書いてやる奴が居るかは解らんがな

610 :597:2009/08/11(火) 09:52:58
ありがとうです。
>>600のやり方でなんとか作り上げました。
っていうか最初に入力するときに、
地方の欄作っとけばよかったんだけどね。
データ作成後に上司に地域別の人数比
だせって言われちゃってorz

611 :599:2009/08/11(火) 15:44:05
どうにかこうにかして、合計は出せるようになった。

Selection.ShowDetail = True

Dim y As Long

y = ActiveSheet.Range("C2").CurrentRegion.Rows.Count

Cells(1 + y, 3) = Application.WorksheetFunction.Sum(Range(Cells(2, 3), Cells(y + 1, 3)))

Cells(1 + y, 4) = Application.WorksheetFunction.Sum(Range(Cells(2, 4), Cells(y + 1, 4)))

Cells(1 + y, 5) = Application.WorksheetFunction.Sum(Range(Cells(2, 5), Cells(y + 1, 5)))



たぶん、もっと簡単にかけるんだろうけど・・・分からない・・・orz
もっと簡略出来そうかな?

612 :名無しさん@そうだ選挙にいこう:2009/08/12(水) 01:46:21
【1 OSの種類         .】 Windows XP PRO
【2 Excelのバージョン   】 Excel97 
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 エクセル 行列関数

(質問)
A1からA10までは、数字が入力されています。
B1に0から5までの任意の数字を入力します。
C1に1から5までの任意の数字を入力します。
D1に、A1からA10のなかで上から(B1+C1)番目の数値を出力するようにするには
D1には、どのような関数が考えられますか?
お分かりの方

(やりたいのは、直接この質問ではないのですが、この質問の答えがやりたいこと
の大きなヒントになると思っています)

613 :612:2009/08/12(水) 01:47:28
よろしくお願いします。

614 :名無しさん@そうだ選挙にいこう:2009/08/12(水) 02:03:17
やりたいこと書け

とりあえず
=Offset(a1,B1+C1-1,0,1,1)

615 :612:2009/08/12(水) 02:23:41
>>614
どうもありがとうございます。その関数でなんとかなりそうな気がします。

ちなみにやりたかったことは、
A1〜A30000 に0または数値(0以外の数値は2477個)
B1〜B10000 に0または数値(0以外の数値は2477個)
A列において0以外の数値の中で上からn番目の数値を、
B列の0以外の数値の中で上からn番目の数値に置き換えた(nは1〜2477)
列をC列(C1〜C30000)に出力せよ。

でほぼやりたいことです。MATCH関数使って、上から順に0以外の数値が
何番目かをカウントさせて、それを利用してやろうとして詰まってました。




616 :名無しさん@そうだ選挙にいこう:2009/08/12(水) 07:40:45
>>615
nがどういう数値なのかわからんけど行数とエスパーすると
C1に
=if(a1=0,0,b1)
でC30000までコピペ

617 :名無しさん@そうだ選挙にいこう:2009/08/12(水) 08:18:49
>>611
for i = 3 to 5
Cells(1 + y, i) = Application.WorksheetFunction.Sum(Range(Cells(2, i), Cells(y + 1, i)))
next

618 :名無しさん@そうだ選挙にいこう:2009/08/12(水) 09:28:56
>>615
なんとなくわかってきた
関数じゃないといかんの?

619 :名無しさん@そうだ選挙にいこう:2009/08/12(水) 10:08:59
>>612-613
613と同じ答えでよければ=INDEX(A:A,B1+C1)になるね。
これでいいのかどうか知らんけど。

620 :619:2009/08/12(水) 10:10:14
すまん>>615は読んでなかったわ。

621 :名無しさん@そうだ選挙にいこう:2009/08/12(水) 10:10:56
>>615
つまりA列の0の位置をB列に入れたいわけだな・・?
C1=IF(A1=0,0,INDIRECT("r"&MATCH(D1,E:E,0)&"c2",0))
D1=COUNTIF($A$1:A1,"<>0")*(A1<>0)
E1=COUNTIF($B$1:B1,"<>0")*(B1<>0)

622 :名無しさん@そうだ選挙にいこう:2009/08/12(水) 10:22:19
読んでないけど、Aの数字部分にBの数字を入れるんじゃね
A B
9 0
9 1
0 0
0 2
ってあったら
C
1
2
0
0
って感じ?

623 :名無しさん@そうだ選挙にいこう:2009/08/12(水) 11:09:35
>>622

とりあえず読めや、な。

624 :名無しさん@そうだ選挙にいこう:2009/08/12(水) 11:51:17
>>623
そうだよな、ちゃんと読めば解るよな

625 :名無しさん@そうだ選挙にいこう:2009/08/12(水) 12:09:13
面倒なのでヒントだけ書くと、A列の0以外のn番目って=INDEX(A:A,SMALL(IF(A1:A10<>0,ROW(A1:A10)),n))の配列数式だな。
ただ式が1個じゃなく30000行あるならSMALL使った式じゃ重くて使えない。
作業列に行番号入れてもSMALL使う限り駄目だ。

たとえば作業列にROW関数じゃなく下みたいな連番をつくらないといかん。

    A    B
1  見出し  0
2   1    1 =iIF(A2<>0,B1+1,B1) 
3   0    1
4   2    2
5   0    2
6   3    3
7   6    4
8   0    4
9   8    5

これでMATCHの照合の型1かLOOKUPを使う必要があるが、30000個も式があるならこれから
MATCHの照合の型1かLOOKUPで下みたいな作業列を作ってから参照せないかん。

1   1
2   4
3   6
4   7
5   9

左の連番は参考においてあるだけだから、連番は無視でINDEXを使うということだ。


626 :名無しさん@そうだ選挙にいこう:2009/08/12(水) 12:11:06
すまん最後の作業列はこうだった。
1   2
2   4
3   6
4   7
5   9


627 :名無しさん@そうだ選挙にいこう:2009/08/12(水) 12:36:58
n番なら
=countif($a$1:an,”〈>0”)
でよくない?
B列のn番を抜き出すのはわかんねだけど

628 :名無しさん@そうだ選挙にいこう:2009/08/12(水) 17:25:17
>>627
そういうCOUNTIFを3万行も使ったら駄目だな。
比較を30001*30000/2回することになる。
前の総当たりじゃなく単純に上と比較しなきゃいかん。

629 :名無しさん@そうだ選挙にいこう:2009/08/12(水) 17:27:37
まつがった。
単純に上の値に加算しなきゃいかん。
だった。

630 :名無しさん@そうだ選挙にいこう:2009/08/12(水) 17:35:22
夏だねぇ〜

631 :名無しさん@そうだ選挙にいこう:2009/08/12(水) 17:43:26
あ、夏だねぇちゅうだ


そうかセルの数が膨大なんだな
関数でやろうとするのがまちがt

エクセルでやろうとするのが間違っているのかもしれない

632 :名無しさん@そうだ選挙にいこう:2009/08/12(水) 17:54:07
効率的なやり方を追求するのも否定はしないが、何シートにも渡って関数が詰め込まれてるとかでないなら
たかが3万行の計算くらい関数でやりたければ関数でやればいいし、countifを下までソートした方が解りやすければそうすればいいと思うんだがなー
ちょっと重いとはいっても超下手くそな奴が作ったマクロよりは早かったりするし。

633 :名無しさん@そうだ選挙にいこう:2009/08/12(水) 18:20:23
627のCOUNTIFはたとえばB2以下に累計出すのに=SUM(A$2:A2)ってする人とといっしょじゃん。
何も最初から総当たりで計算することなかんべよ。
累計なら単純に上の値に左の値を足すだけで済むからね。
COUNTIやSUMは一発で答えを出してるんじゃなく、内部では総当たりで一所懸命計算してるということを理解した方がいい。
まぁ論理的思考や理屈が嫌いな人には無理には勧めんけどな。

634 :名無しさん@そうだ選挙にいこう:2009/08/12(水) 18:24:15
えええい関数とかめんどくせ!
ていうかこれなんかいい手あるんか?

635 :名無しさん@そうだ選挙にいこう:2009/08/12(水) 18:39:25
関数じゃ多分ほんの数人しか実用になる式は作れないよ。
>>625を理解できる人はほとんどいないと思う。
VBAの方がずっと楽だな。
配列に0じゃなかったら順番にため込んでいって、あとは添え字をn番目に見立てるだけだ。
配列が分らん人はCellsを使えばいいだろう。


636 :名無しさん@そうだ選挙にいこう:2009/08/12(水) 18:51:49
フィルタオプションで0以外をどこかに抽出した方が簡単か。
0を空白に置換して空白削除で上に詰めるのは0が多いと30000行じゃ一回ではうまくいかんかも知らんし。

637 :名無しさん@そうだ選挙にいこう:2009/08/12(水) 18:59:31
d,e列を作業列にするじゃん
d1に=countif(a$1:a1,"<>0")
e1に=countif(b$1:b1,"<>0")←左からコピペ
c1に=if($a1=0,0,offset($a$1,match($d1,$e:$e,0)))
でいいじゃん
俺って論理思考できないけどいいじゃん
新幹線で電話で暇つぶし中だから括弧とか間違ってたら修正してくれたらいいじゃん
崎陽軒のシュウマイでビールうめえじゃん

638 :名無しさん@そうだ選挙にいこう:2009/08/12(水) 19:02:54
=if($a1=0,0,offset($a$1,match($d1,$e:$e,0)-1))じゃん
自分で修正してるじゃん

639 :名無しさん@そうだ選挙にいこう:2009/08/12(水) 19:11:02
0を除外したn番目って0を除外して上から詰めれば簡単じゃねーの?
>>636の言うとおりだな。
難しく考えすぎだよ。

640 :名無しさん@そうだ選挙にいこう:2009/08/12(水) 19:23:15
>>615を読む限りだと勝手に詰めたらまずいかと思ってたじゃん
>>615のc列範囲をみると行位置はa列を保持しないといけないフォーマットかと思うじゃん
スレ全体みてどうなのかパソコンから見てるエロい人が教えてくれないと
電話からわからないじゃん暗闇を走る新幹線でほろ酔いじゃん

641 :名無しさん@そうだ選挙にいこう:2009/08/12(水) 19:33:03
頭の悪い俺に>>615の言わんとすることを、こんなデータからこうなるみたいな具体的な例を示してくんない?
さっぱりわからん。

642 :641:2009/08/12(水) 19:36:21
>>624が頭よさそうだから頼むわ。

643 :名無しさん@そうだ選挙にいこう:2009/08/12(水) 19:38:47
お前の頭は悪くないよ
そして頭のいい悪いじゃなくて上に出てるだろ

644 :名無しさん@そうだ選挙にいこう:2009/08/12(水) 19:46:57
>>643
どこに?
>>637-638を試したが、>>638の式は少なすぎる引数がなんたらかんたらで入力できねーよ。

645 :名無しさん@そうだ選挙にいこう:2009/08/12(水) 19:49:24
,をつけ足したらでけたから今からどういうことだか考えてみるわ。

646 :名無しさん@そうだ選挙にいこう:2009/08/12(水) 19:56:38
A B
a 0 ← A1 B0
b 9 ← A2 B1
0 0 ← A2 B1
c 8 ← A3 B2
0 7 ← A3 B3
. .
. .
. . ← An Bn

A C ←A列が0以外の場合はB列の0以外を抜き出してC列に
a 9 A列n個目にB列n個目の数を代入
b 8
0 0
c 7
0 0

647 :名無しさん@そうだ選挙にいこう:2009/08/12(水) 19:57:06
試せなくてわからないけれどきっと
=if($a1=0,0,offset($a$1,match($d1,$e:$e,0)-1,0))
じゃん
箸落としちゃったけどたかがシュウマイだから手でも爪楊枝でも食べれるじゃん

648 :名無しさん@そうだ選挙にいこう:2009/08/12(水) 20:00:30
>>647
うんわかったよ。645にすでに書いた。
しかし考えたけど分らんかった...orz
今から>>646で考えてみるわ。
しかしおまいら頭いいなぁ。


649 :名無しさん@そうだ選挙にいこう:2009/08/12(水) 20:09:13
>>646から考えると、>>636の書いてるようにB列から0以外をフィルタオプションでまずどこかに抽出。
あとは>>625の書いてるような作業列を元にしてINDEXでフィルタオプションの抽出先から引っ張ってくればよさそうだな。
しかし疲れた。



650 :名無しさん@そうだ選挙にいこう:2009/08/12(水) 20:20:37
英字を全て小文字で書くやつって、バカなの?

651 :名無しさん@そうだ選挙にいこう:2009/08/12(水) 20:30:40
数式か?
携帯からがんばってるんだお

最近ロムってりゃいいのに口だけ出してる子がいるんだけど、保護者の方は着ていないのかな

652 :名無しさん@そうだ選挙にいこう:2009/08/12(水) 22:47:17
>>650
数式かい?
短い数式にとやかくいってもしょうがないと思うけどね。
しかし>>637の式は駄目の三重苦でヘレンケラーみたいな式だな。

653 :名無しさん@そうだ選挙にいこう:2009/08/12(水) 22:49:30
>>652
酷い事言うなよ。ヘレンケラーに謝れ。

654 :637:2009/08/12(水) 22:53:53
ヘレンケラー様
あなたの偉業を台なしにするような書き込みを誘発する書き込みをしてしまいました。
誠に申し訳ございません謹んでお詫び申し上げます。

655 :名無しさん@そうだ選挙にいこう:2009/08/12(水) 22:56:00
どうでもいいから口にくわえてるシューマイよこせ
くちびるで奪い取るぞ

656 :名無しさん@そうだ選挙にいこう:2009/08/12(水) 22:56:49
うむ分ればよろすい

657 :名無しさん@そうだ選挙にいこう:2009/08/12(水) 23:34:34
つまんねー

658 :621:2009/08/13(木) 00:35:20
>>632
いや・・実は3万行ぐらいになるとVBAでももすごく重くなる。どの関数とかじゃなく、a30000=1なんてした時点でね。Vbaでも同様
エクセルの仕様ですね


659 :名無しさん@そうだ選挙にいこう:2009/08/13(木) 06:18:39
たった3万行の数値じゃ全然重くなんねーな。
>>646のとおりだと一般機能なら>>649だが、VBAの方が簡単で速いかもな。
Sub foo()
Dim rng As Range
Dim v As Variant
Dim v2() As Double
Dim i As Long, j As Long
Dim maxrow As Long
Set rng = Range("A1:B30000")
v = rng.Value2
maxrow = UBound(v, 1)
ReDim v2(1 To maxrow, 0)
For i = 1 To maxrow
  If v(i, 1) <> 0 Then
    Do While j < maxrow
      j = j + 1
      If v(j, 2) <> 0 Then Exit Do
    Loop
    v2(i, 0) = v(j, 2)
  End If
Next
rng.Offset(, 2).Resize(, 1).Value = v2
End Sub

660 :名無しさん@そうだ選挙にいこう:2009/08/13(木) 09:31:11
伝説を作るのがEXILE
     伝票を作るのがEXCEL
ダンスで表現するのがEXILE
     マウスで表計算するのがEXCEL
セールスを記録するのがEXILE
     セルに記録するのがEXCEL
新曲はヒットチャートなのがEXILE
     進捗はガントチャートなのがEXCEL
真っ黒のサングラスをかけるのがEXILE
     マクロの線グラフをかけるのがEXCEL
行列が出来るのがEXILE
     行と列で出来てるのがEXCEL
Choo Choo Train なのがEXILE
     =Choose() =Choose() =Trim() なのがEXCEL
レコード会社と契約するのがEXILE
     レコード単位で編集するのがEXCEL
ボーカルがデュエットなのがEXILE
     テーブルがピボットなのがEXCEL
ZOOから移行したのがEXILE
     OOoに移行されるのがEXCEL
立て続けにCDをリリースするのがEXILE
     立て続けにSPをリリースするのがEXCEL

661 :名無しさん@そうだ選挙にいこう:2009/08/13(木) 09:54:31
Choo Choo Train なのがEXILE
     =Choose() =Choose() =Trim() なのがEXCEL

まででいい。

662 :名無しさん@そうだ選挙にいこう:2009/08/13(木) 10:45:39
ちょっとエクセルに関する質問ではないのですが
エクセルでやる方法はないかなと思いましてお聞きします
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2002
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 可
本題なのですが5列揃えばOKというビンゴゲームに関してです
なお一般的なビンゴと違い、使う数字は1〜25だけ、センタースポットなし
数字の配列は自分で自由に指定でき、シートは5枚同時に使えます

5枚の用紙に好きな順番で1〜25を埋めて、
ランダムに選ばれる数字を潰していき5列潰れればOKなのですが
できれば16個目の数字で5列埋めたいのです
なお16個目の数字で5列埋まる配置は2種類とその4回転で8通りしかありません
○○○○○
×○×○×
×○○××
×○×○×
○○○○○

○○○○○
×○×○×
×○○○×
×○×○×
○○×○○

16個目で5列揃わせるためには
5枚のシートにどのように数字を割り振れば
最も効率が良いでしょうか?

*夏休みの宿題だとかではないので解答は知りません

663 :名無しさん@そうだ選挙にいこう:2009/08/13(木) 11:05:30
なにいってるの?

16個目の時点で埋まる数字は全部同じだと思うが
効率ってどういう意味だ

664 :名無しさん@そうだ選挙にいこう:2009/08/13(木) 11:16:40
AからYまで25個の数字
16回数字を読み上げてAからPまで埋めるとするよな

ABCDEFGHIJKLMNOPQRSTUVWXY
●●●●●●●●●●●●●●●●○○○○○○○○○

で、これを5セット作ると
全てのセットで16個目の数字でAからPが埋まるとする
この5セットを見比べて、●の中に違う数字が入っているものが存在するとでも言うのかと

665 :名無しさん@そうだ選挙にいこう:2009/08/13(木) 11:20:30
1枚目は適当に番号を振って1枚目の当たりライン(回転含む)が
2枚目以降に現れないようにすればいいじゃないの
(3枚目は1、2枚目に対して同様に)

*むしろ夏休みの宿題なら現時点で解答を知らないだろ

666 :名無しさん@そうだ選挙にいこう:2009/08/13(木) 11:26:39
あ、すみません
どれか1枚でも5列揃えばOKということです
そうじゃないと5枚使う意味がないですもんね

667 :名無しさん@そうだ選挙にいこう:2009/08/13(木) 11:40:14
お前らすげ〜なぁ〜

>最も効率が良いでしょうか?

俺にはこの意味(目的)がさっぱり分からん。

668 :名無しさん@そうだ選挙にいこう:2009/08/13(木) 11:48:52
>659
このお題で二重ループさせない方がいいと思う。
Sub hoge()
  Dim Ary(2477)
  k = 0
  For i = 1 To 10000
    If Cells(i, "B") <> 0 Then
      Ary(k) = Cells(i, "B")
      k = k + 1
    End If
  Next
  k = 0
  For i = 1 To 30000
    If Cells(i, "A") <> 0 Then
      Cells(i, "C") = Ary(k)
      k = k + 1
    End If
  Next
End Sub

>662
数字の出現がランダムな以上
どの並びにしようが同じだと思うけど。

669 :名無しさん@そうだ選挙にいこう:2009/08/13(木) 11:51:00
あー、言いたいことはわかった


うんがんばってくれ

670 :名無しさん@そうだ選挙にいこう:2009/08/13(木) 12:30:10
>>668
なんか勘違いしてない?
一見二重ループに見えるが実質二重ループはしてないよ。
俺ももちろんループ2回を真っ先に考えたが>>659でも同じだからそうしたまでだ。


671 :名無しさん@そうだ選挙にいこう:2009/08/13(木) 12:51:55
>659の重箱のすみをつつくとすればv(j,2)を一時変数に入れておいた方がベターと言えばベターだな。

672 :名無しさん@そうだ選挙にいこう:2009/08/13(木) 12:53:38
ああ、細かく回してる訳ね。すまんかった。

673 :名無しさん@そうだ選挙にいこう:2009/08/13(木) 12:59:32
>>671
そうかなぁ。
0が続いても一々格納するコストはかからないんだろうか?
まぁどっちにしても微々たる差だな。


674 :名無しさん@そうだ選挙にいこう:2009/08/13(木) 14:59:44
EXCEL2003、XPsp2です。

収支表をピボットテーブルで作ろうとしています。
横方向(1月〜12月)、縦方向(収入/支出、各科目)のイメージです。

質問は以下の通りです。

(1)ピボットテーブルは、元のリストデータを修正しても
 自動再計算されないのでしょうか?(自動再計算されなかった)

(2)最初は(1月時点)、リストデータにデータがない月(2月〜12月)も
 ピボットテーブルに表示させることはできないのでしょうか?

(3)集計項目名の並び順を指定するには、どうすれば良いのでしょうか?
 (例えば「東京」→「大阪」→「その他」の順にしたいのですが、
 「大阪」→「その他」→「東京」の順に表示される)

よろしくお願いします。


675 :名無しさん@そうだ選挙にいこう:2009/08/13(木) 16:40:29
>>674
1、再計算しないと更新されない。
2、元データに12月まで空欄でいいから記載しとく。
3、ドラックしたら変えられる。

676 :名無しさん@そうだ選挙にいこう:2009/08/13(木) 18:02:05
>>674-675
俺も(2)に関してはダミーの空列を書いておくしかないと思ってるんだが、どっかに埋め草が必要ないとかいう人いたよなぁ。
ほんとかね。

677 :674:2009/08/13(木) 18:54:34
>>675,676
レスありがとうございます

678 :名無しさん@そうだ選挙にいこう:2009/08/13(木) 19:58:26
【1 OSの種類         .】 Windows xp pro
【2 Excelのバージョン   】 Excel2002
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 エクセル xml

質問1.エクセルを1997から2002に変更したら、tcxファイル(GPSサイクルコンピュータ関連のファイル)
でプログラムから開くでエクセル2002を指定しても無視されて他のプログラムで
開く設定のままになるようになりました。エクセル2002からは、tcxファイルは開けます。
tcxファイルの開くプログラムでエクセル2002を指定するにはどうすればいいでしょうか?

質問2.tcxファイルを機械的に編集するのに、エクセルで開いて編集したたのですが、
編集したファイルを拡張子をtcxにしても、tcxを開けるソフトではねられて開く
ことができません。ちなみに、1行目に
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
と書かれており、これが関係しているのではと思っています。
全くよくわかってませんが、エクセルファイルをxmlファイルに変換
ということをやればいいのでしょうか?(VBAもほとんど使ったことないし、
検索していろいろ試していますがアップアップ状態です。
XMLEDITOR.NETやNonCodeNet.exeのプログラムをダウンロードしてみましたが
このプログラムでうまくいくかもよくわからない状態です)



679 :678:2009/08/13(木) 20:22:37
エクセルで編集前のtcxファイルをエクセル2002で開いたら
表示がおかしくなるようになってました(エクセル1997では
普通に開けてた。tcxファイルを1997で編集したxlsファイル→拡張子をtcx
に変えてるファイルはエクセル2002で普通にみれるが、元々のtcxファイル
を読んでくれるファイルではエラーが出て読んでくれない)

アップアップですが、いろいろ試行錯誤してみます。

680 :名無しさん@そうだ選挙にいこう:2009/08/13(木) 20:42:36
拡張子はOSが認識するもんだからエクセル関係ない・・・んじゃない?
ぐぐった?

681 :名無しさん@そうだ選挙にいこう:2009/08/13(木) 20:57:43
>>680
いろいろ調べたつもりですが、1997→2002にエクセルを変えたら状況
が変わってしまい、さらに泥沼って感じです。

やりたいことは、tcxファイルの一部の数値を変更したい(ただし変更場所は
1000箇所以上で、機械的な変更なのでエクセル上で変更したい)
→エクセルファイルに変換(このとき、なぜか1997と2002で見え方が違うような)
→機械的に1000箇所以上変更→tcxファイルに戻す
(ただし、その際拡張子だけtcxに変更しても、本来tcxファイルを読んでくれる
ソフトで読んでくれないのでなんらかの工夫が必要。元ファイルは1.18M
なのに、機械的に数値変更して拡張子をtcxにしたものは1.6Mとなっている。
数値変更だけでフォーマットの変更はするつもりないので、1.18Mとほとんど
同じ値になって欲しいのだが)

エクセル2002からxmlファイル作れたけど、今回やりたいこととあまり関係ないかも。
もっとググってみます。

682 :名無しさん@そうだ選挙にいこう:2009/08/13(木) 23:39:23
起動時の塗りつぶしの色を
黄色以外に設定することはできますか。

683 :名無しさん@そうだ選挙にいこう:2009/08/14(金) 00:26:24
>>674
フィールドの設定で「データなしでアイテムを表示する」かな。

684 :名無しさん@そうだ選挙にいこう:2009/08/14(金) 00:29:58
>>682
デフォルトいじるのは無理みたいですね。

代わりの方法ですが、メニューにユーザー設定ボタンを付けて、好きな色を塗るマクロを登録。
そのマクロのシートを非表示にしてXLSTARTに保存しとけば、起動のたびに好きな色を塗るボタンが出るようになります。

685 :名無しさん@そうだ選挙にいこう:2009/08/14(金) 01:15:02
ありがとうございました。
自分にはちょっと難しすぎるようです。

686 :名無しさん@そうだ選挙にいこう:2009/08/14(金) 07:33:39
駄目だと思うから駄目なんだよ!

687 :名無しさん@そうだ選挙にいこう:2009/08/14(金) 07:56:07
EXCEL2003です。

数式で参照しているセルにデータが未入力の時、
「#VALUE!」が表示されますが、
これが表示されないようにするには、どうすれば良いのでしょうか?
(未入力箇所を0と見なしてくれると一番良いのですが)

よろしくお願いします。

688 :名無しさん@そうだ選挙にいこう:2009/08/14(金) 08:35:13
>687

条件付書式でIS関数

689 :687:2009/08/14(金) 10:34:15
>>688
レスありがとうございます。

全部入っていないときは、条件付き書式でよいのですが、
一部の変数だけ未入力の時、0とみなして計算したいのですが
できないのでしょうか?



690 :名無しさん@そうだ選挙にいこう:2009/08/14(金) 11:00:22
>689

計算したい数式でIFとISを使う。

691 :名無しさん@そうだ選挙にいこう:2009/08/14(金) 16:00:42
EXILEとEXCELの違い
(1) 伝説を作るのがEXILE、伝票を作るのがEXCEL
(2) ダンスで表現するのがEXILE、マウスで表計算するのがEXCEL
(3) セールスを記録するのがEXILE、セルに記録するのがEXCEL
(4) 新曲はヒットチャートなのがEXILE、進捗はガントチャートなのがEXCEL
(5) 真っ黒のサングラスをかけるのがEXILE、マクロの線グラフをかけるのがEXCEL
(6) 行列が出来るのがEXILE、行と列で出来てるのがEXCEL
(7) Choo Choo Train なのがEXILE、=Choose() =Choose() =Trim() なのがEXCEL
(8) レコード会社と契約するのがEXILE、レコード単位で編集するのがEXCEL
(9) ボーカルがデュエットなのがEXILE、テーブルがピボットなのがEXCEL
(10)ZOOから移行したのがEXILE、OOoに移行されるのがEXCEL
(11)立て続けにCDをリリースするのがEXILE、立て続けにSPをリリースするのがEXCEL

692 :名無しさん@そうだ選挙にいこう:2009/08/14(金) 16:19:40
Excel2003でデータを作成し、そのファイルをCSVに保存しました。
作成したCSVをエディタで開くと、Excelでは何もデータを入れていない
空白セルにカンマだけのデータや、改行だけの行が書かれていました。

データ,データ,データ
データ,データ,データ
データ,データ,データ ←Excelで作成したデータは実際ここまで。以降は空白セル
,,
,,


,,

CSVで見るとこのようなデータでした
SQLServerのインポート機能でExcelのデータをインポートをする際に
謎のエラーが発生していたので、調べていたら上記の現象に行き着いたのですが
この現象を回避する方法はあるのでしょうか?

693 :名無しさん@そうだ選挙にいこう:2009/08/14(金) 16:51:26
>>692
1.エクセルの機能じゃなくて、自分でcsvに書き出す
2.CSVではなくちょくせつデータを書き込む

694 :名無しさん@そうだ選挙にいこう:2009/08/14(金) 19:07:06
>>691
ごめん、悪いけどそれ面白くないんだ・・
イチローと小沢イチローぐらいまででやめておくべきだったな
>>692
セルの削除とかしてみては?
と思ったけどしてるかな

少し調べてみたけどcsvの作成時にカンマや改行が多く作成される例は結構あるみたい
解決索は色々で
・改行コード+,,を改行コードのみに置換する
・そもそもcsvを使わない。prn形式で保存する

「csv エクセル バグ」あたりでぐぐってみて下さい

695 :名無しさん@そうだ選挙にいこう:2009/08/14(金) 19:55:18
SQLつかうってことはDBMS構築するんだよね
データ格納するならそれこそテーブル作っていじくるべきじゃねーとか思う秋の夜

696 :名無しさん@そうだ選挙にいこう:2009/08/14(金) 21:11:25
空白データが混ざったらまずいcsvつくるなら、Excelの機能でcsv保存するよりも。
シートのデータをつくりたい形式のcsvとして書き出すコードを書いた方がいいだろな。

697 :名無しさん@そうだ選挙にいこう:2009/08/14(金) 22:32:22
ファイルを開いて、各シートごとに集計とかする場合、○○には何て書けばいいの?

Dim WS as Worksheet
For Each WS in ○○

698 :名無しさん@そうだ選挙にいこう:2009/08/14(金) 23:18:33
>>697
In ブックはんじゃらげ.Sheets

699 :名無しさん@そうだ選挙にいこう:2009/08/14(金) 23:21:32
面白いと思って書いてんの?

700 :立ち呑み屋で暇潰し中の酔っ払い:2009/08/14(金) 23:35:27
酔っ払いのたわ言にレスするやつがいいのかどうかはよくわからんが
少なくとも質問者への回答より酔っ払い回答への茶々入れの方が素早いのは
どんなやつがROMってるんだとくだ巻きたくなるよな

701 :名無しさん@そうだ選挙にいこう:2009/08/15(土) 05:10:18
本まで出してるど下手のお茶らけ先生がいたが、本人は面白いと思ってたか知らんがど全然面白くなかったなぁ。
いつもお茶らけてる暇があればテクニック磨けばいいのにと思ってたよ。
Dim WS as WorksheetなんだからSheetsじゃ駄目だろうよ。
SheetsじゃなくWorksheetsだよ。

702 :名無しさん@そうだ選挙にいこう:2009/08/15(土) 06:59:07
> 少なくとも質問者への回答より酔っ払い回答への茶々入れの方が素早いのは
そんなの当然じゃん
2chでは茶々入れなんてのは挨拶みたいなもの

どっかの料理屋行けば、入った瞬間に「いらっしゃいませ」の挨拶(茶々入れ)は出てくるが
注文(質問)伝えて、料理(回答)が出てくるまでには時間が掛かるものだ

まあ質問も料理も、内容によってはすぐに出てくることもあるがな


あとは、投稿と閲覧のタイミングってのもあるよ
第三者は投稿から返信までの時間しか解らないが、実際にはその間に返信者の閲覧が入る
@ 質問投稿>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>閲覧>返信
A 質問投稿>閲覧>>>>>返信
第三者から見れば、Aの返信が素早く、@の返信は遅いように見えるが
実際の返信者の対応では、@が即答で、Aは間を置いてる


とか、真面目に説明してみる

703 :名無しさん@そうだ選挙にいこう:2009/08/15(土) 07:04:18
Excelで使える電子印鑑のお勧めは何?
Vista + 2007にExcel電子印鑑をインストールしても、ReadMe.Textに書いてあるとおりに右クリックしても何も出てこないよ。

704 :名無しさん@そうだ選挙にいこう:2009/08/15(土) 07:49:30
>>702
過疎ってれば確かに
このスレが過疎ってるかは微妙

705 :名無しさん@そうだ選挙にいこう:2009/08/15(土) 07:57:00
このスレは盆にとてつもない過疎が訪れるよ
単純に盆にエクセル触る人なんて少ないってだけなんだろうけど

706 :名無しさん@そうだ選挙にいこう:2009/08/15(土) 08:13:27
>>703
俺はコレを使っているよ
ttp://www.vector.co.jp/soft/win95/business/se336998.html

707 :名無しさん@そうだ選挙にいこう:2009/08/15(土) 08:15:58
>>704
このスレの平均レス間隔は約44分

708 :名無しさん@そうだ選挙にいこう:2009/08/15(土) 09:00:07
Excel電子印鑑って電子印影作成(形だけ印鑑が押してあるっぽく見せる)であって
電子印鑑(電子署名に印影を付けた物で、同意や責任を証明し、
他者による自由作成や削除、複製、改変などが出来ない)では無いな。

709 :名無しさん@そうだ選挙にいこう:2009/08/15(土) 09:04:16
>>706
それを試したが使えないんだよ。
それに同梱されてるアドインインストール用.xlsからインストールしたが、右クリックしても電子印鑑のメニューが出てこない。

710 :名無しさん@そうだ選挙にいこう:2009/08/15(土) 09:06:08
んなもんソフトの作者に聞けよ

711 :名無しさん@そうだ選挙にいこう:2009/08/15(土) 09:09:41
>>708
小さな団体の監査報告書に使うものだから、使えさえればそれで十分なんだが使えないんだよなぁ。

712 :名無しさん@そうだ選挙にいこう:2009/08/15(土) 09:21:47
再起動して試しにウィルスバスター外してから再度インストールしてみたら電子印鑑のメニュー出てきたわ。

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


各セルに文字が入っていて一度に全部のセルに先頭1文字追加、逆に1文字削る
といったようなことがしたいのですがどうすればいいのでしょうか

あ  あ  あ  あ  あ

Aあ Aあ Aあ Aあ Aあ

こんな感じで先頭1文字を追加したいのです


Aあ Aあ Aあ Aあ Aあ

あ  あ  あ  あ  あ

こんな感じで先頭1文字を削除したいのです

714 :名無しさん@そうだ選挙にいこう:2009/08/15(土) 10:17:57
電子印鑑なんて画像はりつけりゃいいんだろ?
それとも電子署名とセットで、特定ファイルにセキュアに紐付けできるのか?
んなーこたーないわな

715 :名無しさん@そうだ選挙にいこう:2009/08/15(土) 10:24:22
で・・・でんしいんかんてなんだ

右クリックメニューはVBAで追加できるけどそういうこと?

716 :名無しさん@そうだ選挙にいこう:2009/08/15(土) 10:58:15
>713

置換後の文字はリテラルなのでそういった置換は不可能。

・マクロで組む。
・作業列で文字列操作関数を使う。
・正規表現のできるツールを組み込む
 (http://srcedit.pekori.jp/tool/excelre.htmlなど)

のどれか。

717 :名無しさん@そうだ選挙にいこう:2009/08/15(土) 12:40:10
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 ×


シートが1から10まであって,各シートのA1に1から3の数字があります。
シート11に シート1から10の A1に1が何個あるのか調べたいのですが
どのようにすればよいのでしょうか?
お願いしますおしえてください。


718 :名無しさん@そうだ選挙にいこう:2009/08/15(土) 14:00:03
>>716
どうもありがとうございます
まだ勉強中ですがとりあえずマクロで組んでみます

719 :名無しさん@そうだ選挙にいこう:2009/08/15(土) 14:24:39
>>717
その程度なら、各シートをクリックして数えれば済むんでネカ?

720 :名無しさん@そうだ選挙にいこう:2009/08/15(土) 15:08:37
>>719
717は例えばの話です。
シートがもっと多くなった場合、各シートを見てカウントするのでは時間がかかってしまいます。
 
 お願いします。ヒントをください。


721 :名無しさん@そうだ選挙にいこう:2009/08/15(土) 15:45:15
>720

シート数が不定ならマクロでなきゃ無理。

Function A1Count(myText As Variant) As Integer

Dim i As Integer

A1Count = 0

For i = 1 To Worksheets.Count
If Worksheets(i).Range("A1") = myText Then
A1Count = A1Count + 1
End If
Next i

End Function

722 :名無しさん@そうだ選挙にいこう:2009/08/15(土) 16:52:25
もしシートの可変部分がふたつのシートの間を増やしたり減らしたりで対応できるなら
シート串刺しでSum関数突っ込んでもいけるんじゃないの?

723 :名無しさん@そうだ選挙にいこう:2009/08/15(土) 16:54:18
良くよんでなかったSumじゃなくてCountifか

724 :名無しさん@そうだ選挙にいこう:2009/08/15(土) 17:04:10
>>723
合計なら =Sum(Sheet1:Sheet10!A1) で出来る。
でもsumやcountなら複数のシートの範囲を指定できるのにcountifはダメだったな。
仕様かな?


725 :名無しさん@そうだ選挙にいこう:2009/08/15(土) 17:06:16
>>723

COUNTIFの串刺しってどうやるの?

726 :名無しさん@そうだ選挙にいこう:2009/08/15(土) 17:21:43
>>724-725
そりゃそーだな
もしVBA不可ならB1を作業用に=If(A1=1,1)とかにしてB1を串刺しか。

727 :名無しさん@そうだ選挙にいこう:2009/08/15(土) 19:17:14
age

728 :名無しさん@そうだ選挙にいこう:2009/08/15(土) 22:08:23
>>716
知らないなら答えるなよ
>>713
sheet1のA1にその
文字列があるとすると
sheet2のA1=RIGHT(Sheet1!A1,LEN(Sheet1!A1)-1)
後はsheet2を全体選択してからコピー、sheet1のA1選択して値で貼り付け
>>717
ちと変則的だが
sheet11のA1=INDIRECT("Sheet"&ROW()&"!r1c1",0)
あとはこれを下にオートフィルすると行数と同じ数に対応するシートのA1を表示させることが出来る
後はB1=COUNTIF(A:A,1)
で合計が取れる
ただシート名がsheet1、sheet2・・じゃないと出来ない

countifの串刺し計算が出来れば解決なのにねぇ

729 :名無しさん@そうだ選挙にいこう:2009/08/15(土) 22:24:51
>>726
シートを複数選択してそれやれば早いな


730 :716:2009/08/15(土) 22:38:55
>728

それは
・作業列で文字列操作関数を使う。
になると思うんだが。

レス主は置換でやりたそうだったから
いろいろと提案しただけですよ。

駆け出しで頑張っているのは分かるが落ち着けよ。
プログラマ的にはCOUNTIFの串刺しが出来るとは思えん。

731 :716:2009/08/15(土) 22:53:00
>713

VBA可でしたか。
今気が付いたw

Function TextAdd(SorceText As String, myText As String)

TextAdd = myText & SorceText

End Function

Function TextDelete(SorceText As String)

If Len(SorceText) > 0 Then
TextDelete = Mid(SorceText, 2, Len(SorceText))
End If

End Function

でどう?

732 :名無しさん@そうだ選挙にいこう:2009/08/15(土) 23:27:31
>>728
>>ただシート名がsheet1、sheet2・・じゃないと出来ない

分からなければ無理にレスしなくても良いんだよw

733 :名無しさん@そうだ選挙にいこう:2009/08/16(日) 01:08:36
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2007
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 平均

金額が入力されている表の上位7割の平均を求めるには
どうすれば良いでしょうか?
よろしくお願いします。


734 :名無しさん@そうだ選挙にいこう:2009/08/16(日) 01:14:23
他の列に貼り付けて、大きい順に並び替え
自分で7割にあたるところまでドラッグ
右下に合計が出てるのでデータ数で割る。

735 :名無しさん@そうだ選挙にいこう:2009/08/16(日) 01:16:54
金額順に降順に並べて各行に累計を出す
累計が合計の7割を超えた行にフラグを立てる
フラグの立った行の累計をそこまでの金額の個数で割る

736 :名無しさん@そうだ選挙にいこう:2009/08/16(日) 01:17:09
ありがとうございます。
毎日、データーが増えるのですが、
その都度、手動で計算するしかないですか?

737 :名無しさん@そうだ選挙にいこう:2009/08/16(日) 01:27:34
RANK関数で順位を出し、IF等で7割の順位以下の場合だけ計に
加えるようにする。以下略。

738 :名無しさん@そうだ選挙にいこう:2009/08/16(日) 01:34:31
各行にカウントの7割以内なら数字表示
平均

739 :名無しさん@そうだ選挙にいこう:2009/08/16(日) 01:35:41
すみません。
「IF等で7割の順位以下の場合だけ計に 加えるようにする」
というのはどのように表現すれば良いのでしょうか?
よろしくお願いします。

740 :名無しさん@そうだ選挙にいこう:2009/08/16(日) 01:57:01
=IF(ランク値の入ったセル<0.7*データ数,データ値,"")
の作業列を作って和をとる。
RANK列は、$のマークを使って範囲固定して、
連続コピー利用するといいよ。
http://kokodane.com/kihon19.htm

741 :名無しさん@そうだ選挙にいこう:2009/08/16(日) 02:00:31
上位7割のデータ数は、INT(0.7*6)でOK

742 :名無しさん@そうだ選挙にいこう:2009/08/16(日) 02:01:19
上位7割のデータ数は、INT(0.7*データ数)でOK

743 :名無しさん@そうだ選挙にいこう:2009/08/16(日) 02:53:07
>>733
全体のデータ数はA列にあるとすれば
B1=(IF(COUNT(A:A)*0.7>=RANK(A1,A:A),A1,""))
下にオートフィル。C1に平均↓
C1=AVERAGE(B:B)


744 :名無しさん@そうだ選挙にいこう:2009/08/16(日) 05:50:06
上位7割って同じ点数がイパーイいたらどうすんだろ?
100人中で100点が69人、50点が31人いたときとか。
たとえば>>743なら87.6になるが上位70人の平均なら99.42857になるんだが、欲しい答えはどっち?

745 :名無しさん@そうだ選挙にいこう:2009/08/16(日) 11:47:32
>>717
Rank関数が串刺し可能なので、基本的に下記の関数でいける。
=COUNT(Sheet1:Sheet10!A1)-RANK(1,Sheet1:Sheet10!A1)+1

ただし、1が一つも無いとエラーになるので、その可能性があるなら
=IF(ISERROR(RANK(1,Sheet1:Sheet10!A1)), 0 , COUNT(Sheet1:Sheet10!A1)-RANK(1,Sheet1:Sheet10!A1)+1)

746 :名無しさん@そうだ選挙にいこう:2009/08/16(日) 15:25:52
717です。
みなさん本当にありがとうございます。
解決しました。いろんなやり方があるのですね。
勉強になりました。


747 :名無しさん@そうだ選挙にいこう:2009/08/16(日) 22:58:41
XPを使っているのですが、
現在のExcel2002を2003にするにはどうしたらいいでしょうか?
有料でしょうか?
本当に初歩的な質問で申し訳ありません

748 :名無しさん@そうだ選挙にいこう:2009/08/16(日) 23:15:32
>>747
当然有料。だが2002→2003のバージョンアップなんて
ほとんど意味はないと思うのだが。
なんか追加機能ってあったっけ?

749 :名無しさん@そうだ選挙にいこう:2009/08/16(日) 23:18:34
>>748
そうでしたか ありがとう
資格取得の勉強でCD−ROMをいただいたのですが
2003じゃなきゃ使えないようなので



750 :名無しさん@そうだ選挙にいこう:2009/08/17(月) 00:46:27
正直ここで質問してするのが正しいかどうかも怪しいのですが

例えばillustratorで作った招待状の一部をExcelで作ってるデータベースで置換して印刷したいのです。
今までは当然のようにIllustratorで招待状を作ったらExcelで別に整理してあるデータから郵便番号、住所、名前等を
アプリケーション間でコピペしてたのですが、これをExcelの中でどうにか完結出来ないか考えてる所です。

始めに考えたのは変わらない部分だけを画像で書き出し、Excelシートの背景に設置して上のセルの内容を編集する方法ですが
どうやら、オートシェイプで置き換えると半透明にせねばならず、シートの背景に設置すると印刷されずでどうしようもない状態です。

こういった事をするのにExcelが適当かどうかも分からないのですが、良い方法はありますか?
他のソフト使った方がいいならどういったソフトだとおkなのか教えて頂きたいです

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

751 :名無しさん@そうだ選挙にいこう:2009/08/17(月) 01:05:19
>>750
ようわからんがWORDで差込印刷じゃいかんの?

752 :名無しさん@そうだ選挙にいこう:2009/08/17(月) 01:11:00
>>750
Excelでもできなくはないけどオフィス製品の正統派利用方としてはExcelで住所録管理したのを使ってワードで印刷かな?
スレ違いになるワード部分を少しだけ補足すると、この場合の背景の挿入場所はヘッダーとフッターの編集画面。
詳しくはワードスレに行ってみれば誰か教えてくれるんじゃね?

753 :名無しさん@そうだ選挙にいこう:2009/08/17(月) 01:14:51
>>750
図を最背面に。テキストボックスを作って住所名前などをリンクさせ
そのテキストボックスは背景透明にするとか、かなぁ

エクセルのニガテな仕事だな。普通に葉書作成ソフト使うのがいいと思うけどね。どうせ数千円だ

754 :名無しさん@そうだ選挙にいこう:2009/08/17(月) 01:31:46
>>751
・・・・・・・・・普段Wordを使わないので全く知りませんでしたorz
差し込み印刷と言うんですねorz

教えて下さった通りWordの背景画像にIllustratorのjpgでも指定してxls読み込みで可能みたいですね
ただ細かい場所指定、レイアウト、フォント、色等、色々考えるとちょっと面倒だなと思ってたら(Excelでも同じですが)ありました

「illustrator データ駆動型グラフィックス」
illustratorでも差し込み印刷的なことは出来るようですね。問題はXMLなのと、使ってる人がほとんどいなさそうな現実
でも、どちらかでどうにかなりそうです。ありがとうございました。

755 :名無しさん@そうだ選挙にいこう:2009/08/17(月) 01:36:50
>>752
そのようですね。Excelでデータベース作ってWordで印刷

>この場合の背景の挿入場所はヘッダーとフッターの編集画面。
分かりました、細かいアドバイスどうもです。とにかくやってみます。

>>753
>普通に葉書作成ソフト使うのがいいと思うけどね。どうせ数千円だ

元々、デザインが完全イラレなのと細かいフォントの違いや色を微妙にどうかしたいと思ったらExcel、でもWordでも難しいだろうと
考えてはいたんです。ただどうしようも無いなら手間をとるかどうしようか・・・とかw
葉書作成ソフトでは難しいかと思います。Illustratorで差込印刷まがいのことが出来るなら試してみるしか無いです。

756 :名無しさん@そうだ選挙にいこう:2009/08/17(月) 15:41:26
EXCEL2002

質問です

○○開始日を 1月3日
実施期間    7日間

上記のデータを別セルで入力すると下記のように?が
実施期間の満了まで連番で自動入力されるようにするにはどうしたらいいのでしょうか?

できればマクロ等ではなく関数でできたら大変助かるのですが。。
わかりづらいところがありましたらご指摘ください


  A1  B1  C1
1 1/1
2 1/2
3 1/3 ?
4 1/4 ?
5 1/5 B
6 1/6 C
7 1/7 D
8 1/8 ?
9 1/9 F

757 :756:2009/08/17(月) 15:44:16
すみません。文字化けしていました…


EXCEL2002

質問です

○○開始日を 1月3日
実施期間    7日間

上記のデータを別セルで入力すると下記のように1が
実施期間の満了まで連番で自動入力されるようにするにはどうしたらいいのでしょうか?

できればマクロ等ではなく関数でできたら大変助かるのですが。。
わかりづらいところがありましたらご指摘ください


  A1  B1  C1
1 1/1
2 1/2
3 1/3 1
4 1/4 2
5 1/5 3
6 1/6 4
7 1/7 5
8 1/8 6
9 1/9 7

758 :名無しさん@そうだ選挙にいこう:2009/08/17(月) 15:51:26
普通の○数字に似てるUnicode○数字があるよな
いろんなとこで文字化けするから、普通の○数字に訂正しといたほうがいいよ

759 :名無しさん@そうだ選挙にいこう:2009/08/17(月) 17:09:57
>>756
開始日 B1
実施期間 B2
日付 A4〜
結果 B4〜

B4に=IF(B$1=A4,1,0)
B5に=IF(B$1=A5,1,IF(ISNUMBER(B4),IF(AND(B4<>0,B4<B$2),B4+1,0)))
以降はB5からオートフィル。0が表示されるのでオプションか条件書式で0を"不可視化でどう?








760 :759:2009/08/17(月) 17:13:25
ゴメン。ゴミが残っていた。
B5に=IF(B$1=A5,1,IF(AND(B4<>0,B4<B$2),B4+1,0))

761 :名無しさん@そうだ選挙にいこう:2009/08/17(月) 18:54:29
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2000
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】Excel 特定シートだけを開く 
質問です
シート1に計算式、シート2にデータが入っているようなブックで
重いシート2を開かずにシート1だけを開いて編集・保存するような事はできるでしょうか
編集できなくとも内容を確認するのにシート1だけ参照するようなことはできるでしょうか

調べ方が悪いのかブックを開いたときにどのシートをアクティブにするかというようなものばかり出てきます
可能 不可能、VBAが出来れば可能等教えてください

762 :名無しさん@そうだ選挙にいこう:2009/08/17(月) 19:06:22
>>761
シート2を別ブックにしてしまえば?

763 :名無しさん@そうだ選挙にいこう:2009/08/17(月) 19:17:55
不可能
VBAが出来れば代替手段はある

764 :名無しさん@そうだ選挙にいこう:2009/08/17(月) 20:40:09
>>756
C1に開始日、C2に実施機関を入れるとする
B1=IF(C1=A1,"@","")
B2=IF(A2<$C$1,"",IF($C$1=A2,CHAR(11553),IF(($C$1+$C$2)>A2,CHAR(11553+A2-$C$1),"")))
作ってみたけど不通の数字でもよかったのかw
>>757
C1C2は上と同じ
B1=IF(C1=A1,1,"")
B2=IF(OR($C$1>A2,($C$1+$C$2)<=A2),"",IF($C$1=A2,1,B1+1))


765 :756:2009/08/17(月) 20:43:51
>>759
>>760
すばらしすぎます!!わざわざ本当にありがとうございました!!

766 :756:2009/08/17(月) 20:51:53
>>764
併せてありがとうございます!!
もう正直な感想としてすげー!の一言でした

767 :名無しさん@そうだ選挙にいこう:2009/08/17(月) 20:53:05
お安い御用よ。


俺じゃないけど。

768 :名無しさん@そうだ選挙にいこう:2009/08/17(月) 21:18:17
くっくっく・・・赤子の手をひねるようなものだったぜ

俺じゃないけど

769 :名無しさん@そうだ選挙にいこう:2009/08/17(月) 22:27:32
しかしchar・code関数初めて使ったけど普通はどんな時に使うんだろう


770 :名無しさん@そうだ選挙にいこう:2009/08/17(月) 22:49:26
>>769
>>769=764なら、基本的にはそういう使い方でいいんじゃないのか。
強いて言えばCHAR(CODE("@")+A2-$C$1)とすれば、連続で続くことさえ知っていれば
文字コードを調べる必要はない。

771 :名無しさん@そうだ選挙にいこう:2009/08/17(月) 22:52:51
>>770
そうか、ありがと
式も綺麗だな

772 :名無しさん@そうだ選挙にいこう:2009/08/17(月) 22:54:38
あ、あとCHARだとCRとかLFとかの制御コードを付加するときに使うね。

773 :名無しさん@そうだ選挙にいこう:2009/08/17(月) 22:55:26
成る程、そういう使い方があるか。それはどこかで使いそうだ

774 :名無しさん@そうだ選挙にいこう:2009/08/18(火) 07:31:42
俺も制御コードがらみくらいだなあ。
改行の挿入が1番多いけど、あとはセルの文字列になんか制御コード混ざってそうってときにちょこっとCORD関数で見てみるとか。

775 :名無しさん@そうだ選挙にいこう:2009/08/18(火) 08:27:00
excel cord関数 の検索結果 約 7,920,000 件中 1 - 10 件目 (0.83 秒)

googleって頭いいねw

776 :761:2009/08/18(火) 10:23:11
>>762
>>763
ありがとうございます
ブックは分けるなと言われてダメでした
自分はまだVBAできないので今は素直にブック開くことにします


777 :名無しさん@そうだ選挙にいこう:2009/08/18(火) 11:07:03
>776

本題の「ブックを開かずに」ではないが重いのを
回避するのであれば計算を手動にすればいい。

778 :777:2009/08/18(火) 11:11:18
シート2はデータで重いのか・・・ゴメン、忘れてくれ。

779 :名無しさん@そうだ選挙にいこう:2009/08/18(火) 15:19:36
計算が重いとき計算を手動にするってのは解決策じゃないよ。
閉じるときまとめて計算するからイライラするのはたしかだ。
軽い計算式にするのが解決策。

780 :名無しさん@そうだ選挙にいこう:2009/08/18(火) 21:02:10
  A   B   C
1 1月 1日  月
2    2日  火
3    3日  水
4    5日  木
5    6日  金
6    7日  土
7    8日  日


上記のような表を作成しているのですが、Aの「1月」部分を他の月に変更したときに
Bの行の日にちがすべてその月の日付に変更するにはどうすればいいのでしょうか?

Cの曜日はweekdayでできるのですが…

エクセル2002です

781 :名無しさん@そうだ選挙にいこう:2009/08/18(火) 21:09:46
>779

「保存前に再計算」のチェックを外す。

782 :名無しさん@そうだ選挙にいこう:2009/08/18(火) 21:11:50
>780

月が変わっても1日は1日じゃないの?
月末以降を表示したくないってことかな?

783 :名無しさん@そうだ選挙にいこう:2009/08/18(火) 21:12:37
>>780
4日は意図的に抜くの?

784 :名無しさん@そうだ選挙にいこう:2009/08/18(火) 21:29:10
>>782
エクセルでの表示は1日ですが
実際には2009/1/1としたいのです

ですからA1を変更するだけでB1行が2009/2/1〜とずらーっと変わってくれればと

>>783
こちらのミスです…
普通に1〜31日です

785 :名無しさん@そうだ選挙にいこう:2009/08/18(火) 21:29:22
>>780
B列は月が替わっても見かけは変らないはずだけど、やりたいことが
B列は日付データが入っているが表示をd"日"とやっていて、C列はB列の曜日を表示しているので、A1の月に応じて変化したいのだとすると、

B1に=DATE(2009,LEFT($A$1,1),ROW(B1))
B2以降はB1のコピペ。

趣旨が違うかな・・・

786 :名無しさん@そうだ選挙にいこう:2009/08/18(火) 21:47:05
Windows XP
Excel 2000
VBA おk

特定のセル( たとえばRange("C3") )に、先月の1日を表示させるにはどうすればいいでしょうか?
今日(8月18日)なら、7月1日と入れたい。

787 :名無しさん@そうだ選挙にいこう:2009/08/18(火) 21:53:11
>>780
単純にいえば、その月にあった曜日を表示したいだけじゃないの?
C列に=DATEVALUE($A$1&B1)
C列の書式をaaaじゃいかんの?

788 :名無しさん@そうだ選挙にいこう:2009/08/18(火) 22:04:21
>>786
VBAとかの問題?
=DATE(YEAR(NOW()),MONTH(NOW())-1,1)
として、表示は書式に依存じゃいかんのか?

789 :名無しさん@そうだ選挙にいこう:2009/08/18(火) 22:04:22
>>786
ツールのアドインで分析ツールってのにチェックできるなら、○ヶ月前(後)の日付を出せるEdate関数ってのが使えます。
それを利用して

=DATE(YEAR(EDATE(NOW(),-1)),MONTH(EDATE(NOW(),-1)),1)

で先月の1日になります。

790 :789:2009/08/18(火) 22:09:12
>>788
それだと1月がダメになるかと思って789書いたけど、
=DATE(2009, 0, 1)
がちゃんと 2008/12/1になるんですね。そちらが正解でした。

791 :786:2009/08/18(火) 23:42:22
>>788-789
ありがとうございます。
VBAの過程で表示させたいだけなので、関数でもおkです。

788さんのは、2009/7/1 になりましたが、789さんのは #NAME? になってしまいます。
何が悪さをしてるんでしょうか?

792 :786:2009/08/18(火) 23:47:15
Edate関数というのが使えないので、788さんのを使わせていただきます。

793 :名無しさん@そうだ選挙にいこう:2009/08/19(水) 00:05:16
>>791

解決済みの様ですがVBA的な回答例

Dim myDate As Date
myDate = DateAdd("d", Day(Date) * -1 + 1, Date)
myDate = DateAdd("m", -1, myDate)
Range("C3") = myDate



794 :793:2009/08/19(水) 00:14:36
>>791

こっちのが素直だな。

Range("C3") = DateSerial(Year(Date), Month(Date) - 1, 1)

795 :名無しさん@そうだ選挙にいこう:2009/08/19(水) 10:06:36
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2007

印刷したいのですが、ページ設定の拡大縮小印刷で現在40%で行っております。
これをほんの少しだけ大きくしたいです。
41%だと大きすぎます。40.5%は指定できません。
なにか良いアイディアはありませんか?

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

796 :名無しさん@そうだ選挙にいこう:2009/08/19(水) 10:34:55
>>795

VBAは関係ないだろ。
マルチウゼー

797 :796:2009/08/19(水) 10:37:35
誤爆スマン

798 :795:2009/08/19(水) 11:15:02
いや、きちんとマルチじゃないと謝罪があったので許します。

799 :名無しさん@そうだ選挙にいこう:2009/08/19(水) 12:29:04
>>795
40で印刷してコピー機で微調整

800 :名無しさん@そうだ選挙にいこう:2009/08/19(水) 12:39:44
>>799
カラー印刷なんでそういうのはちょっと。

801 :名無しさん@そうだ選挙にいこう:2009/08/19(水) 12:48:27
じゃあ、プリンタドライバに縮小率の設定できるのが多いのでそっちでやってみるとか

802 :名無しさん@そうだ選挙にいこう:2009/08/19(水) 12:49:12
それでもだめなら もとのページを少しだけ大きくする

803 :名無しさん@そうだ選挙にいこう:2009/08/19(水) 13:11:07
楽しそうな仕事してるなwww

804 :名無しさん@そうだ選挙にいこう:2009/08/19(水) 14:25:42
>795
PDFで書き出してイラレで印刷

805 :名無しさん@そうだ選挙にいこう:2009/08/19(水) 18:13:57
MOSのエクセルのエキスパートで試験に出る関数教えてください。

806 :名無しさん@そうだ選挙にいこう:2009/08/19(水) 19:15:36
そのレベルじゃあなぁ
問題集買った方がいいよ


807 :名無しさん@そうだ選挙にいこう:2009/08/19(水) 23:56:35
並べ替えですが、なぜか"-"が無視されてまうんだすが、"-"を無視しないように
するには、どうすればいいだすか?

a-005
a-002
a-001
a003
a004

これを並び替えると

a-001
a-002
a003
a004
a-005

になってまうんですが、↓のようになってほすぃ。

a-001
a-002
a-005
a003
a004


808 :名無しさん@そうだ選挙にいこう:2009/08/20(木) 00:16:00
>>807
エクセルの並び替えでハイフンは無視されます。
しょうがないので、一旦他の文字に置き換えて、並べて、文字を戻すのがよいかと。

-を@に置き換えて並び替え
a@001
a@002
a@005
a003
a004

@を-に置き換えで戻して
a-001
a-002
a-005
a003
a004

809 :名無しさん@そうだ選挙にいこう:2009/08/20(木) 00:36:03
おねがいします。
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2000 (近日2007へUP予定)
【3 VBAが使えるか    .】 はい
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 .PHP 外部データ 取り込み スクリプト


*質問の要点
.phpのWEBページにキーを送り、戻ってきたHTMLをテキストとしてセルに取り込みたい。
(上記のことが出来るwith文書式、URLが知りたい)


*今までやっていたこと
古本の価値を調べる必要があり ttp://mamazy.com/papazy/papa2/search_book.php
ここのページをIEを使って開き、一冊づつISBNコードを入力、セルにコピペして利用していました。

例えばハリー・ポッターと賢者の石 4915512371 ならこれを手入力、テキストでエクセルへコピペしたあと
データ形成用マクロで必要なデータ(Rank、在庫数、最低価格など)を抽出して一覧にまとめ、利用していました。


*これからやりたいこと
最近非常に量が多くなってきたので、エクセル上でテキストボックスを作りそこにISBNコード入力して
エクセル上で直接表示内容をテキストとして取り込み、抽出・まとめ処理をして、テキストボックス入力待ちになるという
連続処理がしたい。

*やってみて出来なかったこと
webクエリなどを参考にして様々な.htmページの取り込み・加工は比較的簡単に出来たが、
.phpになると全く出来なくなる。XMLerrorというエラーが出てきて、おそらくこちらからの送信データに問題が
あるのではないかと考えるが、ここで行き詰まり質問するに至りました。



810 :名無しさん@そうだ選挙にいこう:2009/08/20(木) 00:39:20
http://www.google.co.jp/search?q=msxml2

811 :名無しさん@そうだ選挙にいこう:2009/08/20(木) 00:42:17
WinXPで Excel 2002を使ってます。

例えば
10個のセルに数字だけ入っているとします。
1、2、3、4、5、6、7、8、9、10
例えば3番目〜8番目のセルの数字だけ合計を確認したい場合は
どのような手順が良いでしょうか?


812 :名無しさん@そうだ選挙にいこう:2009/08/20(木) 00:54:53
Excel 2007 を買おうと思ってますが、便利な機能があれば
教えてください。 現在、2002です。

頻繁にする作業は、表の中に、セルを選択してバケツツールで色を変更します。
時間ごとに更新するので、セルを選択して、色を選択して塗って
セルを選択して、色を選択して・・ という作業をします。

使う色は4色です。 計算の機能は、お金の計算くらいしか使わないので
特に不自由していません。

よろしくお願い致します m(_ _)m

813 :名無しさん@そうだ選挙にいこう:2009/08/20(木) 00:58:05
>>811
作業として一番早いのは、3番目〜8番目のセルの範囲を選択すると右下の枠の部分に合計=○○って出てくる。

これ参照
http://www.atmarkit.co.jp/fwin2k/win2ktips/875autocalc/autocalc.html

814 :名無しさん@そうだ選挙にいこう:2009/08/20(木) 02:29:23
>>812
たしか2007とそれ以前のバージョンでは選択色が若干変わるみたいなので
色を中心に扱っている人にはあまりお勧め出来ないかと。

815 :名無しさん@そうだ選挙にいこう:2009/08/20(木) 03:34:23
>>813-814 ご丁寧な回答を、ありがとうございました m(_ _)m

816 :暇人:2009/08/20(木) 09:07:36
>>813

Dim myColor As Long

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

With Target
If .Row = 1 Then
If .Column = 1 Then
If .Value = "Stop" Then
.Value = "Start"
Else
.Value = "Stop"
End If
End If
myColor = .Interior.Color
Else
If Range("A1") = "Start" Then
.Interior.Color = myColor
End If
End If
End With

End Sub

817 :もう一度質問させてください:2009/08/20(木) 12:36:35
A1を入力するだけで、B行の日付がその月のものに自動でなるようにしたいです

自分の対策としては下記のようにやってみたのですが、
9月30日までだと、31日分が余計なので10/1が表示される
2月28日までだと、29.30.31日分が余分になるので3/1.3/2.3/3が表示される
希望としては28日、30日までのものについては、それ以降は非表示になるのようにしたいのです

B1に「=A1」、B2に「=B2+1」として以降はオートフィルでやっています。
C行は「=WEEKDAY(C*)」のaaa表示にしています。

    A      B     C
1 2009/8/1  09/8/1     土
2         09/8/2     日
3         09/8/3     月

27         09/8/27    木
28         09/8/28    金
29         09/8/29    土
30         09/8/30    日
31         09/8/31    月

    A      B     C
1 2009/2/1  09/2/1     日
2         09/2/2     月
3         09/2/3     火

27        09/2/27     金
28        09/2/28    土
1         09/3/1     日
2         09/3/2     月
3         09/3/3     火

818 :名無しさん@そうだ選挙にいこう:2009/08/20(木) 12:54:11
IF(month(b1)=month(a2),month(a2),””)

多分適切な関数とかあるかもしらんがとりあえず

819 :名無しさん@そうだ選挙にいこう:2009/08/20(木) 13:04:16
改良
B2に書いて↓に
=if(b1=““,““,if(month(a$1)=month(b1+1),b1+1,““))

820 :809:2009/08/20(木) 13:51:01
>>810
ヒントありがとう、よく読んでみたがPOSTとGET違いから来る
データ送出方法の違いということだろうか...。

POSTだとURL一行でまとめることが出来ず、変数?の形でどうにかする...?
まだ理解できないです。

どなたかphpにアクセスする部分のコードのサンプルいただけないでしょうか。

821 :名無しさん@そうだ選挙にいこう:2009/08/20(木) 14:44:38
【1 OSの種類         .】 WindowsVista
【2 Excelのバージョン   】 Excel2007
【3 VBAが使えるか    .】 いいえ。
【4 VBAでの回答の可否】 否。
【5 検索キーワード     】

振込金額  振込手数料
           525円


振込金額が3万円未満ならば振込手数料が315円に
振込金額が5千円未満ならば振込手数料が0円に

上記のように記入した金額により振込手数料が変動するように作りたいのですがどのようにすれば可能ですか?
エクセルは職場で自分しか使えず、自分も全て独学で素人なので出来れば分かりやすくお願いします。

822 :名無しさん@そうだ選挙にいこう:2009/08/20(木) 16:15:25
EXCEL2003です。
VBAを使わずに以下のことができる方法(機能)があれば教えて下さい。
(12回コピー&ペーストをする方法以外で)

同じレイアウトのリスト形式のデータが
12枚のシート上にあります(1月〜12月の実績データ)。

このデータを全て、別の1枚のシート(年間総計データ)にコピーする。
(1月分のデータの下に2月分のデータ、2月分のデータの下に3月分の
 データ・・・という風に)

よろしくお願いします。

823 :名無しさん@そうだ選挙にいこう:2009/08/20(木) 16:29:12
>>821
F1押してIFで検索

>822
コピーは出来ない
データを参照するだけなら、例えばシート名「1月」のセルA1であれば
=1月!A1

加算なら
=1月!A1 + 2月!A1

他に串刺しってのがあるらしいが知らん

824 :名無しさん@そうだ選挙にいこう:2009/08/20(木) 18:01:32
>>821
A1に数字が入るとすると
B1=IF(A1>5000,315)+IF(A1>30000,210)


825 :名無しさん@そうだ選挙にいこう:2009/08/20(木) 18:04:29
>>822
串刺し計算ならこんな感じ
=SUM(Sheet1:Sheet2!A1)
ただし総計シートが他のシートの真ん中にきたりすると×


826 :名無しさん@そうだ選挙にいこう:2009/08/20(木) 18:57:14
>>824
デバッグやメンテのしにくい悪い例
正解はこうだ
=IF(A1<5000,0,IF(A1<30000,315,525))

827 :名無しさん@そうだ選挙にいこう:2009/08/20(木) 19:20:32
2002を使ってるんですが、
表示形式のユーザー定義で

四桁の乱数1111 もしくは 111とセルに入力したら
四桁の場合は1-1-1-1
三桁の場合は1-1-1
と表示させる方法ってあるんでしょうか?

色々調べて試したんですが、四桁で1-1-1-1となっても、
三桁の111を入力すると 1-1-1- になってしまいます。

828 :名無しさん@そうだ選挙にいこう:2009/08/20(木) 20:34:18
[>999]0-0-0-0;0-0-0

829 :名無しさん@そうだ選挙にいこう:2009/08/20(木) 20:36:35
>>827
4桁か3桁しかないならこれでは?
[>999]0"-"0"-"0"-"0;0"-"0"-"0"
表示形式だけだと限界があるからあまり複雑なのは無理だけど。

830 :名無しさん@そうだ選挙にいこう:2009/08/20(木) 21:01:54
>>822
毎回コピー&ペーストを12回やらないで済むには形式を選択でリンク貼り付け
にしておけば初回だけで済みますよ。

831 :名無しさん@そうだ選挙にいこう:2009/08/20(木) 22:24:32
初心者的な質問です。

A−1に、数字を入力し、下にドラッグした場合にA−2、A−3と数字が1づつ増える場合と数字が変わらない場合があります。

どの場合に増えてどの場合に数字が変わらないのか記憶にありません。

下や他方向へドラッグした場合どうすれば数値が1づつ増えるようにできますか?
また1づつ減らすことは可能ですか?

やり方がわかりません。よろしくお願いします。


832 :名無しさん@そうだ選挙にいこう:2009/08/20(木) 22:42:20
>831

A2にA1±1を入力後にオートフィル

833 :名無しさん@そうだ選挙にいこう:2009/08/21(金) 01:05:49
>>831
文字列で保存されている
A1に1、B1に1で両方選択した後におーとふぃる
数字が混ざってても文字が混ざっているA1に あ1、B1に あ2 
後は色々

834 :名無しさん@そうだ選挙にいこう:2009/08/21(金) 01:12:57
>>831
1つのセルの右下を選択して左クリックでドラッグなら、ただのコピー
右クリックでドラッグすると、ただのコピーか、連続データが選べる。
選択のうち連続データの片方がさらに詳細設定で、増分に-1入れると1ずつ減る。

832や833の言っているとおり、A2にA1より1多かったり少ない数字を入れて、
A1とA2の2セル両方選択して右下の点を左クリックでドラッグすると増えたり減ったりする。

835 :821:2009/08/21(金) 11:45:18
>>824
>>826
ありがとうございました。

836 :822:2009/08/21(金) 20:01:19
>>823,825
レスありがとうございます


837 :名無しさん@そうだ選挙にいこう:2009/08/22(土) 02:02:28
>>828
>>829

ありがとうございました。
もう少し勉強します。


838 :名無しさん@そうだ選挙にいこう:2009/08/22(土) 02:05:40
【Anti Virus】Kaspersky Lab Part87【カスペルスキー】
http://pc11.2ch.net/test/read.cgi/sec/1248541340/806

806 :名無しさん@お腹いっぱい。 [] :2009/08/13(木) 17:45:58
何だこのスレwww

このスレを見ている人はこんなスレも見ています。(ver 0.20)
女子小中学生に性欲わかないやつは異常3 [生活サロン]
小学生のこどもおっぱいをちゅーちゅーしたい [大規模MMO]
小学生のこどもおっぱいをちゅーちゅーしたい [スカパー]
小・中学校のちょっとエッチな淡い思い出 [セピア]
小学生のこどもおっぱいをちゅーちゅーしたい [U-15タレント]




【Anti Virus】Kaspersky Lab Part87【カスペルスキー】実質Part88
http://pc11.2ch.net/test/read.cgi/sec/1248628556/364

364 :名無しさん@お腹いっぱい。 [sage] :2009/08/21(金) 23:20:36
23時20分

■ おすすめ2ちゃんねる 開発中。。。 by FOX ★
このスレを見ている人はこんなスレも見ています。(ver 0.20)
女子小中学生に性欲わかないやつは異常3 [生活サロン]
小学生のこどもおっぱいをちゅーちゅーしたい [スカパー]
小・中学校のちょっとエッチな淡い思い出 [セピア]
小学生のこどもおっぱいをちゅーちゅーしたい [U-15タレント]
小学生のこどもおっぱいをちゅーちゅーしたい [大規模MMO]

839 :名無しさん@そうだ選挙にいこう:2009/08/22(土) 02:06:23
●前科2犯・中尾嘉宏(46)(=2chコテハン:FOX★)について
アダルトサイト PINKちゃんねるの責任者であり、2ちゃんねるの影の責任者。
2chコテハン FOX★=中尾嘉宏(46)

■2ちゃんねる幹部・中尾嘉宏(46)(FOX★)は詐欺(出資法違反)および児童買春斡旋で
逮捕されていた。
http://web.archive.org/web/20050305185414/http://jsimin.at.infoseek.co.jp/opinion/newrich.html

北海道警生活環境課と札幌・中央署は1997年5月6日、インターネットを利用し
不特定多数の人から金を集めていたとして、出資法違反(預かり金の禁止) の疑いで
札幌市厚別区もみじ台南七丁目、パソコンソフト開発販売会社社長 中尾嘉宏容疑者(当時37)
を逮捕した。

■解説
中尾嘉宏(46)は、詐欺(出資法違反)と児童買春斡旋の罪とあわせて前科2犯。
2ちゃんねるのサーバー管理者で、ピンクちゃんねる管理者でもある。

840 :名無しさん@そうだ選挙にいこう:2009/08/22(土) 02:07:04
2009/6/25「Kaspersky Internet Security 2010」欧州で発売
http://internet.watch.impress.co.jp/docs/news/20090625_296612.html

露Kaspersky Labは24日、個人向けの総合セキュリティソフト
「Kaspersky Internet Security 2010(KIS2010)」とウイルス対策ソフト
「Kaspersky Anti-Virus 2010(KAV2010)」を発表した。
KIS2010とKAV2010は現在、ドイツ、フランス、スペイン、イタリアで販売されている。
米国と英国では7月に発売する予定。
日本国内の発売日は未定だが、Kaspersky製品を販売するジャストシステムによれば、
「例年通りであれば秋口に発売する」としている。


手を打たないと蕪価下がりますよw

841 :名無しさん@そうだ選挙にいこう:2009/08/23(日) 12:51:42
【1 OSの種類         .】 Windows XP
【2 Excelのバージョン   】 Excel2007
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 Excel2007 二重円グラフ

Excel2003の時に愛用していた二重円グラフの作成方法が、
Excel2007から分からなくなりました。以下のサイトを参考にしていたのですが、
このようなグラフをExcel2007でどのように作成したら良いでしょうか?
参考となるHPがあればご紹介していただきたいです。宜しくお願い致します。
http://www.geocities.jp/excel_graph1/graph/graph_106/graph_106.html

842 :名無しさん@そうだ選挙にいこう:2009/08/23(日) 14:14:00
EXCEL2003です

セルの値や式は書き換えられないが、
コピー&ペーストは可能なようにできるのでしょうか
(ペースト先では変更可)

もし可能でしたら、やり方を教えて下さい。
よろしくお願いします。



843 :名無しさん@そうだ選挙にいこう:2009/08/23(日) 14:29:37
>>842
値だとデータ、入力規則
式はわからん。誰か頼む

844 :名無しさん@そうだ選挙にいこう:2009/08/23(日) 14:45:32
>>842
全てのセルの書式設定の保護のロックのチェックを外す
書き換えたくないセルを選んで今度はロックにチェックする
シートの保護で操作を許可するようにチェックを入れ保護する

845 :名無しさん@そうだ選挙にいこう:2009/08/23(日) 17:55:13
【1 OSの種類         .】 Windows XP
【2 Excelのバージョン   】 Excel2000
【3 VBAが使えるか    .】 はい
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 画面分割 スクロール


画面を縦に分割して、縦でもスクロールできるようにするにはどうしたらいいですか?

セルの縦のラインを選んでる状態で、ウインドウ→分割 を選ぶと、ウインドウが右と左に分かれます。
ところがこの状態だと、上下のスクロールは左右どちらのウインドウも同じ動きをします。(左右のスクロールは
別個にスクロールしますが)

左右に分割しているのに、上下スクロールは左右別にする方法はないでしょうか?

846 :名無しさん@そうだ選挙にいこう:2009/08/23(日) 18:01:35
ウィンドウ→新しいウィンドウを開く→並べて比較→同時にスクロールをオフ

847 :845:2009/08/23(日) 18:54:24
>>846
レスありがとうございます。

>ウィンドウ→新しいウィンドウを開く 

まではできましたが

>並べて比較→同時にスクロールをオフ

というのがどこにも見つかりません・・・。どこにあるのでしょうか・・・。

848 :名無しさん@そうだ選挙にいこう:2009/08/23(日) 20:29:50
ウィンドウ→新しいウィンドウを開く→ウィンドウ→並べて比較→同時にスクロールをオフ
でも、思っているようなスクロールじゃないかもよ
同じウィンドウを2つ出して、表示する箇所を別にしているだけだから。

849 :名無しさん@そうだ選挙にいこう:2009/08/23(日) 20:34:59
↓この操作はExcel2000ではないようです。
ウィンドウ→並べて比較→同時にスクロールをオフ

でも「新しいウインドウを開く」を使えば思ってた操作ができそうです。どうもありがとうございました。

850 :名無しさん@そうだ選挙にいこう:2009/08/23(日) 22:03:03
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel203
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 excel 関数 ファイル名 可変


各月のデータが入った同じフォーマットのエクセルファイルが50個あり
集計用別ファイルのシートA1〜A50にそれぞれのファイル名を入力しています。
オートフィルタでそのうちのひとつを選択すれば、該当月のデータの特定のセルの値を
B列以降に表示させたいのですがどのようにすれば良いですか?

=[200810.xls]Sheet1!$A$1
この式の[ ]内を選択したファイル名に都度変えられると便利だと思ったのですが
方法があれば教えてください。
宜しくお願いします。


851 :名無しさん@そうだ選挙にいこう:2009/08/23(日) 22:05:28
>>850
=indirect("[200810.xls]Sheet1!$A$1")

852 :850:2009/08/23(日) 22:40:13
>>851さま

ありがとうございます。
書き方がおかしかったみたいです。
すみません。

______A_________
1 200810.xls
2 200811.xls
3 200812.xls
4 200901.xls
5 200902.xls


例えば、B51のセルに入る数式を=[ ]Sheet1!$A$1こういうふうにしたとして
その[ ]内をA1(200810.xls)だったりA5(200902.xls)だったり
オートフィルタで選択したものに変えたいのです。
引き続き宜しくお願いします。



853 :名無しさん@そうだ選挙にいこう:2009/08/23(日) 22:45:41
>>852
=INDIRECT("["&A1&"]Sheet1!$A$1")

854 :850:2009/08/23(日) 22:53:53
>>853さま

うまくいきません。

B51の数式を
オートフィルタでA1の200810.xlsを選択時には=[200810.xls]Sheet1!$A$1
A5の200902.xlsを選択時には=[200902.xls]Sheet1!$A$1としたいのです。

宜しくお願いします。m(_ _)m

855 :名無しさん@そうだ選挙にいこう:2009/08/23(日) 22:55:46
回答してくれた人が可哀そう・・・

856 :850:2009/08/23(日) 22:58:19
>>853さま
>>855さま

理解が足りていないようで申し訳ありません。
もう一度、わかるまで試してみます。

857 :名無しさん@そうだ選挙にいこう:2009/08/23(日) 23:04:12
>>854
オートフィルタって知ってる?
ttp://www.eurus.dti.ne.jp/~yoneyama/Excel/filter.htm
抽出機能なんだけど
この機能を使って「A1の200810.xls」を「選択」することは無い

仮にオートフィルタで「A1の200810.xls」の値を抽出した時、B51の数式を変えることはVBAでしか出来ない
それでよければ作るけど、そんなことをするぐらいなら
=INDIRECT("["&A1&"]Sheet1!$A$1")
のA1の部分を変えるほうが早い

858 :名無しさん@そうだ選挙にいこう:2009/08/23(日) 23:08:28
1日の食事の支出表みたいなのを作っているんですが

||日付▼ | 食事の種類▼ | 食費▼ || リストの食費の合計
|| 1/1  |    和     | \10    || \60
|| 1/2   |    中     | \20    ||
|| 1/3   |    洋     | \10    ||
|| 1/4   |    和     | \20    ||


それで、この場合ですと食事の種類という項目を作って「和」「洋」「中」の3つに分けています
この時、リスト外に「今までの食費の合計(SUMで食費列のすべてを足し算しています)」を出しているんですが
オートフィルにて「和」だけ抽出した場合は、この「今までの食費の合計」も「和」だけの合計にしたいのですが、どういう計算式にすればよいのでしょうか?

絵で表すとこんな感じです

||日付▼ | 食事の種類▼ | 食費▼ || リストの食費の合計
|| 1/1  |    和     | \10    || \30
|| 1/4   |    和     | \20    ||


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

859 :名無しさん@そうだ選挙にいこう:2009/08/23(日) 23:16:47
SUBTOTAL

860 :名無しさん@そうだ選挙にいこう:2009/08/23(日) 23:17:19
>>858
オートフィルとオートフィルタ間違えないようにな
で、解決方法はとりあえず三つ
・ピボットテーブル
・=SUBTOTAL(9,C:C)
・=SUMIF(B:B,"和",C:C)
ピボットは更新し忘れると間違った結果になることも。
SUBTOTALは非表示を計算しないSUM関数(平均とかも取れるけど)。
SUMIFはオートフィルタ使わなくても合計を取れる。

好きなものをどうぞ

861 :850:2009/08/23(日) 23:19:26
>>857さま

オートフィルタではなくリストから選択だったかったかもしれません・・・。

A1に表示された値と同じ名前のファイルのSheet1の$A$1にある数値が出るようにしたかったのですが
=INDIRECT("["&A1&"]Sheet1!$A$1")とすると答えがファイル名や#REF!になってしまいます。
VBAで作っていただけたらうれしいです。
どうか宜しくお願いします。

862 :名無しさん@そうだ選挙にいこう:2009/08/23(日) 23:23:49
>861

すでに答えでてるのに何でVBAなの?
少しは自分で努力しろ。

863 :名無しさん@そうだ選挙にいこう:2009/08/23(日) 23:24:52
>>859-860
SUBTOTAL
ありがとうございます

864 :名無しさん@そうだ選挙にいこう:2009/08/23(日) 23:25:13
>>861
A1に入っているファイル名が間違っている。VBAで作ってもそこは解決不能だから作らない

865 :名無しさん@そうだ選挙にいこう:2009/08/23(日) 23:29:22
Sub aho()
  Worksheets("Sheet1").Range("A2").Formula = "INDIRECT("["&A1&"]Sheet1!$A$1") "
End Sub


866 :名無しさん@そうだ選挙にいこう:2009/08/23(日) 23:31:21
>865

ってか動かんやろ、それw

867 :850:2009/08/23(日) 23:40:52
何度もすみません。

A1〜A5のファイルをすべて開いておいて
=INDIRECT("["&A1&"]Sheet1!$A$1") のA1の部分を変えると
見たいファイルの$A$1の値を表示させることができますが
やはりファイル名を選ぶと数式の中のファイル名も変わるようにしたいです。
宜しくお願いします。


868 :名無しさん@そうだ選挙にいこう:2009/08/23(日) 23:48:57
>867

A1をリストにするなりしてA1の値を変えればよかろう。

アホにエスパーするのは疲れる・・・

869 :名無しさん@そうだ選挙にいこう:2009/08/24(月) 00:01:52
>>868さま

本当に、仰るとおりで申し訳なく感じています。
親切にお付き合いくださってありがとうございます。
A1をリストにすることで解決できました。
ただし、選択対象のファイルを全部開いていなければ
A1の内容が変わった時#REF!となってしまいます。



870 :名無しさん@そうだ選挙にいこう:2009/08/24(月) 00:07:24
>869

INDIRECTというキーワードをもらったんだから少しはググレ。
開いてなきゃどこにファイルがあるかExceにも分からんだろが。

871 :名無しさん@そうだ選挙にいこう:2009/08/24(月) 00:09:16
>>868
他ブックをオープンにしていないと値は取得できない
嫌なら一つのブックにするしかない

872 :名無しさん@そうだ選挙にいこう:2009/08/24(月) 00:20:25
>869
同時に開いているブック間で引用した状態だと =[ブック名]シート名!セルアドレス
な状態ですが、引用元、引用先ともブックを閉じて再度引用先(↑の式を入れている方)を
開くと「リンクを更新しますか?」のダイアログが表示され、「はい」を選ぶと式は
='引用元ブックのフルパス[ブック名]シート名'!セルアドレス
に変化します。
なので、引用元のブックをフルパス部分も含んだ状態で指定すれば、同時に開いておかなくても
引用できるかと思う。試してはいないけど。

873 :850:2009/08/24(月) 00:34:24
>>869さま
>>870さま
>>871さま

教えていただいた内容をよく考えこれから試してみます。
ありがとうございました。




874 :872:2009/08/24(月) 00:48:36
INDIRECTはブックを同時に開いてないとダメみたい。
VBAでフルパスを含む計算式(INDIRECTを使わない)を生成するしかないようですね。

875 :名無しさん@そうだ選挙にいこう:2009/08/24(月) 11:54:11
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2007
【3 VBAが使えるか    .】 はい
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 2007 シートの行を挿入 ショートカット

ホーム→挿入→シートの行を挿入のショートカットキーを教えてください。
Ctrl+Shift+;(+)『ではなく』、です。これは「セルの挿入」のショートカットです。
・・・検索しても↑しか出てきません。2007では、この機能のショートカットキーはないのでしょうか?(涙)

876 :名無しさん@そうだ選挙にいこう:2009/08/24(月) 12:19:40
>875

2007は知らんがマクロでいいなら・・・

Sub macro1()
Worksheets.Add
End Sub

877 :876:2009/08/24(月) 12:20:57
あ、シートの行か・・・

つ新しいマクロの記録

878 :名無しさん@そうだ選挙にいこう:2009/08/24(月) 14:44:48
セルの挿入は行も出来るだろ
R押してエンターすればよかろ

879 :875:2009/08/24(月) 16:45:27
>>876-878
すみません、難しく考えすぎましたね。Alt+I→RでOKでした。
2007的にはあまりよろしくないのかもしれませんが・・・。

880 :名無しさん@そうだ選挙にいこう:2009/08/24(月) 16:45:54
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2000
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 エクセル 曜日 など
週払いの給料に対する明細を作っています
日曜〜土曜の労働に対する支払いを翌週の金曜日に支払います。
これ支払日を指定すれば前の週の日曜と土曜日を出せるようなシステムを作りたいと思っています。
また、月末でも分かれます。

例えば8/28を指定(支払日です)だと「8/16〜8/22」のような形で乗せたいため
「8/16」と「8/22」を計算式を使って求めたいと思っています。「8/16〜8/22」という値はアンパサンドでつないで出そうと思っています。
また9/11支払いは月をまたぐため、8/30〜8/31と9/1〜9/5に分かれます

どのような計算式を作ればよいでしょうか?よろしくお願いします。

881 :名無しさん@そうだ選挙にいこう:2009/08/24(月) 17:21:39
>880

単に引き算ではダメなのか?


882 :名無しさん@そうだ選挙にいこう:2009/08/24(月) 17:37:14
>>881
!!!!!
そうですよね。それでできました。失礼しました・・

883 :名無しさん@そうだ選挙にいこう:2009/08/24(月) 20:13:46
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2000
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 エクセル まとめ

フォルダの中に複数のエクセルファイルがあります。
このエクセルファイルの1シート目を収集して1つのブックにまとめたいのですが、
何かいい方法はありますでしょうか。



884 :名無しさん@そうだ選挙にいこう:2009/08/24(月) 20:31:19
>>883
VBAなしってことは手作業でどうやるのがいいかだろ
10個くらいずつまとめて作業するしかなくない?

@10個くらい開く
Aウィンドウ→整列→上下に整列
Bシート見出しをドラッグして移動(ドラッグしたあと指離す時にシフト押してるとコピーになる)

あたりが俺的には早いかな

885 :名無しさん@そうだ選挙にいこう:2009/08/24(月) 20:53:30
大量にエクセルファイルがあるので困っています。

VBA使えれば簡単に出来るのでしょうか。

886 :名無しさん@そうだ選挙にいこう:2009/08/24(月) 20:57:32
>884
>シフト押してるとコピーになる
もしもし、シフト押したら「ムーブ」になっちゃいますよ。コピーなら[ctrl]キーを押しながら。

>883 >885
なんにしろ、VBAなしってことは手作業になるし、まとめたブックから元となるブックを開くように
するためにもVBAが使えると便利ですよ。

887 :名無しさん@そうだ選挙にいこう:2009/08/24(月) 20:59:40
>>885
VBAならわりと簡単な作業だけど
大量にって言っても何百シートも集めてひとつのブックにするのは奨められないがなー

あとシートの並び順とかもあるんならそれもマクロに組みこまないといけないから
マクロ不慣れなら手作業に慣れる方が確実かもと思ったり

888 :名無しさん@そうだ選挙にいこう:2009/08/24(月) 21:02:12
>>886
あっそうだな。Excel立ち上げずうろ覚えでレスしてた。訂正サンクスだべ

889 :名無しさん@そうだ選挙にいこう:2009/08/24(月) 21:28:06
>885

エラー処理は深く考えてないがこんな感じ。
一応動いたのは確認した。(注:当方Excel2003)

Sub macro1()

Dim myPath As String
Dim myName As String
Dim myBook As Workbook
Dim mySheet As Worksheet

With Application.FileDialog(msoFileDialogFolderPicker)
.Show
myPath = .SelectedItems(1)
End With

myName = Dir(myPath & "\*.xls")

Do While myName <> ""
Set myBook = Workbooks.Open(myName)
Set mySheet = myBook.Worksheets(1)
mySheet.Copy After:=Workbooks("Book1").Sheets(1)
myBook.Close
myName = Dir()
Loop

End Sub


890 :名無しさん@そうだ選挙にいこう:2009/08/24(月) 22:25:19
お願いします。

【1 OSの種類】 WindowsXP
【2 Excelのバージョン】 Excel2000
【3 VBAが使えるか】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 エクセル 曜日 日数など

日付が入力されているセルを、その月で拾っていく関数は何を使えばいいでしょうか?
例えば「2008/4/25」のように日付が入力されている場合は「4月」と返す形です。

どうぞよろしくお願いいたします。

891 :名無しさん@そうだ選挙にいこう:2009/08/24(月) 22:54:20
>890

=MONTH(A1)

892 :名無しさん@そうだ選挙にいこう:2009/08/24(月) 22:57:45
>890

先に書いておく。

=YEAR(A1)
=MONTH(A1)
=DAY(A1)
=WEEKDAY(A1)



893 :名無しさん@そうだ選挙にいこう:2009/08/24(月) 23:02:14
>>890
別セルを関数で抽出する場合、
例:A1に2008/4/25が入力されているのを別のセルに月のみ表示させたい場合、
=MONTH(A1)&"月"
とか。

直接そのセルに2008/4/25を入れたときに月のみ表示させたい場合、
セルの書式設定→表示形式タブ→ユーザー定義→m"月"

894 :名無しさん@そうだ選挙にいこう:2009/08/24(月) 23:11:05
【1 OSの種類         .】 Windows XP
【2 Excelのバージョン   】 Excel2007
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否


2007/4/10 10:00
2007/4/10 11:00
2007/4/10 12:00
2007/4/11 10:00
2007/4/11 11:00
2007/4/11 12:00


のように日付と時間からなる列から、
日付に関わらず11:00だけを
抜き出すにはどうすればいいでしょうか?
よろしくお願いします。

895 :名無しさん@そうだ選挙にいこう:2009/08/24(月) 23:50:47
>>894
=TEXT(A1,"hh:mm")

896 :名無しさん@そうだ選挙にいこう:2009/08/25(火) 00:10:33
=RIGHT(A1,4)

897 :890:2009/08/25(火) 00:45:00
>>891-893

早速のご回答ありがとうございます!
関数でもなんでもないですね、ぐぐっても出なかったわけです。

皆様にとって素晴らしい一週間になりますように!

898 :名無しさん@そうだ選挙にいこう:2009/08/25(火) 07:56:28
【1 OSの種類         .】 Windows XP
【2 Excelのバージョン   】 Excel XP
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 エクセル 特定の文字だけを消す

Cのセルに*が付いています。

*123
*197
*553

という風になっているのですが*だけを消して数字はのこしたいのです

123
197
553

とするにはどうすれば、よいでしょうか? どな方よろしくお願いします。

899 :名無しさん@そうだ選挙にいこう:2009/08/25(火) 08:40:25
>898

単に置換機能ではダメなのかな?

数式なら
=REPLACE(A1,FIND("*",A1),1,"")
但し"*"が必ず含まれ、且つ1個だけ限定

900 :898:2009/08/25(火) 09:09:55
アドバイス有難うございます。
置き換えをやってみたのですが
数字ごと消えてしまいます。
大量に*が付いた数字があるので
一括でできる方法を知ってらしたら
ご教授願えないでしょうか。スレ汚し申し訳ありません。

901 :名無しさん@そうだ選挙にいこう:2009/08/25(火) 09:45:39
>900

>713-を参照。


902 :名無しさん@そうだ選挙にいこう:2009/08/25(火) 09:51:18
>900

ごめん。>901は忘れてくれ。

君のケースでは「検索する文字列」に ~* (チルダ+アスタリスク)
を指定すればいい。

903 :名無しさん@そうだ選挙にいこう:2009/08/25(火) 09:53:08
補足

>898
>【2 Excelのバージョン   】 Excel XP

そんなバージョンは無いw
Excel2003で試した。

参考:http://support.microsoft.com/kb/214138/ja

904 :名無しさん@そうだ選挙にいこう:2009/08/25(火) 12:01:07
officeXPの間違いかな?

905 :898:2009/08/25(火) 15:25:58
>>903さん
教えてもらったURLを参考にせさてもらったら
できました。大変有難うございます。
助かりました。感謝します。


906 :842:2009/08/25(火) 20:25:13
>>844
レスありがとうございます

907 :名無しさん@そうだ選挙にいこう:2009/08/26(水) 09:07:34
【1 OSの種類         .】 Windows XP
【2 Excelのバージョン   】 Excel 2003
【3 VBAが使えるか    .】 少しだけ
【4 VBAでの回答の可否】 はい
【5 検索キーワード     】 入力規則 excel マクロ

質問お願いします。
入力規則で選べば、他のシートが引用して
宛名が変わります。
全ての入力規則(リスト)
に対して印刷をかけたいのですが、入力規則の数でループはかけられるのでしょうか?
1.ボタンを配置
2.押すとメッセージボックスで確認
3.はい押下後に全て印刷
というマクロで悩んでいます。
2辺りまではなんとかできそうなのですが、アドバイス頂けませんでしょうか?
宜しくお願いします

908 :名無しさん@そうだ選挙にいこう:2009/08/26(水) 09:35:23
>907

Range("A1").Validation.Formula1
でリストの範囲は文字列として取得できる。

Rangeのリスト範囲を取得するよりもリストの
ソースを数える方が素直だと思ふ。

909 :名無しさん@そうだ選挙にいこう:2009/08/26(水) 10:58:53
回答じゃなくて、質問をご所望なんだが、

と揚げ足を取ってみる。

910 :名無しさん@そうだ選挙にいこう:2009/08/26(水) 17:22:02
「質問があるので聞いてください」ってことだろ

911 :名無しさん@そうだ選挙にいこう:2009/08/26(水) 17:39:34
>>909
日本語は初めてか? 力抜けよ

912 :名無しさん@そうだ選挙にいこう:2009/08/26(水) 20:47:21
入力規則ってなんだ?

913 :名無しさん@そうだ選挙にいこう:2009/08/26(水) 20:59:25
>>912

ggrks

914 :名無しさん@そうだ選挙にいこう:2009/08/26(水) 21:03:21
>>913
あ〜、使ったこと無くてさ〜

915 :名無しさん@そうだ選挙にいこう:2009/08/26(水) 21:34:25
>>907
Sheet1にコマンドボタン1個作って
Sheet1のコードに以下貼り付けれ

Sub リストを印刷する()
Dim WS1 As Worksheet, WS2 As Worksheet

Set WS1 = Worksheets("Sheet1")
Set WS2 = Worksheets("Sheet2")

With WS1

For h = 1 To 12

.Cells(1, 1).Value = WS2.Cells(h, 1).Value
Debug.Print "WS1セルA1の値は、" & .Cells(1, 1).Value & "です。"
.PrintOut Copies:=1, Preview:=1, Collate:=True

Next

End With
End Sub
Private Sub CommandButton1_Click()
If vbNo = MsgBox("印刷を開始していいですか?", vbYesNo) Then Exit Sub
Call リストを印刷する
End Sub


916 :名無しさん@そうだ選挙にいこう:2009/08/26(水) 21:37:31
>>907
あ、言い忘れた
Sheet2のA1:A12のリストを参照して
Sheet1のA1の値を印刷すると仮定してつくってあるから。

917 :名無しさん@そうだ選挙にいこう:2009/08/26(水) 22:41:34
スイマセン。ちょっと質問させてもらいます。EXCEL2007で作っているのですが・・・

やろうとしていることは、販売計画表を作る上で、=G6/$G$3*100 この式があって
まっさらの状態では$G$3(G3)の値は「0」なんですが、0のままだと「#DIV/0!」と
表示されてしまいます。これをIF文を使って、「G3」の値が0の時は数字の0に
なるようにするには、どのようにしたら良いのでしょうか?

IF文を使ってやってみたり、検索しているんですが、G6/$G$3*100の式が
反映されずにエラーになってしまいます。すいませんが教えていただければ助かります。

918 :名無しさん@そうだ選挙にいこう:2009/08/26(水) 23:01:01
=IF($G$3="",0,G6/$G$3*100)

919 :名無しさん@そうだ選挙にいこう:2009/08/26(水) 23:10:51
>917

=IF(ISERR(G6/$G$3*100),"0",(G6/$G$3*100))

920 :名無しさん@そうだ選挙にいこう:2009/08/26(水) 23:16:52
=IF(OR(G3="",G3=0),0,G6/$G$3*100)

921 :名無しさん@そうだ選挙にいこう:2009/08/26(水) 23:19:58
>>917

919>>>>>920>918

922 :名無しさん@そうだ選挙にいこう:2009/08/26(水) 23:23:10
919>>>>>(超えられない壁)>>>>>920>>>918

923 :名無しさん@そうだ選挙にいこう:2009/08/26(水) 23:23:44
>>921
つか>>918は要求満たしてないし。

924 :名無しさん@そうだ選挙にいこう:2009/08/26(水) 23:27:31
>>918-923
勉強不足で、自分ではまだ判断出来ていないんですが、
教えていただいた3つをやってみたところ、エラーが出てしまいます。
何が原因なのかは、自分でまた調べてみようと思います。

遅い時間にも関わらず教えていただき、ありがとうございます。

925 :名無しさん@そうだ選挙にいこう:2009/08/26(水) 23:32:20
ISERR関数は2007じゃ未対応じゃね?>>919のISERRをISERRORに変えてみ。

926 :名無しさん@そうだ選挙にいこう:2009/08/26(水) 23:33:01
>>924

>>918:G3が""(空白)ならば0
>>919:G6/$G$3*100がエラーなら0
>>920:G3が""(空白)または0ならば0

俺も>>919が最適だと思う。
何故FALSEを()でくくるのか意味が不明だがな。

927 :919:2009/08/26(水) 23:44:12
>925

当方Excel2003です。
知らんかった(汗
ありがとう。

ってかギャラリー多いなw

928 :名無しさん@そうだ選挙にいこう:2009/08/26(水) 23:44:44
>>925,926
中々難しいですね・・・今、ISERRORに変えてみましたがダメでした。
ホントに色々とありがとうございます。

929 :919:2009/08/26(水) 23:45:27
>926

コピペ時の消し忘れw

930 :名無しさん@そうだ選挙にいこう:2009/08/26(水) 23:48:56
>928

>919(>925)がダメだと思えんのだが・・・
ダメでしたって「#DIV/0!」ってこと???

931 :925:2009/08/26(水) 23:55:16
すいません使えないと誤解していたようです。
よくよく調べてみると使えるようです。失礼しました。

932 :名無しさん@そうだ選挙にいこう:2009/08/27(木) 00:08:06
>>930
エラー:508とか出たりします。
先ほど教えていただいたISERRなどから検索掛けて試していますが
どうしても結果が反映されずエラーになってしまいます・・・

勝手ではありますが、また明日やってみようと思います。
職場でも試せる時間が取れると思うので、その時も含めてやってみます。

933 :名無しさん@そうだ選挙にいこう:2009/08/27(木) 00:13:28
>>エラー:508

根本的に何かが違うなw

934 :名無しさん@そうだ選挙にいこう:2009/08/27(木) 04:43:16
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 Excel VBA、Excel マクロ 進捗管理表

表A
開始日    終了日
--------------------
2009/9/1  2009/9/2
2009/9/2  2009/9/5
2009/9/2  2009/9/3

表B
基準日 9/1 9/2 9/3 9/4 9/5
開始日  1  3   3  3  3
終了日  0  1   2  2  3

表Aの開始日と終了日をカウントして、基準日に該当する件数を累計で書き出す進捗
管理表をワークシート関数ではなく、マクロで作成したいのですが、VBAは使ったこと
がなく、どの関数を使用すれば良いのかも分かりません。

ググって自分で書いてみたソースは↓です。


935 :934:2009/08/27(木) 04:45:41
続きです。

'---------------------------------------------------------------------
Sub 進捗表を作成する()
進捗シートの有効範囲を調べる
If 下 < 9 Then '十分なデータがあるかチェックする
MsgBox "データが少ないので作業を続けれません", vbCritical, "進捗表作成"
Exit Sub
End If
End Sub
'---------------------------------------------------------------------
Private Sub 進捗管理シートの有効範囲を調べる()
Sheets("進捗管理").Select
ActiveSheet.Unprotect 'シート保護解除
下 = Range("C3").End(xlDown).Row '項目の列の下端選択
End Sub
'---------------------------------------------------------------------
Private Sub 開始日をカウントし、件数を表示する()
 Select Case <任意の数式または文字列>
   Case セルA1〜A15とセルD1の日付が一致する場合
     カウントした件数を表示
   Case セルB1〜B15とセルD1の日付が一致する場合
     カウントした件数を表示
   Else
    セルが空白なら0を表示
End Select
End Sub

条件の書き方もどのマクロ関数を使用したら良いのかわかりません。
どなたかアドバイスをお願いします。

936 :名無しさん@そうだ選挙にいこう:2009/08/27(木) 07:45:43
>>935
表Bは一月に一回作るの?それとも毎日?
どちらにしても表Bは最初から累計出さず、
1-3行目で個別の合計、4-6行目に累計の表Bを造ったほうがいいと思う。
どうしても累計を最初から出したいなら配列が簡単と思う

937 :934:2009/08/27(木) 07:54:45
表Bは毎日作ります。
予定と実績を管理したいみたいです。

結局、徹夜したのにコード書けませんでした…
自分、頭悪すぎorz
どうしよう。。

938 :名無しさん@そうだ選挙にいこう:2009/08/27(木) 07:57:18
気持ち悪い

939 :795:2009/08/27(木) 07:59:54
PDF書き出ししましたが、全く使い物にならず。見たまんまとはほど遠いずれまくったPDFが出力されました。
>>795についてなんとかうまい方法はございませんでしょうか?

940 :名無しさん@そうだ選挙にいこう:2009/08/27(木) 09:29:33
>>939
excelは印刷に弱いのでexcelを使わない
>>934
Sub a()

saisyugyo = Sheets("Sheet1").Range("A65536").End(xlUp).Row
saisyuretu = Sheets("Sheet2").Range("ca1").End(xlToLeft).Column
For k = 2 To saisyuretu
siraberu = Sheets("Sheet2").Cells(1, k).Value
For i = 2 To saisyugyo
If Sheets("Sheet1").Cells(i, 1) = siraberu Then
kazu = kazu + 1
End If
Next
Cells(2, k) = kazu
Next
End Sub
開始日だけ。後は自分で


941 :名無しさん@そうだ選挙にいこう:2009/08/27(木) 09:53:42
今気付いたけどマルチじゃねえか
まあ頑張れ

942 :名無しさん@そうだ選挙にいこう:2009/08/27(木) 09:56:31
>795
現状、ページ設定の40%というのを80%にしたうえでセル幅・高さ、フォントサイズ等を
調整して現行と同じ印刷結果になるようにしたうえで、ページ設定を81%に変更する
という方法じゃだめなのかな? もちろん画面表示倍率は200%にしないといけないが。

もしくは、一部の列幅の微調整とかではダメなんですか?

943 :795:2009/08/27(木) 11:44:17
だめではないのですが、1度つくったものを微調整するとずれが出て結局作り直しになってしまいます。
が、それしか方法はないんでしょうね。。。

944 :942:2009/08/27(木) 12:15:19
>795
印刷倍率**%のとき、10列分のセル幅を0.1増減させたら印刷結果で何ミリ増減する というような
ことの積み重ねで調整幅の推測は可能と思うんですが。

微調整は実際に印刷しながら試行錯誤するしかないんだろうけど、列幅と行の高さのパラメータを別
シートに記録したり、値を修正したものを適用させたりといったことをマクロに行わせれば少しは楽
になるのでは?

VBAは使えますか?

945 :名無しさん@そうだ選挙にいこう:2009/08/27(木) 12:42:43
PDFずれまくりって、アドベ使ってないだろ。

946 :名無しさん@そうだ選挙にいこう:2009/08/27(木) 14:09:11
>>945
どうせプリンタの設定で余白設定されているんじゃないの?
795の質問に対しても、プリンタの設定使えばいいじゃんというのもある。

947 :名無しさん@そうだ選挙にいこう:2009/08/27(木) 16:26:46
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2007
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 Excel2007 図形 セルの中央

図形から作成した四角形などを
セルの中央に配置することは可能なのでしょうか?

948 :名無しさん@そうだ選挙にいこう:2009/08/27(木) 16:37:55
WinXP で、excel2002 を使ってます。
セルを青で塗りつぶした所を、選択せずに、緑に変更するには
どうすれば良いのでしょうか?

また、excel2007では、そういう機能があるのでしょうか?
教えてください m(_ _)m

949 :名無しさん@そうだ選挙にいこう:2009/08/27(木) 16:39:37
>>947
(cellsの幅-四角形の幅)/2が左端。高さも同様にして描画すればok
手動じゃ無理かな?思いつかない
とりあえずコード↓
Sub Macro1()
'
' Macro1 Macro
' マクロ記録日 : 2009/8/27 ユーザー名 : name
'

'
cellhaba = Columns("A:A").Width
celltakasa = Rows("1:1").RowHeight
haba = 50#
takasa = 40
ActiveSheet.Shapes.AddShape(msoShapeRectangle, (cellhaba - haba) / 2, (celltakasa - takasa) / 2, haba, takasa).Select

End Sub
>>948
VBAなら可能だが、どの青か、またどの緑かわからないと作れない
基本的には、無い

950 :名無しさん@そうだ選挙にいこう:2009/08/27(木) 16:41:05
>>949
ありがとうございました

951 :名無しさん@そうだ選挙にいこう:2009/08/27(木) 17:35:45
【1 OSの種類         .】 Windows xp pro
【2 Excelのバージョン   】 Excel1997 Excel2007
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 エクセル xml

http://developer.garmin.com/schemas/tcx/v2/samples/FitnessHistoryDirectory.tcx
と同じ形式のファイルをエクセル1997で開くとそのまま貼り付けられたように開かれるのですが
エクセル2007だと、ファイルを解析して行列に配置した形式で開かれてしまいます。

エクセル2007でも、エクセル1997と同様にそのまま貼り付けた形で開く方法ないですか?

追伸
エクセル1997で、当初の目的プログラムは達成できるようになったのですが、65535行制限の関係で
GPSの記録の時間制限が短くなってしまいます。その関係で、できればエクセル2007で同様なことができるようになりたいです。

952 :951:2009/08/27(木) 17:46:19
すいません。回避方法わかりました。
エクセル2007でいきなりtcxファイルを開かずに、XMLEDITOR.NETという
フリーソフトで開いてから、全選択コピーでエクセル2007に貼り付ければ
そのままの貼り付けができるみたいです。お騒がせしました。

953 :名無しさん@そうだ選挙にいこう:2009/08/27(木) 19:11:11
EXCEl2007,XPsp2です

クイックアクセスツールバー([上書き保存]、[元に戻す])が
表示されていないのですが、どうすれば表示できるのでしょうか?
宜しくお願いします。


954 :名無しさん@そうだ選挙にいこう:2009/08/27(木) 19:30:09
ワークシートに行を挿入したいのですが・・・
初めの列に番号が入ってるので例えば1000行の50番目に行を挿入すれば
51番目から1000番目までの番号を書き直さなければなりません。
これを一発で出来ないものでしょうかね?
ヘルプを延々と読んでるんですがまったく解決策が見当たりません。
どなたか助けてください。<(_ _)>

955 :名無しさん@そうだ選挙にいこう:2009/08/27(木) 19:56:52
>>954
=row()
と入れておけばA100には必ず100が入る
見出し等の影響でずらしたいなら=row()-1とする

956 :名無しさん@そうだ選挙にいこう:2009/08/27(木) 20:07:36
>>955

おお、出来ました!ありがとうございました!

957 :名無しさん@そうだ選挙にいこう:2009/08/27(木) 20:14:49
【1 OSの種類         .】 Windows XP
【2 Excelのバージョン   】 Excel XP
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 時刻を消す

「2001/1/1 1:00」を「2001/1/1」に変換するにはどうすれば良いでしょうか?
表示だけではなく、値自体を変えたいです。
よろしくお願いします。


958 :名無しさん@そうだ選挙にいこう:2009/08/27(木) 20:34:40
>>957
=A1-HOUR(A1)/24-MINUTE(A1)/24/60
とか。
でもA1-(A1-A1の年月日)の方がいいかもね

959 :名無しさん@そうだ選挙にいこう:2009/08/27(木) 20:41:10
A1に2001/1/1 1:00と入力されていて他のセルに抽出する場合、
=YEAR(A1)&"/"&(MONTH(A1)&"/"&DAY(A1))
とかどう?

960 :958:2009/08/27(木) 20:47:51
>>957
=ROUNDDOWN(A1,0)
いいのでけた

961 :名無しさん@そうだ選挙にいこう:2009/08/27(木) 20:49:07 ?2BP(1)
>>957
=INT(A1)

962 :名無しさん@そうだ選挙にいこう:2009/08/27(木) 20:56:38
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2007
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 可
【5 検索キーワード     】 上手い検索ワードが思いつかず。↓の説明に使ってる単語では検索済み。

訪問する都市ごとに区切ってその日のスケジュールを管理してます。
フォーム等を使った入力で、都市の区切りの追加や、スケジュールの追加による「割り込み挿入」が可能でしょうか?
こんな感じです↓
http://uproda.2ch-library.com/163579XLh/lib163579.jpg

963 :907:2009/08/27(木) 21:06:22
>>908>>915
リストのソースから印刷する方法でうまくいきました
ありがとうございます。
そしてまた欲が出てきてしまいまして・・・
あ □
い □
う □
え □
お □
全選択/解除 □
等、ダイアログで選ばせる方法、またはチェックボックスの様なことはできるのでしょうか?
.netの知識しかないのですが、
選んだものをdictionary等に保存して、ループさせるのかなと
ただ、ダイアログから値を持っていく方法がイマイチわかりません・・・
すみませんが、またご教授お願いいたします。

964 :957:2009/08/27(木) 21:37:04
ありがとうございます。

965 :名無しさん@そうだ選挙にいこう:2009/08/27(木) 21:42:43
>>961
ぎゃー
>>962
VBAでできなくもないけどめんどい。関数じゃ無理
最初から横四列に入力、それら全てを縦一列に並べて並び替えがいいんじゃないスカね


966 :名無しさん@そうだ選挙にいこう:2009/08/27(木) 21:43:45 ?2BP(1)
今朝から職場のMS Officeが2007になった。いろいろと戸惑うことも多いけど、
魅力的な新機能もたくさんあったりでうれしい。Excelの構造化参照とかかこいい!
ExcelだけでもいいけどOffice2007の新機能を詳しく解説した参考書で
いいのありませんか?

967 :名無しさん@そうだ選挙にいこう:2009/08/27(木) 21:46:25
>>966
http://www.eurus.dti.ne.jp/~yoneyama/office2007/index.html

968 :名無しさん@そうだ選挙にいこう:2009/08/28(金) 07:59:12
EXCELシートの列番号[A]の左で、行番号[1]の上の「空白のボタン」(これをクリックすると
シート全体が選択される)の「名前」は何と呼ばれているのでしょうか?

969 :名無しさん@そうだ選挙にいこう:2009/08/28(金) 08:01:28
全セル選択ボタン

970 :968:2009/08/28(金) 09:37:03
>>969
レスありがとうございます


971 :名無しさん@そうだ選挙にいこう:2009/08/28(金) 10:24:46
列の挿入ができず(エラーが表示)、Y 〜 最終列までを削除したところ、A 〜 X列までしか表示されなくなってしまいました。
この表示設定の解除方法が知りたいのですが、ご存じでしょうか。
なお、列の挿入ができないエラーも100%ではなく、でたりでなかったり・・・
(現在は再現されず、エラーメッセージがわからない)

XP/VISTA + Excel2007

972 :名無しさん@そうだ選挙にいこう:2009/08/28(金) 10:53:13
>>971
まずは全セル選択して「A」を右クリックして「列の幅」を8にしてみる

973 :名無しさん@そうだ選挙にいこう:2009/08/28(金) 12:30:41
>>965
なるほど
まずは元を考え直してみます
ありがとう!

974 :名無しさん@そうだ選挙にいこう:2009/08/28(金) 12:59:35
>>972
大正解!気がつきませんでしたw
さんくす

975 :名無しさん@そうだ選挙にいこう:2009/08/28(金) 19:00:42
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2003
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】 後に記載。

スレチだったらすみません。
仕事で単純なエクセルは使用しているので
初歩的なことはできます。
ヒボット少し、SUM関数レベル、グラフ作成くらいまで。
IF関数や、VlookUP関数くらいまでできるようになりたいのです。
教室に通うと、1万円前後かかると思うのですが
それなら、サイトや書籍たくさん買えますしで勉強したいと思うのです。
プログラム組むわけじゃないし、その程度なら独学しろと以前言われたことがあります。
それで、お勧め書籍やサイトなどを教えて頂ければと。
エクセル 勉強 などでぐぐってみましたが、ぐぐる言葉も悪いみたいです。
よろしくお願いします。


976 :名無しさん@そうだ選挙にいこう:2009/08/28(金) 19:07:05
>975

>2-B

977 :名無しさん@そうだ選挙にいこう:2009/08/28(金) 19:15:59
>>976
最後に書いてますね。失礼しました。
誘導もお願いはできないのでしょうか?
どこで聞いていいかもわからないので。

978 :名無しさん@そうだ選挙にいこう:2009/08/28(金) 19:20:03
>>977
レスを読み返すか、ROMだな
3ヶ月でVBAも可能かも(`・ω・´)

979 :957:2009/08/28(金) 20:57:53
【1 OSの種類         .】 WindowsXP
【2 Excelのバージョン   】 Excel2007
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード     】誤差範囲の起点

積み上げ棒グラフの一つの要素の上下に誤差範囲を表示させるにはどうすれば良いのでしょう?
誤差範囲の起点の指定方法が分からないため、棒グラフ要素の上を起点に上誤差と下誤差が表示されてしまいます。積み上げ棒グラフ要素の下を起点に下誤差、棒グラフ要素の上を起点に上誤差を表示させたいですが、どのようにすれば良いでしょうか?よろしくお願いします。

980 :名無しさん@そうだ選挙にいこう:2009/08/28(金) 21:08:25 ?2BP(1)
>>975
参考書はたくさんあるから、自分に合いそうなのを書店で1冊1冊手にとって
眺めてみるのがいちばん


981 :名無しさん@そうだ選挙にいこう:2009/08/28(金) 21:23:41
>>975
ピボットテーブル使えるんだね。
ところでExcelでやりたいことは何?

982 :Access Lv25:2009/08/28(金) 21:26:43
>>975
Access使いです。MySQLと合わせて、ちょっとしたC/Sだったら
つくれます。最近は、給与明細や勤怠レポートを連続PDF化して
登録した職員へボタン1発でメール配信するシステムを作りました。

さて、ご質問の内容ですが、Excelを勉強するにしてもAccessを勉
強するにしても、学校で学ぶのは辞めた方がいいと断言します。
1万円だろうが、5000円だろうが、コストに見合う見返りはナイと
思いますよ。

基本的にその程度のレベルであるならば、日常レベルで十分修得
することができます。修羅場レベルじゃないと無理ってのもあります
が、今回のはそれに該当しません。

勉強方法は単純です。今作っている書類をよりよくしよう。こうしたら
もっと楽しくなる もっと綺麗になって、もっと面白くなると考えて、
様々な書類をつくればいいだけなんですよ。

そういう欲求がなければ、無理ですし、その程度なら入門書も必要
ありません。

例えば、VLookup関数。これ、Accessでも使いますが、Accessの場
合、あるテーブル(Excelで言うところのシート)とあるテーブルのデー
タを、IDや社員コードで結びつけて、別の1枚のシートをつくりたいと
思うときに使うことが多いと思います。

こういう機会に巡り合わなければ、自分で作ってしまうのです。データ
の塊を。一方は製品のデータの塊 もう一方は製品毎の売上高の集計
表。
これを1つのシートにする。なんて具合にね。ひとつひとつのそれら項目
を勉強する ってんじゃなくて、「○○をしたい」という境遇を自分で用意
することです。

983 :名無しさん@そうだ選挙にいこう:2009/08/28(金) 22:27:54
ウザい流れだな・・・

984 :名無しさん@そうだ選挙にいこう:2009/08/28(金) 22:30:54
>>975
ダイソーの100円参考書
どこいっても常に売り切れだけど、あれはコストパフオーマンス高い
一番いいのはこのスレに張り付いて自分で回答を出すとか
じゃなきゃ自分の仕事をいかに楽できるかを考えて、最後にここで聞くとかかな?

ダイソー以外の書籍なら何でも一緒と思う。どうせ無駄に分厚くて800円ぐらい
あれ薄くしたらいいのに、と思うけどきっと商業的な理由(分厚い方が売れやすい)って理由なんだろうな
悲しい

985 :名無しさん@そうだ選挙にいこう:2009/08/28(金) 22:32:38
>>983
あなた2chの管理人ですか?じゃなきゃそんなこと言う資格は無いと思いますが
流れを変えるためにもっと有意義な回答を出してみては?
ないなら別に常駐しなくてもいいんですよ。雑談スレじゃないんだから

986 :名無しさん@そうだ選挙にいこう:2009/08/28(金) 22:34:11
クマー

987 :名無しさん@そうだ選挙にいこう:2009/08/28(金) 22:36:21
>>985

こういったウザい流れになるからヤメロって意味で
テンプレに書いてあると思ってるんだがな。

んじゃテンプレから消して次スレ立てとけ。

988 :名無しさん@そうだ選挙にいこう:2009/08/28(金) 22:45:01
>>985
あなたこのスレの管理人ですか?じゃなきゃそんなこと言う資格は無いと思いますが
再発防止のためにテンプレ無視のウザい質問はスルーしてみては?
別に常駐しなくてもいいんですよ。雑談スレじゃないんだから

989 :名無しさん@そうだ選挙にいこう:2009/08/28(金) 22:46:25
こうして無駄レスで埋まっていくのであった。

990 :名無しさん@そうだ選挙にいこう:2009/08/28(金) 22:48:56
ぶっちゃけ次スレいらないよね
過去ログ読めば99%解決するだろうし
後の1%はよほど特殊な例でindirect(笑)vba(笑)ピボット(笑)を使うだけだし
作業列使えば何とでもなるのに

991 :名無しさん@そうだ選挙にいこう:2009/08/28(金) 22:54:03
まぁVlookup関数を使うやつにロクなのはいないって話だなw

992 :名無しさん@そうだ選挙にいこう:2009/08/28(金) 22:55:49
>>991
メール欄

993 :名無しさん@そうだ選挙にいこう:2009/08/28(金) 23:17:40
>>991

それはINDEX(MATCH)ですでに結論が出てる。

994 :名無しさん@そうだ選挙にいこう:2009/08/28(金) 23:31:38
おっともう次スレか
だれか頼むわ

995 :名無しさん@そうだ選挙にいこう:2009/08/28(金) 23:33:55
埋め

996 :名無しさん@そうだ選挙にいこう:2009/08/28(金) 23:39:05
だが断る!

997 :名無しさん@そうだ選挙にいこう:2009/08/28(金) 23:39:51
最終回

998 :名無しさん@そうだ選挙にいこう:2009/08/28(金) 23:51:03
1000なら次スレはVlookUp

999 :名無しさん@そうだ選挙にいこう:2009/08/29(土) 00:14:14
↓俺の屍を超えていけ

1000 :名無しさん@そうだ選挙にいこう:2009/08/29(土) 00:18:46
 /                                 ( / ,rノ´l
-'                                  /´ ̄   /
7                _,,.. -──- 、,          」 -く´ ̄ ̄7
             _,,. '"´           \       く::::::::::::ヽ;::::::/
           /´  /´   ,|          `ヽ.      '、:::::;;:::-‐/
           ,:'  ./  /  ハ-‐ト、  ヽ.    ハ       Y::::::::ア|
          .,'   /  __/| / .|__/_ハ  |      |      |、/:::::!
         |.  ,' '/ _____i レ' レ ______!,ハ.     '、       |::\:::::|
         |  |  /T'ヒ_i´  ´ヒ_,!ア  |  ヽ.  ヽ.     ,!:::::::\|
         .ノ  !  ハ"   ,    " |  .|   八   )  ,.へ:--─!
        '´',  ∨ |         ./  / / __ヽ_,,.. -''"||::::::::\::::|
           |// 人  ー─,-  ,! / /,::'"´:::::::||::::::::::::::ヽ;:::::::::::;/
           ( (  `>  ̄ イ,|/`Y/:::::::::::::::::::!!:::::::::::::::::;>'"´
          ノ  ) '´__r'ー‐''´   /|:::::::::::::::::::::ヽ:;: <´ \
          /  r'"´::::/イヽ-─-イ八:::::::::::::::::::::/     \.  〉
>、         |   /:::::::://\_,,.. -‐/::\,ゝ、_;::イ     ,ハ /
 |\      /./:::::,:|/- ''"` \  /::::::::::ヽ:;イ:.:.:.:',    / レ〈
.  ̄ i⌒l.  /.〈:::::::://\_/,,.. -‐ ''7:::::::::::::i:::::/:.:.:.:.:.:.\ /  /  \
 l ̄l .|/`!  |  〉ー'|7_,,,. > 、..,,__!}::::::::::::/:::/.:.:.:.:.:.:.:.:.:.:\   |     ヽ.
 「 フ / /`! ヽ/;メ人   |/  ` 、,_|}::::::::イ/:.:.:.:./:.:.:.:.:.:.:.:.:.ヽ. `ヽ.    |
   r'| ' /ヽ/::::::::::ヽ|7"´`  、.,_|}:::::::::/:.:.:.:.:.:.:|:.:.:.:.:.:.:.:.:.:.:.:.:',  ノ   ./

1001 :1001:Over 1000 Thread
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。

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

read.cgi ver 05.02.02 2014/06/23 Mango Mangüé ★
FOX ★ DSO(Dynamic Shared Object)