1 :
名無しさん@そうだ選挙にいこう :
2006/07/14(金) 13:50:10 ▼━ 答えやすい質問のしかた ━━━━━━━━━━━━━━━━
★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を使うのは避けたいって場合は「否」にしましょう。
▼━質問時の注意・決まり事 ━━━━━━━━━━━━━━━━━ ・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 テキストボックス(エディトボックス)、コンボボックス(ドロップダウンリスト)、リストボックス、コマンドボタン、 チェックボックス、オプションボタン(ラジオボタン)、スピンボタン、スクロールバー、等の質問をするときは、 ユーザーフォーム、コントロールオブジェクト、フォームオブジェクトのどれなのかを必ず書くこと。
= FAQ: 基本 =
Q1:こんな関数ありませんか?
A1:「関数の挿入」にある検索機能や、ヘルプの検索を利用しましょう。
また、一つの関数で目的を達成しようと思わずに、いくつかの関数を組み合わせて使うという発想を持ちましょう。
Q2:数式がエラーを返すんですけど
A2:関数をネストせず、数式を分解してみてください。
どの関数がエラーになっているのか解れば、その関数の参照先や、ヘルプなどを見て大抵は簡単に解決できます。
Q3:計算結果やセルの値によって自動で書式を変更したいんですが
A3:条件付き書式を利用してください。数値比較で文字色のみの指定なら表示形式でもできます。
Q4:計算結果やセルの値によって表示形式を変えたいのですが
A4:表示形式のユーザー設定で複数条件の表示形式を指定できます。
基本形式は「正の数;負の数;0の場合;文字の場合」です。(;は半角で)
又は「[>=70]70以上の場合;[>=50]50以上の場合;50未満の場合;文字の場合」というような指定も出来ます。
書式記号などに関することはヘルプを参照しましょう。
Q5:計算結果が自動で更新されなくなったんですが、どうすれば直せますか
A5:Excel(2002?)の不都合で、計算方法が手動になってしまうことがあるようです。
ツール > オプション > 計算方法
で、計算方法を自動にすることで元にもどります。
参考URL:
ttp://support.microsoft.com/default.aspx?scid=kb;ja;817716 Q6:VBAでこんなこと出来ませんか?どうやるんですか?、
A6:まずはマクロの記録を取ってみて、記録されたコードのメソッドやプロパティをヘルプで調べたり、
ステップ実行やブレークポイントなどを使って動作を確認したりしてみましょう。
Q7:エクセルの勉強をするのにオススメの書籍・サイトは何ですか?
A7:自分で実際に読んで(閲覧して)、自分のレベルに合っていて解りやすいと思うものを利用しましょう。
= FAQ: 列の表示について = Q:列名がA,B,C,D,Eではなく、1,2,3,4,5になってしまいました。 アルファベットに戻すにはどうしたらいいですか? A:ツールメニュー:「オプション」 -「全般」タグで 『R1C1 参照形式を使用する(C)』のチェックを外せば直ります。 Q:列を256個(IV列)よりたくさん広げることはできませんか? A:エクセルのシートは65536行×256列が仕様上の上限です。 シートを分けるとか、行と列を入れ替えるとか、データの方をまとめるとか、 列数を増やさない方向で工夫するしかありません。 Q:ひとつのブックにシートは何枚作成出来ますか? A:物理メモリ容量やシートの内容に依存します。 = FAQ: 印刷プレビュー = Q:印刷プレビューではセル内に収まっていた文字が 実際に印刷してみるとはみ出してしまうのですが、何とかなりませんか? A:「印刷プレビューと印刷結果が一致しない」のは 昔からのExcelの弱点で、どうにもなりません。 セルの幅や高さに余裕を持たせるか、 書式設定で「縮小して全体を表示する」にチェックを入れましょう。
= FAQ: マクロの"削除" =
Q:マクロを削除したのに、ファイルを開くたびにセキュリティの確認が出ます。
A:モジュールの解放が必要。
【モジュールの解放方法】Alt+F11→Ctrl+R→Module1を右クリック→解放
それでもセキュリティの確認が出る場合は、同じくMicrosoft Excel Objects以下の
Sheet*及びThisWorkbookに何か書かれてないか確認してください。
= FAQ: 計算したい。角度とか =
Q:例えば、一つのセルに1803329と入力すると
180度33分29秒と表示されるようにするには
どうすればいいのでしょうか?
ついでに計算もしたいです。
A:「1803329と入力すると180度33分29秒と表示される」
というのと、計算できるというのを両立させるのは無理。
書式を
[h]:mm:ss や [h]"度"mm"分"ss"秒".00
などにしておき、入力するときには
180:33:29.99
などとすれば、表示も計算もできる。
・その他時間とか日付とかの計算について
勤務時間を計算するには
ttp://support.microsoft.com/default.aspx?scid=kb%3bja%3b880980 日数および日付の表示方法と計算方法 - 基本編
ttp://support.microsoft.com/default.aspx?scid=kb%3bja%3b880979
= FAQ: 合計から元の数を逆算 =
Q:たくさんの数値のリストがあって、
リスト中のいくつかの数の合計と思われる数値が与えられました。
リスト中のどれとどれの合計か調べることはできますか?
A:ナップザック問題(knapsack problem)として知られている難問です。
一般的には総当りで調べるしかありませんが。
しかし、データに特徴がある場合(桁数が限られているなど)には、
うまい方法があって、速く解けることもあります。
下記のページを参照してみてください。
ナップザック問題をExcelで解く
ttp://www.geocities.co.jp/SiliconValley-Oakland/8139/
= FAQ: 条件によって表示を変更するには? = Q:セルの内容を判断して、表示を変えたい A: IF関数を使います。 =if(条件,条件が成立した場合,成立しなかった場合) 例1:基本 セルA1が1の場合○、それ以外の場合×を表示 =IF(A1=1,"○","×") 例2:if文の中にif文 A1が、1の場合○、2の場合△、それ以外×。 =IF(A1=1,"○",IF(A1=2,"△","×")) 例3:ANDやOR活用 A1が、4〜6の場合は、普通と表示 =IF(AND(A1>3,A1<7),"普通","少ないか多い") 例4:計算も出来る A1が10までなら、A1を10倍して表示、それ以外なら2を引く。 =IF(A1<11,A1*10,A1-2) 例5:対象が空欄なら表示も空欄にする A1が空欄なら結果は何も表示しない、それ以外ならA1から2を引く。 =IF(A1="","",A1-2) =IF(ISBLANK(A1),"",A1-2) 詳しくはヘルプを参照しましょう。 = FAQ: セル内での改行 = Q:セル内で改行したいんですがどうすればいいでしょうか A:改行したい位置でAltを押しながらEnterを押せばセル内改行できます。 但し数式で改行コードを入れた場合は、手動でセルの書式設定から 「折り返して全体を表示する」を有効にしないと改行されません
= FAQ: グラフについて = Q1:データの空白部分があって、そこで折れ線が切れてしまいます。 繋げたいのですが如何したらいいでしょうか? A1:グラフを選択>ツール>オプション>グラフ>空白セルのプロット「補間してプロットする」にチェック Q2:棒グラフに重ねて、折れ線グラフを表示するにはどうしたらいいのでしょうか? A2:最初、すべてのデータを棒グラフで作成。 次に、折れ線で表わしたいデータ系列のどこかを、グラフ上で右クリック サブメニュー>グラフの種類>折れ線>OK Q3:ある系列だけ、縦軸を別にしたいです。 A3:その系列のどこかを、グラフ上で右クリック データ系列の書式設定>軸>使用する軸「第2軸」にチェック>OK = FAQ: 入力した値が変わる? = Q:セルに入力した値が勝手に変わってしまうのですが 入力したままの形で表示させるにはどうしたらいいですか? A:数字でよくあるケース(先頭のゼロが消えてしまう、日付として解釈されてしまう) 入力する時、先頭にアポストロフィ(')をつけるか、 該当するセルで右クリック−「セルの書式設定」−「表示形式」で「文字列」を選択。 文字列ではなく数値として扱いたいときは 「セルの書式設定」−「表示形式」で「ユーザー定義」を選択し、工夫する。 A:文字でよくあるケース(i⇒I、teh⇒the、cna→can など) ツール→オートコレクト→入力中にオートコレクト の該当する箇所を削除。
= FAQ: 行列の入れ替え = Q:エクセルで作った表が横方向に多くなってきたので 行と列を入れ替えたいのですが。 A:コピーして、適当なセルで右クリック。 形式を選択して貼り付け→行列を入れ替える。 = FAQ: 参照するシートやセルをセルの値で指定する = Q:A1に「5」とか「6」とか指定する値を変えたら B1の関数で「C5」とか「C6」とか参照先が変わるようにできませんか? A:INDIRECT関数を使ってみましょう。 詳しくはヘルプで「INDIRECT」を検索 = FAQ: 参照先を固定する = Q:数式が参照するセルを削除すると参照先が「=#REF!」になってしまうますが セルを削除しても同じセルを参照するようにするにはどうすればようですか A:INDIRECT関数を使ってみましょう。 =A1 => =INDIRECT("A1") = FAQ: ブラウザの変更 = Q:Excelでアドレスをクリックした時に開くブラウザをIEからSleipnirなどに変更したい。 A:スレ違いです。 開きたいブラウザの設定画面でそのブラウザを通常使うブラウザに指定してください。 ※ブラウザからの設定だけではきちんと設定出来ない場合もあります。 詳しい情報をお持ちの方はこのスレにてご一報ください。
= FAQ: ワイルドカード文字の検索・置換 = Q:* 、 ? で検索するとワイルドカードとして認識されてしまいますが、 * 、 ? の文字自体を検索するにはどうすればよいですか? A: ~* 、 ~? のように、頭に ~ を付けることでエスケープ出来ます。 A:全角で*と入力し「半角と全角を区別する。」のチェックを外して検索する (全角なのでワイルドカードとしては使われないが 全半角を区別しないので文字として"*"にはヒットする。) = 整数と時間の相互変換 = Q:1:30を1.5に変換したい、30を0:30に変換したい A:シリアル値の「1」は1日=24時間=1440分=86400秒です。 以下のような計算やTIME関数などで変換できます。 値(A1) 結果 式 1:30 1.5 =A1*24 0:30 30 =A1*1440 2:30 250 =A1*100*24 1.75 1:45 =A1/24 30 0:30 =A1/1440 25 0:15 =A1/100/24 30 0:30 =TIME(0,A1,0) (変換計算しただけでは表示形式は変わらないので、セルの表示形式は任意で変更しましょう)
= FAQ:時刻の入力 = Q:時刻をテンキーで入力するとき:を入力するのが面倒なのですが、 なにか良い方法はありませんか? A:「 ..」や「.」を「:」に置き換える方法をお試しください 1) オートコレクトで..を:に置き換える →自動で置換されるので手間は少ないが..を使う他の入力にも影響する 2) 「時..分」で入力しておいて、後から「編集 > 置換」で範囲指定で一括置換する →置換に一手間掛かるが、他への影響は無い (「時.分」だと分の1桁目が0の場合狂ってしまう) 3) VBAのWorksheet_Changeイベントで置換する →置換する範囲を指定すれば他への影響もなく置換も自動、入力も.ひとつでOK 参考コード(入力は「時.分」) Private Sub Worksheet_Change(ByVal Target As Range) Dim buf As Variant Application.EnableEvents = False buf = Split(Target.Value, ".") Target.Value = buf(0) & ":" & Left(buf(1) & "0", 2) Application.EnableEvents = True End Sub = FAQ:シート名やブック名の書きだし = Q:シート名(ブック名)をセルに書き出したいのですが、どうすればよいですか? A:シート名 =MID(CELL("filename",A1),FIND("]",CELL("filename",A1))+1,31) ブック名 =MID(CELL("filename",A1),FIND("[",CELL("filename",A1))+1,FIND("]",CELL("filename",A1))-FIND("[",CELL("filename",A1))-1) = トラブル = Q:方向キーやPageUp、PageDownでアクティブセルが移動するのではなくスクロールしてしまいます。 A:Scroll Lockというキーを押してみてください。
★VBAでの回答をもらったり、Webからサンプルコードを拾ったけど、 使い方がわからないって場合はここを参考に。 Step1 VisualBasicEditorの起動 メニューより、[ツール → マクロ → VisualBasicEditor]と辿ってください。 Step2-a コードを貼る マクロはその内容によって、置く場所が決まっています。 大抵は回答者が指定してくれたり、サンプルの中にコメントとして書いてあったりするのでそれに従いましょう。 指定がない物は基本的に「Private Sub Worksheet_」で始まる物はシートオブジェクトに、 「Private Sub Workbook_」で始まる物はブックオブジェクトに、それ以外は基本的に標準モジュールに置いてください。 (ツリーの該当部分をダブルクリックして、表示されたコードウィンドウにコードを張り付けます) ├VBAProject (hoge.xls) ←括弧内がブック名、以下がひとつのプロジェクトになります |├Microsoft Excel Object ||├Sheet1 (Sheet1) ←シートオブジェクト(左側がオブジェクト名で、右側の括弧内がシート名です) ||├Sheet2 (Sheet2) ||└ThisWorkbook ←ブックオブジェクト |└標準モジュール | └Module1 ←標準モジュール(※) └VBAProject (Personal.xls) ←個人用マクロブック ├Microsoft Excel Object |├Sheet1 (Sheet1) |└ThisWorkbook ←個人用マクロブックのブックオブジェクト └標準モジュール └Module1 ←個人用マクロブックの標準モジュール ※ 標準モジュールを追加するには、追加したいプロジェクトツリー上で右クリックし、 メニューから[挿入 → 標準モジュール]を選択してください。
Step2-b ボタンに登録する。 通常、イベントで動かすマクロ以外は、マクロの一覧から選択して実行しますが、 頻繁に使う場合や、他の人が操作する場合はシート上のボタンを押して実行できるようにすると便利です。 まず、メニューから[表示 → ツールバー → フォーム]と辿ってフォームツールバーを出し、 ボタンアイコンを押して、適当な場所にボタンを作ります。 ボタンを作ると自動的に[マクロの登録]というダイアログが立ち上がるので、 (立ち上がらない場合はボタンを右クリックして[マクロの登録]を選択) [新規作成]を押して表示されたコードウィンドウのカーソル位置にコードを張り付けます。 既存のマクロを登録する場合は、[マクロの登録]で一覧から選択して、[OK]を押してください。 Step3 マクロの実行 ボタンに登録したものは、ボタンを押せば実行されます。 イベントで動かすものは、所定操作をした時に自動で実行されます。 それ以外はメニューから[ツール → マクロ → マクロ]と辿って表示されたマクロの一覧から選択して実行します。 Step4 トラブルが起きたら トラブルを自己解決出来ない場合は、 ・エラーが出る条件 (どうやってもエラーが出る、〜をしたときにエラーが出る、等) ・エラーメッセージ (ダイアログ上でCtrl+Cを押せばメッセージをコピー出来ます) ・エラーが出る位置 (エラーダイアログ上で[デバッグ]を選択すると、エラー位置がハイライトされます) などを報告しましょう。 また、期待通りの動作をしない場合も、条件や想定上の結果と実際の結果の内容など詳しく書きましょう。
★ Excelで出来ないこと、仕様上の制限 (括弧内は代用法) ▼環境・書式 ・ 列数を256列以上、行数を65536行以上に増やす ・ 条件付き書式を3つ以上設定する (文字色だけなら、入力規則でも3つ設定可能。それ以外はVBA) ・ 行の高さを0.25きざみ以下の単位で指定する ・ セル内の文字を○で囲む、一部のみ2段にする (オートシェイプ、オブジェクト) ・ オートフィルタで英字の大小文字を区別する (小文字 → 半角、大文字 → 全角、と使い分ける) ・ 祝日を判断する (作業セルに祝日を列挙、VBA) ・ 同一列内でセル(行)ごとに列幅を変える、同一行内でセル(列)ごとに列高を変える (セルの結合) ・ ヘッダー・フッターのページ番号の開始番号任意指定、ページ番号演算、同シート内で違ったものを指定など ・ セルのサイズ(幅、高さ)を、長さの単位(ミリメートルなど)で指定する ・ 罫線幅の自由指定 ・ 表示形式で「10/ 1」といった書式を指定し、日付が一桁の場合のみ日付の前にスペースを入れる (TEXT関数、VBA) ・ 書式設定の「折り返して全体を表示する」と「縮小して全体を表示する」を同時に使う (折り返しを有効にして、手動で文字サイズを調整) ▼操作 ・ ファイラーの右クリックメニューからの新規作成で、Excelで設定したシート数のブックを作る (任意のシート数のテンプレートを作成) ・ 複数シートを選択して入力規則やシートの保護を設定する (VBA) ・ オートコンプリート機能を、別列や離れたセルで動作させる (VBA) ・ 選択範囲から一部を除く ・ 優先キーを3つ以上指定しての並べ替え (優先度の低い方から順に並べ替える) ・ 1セルを分割 (分割したいセル以外を結合)
★ Excelで出来ないこと、仕様上の制限 (括弧内は代用法) ▼数式・関数 ・ 表示形式以外の書式の取得設定、書式情報を条件とする数式 (ユーザー定義関数) ・ 関数式でセルの選択状態を取得する (VBA) ・ セルの値でパスを補完して、開いてないブックのセルを参照する (VBA) ・ 入力したセルに結果を返す (VBA) ・ 範囲を引数にしての文字列連結 (ユーザー定義関数) ・ 値の書き換え、値の保持 (VBA) ・ 複数の結果を抽出、不定な数の結果を返す (VBA、結果の最大数が解っていれば最大数以上の式を論理式で組む) ・ 空白のセルの部分を上詰め、左詰めなどで表示する (作業セルを使って別セルに詰めて表示なら可能、それ以外はVBA) ・ VLOOKUP,HLOOKUP,MATCH等の関数で、検索語を全半角両方にマッチさせる (ユーザー定義関数) ▼VBA ・ ExecuteExcel4Macroの参照で空セルと0値を区別する ・ セルの値や変数値で直接変数名を指定する (配列、コレクション) ・ VBのコントロール配列と同じような操作をしたい (イベント以外ならコントロール名を「同名+連番」にしてControls(名前 & インデックス)で処理、イベントはクラスでWithEvents) ▼ユーザーフォーム ・ フォーム上から変更したプロパティ値の保持 (シートや外部ファイルに書き出して、次回読み込む) ▼グラフ ・ 棒グラフでひとつだけ突出したデータがあった場合に波線を入れて位置を合わせる (オートシェイプなどで見た目だけそうなるように弄る、別アプリでグラフを作り、オブジェクトとして挿入) ┌┐ 〜〜 ||
ナップザック君はりきってるなwww
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2002 【3 VBAが使えるか .】 いいえ htmlからリンクの張られてる語句(HPの名前とか)をコピーしてエクセルに貼り付けると URLリンクまでくっついてきちゃいますよね。これ、リンクは貼り付けないって 状態に出来ませんか?現状一個一個リンクをはずしてるんですが面倒で。 もしくは全選択、全解除とかって出来ないモンでしょうか……
>>19 ・セルをダブルクリック(またはF2)してから張り付け
・数式バーに張り付け
・形式を選択して貼り付け→テキスト
・普通に張り付け→張り付け先の書式に合わせる
etc…
21 :
名無しさん@そうだ選挙にいこう :2006/07/14(金) 23:21:30
【1 OSの種類 】 Windows2000 【2 Excelのバージョン】 Excel2000 【3 VBAが使えるか 】 はい 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 線上 ダブルクリック ドラッグ&ドロップ編集は使いたいですが, セルの線の上をダブルクリックしたときに, アクティブセルが移動しないようにしたいです.. F2を押す方法もありますが, 習慣からついダブルクリックしてしまいがちです. なにかよい対処方法をごぞんじのかたいらっしゃいませんでしょうか? どうぞよろしくお願いいたします.
> よい対処方法 線の上をダブルクリックしたときの動作を起こしたくないなら、 銭の上でダブルクリックしなければいいだけじゃん。 セルの上でダブルクリックしようとしても、間違って線の上でしてしまうことが多いというなら 対処方法は「マウス操作を上達させる」だな。 余程セルサイズを小さくしてるとか、ズーム25%で使ってるとかならまだしも、 デフォではセルの高さは線の幅の5倍以上あるのだから、ちょっと慣れれば失敗などしないだろ。 線上での動作をカスタマイズする設定は無いし、BeforeDoubleClickイベントも取れないから どうしてもやりたければ、線のハンドル取得して、マウスメッセージ監視してと API使ったVB分野の話になるよ。VBAは使えるとのことだが、VBプログラマレベルのスキルがあるなら 勝手にガンバレって感じだな。
23 :
名無しさん@そうだ選挙にいこう :2006/07/15(土) 12:58:02
簡単にできるアドインとかないかと思ったのですが... ないようですね〜.あきらめます. ご返答ありがとうございました.
前スレの1000にはガッカリした
> 信じられねーようなことが出来るようになる。 この書き込み自体が信じられない。
26 :
名無しさん@そうだ選挙にいこう :2006/07/15(土) 16:26:29
このスレの1000が、信じられねーようなことをうpするだろう
24-26 可哀想な奴らw
すいません 時間の入力をダーッっとしていく作業なんですが、例えば8:30のように コロンを打つのがどうも手間で、テンキーの部分だけでなんとか打てる 方法ってないもんでしょうか。 8-30だと8月30日になってしまうし・・・
29 :
名無しさん@そうだ選挙にいこう :2006/07/15(土) 17:27:13
【1 OSの種類 .】 Windows XP 【2 Excelのバージョン 】 Excel 2000 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 書式を[m]:ssとしたセルに○分○秒という時間の値を入力したいのですが、 「1:30」と入力すると1時間30分と解釈されて「90:00」になってしまいます。 頭に「0:」を付けなくても分:秒として解釈させることはできないでしょうか?
30 :
名無しさん@そうだ選挙にいこう :2006/07/15(土) 17:35:00
31 :
28 :2006/07/15(土) 17:40:10
関数で出来ますか〜 また考えてみます^^
>>28 >>11 = FAQ:時刻の入力 =
テンプレ有ると、例え質問者が読まずに質問したとしても
説明省けるからいいね。
34 :
28 :2006/07/15(土) 17:53:13
>>32 ありがとうございます。
見てませんでした。。。
>>28 CTRL+:(コロン)で簡単に入力できるけど出それも駄目?
36 :
名無しさん@そうだ選挙にいこう :2006/07/15(土) 18:28:43
>>32 テンプレのアピールに余念がないね
あのテンプレには執念を感じるよ、「力」入れすぎてプッツンするなよ
38 :
名無しさん@そうだ選挙にいこう :2006/07/16(日) 00:44:20
39 :
名無しさん@そうだ選挙にいこう :2006/07/16(日) 08:27:30
テンプレ宣伝の自作自演や、自分の糞レスが原因の 荒れてる流れを元に戻そうとして自作自演のQ&Aまで する奴だからな
40 :
名無しさん@そうだ選挙にいこう :2006/07/16(日) 08:28:10
>>28 8:30 が 08:30 になっても構わないなら
表示形式ユーザー定義で
00":"00
830 と テンキーで打つと 08:30 に
1234 と テンキーで打つと 12:34 になるよ。
42 :
名無しさん@そうだ選挙にいこう :2006/07/16(日) 10:37:57
オートフィルターで 空白を消したい場合は 何て条件を入れればいいのでしょうか?
>>42 普通に、リストの一番下にある「空白以外のセル」を選べば
空白は表示されず、空白以外が表示される。
44 :
名無しさん@そうだ選挙にいこう :2006/07/16(日) 10:50:46
今趣味でバイトのシフト表を作成しているのですが、オートフィルのことでつまづいたので教えてください。 複数のセルに分けて年月を入力し、16日〜翌月15日までの日付を求め、その日付に対応する曜日を求めよう としているのですが、年月日を連結して求めた日付というのはオートフィルは適用されないのでしょうか? 上の文章では分かりにくいと思うので例を。。。 A1に年、B2に月、A2〜AE2に求める日付、A3〜AE3にその日付に対応した曜日を出したいのです。 シフト表は毎月16日から始まるのでA2に=DAY(DATE(&A1,$A2,16))と入力し、それをAE3までコピーして 16日〜翌月15日までの日付を出したいのです。 簡単に言うとA1とA2に年月を入力するだけで曜日その月の曜日が表示されるようにしたいのです。 上記の方法でなくてもいいので何かやり方があれば教えていただけないでしょうか? 【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2002 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 オートフィル 日付 エクセル
セルの分け方がおかしい A2とか何回使ってるんだよ
48 :
名無しさん@そうだ選挙にいこう :2006/07/16(日) 19:43:48
>>45 Sub hoge()
mynengetu = DateSerial(Range("a1"), Range("b1"), 15)
For i = 1 To 31
Cells(2, i).Value = Day(mynengetu + i)
Cells(3, i).Value = Application.WorksheetFunction.Text(Weekday(mynengetu + i), "aaa")
Next
For Each myrange In Range("a2:ae2")
If myrange.Value = 15 Then
myrange.Offset(, 1).Resize(2, 3).Clear
End If
Next
End Sub
49 :
名無しさん@そうだ選挙にいこう :2006/07/16(日) 19:50:48
>>48 で思い出せなかったんだけど
>>48 だとワークシート関数のtext使って1〜7を月〜日に変換してるけど
ワークシート関数使わなくても一行で変換できるやり方があったと思うんだけど
思い出せません。わかる人教えてもらえませんか?
検索したらselect case使って1の場合は月とかやってるのしか見つからなかった
50 :
名無しさん@そうだ選挙にいこう :2006/07/16(日) 20:37:29
FAQ読むよりググった方が早いからFAQって意味なくね?
じゃあ増やせ
それを言い出すと
質問するよりググった方が早いから、このスレって意味なくね?
まで罷り通ってしまう。
しかしググって見つけられるのは、有る程度解ってる奴ら。
本当の無知と馬鹿はどうググればよいのかわからなかったり
ググった結果から目的のものを探し出せずに右往左往する。
ということで、上記「質問するより〜」も
>>50 の「FAQ読むより」も罷り通らない。
53 :
名無しさん@そうだ選挙にいこう :2006/07/16(日) 20:52:24
回答者が自己満足するための場所として、このスレの意味はある。
54 :
名無しさん@そうだ選挙にいこう :2006/07/16(日) 20:57:43
それによってストレスの解消となり 性犯罪が激減するのだから こんなありがたいスレは他にない。
買いそうな子…
ホント買いそうな子だ
57 :
名無しさん@そうだ選挙にいこう :2006/07/17(月) 00:03:59
質問です。 SUMIF関数を使って、1行おきの集計をだしたいんですがどのような式にしたらいいでしょうか?
2で我
レスどうも SUMIF(A1:A10,MOD(ROW(A1:A10),2=0),A1:A10) こんな感じだと思うんですが、なりません
>>57 SUMIFの条件で「1行おき」というのは指定出来ない。
SUMIFの条件式は一致か数値比較のどちらかで、論理式には対応してないから。
だから、別の列に1行おきでSUMIFが拾える条件を入れてやれば良い。
例えばA1:A10の奇数行を合計するなら、B列に=MOD(ROW(),2)と入れておき
=SUMIF(B1:B10,1,A1:A10)
別に=MOD(ROW(),2)を入れるのはB列じゃなくてもいいが、
こういうのを入れたくないなら配列数式。
配列数式の使い方くらいは自分で調べてね。
>>60 ,61
ありがとうございます。
実はとあるサイトでSUMPRODUCT関数を使って1行おきの集計はあったんですが、
SUMIFでもできるとあったので、どんな式かと思いまして・・
63 :
名無しさん@そうだ選挙にいこう :2006/07/17(月) 04:33:47
プルダウンリストをマウスを使わずに選択できる方法があったら 教えてください。ヒントでもいいです。お願いします。
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 不可 ペイントブラシで描いた絵や、ファックスでもらってデータ化した絵(ビットマップ)を EXCELにドローデータとして取り込む方法はあるでしょうか? 絵は中間色は無く、完全に白黒にしたものです。 オートシェイプで描いたみたいになって、後で頂点をいじって変形させたり 背景色を透き通らせて複数の絵を重ね合わせられたらと思っています。 分かりにくい説明で申し訳ありませんが、よろしくお願いします。
65 :
63 :2006/07/17(月) 05:32:01
自力で解決できました。 Alt + ↓ でリストを表示、そこから選択で入力できるということですね。 レスついていませんでしたが、とりあえず有難うございました。
>>64 VBA使わないと出来ないから、その条件だと「方法は無い」が回答になる。
>>66 すみません、VBAは使えませんが良い機会なので勉強も兼ねて
教えていただけると助かります。
> 【4 VBAでの回答の可否】 不可
69 :
64 :2006/07/17(月) 07:07:59
>>68 > 【4 VBAでの回答の可否】 可
に修正します。
すぐに理解できないかもしれませんが、HELPなどを見て勉強してみます。
70 :
名無しさん@そうだ選挙にいこう :2006/07/17(月) 08:42:42
はやく答えてやれよwww VBAならできるんだろ?
71 :
名無しさん@そうだ選挙にいこう :2006/07/17(月) 11:03:48
EXCELについて質問というか聞いておきたいことがあります。 EXCELには色んな機能がありますが、最低限これだけは知っとけって項目は あるでしょうか? 参考書を基に学習してるんですが、如何せん多すぎるので全部覚えることは ムリです。 ですので、この機能はよく使うからこれは覚えておいたほうがいい、ってゆう 項目があったら、教えてください。 大分覚えてきていますが、次どれ覚えようか迷ってます。 よろしくおながいします。
資格を取る為なら参考書の内容に沿って覚えていかないといけないだろうし、 仕事の為なら必要なものがどれかわかるからそれについて覚えていけばいいだろ。 それともマニアか?
74 :
名無しさん@そうだ選挙にいこう :2006/07/17(月) 11:42:31
まあそうですけど。 しかし、物事には基本があります。どのジャンルを極めるにしても基本は不可欠です 最低限これだけは習得しとけって項目はあるはずなのです そうです!基本が大事なのです!
76 :
名無しさん@そうだ選挙にいこう :2006/07/17(月) 14:27:03
>>74 エクセルに限らず自分で調べようとする努力が必要かと。
77 :
28 :2006/07/17(月) 14:42:01
>>40 亀になって申し訳ないです。
それやってみたんだけど、最後に集計すると計算が
合わなくなってしまうんですよ。
【1 OSの種類 .】 Windows XPSP1 【2 Excelのバージョン 】 Excel 2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 メモ 表 書き出す vba(Google) ゲームの発売日表を作っているのですが メモ帳で発売日、タイトル、メーカーで縦横合わして書いたものを excelに発売日、タイトル、メーカーでセルを分けて書き出すことはできないでしょうか excel→メモ帳はみつけたのですが反対の物がみつかりませんでした よろしくお願いします
>>77 後だし情報乙
そう自分だけの都合で入力したけりゃ少しは頭使えよ
時間と分の列を分けて数字を入力して、別の列に=TIME() で時刻出したら
>>78 連続するスペースで区切ってるのだろうから、連続するスペースを1つのタブに変換して
Excelで読む
>>78 つ 「ヘルプ」→テキストファイルのインポート
発売日、タイトル、メーカーの区切りが、タブなどデータにない文字を使っていれば、
Excelのファイル→開くで区切りを指定することでセルを分けて読み込める
>>80 > 連続するスペースで区切ってるのだろうから、連続するスペースを1つのタブに変換して
そんな手間しなくても、読み込みダイアログで「連続した区切り文字は1文字」にチェックすればよい
>>80-82 レスありがとうございます
おかげでちゃんと分かれて読み込んでくれました
勉強になりました
どうもありがとうございました
84 :
28 :2006/07/17(月) 15:56:31
>>79 いやスマソ
入力セルと表示セルを分けるのも手だと気が付いたよ(・∀・)
暇だったんで
>>45 の考えてみた。
マクロは分からんから使ってないが。
例えば、
A1を 2006/7/16 として、表示形式を ggge"年" とする。
A2は=A1で、表示形式を m"月" とする。
B2も=A1で、表示形式を d"日" とする。
C2は B2+1 で表示形式は d"日"。
んで、B1に =IF(WEEKDAY(B2)=1,"日",IF(WEEKDAY(B2)=2,"月",IF(WEEKDAY(B2)=3,"火", (次行まで一行ね)
IF(WEEKDAY(B2)=4,"水",IF(WEEKDAY(B2)=5,"木",IF(WEEKDAY(B2)=6,"金","土"))))))
でC,D列以降横にコピーでどう?
85 :
名無しさん@そうだ選挙にいこう :2006/07/17(月) 17:21:34
>>84 ご苦労さん、その式なら
=CHOOSE(WEEKDAY(B2),"日","月","火","水","木","金","土") これが便利
それとセルの表示形式でも曜日は出せる
aaa → 水
aaaa → 水曜日
86 :
84 :2006/07/17(月) 18:04:36
なるほど〜 勉強になるなぁ
87 :
名無しさん@そうだ選挙にいこう :2006/07/17(月) 18:58:59
=Text(Weekday(b2), "aaa") でいいじゃん
これでもおk =MID("日月火水木金土",WEEKDAY($A$1),1)
計算式使わなくても =B2 だけで十分
>>85 が言ってる表示形式で aaa 指定
便乗でスマンが、日時と曜日を表示するとして、31日まである月と無い月を 区別するにはどうしたら良いんでしょうか? A列に日付、B列に曜日を表示させるとして 31日まである月 ・ ・ 29 月 30 火 31 水 31日までない月 ・ ・ 29 土 30 日 ←この行には何も表示させない こんな感じにしたいです。
91 :
名無しさん@そうだ選挙にいこう :2006/07/17(月) 19:28:21
すまんが急ぎで質問 文字列と文字列の間に計算式を入力して計算させることできますか? A1とB1を足すと(=A1+B1)です。 ↓ A1とB1を足すと(2)です。 見たいな感じでできますか?
【1 OSの種類 .】 Windows2000 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 少しだけ 【4 VBAでの回答の可否】 一応OK 条件1 =MOD(ROW(),2)=0 → 交互にセルのパターンを塗る(水色と白で) 条件2 100以上の値 → 100以上の数値のフォントを赤くしたい 条件付き書式で、条件1のように各行セルのパターンに交互に色をつけるという よくある手法を取っていますが、このままだと条件2が適用されるのは 条件1の適用されていない(=塗りつぶされてない)セルだけになってしまいます。 条件1と条件2を同時に満たすには、どのような指定をすればいいのでしょうか?
>>91 ="ちんこ" & A1+B1 & "本"
できる。 ="文字列"&計算式&"文字列" 文字列は""でくくる 計算式と文字列は&で繋げる この2つがポイント
95 :
28 :2006/07/17(月) 20:14:02
>>90 の考えてみた。
28日までは問題ないと思う。
うるう年の4/29と、30と31日だが
仮にA1を 2006/7/17 だとして、
途中省略してA2が28日だとする。
そしてA3を =IF(AND(MOD(YEAR(A1),4)>0,MONTH(A1)=2),"",A2+1)
A4を =IF(MONTH(A1)=2,"",A3+1)
A5を =IF(OR(MONTH(A1)=2,MONTH(A1)=4,MONTH(A1)=6,MONTH(A1)=9,MONTH(A1)=11)=TRUE,"",A4+1)
以上添削おながいします。
無能の集いだな
A2が28だとする。 そしてA3を =IF(DAY(N(A2)+1)>28,A2+1,"") あとはA5までオートフィルでコピー 以上。
>>90 「表示しない」を背景色と同じにするのでよければ、
条件付書式で数式が「=IF(MONTH($A$1)<>MONTH(A1),TRUE(),FALSE())」として、
フォント色に背景色を指定する
$A$1 は各月の1があるセル
A1 は現在のセル
>>96 そうやって煽らなくても、わかる人は答えるから、世話焼く必要はないよ
99 :
98 :2006/07/17(月) 20:52:46
備考
>>98 はA1〜の日付が 2006/7/1 の日付形式で入力されていて31日まで連続していることが必要
利点はどの年のどの月でも対応できる
100 :
名無しさん@そうだ選挙にいこう :2006/07/17(月) 20:59:28
【1 OSの種類 .】 Windows XP Pro sp1 【2 Excelのバージョン 】 Excel 2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 不可 【5 検索キーワード 】 ゼロ 零 斜線 フォント 取引先とのFAXで、数字のゼロとアルファベットのオーとの 違いを付けるためにゼロに斜線を入れています。 検索したところ斜線付きのフォントをインストールすれば 可能なようですが、会社のPCではフリーソフトの類は インストールできません。 図形描画で斜線を引く等も勘弁してください。 書式設定で解決できるのがベストなのですが。
>>100 会社の業務上必要なものだったら、そのフォント買ってもらったほうがいいよ。
アドビで OpenType (TrueTypeの後継) 用にその文字が入ってるフォント出したみたい。
slashed zero で検索できると思う
> 利点はどの年のどの月でも対応できる それは利点ではなく当然の条件なのでは? そうでなければわざわざ質問せずに、毎回手動でやればいいだけだから。 手動でやりたくないから、どの年のどの月でも自動でやってくれる方法を教えて欲しいってことでしょ。
103 :
98 :2006/07/17(月) 21:29:10
>>102 そうです。
>>95 > >97と別のやり方を出すエクスキューズのつもりだったけど、書き方悪かったみたいだね。
>>90 A1に表示したい月の1日目を記入 例(2006/02/01)し
B1に =A1 を記入し31行目までオートフィルし
A2に =A+1 を記入し28行目までオートフィルし
A29に =IF(DAY(A28+1)=1,"",A28+1)
A30に =IF(DAY(A28+2)=2,"",A29+1)
A31に =IF(DAY(A28+3)=3,"",A30+1)
最後に書式設定でA列の書式をdd B列の書式をaaaにする
これででどんな月にも対応する。
うるう年で2/29まである時は?w IF条件追加すればよいけど、条件増えないにこしたことはないよね
106 :
↑ :2006/07/17(月) 21:40:30
間違えた忘れてくれ
107 :
104 :2006/07/17(月) 21:44:46
訂正 A28 =IF(DAY(A28+1)<>29,"",A28+1) A29 =IF(DAY(A28+2)<>30,"",A29+1) A30 =IF(DAY(A28+3)<>31,"",A30+1)
【1 OSの種類】 WindowsXP 【2 Excelのバージョン】 Excel2002 【3 VBAが使えるか】 はい 【4 VBAでの回答の可否】 可 【5 検索キーワード】 参照元 書式 コピー 参照元のセルの書式を変更さた時に、参照先のセルの書式も変更したいと思っています。 しかし方法が見つかりませんでした……orz 何か方法をご存じの方がおられましたら教えてくださいm(_ _)m
方法はありません。 終了。
書式変更しても、何のイベントも起きないもんね。 だから「書式を変更さた時」ではなく、書式を変更した後に ボタンを押すなどして書式を写すしかないかな。
111 :
108 :2006/07/17(月) 23:08:04
VBAにて、選択セルのDEPENDENTSオブジェクトをforeachでまわしながら書式を変更するようにコードを組みました。 それからツールバーにボタンを追加して、そのコードを呼び出すようにしたら、なんとか目的の事ができました。 #携帯からの書き込みなのでコードの引用は控えさせていただきます(・ω・;) お二人ともレスありがとうございましたm(_ _)m
112 :
45 :2006/07/18(火) 00:14:44
>>46 A1に年、B1に月、A2〜AE2に求める日付、A3〜AE3にその日付に対応した曜日を出したいのです。
シフト表は毎月16日から始まるのでA2に=DAY(DATE(&A1,$A2,16))と入力し、それをAE2までコピーして
16日〜翌月15日までの日付を出したいのです。
簡単に言うとA1とB1に年月を入力するだけで曜日その月の曜日が表示されるようにしたいのです。
の間違いでした。
>>47 過去ログみれませんでした。。。
>>48 をはじめとするみなさん、たくさんのやり方を書いてくれてありがとうございました。
パッと見た感じすぐに理解できそうになかったので、これからがんばってみようと思います。
難しかったか?・・・・・
> 【3 VBAが使えるか .】 はい > 【4 VBAでの回答の可否】 可 コピペして実行するだけなのに・・・
115 :
名無しさん@そうだ選挙にいこう :2006/07/18(火) 09:30:36
エクセル2002をアンインストールしてネットオークション で売りたい。問題ないでしょうか?
117 :
115 :2006/07/18(火) 10:12:13
だめですか
118 :
名無しさん@そうだ選挙にいこう :2006/07/18(火) 10:33:10
駄目じゃないよ モノによる
119 :
115 :2006/07/18(火) 10:35:17
プリインストールされたものは駄目で そうでないものはいいという理解で あってる?
120 :
名無しさん@そうだ選挙にいこう :2006/07/18(火) 10:37:00
あってる
121 :
115 :2006/07/18(火) 10:37:44
ありがとうございました
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 Googleやヘルプでの検索キーワード ある文字列、例えば"hoge"をB列から検索してその行C列にあるデータを表示するにはVLOOKUPで出来ることは突き止めたのですが、 B列に"hoge"が二つ以上あって、その全部のC列の数値を合計して表示するにはどうすればよろしいのでしょうか? お願いいたします。
123 :
名無しさん@そうだ選挙にいこう :2006/07/18(火) 13:22:26
124 :
名無しさん@そうだ選挙にいこう :2006/07/18(火) 13:32:51
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 可 例えばセルに ヽ(`Д´)ノウワァァン!! ヽ(`Д´)ノウワァァン!! ヽ(`Д´)ノウワァァン!! (・∀・) (・∀・) とあった場合、 ヽ(`Д´)ノウワァァン!! 3 (・∀・)2 みたいに結果を返すことはできませんか?
125 :
名無しさん@そうだ選挙にいこう :2006/07/18(火) 15:12:02
過去に参加したマラソンのタイムを比較しようと思っています。 前回のタイムと今回のタイムを比較したいんですが、 計算すると、秒数が「92」秒となったり、 「###」となり困っています。 よい手立てを教えていただけませんか?
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 可 とある期限を3ヶ月として 期限の延長が済んだ場合、違うセルに「済み」と入力した結果 自動的に3ヶ月の延長(6ヵ月後の日付)を同一セル内で表示したいと思います。 この場合、EDATEを計算式として認識させるにはどうすればいいのでしょうか? ちなみに =IF(X2="済み",EDATE(U2,3),EDATE(U2,6)) ここでつまづきました。
127 :
126 :2006/07/18(火) 15:22:00
>>126 すいません。できました。
勘違いしてました。吊ってきます。
129 :
名無しさん@そうだ選挙にいこう :2006/07/18(火) 15:55:18
誘導されてこちらに来ました エクセルに、パスをかけたいんですけど分かりません(その文章とかデータとか) パスのかけ方を教えてください 携帯からで読みにくいのは許してください
解決しました(ペコリ)
せっかちな野郎は氏ね
132 :
125 :2006/07/18(火) 18:20:32
>>128 スイマセン。分かりづらいですね。
例えば、前回のタイムと比較して
「何分早くなった」とか「何秒遅くなった」などと
数値として比較したいのです。
しかし、前回のタイムから今回のタイムを引くと、
秒数が93秒などとなってしまったり、
速くなったら(負の数値になると)「###」となったりしてしまうんです。
秒を60進法にしたうえで、プラスマイナスの表示にできないか、ということです。
133 :
名無しさん@そうだ選挙にいこう :2006/07/18(火) 18:25:34
134 :
名無しさん@そうだ選挙にいこう :2006/07/18(火) 18:26:29
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 若干 【4 VBAでの回答の可否】 不可 エクセルのシート上でコントロールオブジェクトからコマンドボタンを貼り つけましたが、一旦保存して閉じたあと再びそのファイルを開いたところ、 コマンドボタンを削除できなくなりました。 コントロールオブジェクトでソースを編集するモードに移行すると、今度は コマンドボタンを選択状態にすることすらできなくなりました。 どうしたら削除できるでしょうか?
>132 93秒となるのは表示形式 #####はオプションの1904年から計算
>>134 デザインモード
それでダメならブックをうp
137 :
名無しさん@そうだ選挙にいこう :2006/07/18(火) 20:12:40
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel Personal 【3 VBAが使えるか .】 不可 【4 VBAでの回答の可否】 不可 エクセルで素因数分解や因数分解などをこなしたいのですが、いままで エクセルなど、使ったことがないのでさっぱり分かりません。 助けてください。 素因数分解は X(2乗)+4x+3=(X+1)(X+3) ↑↑こんなかんじのやつ 皆さん、宜しくお願いします。
138 :
122 :2006/07/18(火) 20:13:59
>>123 すばやい回答ありがとう御座います
なかなかレスできなくてすいませんでした。
できました!
要か
141 :
名無しさん@そうだ選挙にいこう :2006/07/18(火) 20:48:18
142 :
名無しさん@そうだ選挙にいこう :2006/07/18(火) 20:51:53
>>140 勝手に書くな!!!!!!!!!!!!!!!!! >>139 ありがとうござます。 つーか、VBAって何ですか?
143 :
名無しさん@そうだ選挙にいこう :2006/07/18(火) 21:02:30
「セルに誕生日を入力したら、自動計算で年齢を表示させる」 こういうのは可能でしょうか? 可能ならば、どのようにするのかを教えてくださいm(__)m
144 :
名無しさん@そうだ選挙にいこう :2006/07/18(火) 21:09:01
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 不可 基本的な事かもしれませんが教えて下さい。 セルに数値を入力すると、百分の一の値が表示されます。 500ならば5になり、5なら0.05となります。どのファイルの どのセルに入力しても同様の現象が生じます。 どなたか宜しくお願いします。
146 :
144 :2006/07/18(火) 21:24:05
>>145 表示形式の数値項目やら分数項目やら該当
しそうな所をいじってはみたのですが解決
できませんでした。
何か値を書き換えるマクロが動いてるとか
>>143 A1 誕生年(西暦4桁で)を入力
A2 誕生月を
A3 誕生日を
A4 =TODAY()
A5 =YEAR(C5)-C2+IF(AND(C3-MONTH(C5)>=0,C4-DAY(C5)>=0),-1,0)
A1からA3まで入力するとA5に年齢がでます。(表示形式は標準で)
149 :
名無しさん@そうだ選挙にいこう :2006/07/18(火) 21:36:03
>>144 オプションの編集/小数点位置を固定する
を見てみて
150 :
148 :2006/07/18(火) 21:40:44
すんません A5 =YEAR(A4)-A1+IF(AND(A2-MONTH(A4)>=0,A3-DAY(A4)>=0),-1,0) に訂正しといてください。
151 :
名無しさん@そうだ選挙にいこう :2006/07/18(火) 21:41:33
>>143 アドイン関数だけど、こんなのもあるよ
=YEARFRAC(誕生日DATE(年,月,日),TODAY())
152 :
148 :2006/07/18(火) 21:49:14
というかA4じゃまだね
A1 誕生年(西暦4桁で)を入力
A2 誕生月を
A3 誕生日を
A4 =YEAR(TODAY() )-A1+IF(AND(A2-MONTH(TODAY())>=0,A3-DAY(TODAY())>=0),-1,0)
>>150 便利な関数があるんだね。
153 :
148 :2006/07/18(火) 21:49:57
>>151 でした
俺なんかもうよれよれなんで去ります
154 :
144 :2006/07/18(火) 21:50:01
>>149 解決しました。ありがとうございました。
155 :
名無しさん@そうだ選挙にいこう :2006/07/18(火) 22:02:12
>>143 期間の計算はDATEDIF関数でしょ
@=DATEDIF(誕生日,計算日,"Y")で年数
A=DATEDIF(誕生日,計算日,"YM")で残りの月数
@歳Aヶ月
156 :
名無しさん@そうだ選挙にいこう :2006/07/18(火) 22:28:58
>>137 何がやりたいのか、もう少し具体的に書いてくれないと答えようが無い。
例えば
「A1に"X(2乗)+4x+3"と入力するとB1に"(X+1)(X+3)"と表示されるようにしたい」
とか
「A1にXの2乗の係数、B1にXの係数、C1に定数項を入力するとD1以下に云々〜」
みたいな感じで。
あるいは「何のためにそれがしたいのか」を書いてくれればアドバイスのし様もあるんだよね。
例「数学の試験問題とその解答を簡単に作成出来るような仕組みをエクセルで作りたいのです」
157 :
134 :2006/07/18(火) 22:47:40
>>136 「デザインモード」ですね。
このモードではコマンドボックスを選択できる状態になってそこでDELキー
でおkなんですね。
明日会社で試みます。ありがとうございます。
「A1にXの2乗の係数、B1にXの係数、C1に定数項を入力するとD1以下に云々〜」 なら D1=(-B1+SQRT(B1*B1-4*A1*C1))/(2*A1) D2=(-B1-SQRT(B1*B1-4*A1*C1))/(2*A1)で解は出るけど
159 :
名無しさん@そうだ選挙にいこう :2006/07/19(水) 00:40:25
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2002 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 Excel 積み上げ 集合 グラフ 複合 「積み上げ縦棒」と「集合縦棒」を複合表示出来ないかと悩んでいます。 会社での売上実績管理として使用しているのですが、 例えば横棒のグラフとして、 (××営業所) □□□■■ ←商品A(□)とB(■)の売上実績 ■■■■■■■■ ←売上目標(AとBをまとめて表示) の様な形で表示したいと思ってます。 ご存知の方居られましたら、ご教示の程宜しくお願いいたします。
160 :
名無しさん@そうだ選挙にいこう :2006/07/19(水) 07:12:30
>>159 □□□■■=REPT("□",3)&REPT("■",2)
■■■■■■■■=REPT("■",8)
161 :
名無しさん@そうだ選挙にいこう :2006/07/19(水) 12:08:27
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 Excel メニュー ツールバー 「ファイル、編集、表示・・・」の一番大切なツールバーが消えてしまった パソコンがあります。 何人も利用者が代わっているので、どういう操作がされていたのか不明です。 どうしたらもとに戻せますか?
162 :
名無しさん@そうだ選挙にいこう :2006/07/19(水) 12:35:42
163 :
名無しさん@そうだ選挙にいこう :2006/07/19(水) 14:48:44
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 いいえ 小数点以下の値のみ取り出すことって出来ませんか? 例えば12.3だったら、3だけ取り出す・・・ 小数点以下が一桁って決まってるんでRIGHTで出来るかなと思ったんですけど、 15.0だったら0はすっ飛ばして5が返ってくるのでダメみたいなんです。 どなたか教えてください。
>>163 TEXT(A1,"0.0")等してRIGHTとか
INTしたものを引くとか
1で割った余りを求めればいいべな
166 :
名無しさん@そうだ選挙にいこう :2006/07/19(水) 14:54:43
167 :
166 :2006/07/19(水) 14:56:54
168 :
163 :2006/07/19(水) 15:09:09
おお!あっというまにお答えが!! ありがとうございます、無事に出来ましたー
169 :
159 :2006/07/19(水) 22:03:56
>>160 有り難うございました!
早速試してみます!
170 :
名無しさん@そうだ選挙にいこう :2006/07/19(水) 23:24:16
どなたか教えてくださいm(__)m EXCELの表で、縦の行を並び変えたいのですが、どうしたら効率よくできますでしょうか。
171 :
名無しさん@そうだ選挙にいこう :2006/07/19(水) 23:27:22
携帯からですいません。行が多くてどこから手をつけたらいいのかわからないのです。
どんなデータをどう並び替えたいかくらい書きやがれ
173 :
名無しさん@そうだ選挙にいこう :2006/07/19(水) 23:31:44
行の内容は、例えば、赤、黄、青、緑のようにならんでいて、それを黄、緑、赤、青の順に入れ替えたいのです。
>>169 これでできるけど、だめかな?
ab合算でよければねぇ
a b
予定 100
実績 30 20
176 :
名無しさん@そうだ選挙にいこう :2006/07/19(水) 23:34:09
100項目くらいあって…なにか方法はありますでしょうか。
>>161 ツールバーで右クリ
[ユーザー設定]-[ツールバー]
ワークシートメニューバーをチェック
179 :
名無しさん@そうだ選挙にいこう :2006/07/19(水) 23:38:27
173です。ルールは黄、緑、赤、青にならべるというだけです。数字の大小などはありません。
>>179 「ユーザー定義リスト」と「並べ替え」をヘルプで調べて
(´-`).。。ooO(塗りつぶしの色で並べ替えをしたいんじゃないかな)
183 :
名無しさん@そうだ選挙にいこう :2006/07/19(水) 23:56:43
180さん、181さん、179です、素人ですいません。調べてみます。ご親切にありがとうございます!
184 :
名無しさん@そうだ選挙にいこう :2006/07/20(木) 00:12:04
すみません。VBAで Open ●● For Binary Lock Read As #1 でファイルを開いた後に Get #1, , ●● を何度も使って読み進めていきます。 次読もうとしている位置を取得する方法はありますでしょうか? 途中まで読んで判定分で少し戻るような仕組みにしたいのです
>>183 A列に並び替えたいデータがあるとして(a1:a200) B列が使えるなら(空白なら)そのまま、そうでないなら列挿入
メニューのツール→マクロ→マクロ→マクロ名に適当な名前(この場合aaa)→作成を選んで
Sub aaa()〜End Subの間に下記のようになるようコピペ
Sub aaa()
For Each c In Range("a1:a200") '**ここから**
a = c.Interior.Color
Select Case a
Case 65535 '黄色
b = 1
Case 32768 '緑色
b = 2
Case 255 '赤色
b = 3
Case 13421619 '青色
b = 4
End Select
c.Offset(, 1).Value =b
Next '**ここまでコピペ**
End Sub
<続く>
あ、End Selectの前に2行追加 Case Else b = "" ツールバー→マクロ→マクロ→実行で、今のコードを実行する。 で、B列に1〜4の数字が入ると思うのでB列をキーに並び替え あとはB列は用済みなので削除してもOK。
188 :
名無しさん@そうだ選挙にいこう :2006/07/20(木) 02:06:34
183です。185さん、ありがとうございます。教えてくださったみなさん、どうもありがとうございます!
知恵をお貸しして下さい。 A1入社時間。B1退社(中休み)。C1入社。D1退社時間。E1に勤務時間(残業は抜く)。F1に残業時間。 と計算される表を作りたいのですが悩んでいます。 ▼補足情報▼ 残業は19時から30分単位で計算。 19時までの通常勤務は15分単位。 残業は24時を超えることはありません。 入退社時間は9:43など分刻みで記入。 勤務時間(E1)、残業時間(F1)は60で割った数式を記入。 今までは残業時間まで含めた総時間から残業時間を引いて出していました。 E1とF1のセルの数式を独立(?)させたいのです。E1の計算式は =(FLOOR(B1,"0:15:00")-"9:00")+(FLOOR(D1,"0:15:00")-CEILING(C1,"0:15:00"))-F1 でやっていました。(A1は9時からのカウントなので9:00と記入) これからでた時間数を別のセルで60書けた数字を表示していました。 残業時間の数式は =FLOOR(D1,"0:30:00")-"19:00" です。残業が無い場合は表示されないようにしたいです。 しかしこれだと切り捨てる時間の単位が違うのでもし残業45分だった場合、 残業数は30分となしますがE1はF1から引っ張って来ているので15分ずれてしまいます。 ここで、E1はF1から引くのでは19時から引いたら、19時以前に退社した人も19時まで の計算になってしまいます。なんとかうまくできないものでしょうか? 長い上に口足らずで申し訳ありませんが知恵を貸して頂ければと思います。
具体例を挙げたほうがいいよ 入社時間 外出時間 入社時間 退社時間 勤務時間 残業時間 9:00_________0:00_________0:00________18:45_______9:45_________0:00 現在の計算式で、退社時間が19:00前と19:00以降のサンプルでこうなります これを、以下のようにしたいです。 頭が回らん
191 :
名無しさん@そうだ選挙にいこう :2006/07/20(木) 10:00:14
>>189 大昔作ったものだけど参考になるかな
定時(10進数) @=9.50 A=17.50 B=22.00 ←基準値を別セルに入力しておく
【出勤表】
出社時間 退社時間 出社時間 退社時間 早朝出勤 通常時間 残業時間 深夜時間
入力1(A) 入力2(B) 式1(C) 式2(D) 式3(E) 式4(F) 式5(G) 式6(H)
式1:C =HOUR(A)+MINUTE(INT(A*96+1)/96)/60 :15分ごとに切上げ10進数に変換
式2:D =HOUR(B)+MINUTE(INT(B*96)/96)/60+IF(DAY(A)=DAY(B),0,24) :15分ごとに切下げ10進数に変換
式3:E =IF(C<@,@-C,0)
式4:F =D-@-IF(D-@<3,0,1) : 3時間以上は休憩1時間を引く
式5:G =IF(D>A,MIN(D,B)-A,0)
式6:H =IF(D>B,D-B,0)
上の各式は =IF(COUNT(A.B)=2, 式1〜6 ,"") でエラーを防止
192 :
名無しさん@そうだ選挙にいこう :2006/07/20(木) 10:11:57
2003を使ってます。。 離れたセルの値がゼロのときに、今のセルに色を付けたいのですが。 たとえばZ1セルが0のとき、A1セルを赤に塗りたいんです。 このやり方を教えて下さい。
>>192 条件付き書式で出来ます。
AもしくはBを選んで下さい
A Z1が0もしくは空白のとき
条件1に【数式が =Z1=0】で書式を赤に設定
B Z1が0のとき(空白のときは色を付けない)
条件1に【数式が =Z1=""】で書式の設定なし
条件2に【数式が =Z1=0】 で書式を赤に設定
すみません。ちょっと訂正です。 B 条件1に【=AND(Z1=0,Z1<>"")】で赤に設定 の1つだけでOKです。
>>190 具体例です。エラーが出る例を書きますね。
1.入社時間 2.外出時間 3.入社時間 4.退社時間 5.勤務時間 6.残業時間
9:00_____13:23_____15:23_____19:52_____7:45_____00:30
これだと私が今作っている数式だと残業が30分単位なので本当は45分ですが
30分になります。ここで勤務時間も30分しか引かれないので15分多くなって
しまいます。
だから勤務時間をもし19時以降まであるなら19時までを計算し、
19時に満たないならそこまでの時間を計算するなんて都合の良い
計算式ないですか?
>>191 せっかく教えていただいて申し訳ないんですが、早朝出勤と深夜時間
の覧はないので上記の6項目だけでの方法はありませんか?
教えてくんで申し訳ないですがよろしくお願いします。
196 :
名無しさん@そうだ選挙にいこう :2006/07/20(木) 11:29:15
エクセルのオートサムと簿記2級を持っている人の電卓操作ならどっちが計算早いですか?
198 :
名無しさん@そうだ選挙にいこう :2006/07/20(木) 17:07:13
【1 OSの種類 .】 Windows2000 【2 Excelのバージョン 】 Excel2000 【4 VBAでの回答の可否】 可 sheet1の1つのセルに現在時刻を1分おきに表示して時計にしています。 同bookのほかのsheetを表示している間はその時刻が更新されないので、(sheet1に戻せば 1分以内には更新されますが、) ほかのsheetを表示しているときにもsheet1の時計を動かし続けるにはどうしたらよいでしょうか?
199 :
名無しさん@そうだ選挙にいこう :2006/07/20(木) 17:13:48
>>189 =195
ここまで出てても、自分で考えるのは嫌なのか?
ここはエクセルの相談所だ、式は自分で考えろ
今はどうやって更新してんの?マクロかなんか?
201 :
198 :2006/07/20(木) 17:21:30
>>200 そうです、マクロ組んでます、以下のような。
Sub tokei()
Dim mT As Date
mT = CDate(Format(Now() + TimeValue("00:01:00"), "hh:mm:ss"))
Range("E21").Value = Now()
Application.OnTime mT, "tokei"
End Sub
202 :
名無しさん@そうだ選挙にいこう :2006/07/20(木) 17:23:50
じゃあここかえればいいんじゃね? Range("E21").Value = Now() ↓ Worksheets("sheet1").Range("E21").Value = Now()
203 :
198 :2006/07/20(木) 17:30:18
204 :
名無しさん@そうだ選挙にいこう :2006/07/20(木) 17:45:23
違う人だけど
>>201 のコードを秒単位で動かすことってできる?
206 :
名無しさん@そうだ選挙にいこう :2006/07/20(木) 18:34:20
ジグザグ状にオートフィルはできますか? 12345 678910 1112131415 1617181920 といった具合です。
test
>>195 [勤務時間]
退社時間が19:30以降なら19:00迄の時間
退社時間が19:30未満なら退社時間迄の時間
=IF(D3<TIMEVALUE("19:30"),(FLOOR(B3,"0:15:00")-"9:00")+(FLOOR(D2,"0:15:00")-CEILING(C3,"0:15:00"))
,(FLOOR(B3,"0:15:00")-"9:00")+TIMEVALUE("19:00")-CEILING(C3,"0:15:00"))
[残業時間]
退社時間が19:30以降なら現在の算出値
退社時間が19:30未満なら0:00
=IF(D3<TIMEVALUE("19:30"),"0:00",FLOOR(D3,"0:30:00")-"19:00")
具体例では外出時間は丸めで2:15になるから勤務時間は7:45でいいんじゃないの
9:00_____13:23_____15:23_____19:52_____7:45_____00:30
9:00_____13:00_____15:00_____19:52_____8:00_____00:30
209 :
195 :2006/07/20(木) 19:06:48
>>208 ありがとうございます。これをもとに自分で仕上げていきます。
ご指導ありがとございました。
210 :
d :2006/07/20(木) 19:57:52
>>206 12345
678910
ここまで入力して2行選択してから下へオートフィルすれば出来ると思います。^^
211 :
名無しさん@そうだ選挙にいこう :2006/07/20(木) 20:36:26
>>211 早い回答ありがとうございます。
ある程度検索してみたんですが、見つからなかったんで
半ば諦めていました。
212 :
208 :2006/07/20(木) 20:45:04
うっ、一箇所D2になってた
マルチになってすいませんが、困ってるので・・・ ★ 使用OS(WindowsMe)。 ★ 使用ソフトウェア名とバージョン(Excel 2000)。 突然なのですが、エクセルで作成したファイルを開こうとしたら、 `D\○○○.xls`が見つかりません。[ファイル名を指定して実行]ダイアログボックスに名前を正しく入力していないか、 別の開いているプログラムがシステムファイルを検索できません。ファイルを検索するには、[スタート]ボタンをクリックし、 [検索]を実行してください。 上記のメッセージが出てしまいます。一つのファイルだけでなく、全部のファイルが同じメッセージが出て開けません。 エクセルを立ち上げ、ファイル→開く→ダイアログボックスからファイル指定、でやるとちゃんと開くことができます。 ファイルそのものをクリックしても開かないのです。 これまでにエクセルの再インストール、修復等をやってみましたが、現象は変わりません。 修復する方法はありますでしょうか?よろしくお願いします。
214 :
名無しさん@そうだ選挙にいこう :2006/07/20(木) 23:50:11
質問です。 エクセルで文字に「2重の取り消し線」を入れることはできますか? (フォント)→(取り消し線)でやると、一重の取り消し線しかできません。
>>214 擬似的でよいなら、二重下線+下付き
だめならオートシェイプを重ねるとか…。
背景透明・枠なしテキストボックスに文字を打ち込んで、 セルに二重罫線を一本引いて位置あわせってのも。
46がまだ空いてる
>214 に対しては素直に出来ませんと答えるべきでしょう。 見映えの為の小細工はエクセルの暗黒面に陥る可能性がある。
221 :
名無しさん@そうだ選挙にいこう :2006/07/21(金) 09:06:32
( ´,_ゝ`)プッ オコチャマだな〜
222 :
名無しさん@そうだ選挙にいこう :2006/07/21(金) 10:34:31
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 不可 セルに、「’」を入れないで「1−1」と表示したいのですがどうしてもできません 「’1−1」と入力すれば「1−1」と表示されますが、「1−1」と入力するとどうしても「31718」と表示されてしまいます そのセルには他にも「101」と表示させたり、漢字やひらがなを表示させることもあります なんとか「’」を入れないで出来るようにならないでしょうか すごく初歩的な質問だとおもうのですが、丸一日かけてもわかりません どうかよろしくお願いします
223 :
名無しさん@そうだ選挙にいこう :2006/07/21(金) 10:36:10
224 :
名無しさん@そうだ選挙にいこう :2006/07/21(金) 10:40:55
>>223 ありがとうございます
あっけなく出来ました
丸一日が無駄になりました
エクセル難しい・・・
225 :
名無しさん@そうだ選挙にいこう :2006/07/21(金) 12:29:42
どなたか教えてください。漢字を入力したあと、文字の上にフリガナを付けたい時はどうしたらいいのでしょうか。
226 :
名無しさん@そうだ選挙にいこう :2006/07/21(金) 12:32:10
書式→ふりがな→表示
227 :
名無しさん@そうだ選挙にいこう :2006/07/21(金) 12:58:47
ありがとうございます!やってみます!
229 :
名無しさん@そうだ選挙にいこう :2006/07/22(土) 02:15:36
こんばんは、数字の入力を質問させてください。セルに00123と入力したいのに、なぜか123と表示されてしまうのはなぜなんでしょうか。
excel2000のマクロなんですが、下らない質問ですみません。 現在2つのブックを開いているものとして、1つはマクロを登録している macro.xls、もう一つは現在アクティブなブックでhoge.xlsとします。 macro.xlsのマクロは、選択したセル範囲の座標(x0, y0)-(x1, y1)を取得して、 addlineで線を引くというものですが、hoge.xls上のシートでセルを選択し、 マクロを実行するとmacro.xlsのシートに描画されてしまいます。 キーボードあるいはメニューからマクロを実行した際にアクティブになっている ブック中のシートに対して描画が行われるようにしたいのですが、どこを直せば いいのでしょうか。 ただし、マクロの記録先として、personal.xlsは使わないものとします。 マクロの流れ Selection.Row などで開始・終了行、列を取得 ↓ cells(開始行, 開始列).Left等でx, y座標を取得 ↓ With ActiveSheet.Shapes.AddLine(x0, y0, x1, y1).Line...で描画
>>230 macro.xlsのどこにマクロを書いてます?
標準モジュールに記述するのと、ThisWookbookに記述するのでは動作が違う。
いちど、こんな簡単な式で試してみれば?
Sub bbb()
With ActiveSheet.Shapes.AddLine(10, 10, 250, 250).Line
.DashStyle = msoLineDashDotDot
.ForeColor.RGB = RGB(255, 0, 128)
End With
End Sub
>>229 計算しないなら、セルを右クリックして書式設定→文字列
数値として扱いたいならセルを右クリックして書式設定→ユーザー定義→000000
>>229 Excelの基礎の基礎の解説本を、ブックオフで手に入れて夏休み中読め
>>230 macro.xlsブックがアクティブになってしまう様な記述になっているじゃないの?
明確にmacro.xls以外の開かれているブック名を取得して処理するほうが懸命じゃね?
234 :
230 :2006/07/22(土) 06:37:29
>>231 ,233 サンクス
あー、他のブックに効果を与えたいマクロは標準モジュールに置かないとダメなのですね。
解決しました。
【1 OSの種類 .】 Windows*XP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 A1 b1 c1 d1 e1 f1 1 -1 12 45 200 -1 10 0 20 30 40 0 この1行に並んだデータのうち 左から調べて行き検索値より低いデータのセルの位置を調べる (-1はエラーデータとして設定しているので無視する) (データは1から10000でソートされていない、−1はエラーデータ) 検索値 10 ならばA1の10 検索値 50 ならばD1の30 検索値 1000 ならばE1の40 という検索結果を取得したい。
236 :
235 :2006/07/22(土) 10:56:35
march関数を使用してみましたが、 の3番目の引数を-1とした場合では データが降順に並んでないといけないのでエラーとなります。 hlookup関数では 3番目に引数にtrueを設置すれば最大値が返されるはずなのに なぜか一番左の数値が選ばれてしまいました。 上の例で検索値50のときA1の10となってしまいます。 また時には右端のデータが出てきてしまいます。 これもデータがソートされていないと思ったように動いてくれないようです。 実際動かしたのコード =HLOOKUP(a1,A7:E8,2,TRUE) a1=500 A7:E8= 1 -1 100 300 -1 1 2 3 4 5
excelを立ち上げると PERSONAL.XLSも立ち上がってしまうんですが タスクトレイにPERSONAL.XLSを表示させない方法はありませんか?
>>237 "C:\Program Files\Microsoft Office\Office10\XLStart" にpersonal.xlsがあるんならそれをどこか他のフォルダに
移してみたら?
>>235-236 配列数式
ソートされてないデータで完全一致以外の検索がしたい場合はコレ
使い方は自分で調べること。
>>237 超既出、聞き飽きた。
MACH関数で別シートにあるデータを検索した後 その右の5つのセルをコピーするにはどうしたらいいでしょうか? たとえば 検索したいデータが4だとします。 1 2 3 ”4” 5 6 7 8 9 4の後ろの5 6 7 8 9のデータを そのまま検索した右にコピーしたい場合はどうすればいいでしょうか? 結果 4 5 6 7 8 9 MACHとINDEX関数を何個も使って計算するよりも 場所はMACH関数を使って特定できている コピーするデータの長さも決まっている場合、 計算させないでコピーする方法があれば教えてください。
>>241 コピーするならVBAを使ってやる
それが嫌ならそのままワークシート関数で我慢する
>>241 作業セルと配列数式
配列数式には配列を扱う式と配列を返す式があるが後者の方ね。
使い方は自分で調べること。
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2002 【3 VBAが使えるか .】 少しは 【4 VBAでの回答の可否】 可 例えばセルとか他のアプリとかでも良いんですけど、 右クリックで貼り付けとかって呼び出せるじゃないで すか。あれをフォーム上のテキストボックスでも呼び出せ はしないんですかね。
246 :
名無しさん@そうだ選挙にいこう :2006/07/22(土) 19:22:41
>使い方は自分で調べること。 いちいち気持ち悪いな
247 :
名無しさん@そうだ選挙にいこう :2006/07/22(土) 22:26:20
248 :
名無しさん@そうだ選挙にいこう :2006/07/22(土) 22:48:42
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 使えません 【4 VBAでの回答の可否】 できれば否 何者かが、 ファイルの種類をVEM ファイルにしてしまった為 拡張子を.vemから.xlsに変更しましたが ファイル内すべて文字化けしてしまっています。 直す方法はありますか?
249 :
名無しさん@そうだ選挙にいこう :2006/07/22(土) 22:54:22
【1 OSの種類】 WindowsXP 【2 Excelのバージョン】Excel2000、Access2000 【 VBAでの回答 】 可(コメントほしいです。) 【 検索キーワード 】 パスワード ExcelからAccessのプロシージャを実行 Excel2000のマクロを使ってAccess2000のプロシージャを実行したいです。 要望は、Access2000のファイルdb1.mdbにパスワードが設定してあるときパス ワードを毎回入力しないといけないので、コードで自動処理(スルーできるよ うに)したいというものです。パスワードを設定していない場合のコードは できました。次のものです。 Sub macro1() '変数の宣言 Dim a As Object Dim b As String b = "C:\db1.mdb" Set a = CreateObject("Access.Application") With a .OpenCurrentDatabase b .Run AccessMacro'AccessMacroはアクセスのプロシージャ名です。 .CloseCurrentDatabase .Quit End With Set objAcc = Nothing End Sub スルーしたいパスワードというのはAccessの[ツール][セキュリティ]で設定 するパスワードのことです。今回のAccessのファイル名はdb1.mdbです。 Cドライブにおいてあります。パスワードは「pass」にします。 b = "C:\db1.mdb" この行を b = "C:\db1.mdb" & "Password=pass" にしましたが無理でした。この方法は根本的に間違っているのでしょうか。 少し変更すれば要望通りに動くようになるのでしょうか。 よろしくお願いします。
>>248 VEMって何だよ
>>249 ExcelでVBAを使っていたとしても、それはAccessの使い方の問題だと思う
251 :
名無しさん@そうだ選挙にいこう :2006/07/22(土) 23:34:38
252 :
名無しさん@そうだ選挙にいこう :2006/07/22(土) 23:59:20
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2002 【3 VBAが使えるか .】 使えません 【4 VBAでの回答の可否】 否 すみません データを横に打ってしまったんですけど、このデータを 縦に変更することはできますか? 2006/3/1 2006/3/2 2006/3/3 10500 10600 9800 を 2006/3/1 10500 2006/3/2 10600 2006/3/3 9800 のように変更したいのですが…
人間になりたーーーーーーい
254 :
248 :2006/07/23(日) 00:12:06
>>250 すみません。なんて読むかまでわかりませんが
vemって表示されています。
256 :
248 :2006/07/23(日) 00:34:05
>>255 プロパティで見るとプログラムは、
Realtek Azalia Audio - Event Monitor
と表示されます。
>>256 スパイウエアみたいですね
ファイルは上書きされて消えてる可能性もあります
258 :
252 :2006/07/23(日) 00:55:21
259 :
名無しさん@そうだ選挙にいこう :2006/07/23(日) 02:03:09
すんません ひとつのブックにシートが50くらいあるんですが 一発で全てのシートに同じ様に印刷範囲を設定することってできますか? シートを全指定して印刷範囲を設定しようとしても できない・・・・・ このままだと50シートいっこいっこ 印刷範囲設定しなければ いけないのか・・・・欝
260 :
名無しさん@そうだ選挙にいこう :2006/07/23(日) 02:15:42
adsfg
261 :
名無しさん@そうだ選挙にいこう :2006/07/23(日) 02:29:53
adfg
262 :
名無しさん@そうだ選挙にいこう :2006/07/23(日) 02:32:35
sfdghdfah
そろそろできた頃だな お次の方、どうぞ
addlineを使い、複数のセルにまたがって引かれた長い水平な線があるとして、 ある選択されたセルの上に線が引かれているかどうかを判断する簡単な方法は ありませんか? 要は、指定したセルに掛かっている水平線をぶった切りたいのです。 イメージ的にはスケジュールを示す矢印があったとして、そこへ休日を入れる みたいな感じです。 面倒臭くても前後のセルをスキャンして、lineのプロパティから判断するより ほかないのでしょうか。
266 :
265 :2006/07/23(日) 06:35:51
×前後のセルを ○周辺のシェイプを
267 :
名無しさん@そうだ選挙にいこう :2006/07/23(日) 07:55:07
【1 OSの種類 .】 Windows XP 【2 Excelのバージョン 】 Excel 2003 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 excel vba コマンドライン 「C:\xxx.xls 引数1 引数2」 あるいは 「C:\Program Files\Microsoft Office\OFFICE11\EXCELL.EXE C:\xxx.xls 引数1 引数2」 上記を実行した場合に、 起動されたxxx.xls内のマクロから引数1、引数2を取得する方法が 知りたい。
×EXCELL.EXE C:\xxx.xls 引数1 引数2 ○EXCEL.EXE C:\xxx.xls 引数2 引数3 xxx.xlsが第1引数 > xxx.xls内のマクロから引数1、引数2 引数はC:\xxx.xlsに渡されるものではなく、EXCEL.EXEに渡されるもの。 そしてEXCEL.EXEはPathと対応コマンドラインスイッチ以外の引数は無視する。 引数で情報を与えたければ、ブックを普通に開いてから、マクロに直接引数を与えなさい。 あとは引数受け取り用プロシージャで、受け取った引数をモジュールレベル変数とかに格納しておけば 他のプロシージャから参照可能。
直接開くんじゃなくて、 起動用のブックを用意して・・・すれば解決
>>269 スマートな解決策のつもりなんだろうが、かえって面倒くさい手順と開発になるかもしれないって思わないか?
起動用のブックから実行用のブックへ引数を渡すんだよな?
実行用のブック1つで引数を処理すればいいものを、起動用と実行用2つ作る必要性はどこにあるの?
設定ファイルの切り替えみたいに動作させたいんじゃないのか
違う処理をする複数のアプリを起動用ブックから切り替えるなら意味あると思うけど、
引数で設定を切り替えるのは、大部分で同じ処理をするアプリだと思われるので、
1つのアプリを作れば十分で、そっちが作りやすい。
起動用ブックを別に作るほどのものかね?
>>267 さんがそっちがいいというなら、かまわないけれども。
結果として何がやりたいのか具体的に書いてないからよくわからんが
>>268 の方法で、vbsにブックパスやその他の引数を渡して
それらをマクロへの引数に変換する方法が一番スマートなのでは?
「C:\Program Files\Microsoft Office\OFFICE11\EXCELL.EXE C:\xxx.xls 引数1 引数2」
というのが
「C:\Windows\system32\wscript.exe xxx.vbs C:\xxx.xls 引数1 引数2」
になるだけだし。
274 :
259 :2006/07/23(日) 11:53:16
>264 さん !!!!! 印刷範囲全指定のマクロ説明ありがとうございました! ためしてみてできました。 よくよく数えたらブック数5画シート50ヶで 計250くらいありました。 残業1日なくなりました!!! m(__ _)m )
275 :
259 :2006/07/23(日) 14:16:41
だからエラーが出たっちゅうなら、どういうコードを書いて何処でどういうエラーが出たか 書けや、このヴォケ
>>275 C:\My Documents\が存在しないのでは?
c:\とかにしてみ
278 :
名無しさん@そうだ選挙にいこう :2006/07/23(日) 15:19:41
259のレスと274同一人物。259の本当の答え知りたいんだけど。。。
>>275 > 教えてください・・・・
> ・・・ができません
> ↓がそうなのかなと思い試してみましたが・・・・エラーがでました
> このままでは250くらい名前を付けて保存をする必要があり、苦しんでます・・・
質問者が・・・を多用するな、ボケ
281 :
名無しさん@そうだ選挙にいこう :2006/07/23(日) 19:07:47
【1 OSの種類 .】 Windows Me 【2 Excelのバージョン 】 Excel 2000 【3 VBAが使えるか .】 少々 【4 VBAでの回答の可否】 可 オートシェイプでループ記号を描くにはどうしたらいいでしょうか?
>>281 ./ ̄ ̄\
|____|
| ̄ ̄ ̄ ̄|
.\__/
ループ記号って↑これ?
図形として書きたいだけなら、直線組み合わせてグループ化。グリッド吸着使うと綺麗に書ける。
中に文字を入れたいならユーザー定義でオートシェイプを作る。
ちなみにオートシェイプはWMFだからね。WMFの作り方は自分で調べてね。
283 :
名無しさん@そうだ選挙にいこう :2006/07/23(日) 20:34:22
>>282 レス有難うございます。
図形の中に文字を入れたいので後者の方法でなんとかやってみます。
>>272 ただいま
> 引数で設定を切り替えるのは、大部分で同じ処理をするアプリだと思われるので、
> 1つのアプリを作れば十分で、そっちが作りやすい。
当たり前ですが、アプリは1ブックで完結している前提だったんですけどね
> 起動用ブックを別に作るほどのものかね?
別に、ブックでなくてもいいですよ。
Excelだけで物を言っただけ
まわりが何言おうと、質問者自身が出てこないとこれ以上進まないな。 仮定の前提作って話進めても意味無いし。
286 :
259 :2006/07/23(日) 23:24:31
259です 一つのブック内にある複数シート⇒それぞれシート名でブック保存 下記のようなマクロで行おうとしましたが 【実行時エラー1004】 WORKSHEETクラスのCOPYメソッドが失敗しましたとでました なぜなんでしょうか?? 277さん⇒(C:が無かったのでD: でやってみました) ↓ Sub miko_test() Dim i As Integer, j As Integer, n As String, nn As String Application.ScreenUpdating = False i = Sheets.Count 'シート枚数のカウント n = ActiveWorkbook.Name 'コピー元ファイルの名前を取得 For j = 1 To i '一番左のシートから最後のシートまで繰り返す Sheets(j).Copy 'シートを新規ブックにコピー nn = ActiveSheet.Name 'シートの名前を取得 '新規ブックを、シートの名前でC:\My Documentsの中に保存して閉じる With ActiveWorkbook .SaveAs "D:" & nn .Close End With Next Application.ScreenUpdating = True End Sub
> .SaveAs "D:" & nn 例えばnnが「Sheet1」なら、保存パスは「D:Sheet1.xls」になるが、 そんなパスあり得ないだろ。エラーになって当然。 "D:"ではなくちゃんと"D:\"って書こうね。 つーかこの程度のことに気付かない奴は、気軽に拾ったコード実行しない方がいいよ。 悪意のあるコードにも気付かないだろうから。 まあ、コード読めなくたって、オリジナルの末尾に"C:\My Documents\"というふうに\が入ってるのを見れば 思慮の浅いバカ以外は気付きそうなものだがなw
289 :
名無しさん@そうだ選挙にいこう :2006/07/24(月) 01:07:17
286のをまんまコピペしてもエラーでなかったぞ
290 :
259 :2006/07/24(月) 01:23:39
いろいろありがとうございます。 明日、会社でためしてみます。 そちらはC:もあるので。 (今日マクロの本買いました。これから勉強します)
291 :
名無しさん@そうだ選挙にいこう :2006/07/24(月) 03:14:43
あるセルに年を指定すると、その年の「成人式の日」が何日であるかを表示するシートを作りなさい。 ちなみに、「成人の日」は一月の第2月曜である。 という問題があるんですが、どうすれば作れるでしょうか? 最後はWEEKDAYでしめればいいのは分かるんですが、最初〜途中の過程が みえません。よろしくお願いします。
> そちらはC:もあるので。 大丈夫か?コイツw
どんな関数があるのか調べろよ ある日を基準にすれば、どうにかなるだろうよ 関数を知ることより「第2月曜」の定義の仕方が肝心だろ それを考えることが課題なんだよ 教えてもらったところで応用が利かないやつは役に立たない 過程が大事なのよ もっとも検索すれば、答えはたくさん転がってるし
294 :
名無しさん@そうだ選挙にいこう :2006/07/24(月) 04:19:44
>>293 WEEKNUMの逆のものがあれば使えそうなんですが、
なさげなんですよね・・・。
ある日を基準にする・・・。
第一月曜日ですかね?
あるセルに今日の日付を指定すると、次の日曜日が何日であるかを表示するシートを作りなさい。 これならどうよ?w
>>291 >>2 ・8
とりあえず出来てる部分を全部書け。話はそれからだ。
あと、回答する人。こういう課題とかにはそのものズバリな回答は避けて
なるべく遠回しなヒントを与えること。本来はそのヒントすら自分で探すものなんだから
課題・設問も回答そのものを教えたら意味無いからね。
uze-
298 :
名無しさん@そうだ選挙にいこう :2006/07/24(月) 08:00:45
ここは人生相談所jじゃなくてエクセル相談所なんだから 仕事だから課題だからと区別する必要は無いと思うんだがな。 ま、考え方は人それぞれだろうが、少なくとも 回答者が好きなように答えればいいことであって >ヒントを与えること。 こんな風に偉そうに命令される筋合いはない。
>>298 どうしたの?
とりあえず落ち着こうよ。
∬
つ 旦
300 :
名無しさん@そうだ選挙にいこう :2006/07/24(月) 08:40:09
>>ヒントを与えること。 >こんな風に偉そうに命令される筋合いはない。 まさにその通りなんだがしかし、 丸々答えていいもんでもないと思う。 答え方も勉強しなきゃいけないんじゃないのかなぁ 切磋琢磨なんて言葉もあるよね。
うざ
302 :
名無しさん@そうだ選挙にいこう :2006/07/24(月) 09:04:03
「ヒントを与えるぐらいにしたらどうだろうか?」 ぐらいの書き方にしときゃ波風立たないのに。 世渡り下手だよね。
> 世渡り下手だよね。
とか書かなければ波風大きくならないのに
世渡り下手だよね、俺も
>>302 もw
こういう話題になるととたんに張り切るなww 回答は書かねえくせに説教だけは大好きwww
Do Loop
掲示板は質問者と回答者だけのためのものじゃない。 その他大勢の第三者が情報を得られるというのも掲示板の良さ。 解答があるならハッキリ解答を書いてくれた方が嬉しいという第三者もいるだろうし ヒントを出された方が自分も考える過程を体験できて有益と考える第三者もいるだろう。 どちらがいいとは一概には言えない。 ひとつ言えるのは、第三者にとっては質問が「仕事」なのか「宿題」なのかはあまり関係ないんじゃないかという事。 宿題に対してすぐに解答するのは本人のためにならないから良くない、と思うのは解答者の勝手で それはそれで好きにすればいいし、解答する力も無い者がそれを批判する事ではない。 だがそういう自分のやり方を他人に押し付ける事でも無い。
> 2006/07/24(月) 09:30:34 New !! まで読んだ。
でたよ。VBAでたとえようとする奴。ガキくせー。
311 :
291 :2006/07/24(月) 12:58:34
297は自分ではないです。
とりあえず、1月1日を何曜日か判断して、計算式で第一月曜を設定して+7
にして、第2月曜を求めたいんですが、式が思いつかない・・・。
=WEEKDAY(シリアル値,月曜が0になる種類)
で論理式を設定して、
日を表示する関数を作って、↑の関数の答えが
0のときは+7,1のとき+13,2のとき+12,3のとき+11・・・・6のとき+8
みたいな感じでやっていけばいいんですかね?
が、しかし関数の定義が無理だ・・・ORZ
>>295 それも分かんないです・・・・。
次の日曜が何日か指定する・・・・なんか窓から飛び降りたくなってきました!笑
>>311 1日が何曜日かわかれば、その次は日曜日と何日差か考えればいい
>>311 とりあえず、正月の曜日を調べる
例えば2006/1/1だったら日曜
日曜だったら『8を足した1/8』が第2月曜
月曜だったら『7を足した…』
火曜だったら『13を足した…』
水曜だったら『12を足した…』
木曜だったら『11を足した…』
314 :
291 :2006/07/24(月) 14:14:05
C6にXXXX/1/1が何曜日かを表示するようにして、 =IF(AND((C6=4,C7=C6+12),(C6=5,C7=C6+11),(C6=6,C7=C6+10),(C6=7,C7=C6+9),(C6=1,C7=C6+8),(C6=2,C7=C6+7),(C6=3,C7=C6+13)) ) という式を作ったんですが、成立しません。 この書き方はどこが間違っているんでしょうか?
> この書き方はどこが間違っているんでしょうか? うん
>>314 第2月曜だったら必ず8〜14日の間だから
8に曜日に応じた数を足せば済むんじゃないかな?
=8+MID("1065432",WEEKDAY("2006/1/1"),1)
とか
317 :
291 :2006/07/24(月) 14:35:22
>>316 1065432は何を意味するんですか??
319 :
291 :2006/07/24(月) 15:35:15
>>318 理解できました!
=8+MID(0654321,WEEKDAY(B6/1/1,1),1)
こんな感じで書き換えてみたんですが、なぜかうまくいきません。
勝手に
=8+MID(654321,WEEKDAY(B6/1/1,1),1)と書き換えられてしまいます。
どうしてでしょうか・・・
321 :
291 :2006/07/24(月) 15:55:48
=8+MID("1065432",WEEKDAY("2006/1/1"),1) を変更して =8+MID("1065432",WEEKDAY("B6/1/1"),1) ←B6にXXXX年を入力 にしたんですが、うまくいかなかったので =8+MID("0654321",WEEKDAY(B6/1/1,1),1) に変更したんですが・・・・。
…で? つーかこれって質問ではなく壮大な釣りではないかと思い始めて来た。 釣りじゃなければ291のオツムが心配だ。
323 :
291 :2006/07/24(月) 16:06:39
>>322 釣りじゃないです!
俺のパソコンがおかしいのかな・・・・
誰か答え教えて・・・・ORZ
ここは291の勉強室か?
>>321 B6に「2006/2/1」みたいに1日の日付まで入れて「WEEKDAY(B6)」か、
「WEEKDAY(B6 & "/1/1")」かな?
WEEKDAYの引数は日付値か、日付として認識できる文字列だよ。
単に「2006/1/1」とかじゃただの割り算になるよ。
326 :
291 :2006/07/24(月) 16:15:06
本当ですね・・・・。 早くこの塾から旅立ちたいです・・・。
327 :
291 :2006/07/24(月) 16:20:50
>>325 俺に足りない知識はそれでした!
ありがとうございます。
ようやく解決できました。
皆様ご迷惑をおかけしました!
>291 せっかく解決したのに悪いが、本当の答えは 「成人式の日」は、自治体に訊かないとわからない。
調べたら前倒しで日曜に成人式やる地方とかあるんだな。 ワロタw
「体育の日」でも同じ事が言える。
なんだよ、成人の日じゃねぇのかよ
人が集まりやすいように正月やお盆にするところもあるぞ。
ヘキサゴン
334 :
名無しさん@そうだ選挙にいこう :2006/07/24(月) 18:21:04
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2000 他 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 オートフィルタ オートフィルタで絞込みを行った際、ステータスバーに 「○レコード中○個のデータが見つかりました」 と表示される場合とされない場合があります。 どのような条件で表示の有無が決まるのでしょうか?
335 :
名無しさん@そうだ選挙にいこう :2006/07/24(月) 18:32:42
1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2002 他 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 すみません 既作のグラフがあって、セルの方に今日の数値を 加えても、グラフの方に今日のデータが反映されません どうすれば、表示更新というか、すでに作ってあるグラフ に今日のデータを表示させられますか?
336 :
名無しさん@そうだ選挙にいこう :2006/07/24(月) 18:37:58
元のデータの範囲指定がおかしいんじゃないの?
337 :
名無しさん@そうだ選挙にいこう :2006/07/24(月) 18:50:51
>>336 あ、できましたよ
データの範囲を列全部にしたらできました
ありがとうございます
338 :
名無しさん@そうだ選挙にいこう :2006/07/24(月) 20:45:58
「#DIV/0!」は何て読むんですか?
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 若干 【4 VBAでの回答の可否】 可 フォームのボタンに、BMPとか出来合いの画像じゃなくて、矢印とかオートシェイプを 貼り付けたいのですがどうすればできますか? VC++とかVBなら出来るというのもアリです。
340 :
名無しさん@そうだ選挙にいこう :2006/07/24(月) 21:30:40
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 可 左端を100とした折れ線グラフってどうやって作るんでしょうか。 分かる方お願いします。
341 :
名無しさん@そうだ選挙にいこう :2006/07/24(月) 21:46:05
データを全合計で割って100掛ける
342 :
名無しさん@そうだ選挙にいこう :2006/07/24(月) 23:28:36
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 入力規則 質問です。 矢印キーやタブキーでカーソルが移動しなくなってしまいました。 エンターキーでなら下に移動しますが、他のキーだとマウスであわせたセルに固定されたままです。 どこを触れば元に戻せるのでしょうか? ご教授ください。よろしくお願いします。
状況がいまいちだけど *.xlbを削除してみてもだめかな
なるほど 自分で押したかもしれないという自覚症状はないのんか 再起動ぐらいしろや
346 :
名無しさん@そうだ選挙にいこう :2006/07/25(火) 00:58:05
セルA1の背景色を赤にすると、セルA2の背景色も赤になる、といった感じで 指定したセルの背景色を参照して反映させたいのですが、どうすればいいんでしょうか? 【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2002 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 背景色 参照 反映
348 :
名無しさん@そうだ選挙にいこう :2006/07/25(火) 03:07:13
【1 OSの種類 .】 WindowsXP home 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 グラフウィザード 範囲 バグ グラフにしたい範囲をあらかじめ選択した状態で グラフウィザードを実行すると、 Excelが、わざわざ別の範囲をグラフ化しようとします。 この振る舞いを直すにはどうしたらいいでしょうか?
>>348 どんなブックで、表がいくつあるのか
グラフにしたい範囲が、どこからどこまでなのか
別の範囲とは、どんな範囲なのか
状況がわかりません
グラフにするのに必要な部分以外を排除したシンプルな状態で
動作を確認してください
原因が何にあるかがわかるかもしれません
352 :
名無しさん@そうだ選挙にいこう :2006/07/25(火) 10:32:28
すみません素人なんで教えて下さい エクセルを使用中、文字を漢字等に変換してから その後同じひらがなや文字を一つ打つと、以前変換した文字全文が出てしまいます 解除する方法を教えて下さい エクセル文字を打つ時にある一定の文字を入力すると、メールが発動します 「W50@303」と入力後エンターキーを押すと時によってメールが作動します なぜですか、よろしくお願い致します
353 :
352 :2006/07/25(火) 10:35:59
【1 OSの種類 .】 Windows98SE 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 VBAってなんですか? 【4 VBAでの回答の可否】 【5 検索キーワード 】
> 解除する方法を教えて下さい ツール > オプション > 編集 > オートコンプリートを使用する のチェックを外す > なぜですか 「英数字@英数字」がメールアドレスとして認識されるから。 こちらは解除方法は聞いてないので伏せる。
> こちらは解除方法は聞いてないので伏せる。 (゚д゚)ウマー
356 :
名無しさん@そうだ選挙にいこう :2006/07/25(火) 11:46:18
性悪
また馬鹿回答者か
解除できるのか?
たしかctrl+kかなんかのダイアログで解除できるんじゃ無かったかな?
361 :
352 :2006/07/25(火) 12:36:56
オートコンプリート解除が出来ました 有り難うございます メールになってしまう訳もわかりました つっかえていた、仕事の能率があがります 感謝致します 有り難うございました
質問者が納得しちゃうと突っ込んでたあの子等が哀れだねw
363 :
名無しさん@そうだ選挙にいこう :2006/07/25(火) 15:11:04
Gyaoのストリーミング動画をスクリーンショットでエクセルに貼り付けたら Excel上で再生したままなんですけど、撮った場面だけ使いたいんですけどどうしたらいいんですか?
364 :
名無しさん@そうだ選挙にいこう :2006/07/25(火) 15:53:47
365 :
名無しさん@そうだ選挙にいこう :2006/07/25(火) 15:55:07
配布したファイルのワークシート「WC2006」には今年開催されたサッカー・ワールドカップ2006ドイツ大会の参加全チームのグループリーグ成績がある。 グループリーグから決勝トーナメントへ進出するチームを選ぶための順位を決める規則は次のようなものであった(この問題のためにすこし変えてある)。 1.グループリーグごとに4チームが総当りで各チーム3試合ずつ、計6試合を行う 2.試合は勝ちチームに3点、引き分けならば両チームに1点ずつの勝ち点を与え、3試合を終わって勝ち点が多いチームが上位 3.勝ち点が同じ場合、得失点差(=総得点−総失点)の多いチームが上位 4.勝ち点も得失点差も同じ場合、(総)得点の多いチームが上位 グループリーグの勝敗表と上記の規則から、グループリーグごとではなく全チームの順位付けをしたい。 これを次の手順で求めよう。 @各グループの成績を、「グループリーグ 集計」ワークシートの所定の位置にコピー&貼り付けをしなさい(『書式を選択して貼り付け』で『値』を選び貼り付けること)。 A勝ち点欄、得失点欄を完成させなさい。値を自分で計算して直接入力するのではなく、必ず式を使うこと。 B得失点差、得点それぞれの最大値を、ワークシートの所定の枠(最大得失点差、最大得点)に関数MAXをつかって表示させなさい。 C上記1.〜4.の規則に基づく順位を再現するようなポイント(つまり、上位チームほど大きい値となるポイント)の与え方を考え、ポイント欄に式で入力しなさい。なぜそうなったのか理由も述べなさい。 どのようにすれば、1.〜4.の規則に正確に対応した順序になるだろうか?ヒント:得点よりも得失点差に、得失点差よりも勝ち点に、より大きなポイントを与えればよい。(ただし、わずかな勝ち点差を大きな得失点差が逆転するようなことがないように。 こういう課題なんですが、Cのやり方教えてください。
366 :
名無しさん@そうだ選挙にいこう :2006/07/25(火) 16:08:43
課題は自分でやれ!ば〜か
>>365 @〜Bまでが終わったなら「ヒント」に基づき計算する
>(ただし、わずかな勝ち点差を大きな得失点差が逆転するようなことがないように。
ここのところが重要だからちゃんと処理するように
368 :
名無しさん@そうだ選挙にいこう :2006/07/25(火) 17:04:50
出題者が馬鹿としか思えない問題だな
3試合で100得点は不可能だから例えば 勝ち点×100+得失点差をポイントとして 判定しろと問題からは読めるんだが あまりお勧めできない。
371 :
365 :2006/07/25(火) 18:33:19
ありがとうございます。なかなかできませんが・・・。 優先順位をつけて成績順に並べ替えるってどうたるか分かりますか?
だみだこりゃ
373 :
名無しさん@そうだ選挙にいこう :2006/07/25(火) 22:24:08
Excelの関数ででた解を数式ではなく自動的に値としてセルに表示させたいのですが どうしたら良いでしょうか?
グラフを作ったあとにデータを入れ換えたいのですが、 グラフと参照元のデータのリンクを切ることはできるでしょうか? 代用として、グラフを画像として貼り付けているのですが。 よろしくお願いします。
あんまり変わらんけど、参照元をコピれば?
376 :
374 :2006/07/25(火) 23:07:45
>>375 レスありがとうございます。
やっぱりそういう手しかありませんかね。
引き続きお願いします。
個人で使うなら好きにしやがれ
値のところに "={1,2,3,4,5}" みたいにすればいけるんジャマイカ?
379 :
名無しさん@そうだ選挙にいこう :2006/07/26(水) 00:15:44
すいません教えて下さい!1行おきのセルの順位を出したいんですが… 誰か分かりますか?お願い致します!
381 :
名無しさん@そうだ選挙にいこう :2006/07/26(水) 01:04:00
あ!ありがとうございます!間には別のデータ入ってます…そうなんです
382 :
名無しさん@そうだ選挙にいこう :2006/07/26(水) 01:05:46
売上|利益|売上|利益|と交互になっていて 売上の順位と利益の順位を出したいんです…すいません!
>>382 件数少ないなら自力で1行おきに集計元データを範囲指定
(CTRL+クリックで選択範囲を加算していく)
挿入→名前で選択範囲に名前をつける(例えばaaa)
同様に利益の範囲を指定し名前をつける
で、順位を出したいセルに=rank(対象データのセル,aaa)
作業セル無しで求められるようにしようとしたらぐちゃぐちゃになってきちゃったけどとりあえず A1:A10にデータが入っていて奇数行を計算する場合 A1の順位は =MIN(IF(A1=LARGE(IF(MOD(ROW($A$1:$A$10),2)=1,$A$1:$A$10*1,MIN($A$1:$A$10)-1),INT((ROW($A$1:$A$10)-1)/2+1)),INT((ROW($A$1:$A$10)-1)/2+1),11)) と入力してCTRL+SHIFT+ENTER
>>384 作業セル使ってもいいんでないの?非表示にすれば無問題だし
387 :
名無しさん@そうだ選挙にいこう :2006/07/26(水) 03:08:04
いや〜〜〜ホントありがとうございます! なんとか試みてみま〜す!
>>373 VBAでやればいいよ。
というかVBA使わないと自動では出来ないよ。
389 :
名無しさん@そうだ選挙にいこう :2006/07/26(水) 11:51:44
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 シート("A")上にコントロールツールボックスからリストボックスを配して、Visible=Falseにしておき、 特定セル("A1")でCtrl+Downの操作がおこなわれたときのみ、シート("B")上の複数列のデータをリストボックスに入れ Visible=Trueとして、リストボックス上から選択された値をセル("A1")に入れるというプロシージャをつくっています。 しかし、このままだとシート("A")をコピーすると不可視状態とはいえ、コピー後のシートにもリストボックスが作成され 気持ち悪いので、別の方法をとりたいと考えています。 そこで 1、ユーザーフォームのタイトルバーを消すにはどうすればいいですか? 2、シート("C")に置かれたリストボックスに一意な名前をつけたりして、それをシート("A")上でCtrl+Downと操作された時のみ、 シート("A")上にリストボックスを表示し、選択が終わるとシート("A")上から消えるというようなことができますか? 以上、よろしくお願いします。
>>389 1、APIでタイトルバー消してやればいいです。(あとは
>>2 ・7)
2、できます。あなたが日本語で書いた「やりたいこと」をVBA語で書けば良いだけです。(あとは
>>2 ・8)
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 表示形式で指定している書式の見た目のままの値を取得する方法って無いですか? 例)表示では0021 実際は21.14 0021を値で欲しい。
>>392 A1が21.14で見た目0021として
戻り値がテキスト形式でよいなら
=TEXT(A1,"0000")
あ、テキスト形式じゃなくて文字列
393さんの方法を試したら出来ましたありがとうございました。
("A")
1 2 3 4 5 ↓ 01 02 03 04 05 このように1桁だけの数字は0を2桁目に追加して表示する処理は出来ますか?
>>399 すみません、書式設定のどこをいじれば処理が出来るんでしょうか・・・
401 :
名無しさん@そうだ選挙にいこう :2006/07/26(水) 20:43:59
【1 OSの種類 .】 Windows98SE 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 不可 CSVファイルをダブルクリックしてExcelを起動する時、 各セルのデフォルトの幅を8.38以外の大きさにする方法を 教えてください。
>>400 セルの書式設定で「ユーザー定義」を選んで種類のところに「00」と入力
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 複数回答可のアンケートを集計したいと思っています。 A列:質問1「2chをどのくらい使いますか?」の回答 択一 常駐してる/よく見る/ときどき見る/怖いから見ない/2chって何? B列〜F列:「2chについて当てはまると思うものをチェックしてください(いくつでも)」の回答 True/False B列 「怖い」 C列 「面白い」 D列 「役に立つ」 E列 「危ない」 F列 「ひろゆきウザイ」 常駐してる False True True True True ときどき見る True True False True True …… みたいなリストから 利用頻度別/各項目のTrueの数 のクロス集計をしたいのです。 常駐 よく見る ときどき 見ない 知らない 怖い 面白い 役に立つ 危ない ひろゆきウザイ とりあえず、利用頻度とB列、利用頻度とC列、……と各項目についてピボットテーブルを作ってからコピペしてまとめてるのですが、 実際は10項目くらいあるのでたいへんです。もうちょっと労力を節約できる集計方法はないものでしょうか。
>>401 CSVファイルをダブルクリックでは、
テキストファイルを読み込んでるようなものなので、できないのでは?
(できたら御免)
別ブックに、CSVを開いて列幅の調整をさせるマクロを書く
>>400 この程度の事を、このスレで書き込んでいるようでは時間の無駄だと思う。
基礎のExcel本で十分だから一冊買って、実際に操作しながら覚えたほうがいいよ。
今の段階で、かなり非効率であると気付くと思うよ。
406 :
名無しさん@そうだ選挙にいこう :2006/07/26(水) 22:42:05
オートフィルタは通常縦方向に並んだデータにフィルタかけますが、 横方向に並んだデータにフィルタをかけることは可能でしょうか? なお、現状の行数が256行を超えているので、行と列を入れ替えることは不可能です。 (エクセルの制限の256列に引っかかってデータがあふれる。) よろしくお願いします。 【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 オートフィルタ
つまんないことですみません。 excel2kのVBAエディタですが、ホイール付きマウス(comfort optical mouse 3000) のホイールで、コード編集画面をスクロール出来ないんでしょうか? 他所では出来るのかもしれませんが、家のはダメです。ちなみにOSはXPで マウスはPS/2接続です。
できないのよ。「どこでもホイール」とか使うのもひとつの手かもね。
411 :
409 :2006/07/27(木) 12:18:29
なぜVBE用のマウススクロールアドインなんてものが存在するか考えてみようよ。
413 :
409 :2006/07/27(木) 13:07:53
ブック1つに100シートと ブック2つに50シートを それぞれ同時に立ち上げて作業する場合 (中身は一緒) ブック2つにしておいたほうが軽いんでしょうか?
どんな内容のブックなんだよ。 整理整頓したほうがいいんじゃね?。 何に使うんだよそのブック。
シート数50以上という時点でどっちも見る気しません。
【1 OSの種類 .】 Windows98SE 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 Web上にあるCSVファイルをワークシートに読み込む方法を教えてください。 検索したらActiveSheet.QueryTables.AddというメソッドでHTMLを読み込むサンプルを見つけたので、 URLのところにCSVファイルのアドレスを書いてみたのですが 「実行時エラー1004 インターネットサイトからリクエストしたオブジェックトを取得できません」という エラーが出ました。 (エラーメッセージがオブジェ「ッ」クトとなっているのは原文ママ) 目的のCSVファイルはIEからは問題なくアクセスできるので、ネットの障害ではありません。
>>418 Sub URL_Static_Query()
With ActiveSheet.QueryTables.Add(Connection:= _
"URL;
http://pc8.2ch.net/test/read.cgi/bsoft/1152852610/418 ", _
Destination:=Range("a1"))
.BackgroundQuery = False
.TablesOnlyFromHTML = False
.Refresh BackgroundQuery:=False
.SaveData = True
End With
End Sub
書いてみたけど、再現しない
自分で書いたものを晒すんだ
420 :
名無しさん@そうだ選挙にいこう :2006/07/27(木) 18:31:39
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 ExcelXP(2002) SP3 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 excel FAQ 検索と置換 フォント 検索と置換ダイアログboxで、「すべてを検索」し、リスト表示される 検索結果をクリックしていると、フォントサイズがいきなり大きくなって、 表示が壊れて訳が解らなくなってしまいます。 解決策などあれば、ご教授願います。
▼━質問時の注意・決まり事 ━━━━━━━━━━━━━━━━━ ・3 VBAコードを貼る場合は、部分的に伏せたり省略したりせずに全て貼りましょう。 ・8 うまくいかなかったにしても自分でやってみたこと(組んだ数式やコード)は書きましょう。 例えエラーになる式やコードでも、何をやりたいのかを的確に把握する手がかりになります。 その上で、どううまくいかないのかを具体的に書きましょう。 エラーが出るなら、何処でどういうエラーが出るのか、 想定外の結果が出るなら、条件と想定上の結果、実際の結果などを詳しく書いてください。
VBWheel2.0が公開停止になってる。何が問題だったんだろう?
家で使ってるVBWheelは問題なく使えてんだが(バージョンは判らず(^^;)
424 :
名無しさん@そうだ選挙にいこう :2006/07/27(木) 23:56:51
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 ExcelXP2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 excel FAQ 余白 全面 0 消す 単純な格子の枠をB5紙面いっぱいに印刷したいのですが、すべての余白を0にしても 印刷すると4辺に余白ができてしまいます どうすればこの余白を消せますか?
426 :
名無しさん@そうだ選挙にいこう :2006/07/28(金) 00:04:13
>>425 レスありがとうございます
印刷プレビューの段階ですでに余白ができてしまっているのでプリンタは関係なさそうです
A4に印刷して裁断しろ
次の方、どぞ
>>426 プリンタドライバの設定かえたらいける。うちのエプソンだと。
ページ設定→余白→オプションでレイアウト→拡大・縮小→フィットページ
少なくとも、プレビュー上では余白が消えてる。
バカは放置でいいんじゃない
431 :
名無しさん@そうだ選挙にいこう :2006/07/28(金) 02:05:36
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 ExcelXP2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 excel FAQ 原作者 作成日時 変更 プロパティの概要の詳細設定モードの 原作者の作成日時や印刷日時を変更したいのですができないのでしょうか。 ちなみにXPです。
>>432 できました!
ありがとう。
いろいろツールは試したのですが原作者まで変えることはできなかったのです。
フォームのボタンが複数あったとして、これらのボタンのプロパティに値を 設定したいと思うのですが、ボタンの名前がbutton1 から button8まであったと して、for〜nextループを使う場合どういう風にこの名前を指定すればよいので しょうか。 for i = 1 to 8 set me.button ? .picture = getwindowimage next ?の部分をiを使って表現したいのです。
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 Excel ツールバー ユーザー設定 非表示 無効 マクロでツールバーを非表示にし、独自のツールバーを作成する処理を作っています。 自作ツールバーの作成、ツールバーの表示・非表示の制御はできたのですが、 ツールバーで右クリックした時に表示される「ユーザー設定」をどうしても消せません。 ユーザー設定を非表示、ツールバーの右クリック無効、など どうにかしてユーザー設定を無効化する方法はないのでしょうか?
436 :
435 :2006/07/28(金) 11:21:46
すみません。自己解決しました。 .Protection = msoBarNoCustomizeでユーザー設定の対象外にできました。
>>434 ユーザーフォーム上のcommandbuttonだったら
me.controls("CommandButton" & i).picture
でいけるかな?
438 :
434 :2006/07/28(金) 11:55:11
フォームに、色を選択するコントロールを貼り付けたいと思いますが、どの コントロールを選べばいいのでしょうか。 SysColorCtrlつうのはよくわかりませんし、この場合適切じゃなさそうです。 コントロールは、メニューバーにある「A▼」の▼をクリックしたときに出てくる 41色中から選ぶだけのシンプルな奴がいいのです。 (つか、線と文字に共通に使える色を指定したいので、41色?以上選べるコントロールは 使えない。) 宜しくお願いします。
440 :
420 :2006/07/28(金) 14:38:04
>>421 本体の動作の質問だったので、貼るコードもなければ、
自分でやってみたことは420に書いた操作で全てです。
ここはマクロの質問スレだったんですね。申し訳ないです。
> 検索と置換ダイアログboxで、「すべてを検索」し、リスト表示される > 検索結果をクリックしていると、フォントサイズがいきなり大きくなって、 > 表示が壊れて訳が解らなくなってしまいます。 どんな動作を期待して、どのように期待と違ったのか分からないので、 訳が解らなくなってしまいます。 ていうか「リスト表示される検索結果」って何? オレがそういう操作しないから知らないだけかもしれないけど、 検索結果ってリスト表示されたっけ??
ListViewみたいな一覧のことだと思うけど フォントサイズがいきなり大きくなって表示が壊れる というのは、一覧表示されている内容がクラッシュした状態? 多分、めったに遭遇する現象とは思えないので スクショをupしてほらん
WinXPでEXCEL2003ですが、 置換で、 con =con みたいな感じでやってる人が居たんですけど、 conってどういう意味でしょうか。
>>439 コントロールとしてフォームに張り付けたければ、ユーザーコントロールを作ってください。
VB6だけでなく、無料で使えるVB5CCEでもユーザーコントロールは作れます。
ポップアップでいいなら、ツールバーオブジェクトから呼び出すだけです。
フォームにコンボボックスを貼ったのですが、リストの部分に【横スクロールバー】が ついてしまいます。機能的には支障はないのですが、意味がないので消したいのです。 リストに入る文字は漢字で最大2文字(極細、細、中、太、極太)で、この5行のみ。 コンボボックスのwidthが54、heightは15。 RowSourceのセルの幅は10.75(91ピクセル)。 宜しくお願いします。
>>444 サンクス。もうフォームにボタン56個並べて作ってしまいました。
パフォーマンス的にどうかは判りませんが。
>>445 プロパティのScrollBarsの値を変える
448 :
名無しさん@そうだ選挙にいこう :2006/07/29(土) 09:13:47
横に並んでいる数字の合計や平均を計算するにはどうすればいいんでしょうか?
単に範囲指定してやれば良いだけでは? 例えば sum(a1;d1)とか average(a5:e5)とか
450 :
名無しさん@そうだ選挙にいこう :2006/07/29(土) 09:21:38
合計 =SUM 平均 =AVERAGE または =AVERAGEA
451 :
名無しさん@そうだ選挙にいこう :2006/07/29(土) 09:29:29
そうですよね 何故かうまくいかないんです ちょっと色々やってみます
452 :
名無しさん@そうだ選挙にいこう :2006/07/29(土) 09:32:35
>>449 みたいなタグを計算したいマスに打ち込んでもそのままその文字が表示されるだけなのですが
何故でしょうか?
いや、だから最初に = をつけてるか? =sum(a1:d1) みたいに こんなん判ってると思ってつけてなかったんだけどさ w
454 :
名無しさん@そうだ選挙にいこう :2006/07/29(土) 09:49:46
おっうまくいきましたサンクスコです。
455 :
名無しさん@そうだ選挙にいこう :2006/07/29(土) 09:57:38
サンクスコだってさ
クスコ
意味を知らずに人真似で使ってると恥書くよ。 バーチャだから良いけどリアルでは使うなよ。
うざ
それを「やってる人」に聞けばいいだろ。簡単な事じゃねーか
>>457 意味も分かっていて人前で使うオレが来ましたよ。
たぶん concatenate confidence convert のどれか 何かの理由で文字列として入力しておいて、後から式に直した と推測してみる。
>>462 それそれ、そんなことを言ってました。
concate〜でした。
文字列のシートにしといて、数式コピーをして、
書式を標準にして、文字列→式にしたという感じですかね?
464 :
名無しさん@そうだ選挙にいこう :2006/07/29(土) 14:07:11
セルに入力した数式(今まで正常に計算されていた)を編集したら、 計算結果ではなく入力した数式がそのまま表示されるようになってしまいました。 手動で計算とか一度保存して再度開いたりとかしてみたのですが、変わりません。 おかしくなったセルをオートフィルで隣のセルにコピーしていくと計算されないセルが増えていき、 元のままの正常なセルをオートフィルでコピーしていくと、元通りのセルに直ります。 セルの書式設定には変化した所はなさそうです。 原因が分かる方、いらっしゃったらお願い致します。
>>464 上の三行部分のみ
ツール→オプション→表示→ウィンドウオプション
数式のチェックを外す。
466 :
名無しさん@そうだ選挙にいこう :2006/07/29(土) 14:49:20
会社でエクセルを使って割と複雑な試算などをしています 現在のレベルですが、2ヶ月前までは全くの素人だったのですが、毎日エクセルを 使うので、基本操作はできるようになりました そこで相談です さらにエクセルの実用的な技を学びたいのですが、お勧めの書籍(やHP等)は ありませんでしょうか?? エクセルの技術を高めて、他の社員より作業効率を上げたいです
467 :
名無しさん@そうだ選挙にいこう :2006/07/29(土) 15:18:54
>>465 外れてます。
試しにチェックしてみたら全セルが数式表示され、チェックを再度外したら元通り
(数式表示のセルと解を表示するセルが混在)の状態になりました。
>464 書式が文字列になっているな。 書式を標準に戻しただけでは文字列のまま。 ここで、データ→区切り位置→完了 が応用できる。
>>469 解決しました。
できる気になっていましたが、まだまだ勉強が足りませんでした。
ありがとうございました。
質問させてください。 シートの条件 A1からA4は空白で、 A5からA11まではA5から順に外部から数値を取り込み記入していくログのようなもの(XYZは数字) このような物なのですが A1に文字を入力した時(A1の内容は不問)、 A5〜A11までの間の何処までかに数字が入力されている途中の段階とします。 (A5に入力された段階なのか、A5からA10まで入力された段階かは不明な状態とします) この状況で、A1に文字を入力したあと、A5からA11を調べて、数値が入力されているセルの1つ下の空白のセルをアクティブにしたいと考えています。 A B C D E 1 【1 OSの種類 .】 WindowsXP 2 【2 Excelのバージョン 】 Excel2000 3 【3 VBAが使えるか .】 少し(今勉強し始め 4 【4 VBAでの回答の可否】 可 5X 【5 検索キーワード 】 VBA excel マクロ 6Y 7Z (今A5から順にA7までログ取りされた状態、この状態でA1に適当な入力をした後、A8の空白セルをアクティブにしたい 8 9 10 11 という具合です。書き込み許容行数の関係で、テンプレがシート内にありますが、質問の内容とは関係ありません。 このような動作をするVBAをお教えください。 どうぞよろしくお願いします。
Range("A65536").End(xlUp).Offset(1).Select
1行で可能なものなのですね。 ありがとうございました。 うまくいきました。
すみません便乗で質問させてください。
>>472 の内容は、A列の一番下のセル(65536)から順に上へ空白セルを探すというものですよね?
あってますか?
その上で質問ですが、このA65536はA11としても何の問題もないと思いますが、
エクセル上でVBAを動かす場合、処理にかかる時間というかPCにかかる負荷というものは
この場合どちらも同じなのでしょうか?
ど素人の私の概念としてはA65536から調べるのは大変に思うのですが
そこら辺、VBAには関係ないものなのでしょうか?
>>474 1セルずつ調べることはしてないと思うよ
>>475 やはりそうですか、杞憂でしたね。
ありがとうございました。
入力規則のリスト使うと、ドロップダウンでリストが一覧として出ますが、 そのリストの一覧のサイズってどこかで変更できませんか? 8個までのリストは一覧で可視状態ですが、9個目以降はスクロールによって選択するように なっています。これを任意の個数まで表示できるように出来ませんか?
478 :
名無しさん@そうだ選挙にいこう :2006/07/29(土) 20:11:46
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 はい(中級くらいです) 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 起動フォーム タイトルバーを非表示 目的はExcel起動時にフォームを表示し、そのフォームのタイトルバーを非表示にす ることです。 起動フォームの設定はできます。 Sub Auto_Open() UserForm1.Show End Sub また、Excel起動後にシートからマクロを実行し、フォームを起動し、そのフォームの タイトルバーを非表示にすることもできます。しかし、Excel起動時に起動するフォーム のタイトルバーを非表示にする方法がわかりません。どこにどういったVBAを書けばよい のか教えてください。 どうぞよろしくお願いします。
479 :
445 :2006/07/29(土) 21:56:29
コンボボックスのリスト部分の不要な横スクロールバーを消したい件ですが、
>>447 >プロパティのScrollBarsの値を変える
すみません。office2000なのですが。そのようなプロパティはないようです。
>>479 ごめん。他のものと勘違いしてた。と言うわけで他の方の回答を待ってくだされ(^^;。
スクロールバーを出すか出さないかを任意に決められるのはテキストボックスとかピクチャーとか。
VBAのコンボボックスはItemの文字列幅依存なので、スクロールバーが出ない幅にするかAPIで弄るかだね。
>>2 ・7
入力規則のはやったことないが、コンボボックスのドロップダウンリストの表示Item数もAPIで弄れる。
入力規則のを弄るにはどうやってハンドルを取得するかだね。まあこの辺も
>>2 ・7かな。
482 :
名無しさん@そうだ選挙にいこう :2006/07/29(土) 23:23:14
▼━質問テンプレ (出来れば使ってね) ━━━━━━━━━━━━ 【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 はい(初級) 【4 VBAでの回答の可否】 可 エクセルでマクロを使用してワードのファイルを読み込みたいのですが出来ますか?
>>482 読み込むだけならできます
その後で何かしたいのならできないかも
Excelでバイトの時給計算表を作ってるんですが 午前の休憩15分 と 昼の休憩1時間 と 午後の休憩15分 を、それぞれ適切なタイミングで除算するにはどうすれば良いでしょうか? 単純に退社時間-出勤時間-00:15-01:00-00:15とすると 休憩時間前に帰った場合でも無関係に15分引かれてしまって困ってます。 午前の休憩は10:30〜10:45の15分 昼の休憩は12:00〜13:00の1時間 午後の休憩は15:00〜15:15の15分 で、勤務時間は8:00〜18:00の間で8時間以下で自由です。
退社時間-出勤時間で一度条件つければ? 休憩するにはそれ相応の勤務時間があるんじゃない? つまり一回目の休憩を取るには何時間か働いた後なんでしょ? 3時間としたら 退社時間-出勤時間>3時間のときに15分引いてあげるとか。ダメ?
1日を4つの区間(8:00-10:30,10:45-12:00,13:00-15:00,15:15-18:00)に分けて それぞれの区間ごとに働いた時間を計算して、最後に合計する、という具合に 問題を何段階かに分けて考えれば話が単純になるよ。
>>484 > それぞれ適切なタイミングで除算するにはどうすれば良いでしょうか?
オイ、除算って何か知ってて聞いてるのか?
>>487 すいません、間違えましたー!
除算ではなく引き算です…
>>485 なるほど…確かに出社時間が一定してればその方法で確実に計算されそうですね。
計算式や、どの関数使えば良いのか今の段階ではまだ理解出来ていませんが。
ただ、出社が1時間遅れて来る人の場合など(不定期)は難しいような…?
>>486 これだと出社・退社時間が不定期でも何とかなりそうですが
なかなか表組みにするとなるとスムーズにはいかなさそうな…?
>>488 吸いません。それは知りませんでした。すんなジョザンもある事も覚えておきます…
>>489 ただ、出社が1時間遅れて来る人の場合など(不定期)は難しいような…?
ということは出社時間関係なく、10:30〜休憩取れるシフト体勢なの?
なんかとてもウラヤマシス。10:00出勤の人とか30分後に休憩あって、すぐまた昼飯みたいな
出社時間に関係ないだろ 8時間内に同じ休憩時間があるんだろ
>>492 へぇ。何処もそうなんだァ。
普通働き出して何時間かして初めて休憩みたいなイメージあるけれど、
極端な話、出勤時間からいきなり休憩ってこともありえるってこと?
>>489 や
>>491 の会社だと
>>493 08:00-16:00
10:00-18:00
この時間内に休憩時間があるから、
出社時間が異なっても勤務時間8:00間の間の休憩時間は同じだと言っただけ
ここでは提示された条件での計算方法でいいわけでしょ
早番とか遅番とか勤務形態が関係するなら
それ毎に計算すりゃいいだけ
>>484 がどこまで把握しているかが問題だけどな
把握できているなら、まんま計算式に置き換えられるはずだけど
496 :
486 :2006/07/30(日) 03:31:36
C1〜J1に8:00,10:30,10:45,12:00,13:00,15:00,15:15,18:00と入力 A列に出社時間、B列に退社時間、C〜K列に次の式を入力すると K列に勤務時間が表示される。 C2 =IF(B2<C$1,B2,IF(A2>=C$1,A2,C1)) D2 =IF(B2<=D$1,B2,D$1) E2 =IF(B2<E$1,B2,IF(A2>=E$1,A2,E$1)) F2 =IF(B2<=F$1,B2,F$1) G2 =IF(B2<G$1,B2,IF(A2>=G$1,A2,G$1)) H2 =IF(B2<=H$1,B2,H$1) I2 =IF(B2<I$1,B2,IF(A2>=I$1,A2,I$1)) J2 =IF(B2<=J$1,B2,J$1) K2 =D2-C2+F2-E2+H2-G2+J2-I2
497 :
484 :2006/07/30(日) 03:42:04
盛り上がってるところ申し訳無いのですが、教えてください オートフィルを使って以下の単純な数式を書きたいのですが、 うまくいきません。 =A$1*0 =A$1*1 =A$1*2 =A$1*3 なぜこれはオートフィルできないのでしょうか? 教えてください。
>>497 > やはり、こういう物と同じように作るのは無理なんでしょうか?
あんたには、この仕事が不向き
>>498 そういうもんだ。
MSが与えたオートフィルの条件に合致しないのだからどうしようもない。
諦めろ。
501 :
486 :2006/07/30(日) 03:52:02
スマソ、色々間違えてたんで訂正 C2 =IF(B2<C$1,B2,IF(A2>=C$1,A2,C$1)) D2 =IF(A2>D$1,A2,IF(B2<=D$1,B2,D$1)) E2 =IF(B2<E$1,B2,IF(A2>=E$1,A2,E$1)) F2 =IF(A2>F$1,A2,IF(B2<=F$1,B2,F$1)) G2 =IF(B2<G$1,B2,IF(A2>=G$1,A2,G$1)) H2 =IF(A2>H$1,A2,IF(B2<=H$1,B2,H$1)) I2 =IF(B2<I$1,B2,IF(A2>=I$1,A2,I$1)) J2 =IF(A2>J$1,A2,IF(B2<=J$1,B2,J$1)) K2 =D2-C2+F2-E2+H2-G2+J2-I2
502 :
484 :2006/07/30(日) 03:54:49
そりゃ>501のように答え導いた後でそのセリフ言うならわかるけど・ おまえ特に回答してないじゃん。えらそうに
503 :
484 :2006/07/30(日) 03:55:21
504 :
名無しさん@そうだ選挙にいこう :2006/07/30(日) 03:56:50
結合したセルにウェブブラウザ等からコピーしたテキストを貼り付けたいんですが、うまくいきません。 例えば、2行*3列のセルを結合させ、大きいセルを作ります。出来たセルをア クティブにして貼り付けをすると「クリップボードに保存されているデータの 大きさや形が、指定された領域と異なります。貼り付けますか?」と出て、OK を選択しても「結合されたセルの一部を変更することはできません。」と出て 貼り付けられません。 セルをダブルクリックして入力カーソルを表示させた状態(この状態を何とい うんですかね?)にすれば貼り付け出来るんですが。。。ダブルクリックした くないんです。面倒なんです。 状況伝わりましたでしょうか?分かる方いらっしゃいましたらお願いします。 Excel2003にて。
>>502 > やはり、こういう物と同じように作るのは無理なんでしょうか?
無理なわけないでしょ!
つまり、そういうこと
>>505 うーん。今試してみたけど、うまくいかないなぁ。
別途他のセルを使って無理やり>498と同じ結果を持たせる数式作る分には問題ないんだけど、
やっぱりオートフィルでは>500の言うとおりってことなのですかね。
A$1*0 A$1*1 でオートフィルした後に A$1を=A$1にすべて変換でできない?
なるほど。後で置換してやるのですね。 アートフィル後にマクロかなにかでささっとしてやればそこまで手間もかからなさそうだし それで以降とおオも居ます。ありがとうございました。 ちなみン、=A$1だとむりでA$1だとうまくいく理由って何ですか・あ やぱり条件的なもので、どうしようもないのですか?
↑お前はpukuか。 ろれつが回ってないぞ。イラつくから推敲してから書きこめよ。
>>504 Sub abc()
Dim MyObj As DataObject
Set MyObj = New DataObject
MyObj.GetFromClipboard
Selection.Value = MyObj.GetText(1)
End Sub
これでどうかな?
右クリとかツールバーに登録
うぅ。VBAは初めてです。。。
とりあえず
>>12 を読んでやってみました。標準モジュールというのに
>>512 の
コードをコピペして、VBAエディタを終了させました。エクセルで上書き保存、
ワークシートを閉じ、再度ワークシートを開いてコピー、ペーストを行うも
>>504 と同じ結果になりました。
複数あるシートのうち、どれでもいいのですが、削除しようとすると 選択したシートを削除しますか? 見たいな確認ポップアップがでてくるのですが、これを表示させないようにする方法を教えてください Excel2000です。
516 :
515 :2006/07/30(日) 06:39:49
解決しました。
>>513 > うぅ。VBAは初めてです。。。
> とりあえず
>>12 を読んでやってみました。標準モジュールというのに
>>512 の
> コードをコピペして、VBAエディタを終了させました。エクセルで上書き保存、
はいはい。ここまではOKですょ。
では、
今まで通りブックを開いて、コピー
ここまではいいですよね?
つぎに、貼り付け(本来は、この操作をマクロが行います)
マクロを手動で操作してみましょう。
これの結果が、あなたの思う結果になるかをまず確認します。
貼り付けたいセル(結合セル)を選択した状態にします。
VBE画面にします。
モジュールの
Sub abc()
Dim MyObj As DataObject←この行にカーソルを置いてF5を押してみてください。
貼り付けたいセルに、うまく貼り付けできましたか?
>>517 貼り付けできませんでした。
>モジュールの
>Sub abc()
>Dim MyObj As DataObject←この行にカーソルを置いてF5を押してみてください。
F5を押すと
コンパイル エラー:
ユーザ定義型は定義されていません
というダイアログボックスが出てきて、OKを選択するとデバッグモード(?)
になってしまいます。コード1行目の"Sub abc()"部分が黄色でマークされ、
2行目の"MyObj As DataObject"が反転表示されています。1行目の左端に
黄色い矢印も表示されています。
結合セルの書式設定が何かまずいのでしょうか。初期設定から変更している
ものは、
配置>文字の制御 の「折り返して全体を表示する」、「セルを結合する」に
チェックを入れてあります。
>>518 ありゃま
参照設定とか関係あるのかなぁ?・・・忘れちまったというか、記憶にない
だれかHELPしてくり
>>519 付き合っていただきありがとうございます!
しばらく席を外しまーす。
>>519 DataObjectクラスはMSFormsライブラリで定義されている。
ユーザーフォームを挿入すると自動的に参照設定されるけど
ますが、手動で行う場合には、[参照設定]ダイアログボッ
クスの一覧には表示されないからVBEのツールから、
[参照設定]ダイアログボックスの[参照]ボタンをクリック
して、「C:WindowsSystem32\FM20.DLL」もしくは
「C:WINNTSytem32\FM20.DLL」(OSによって異なります)を選択する。
522 :
521 :2006/07/30(日) 09:37:28
3行目の先頭、「ますが、」は余計だった
質問です。 IF分岐で50以上分岐させることはできるでしょうか? お願いします。
524 :
523 :2006/07/30(日) 11:39:07
すいません、もう一つ質問があります。 セルの「A1」などの数字の部分を変数「Ax」のような扱いにして xの部分を入力によって割り当てる様なことはできますか? よろしくお願いします。
525 :
名無しさん@そうだ選挙にいこう :2006/07/30(日) 11:50:56
>523 ヘルプ見りゃ分る >524 関数によっては出来る
VBAを使って夏休みの宿題を済ませようと思っているのですが、可能でしょうか? EXCEL2003です。 計算ドリル、漢字ドリル、読書感想文、日記、工作がメインです。 おそらく工作に関してはVBAを駆使しても無理だと思うので、それ以外の奴だけでよいです。 よろしくお願いします。
527 :
521 :2006/07/30(日) 12:02:29
ハハハ イキデキネーヨ ∧_∧ / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ハライテ- ゲラゲラ . ( ´∀`) < アホか ∧_∧ 〃´⌒ヽ モウ カンベン . ( つ ⊂ ) \_______ (´∀` ,,)、 ( _ ;) シテクダサイ .) ) ) ○ ∧_∧ ,, へ,, へ⊂), _(∨ ∨ )_ ∧_∧ ○, (__)_) ⊂ ´⌒つ´∀`)つ (_(__)_丿 し ̄ ̄し ⊂(´∀`⊂ ⌒ヽつ タッテ ラレネーヨ
test
うぜえAA貼るな低能
>>521 できたっ!できたできたっ!ありがとうございます。
あとはキーバインドとかを設定してみます。
>>519 さ
んもありがとうございました。
いやぁExcelっていろいろできるんですねぇ。買った
はいいものの機能をほとんど使っていなかったこと
を実感している今日この頃です。
>>530 よかったよかった
>>521 さんHELPありがと
んで
つづきがあるが、どうする?
右クリックで〔貼り付け2〕を選択することによりマクロを実行できるようにします。
個人用マクロブック(PERSONAL.XLS)を作成します。
1.Excelを起動し、ツール、マクロ、新しいマクロの記録をクリック、
マクロの保存先を個人用マクロブックにします。
2.どこかのセルを選択してみてください。
3.記録終了ツールバーの■を押します。
(もし出ていなければ、ツール、ユーザー設定、ツールバー、記録終了にチェックを入れる)
4.ALT + F11 で、VBEの画面を出し
VBAProject(PERSONAL.XLS)の中に、Module1 が、ありますか?。
5.すべて保存で、終了してください。
6.普通にExcelを起動してみてください。
PERSONAL.XLSが表示されていますか?。(ウィンドウ(w)で確認してください)
PERSONAL.XLSをアクティブにして、ウィンドウ-表示しない をクリック
これで、Excelの画面には表示されなくなりました。
VBEの画面には表示されているはずです。
とりあえず、ここまで
始めましてこんにちわ。 【1 OSの種類 .】 Windowsxp 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 10段階で3くらい? 【4 VBAでの回答の可否】 可 特定の範囲に入力された数値をグラフ化するシートがあるのですが、 テンプレートととして最初に作ったグラフには適さない数値が入ることがあります。 具体的にはグラフの目盛りを1-3までに設定しているのに、入力された数値が4を超える場合など。 で、この状況に対応したいと考えてスピンボタンを使おうと思い、以下のマクロを作ったのですが うまくいきません 実行時エラー'91' オブジェクト変数またはWithブロック変数が設定されていません。 とでます。 Private Sub SpinButton1_SpinUp() ActiveChart.Axes(xlValue).Select With ActiveChart.Axes(xlValue) .MinimumScale = 2 .MaximumScale = 4 End With End Sub スピンボタンでグラフの目盛りの範囲を変えるにはどうすればよいでしょうか? どうぞよろしくお願いします。
533 :
484 :2006/07/30(日) 12:46:49
534 :
484 :2006/07/30(日) 12:47:54
自演→他演でしたね。
>>531 つづき、ぜひぜひおねがいします。
>1.Excelを起動し、ツール、マクロ、新しいマクロの記録をクリック、
> マクロの保存先を個人用マクロブックにします。
>2.どこかのセルを選択してみてください。
>3.記録終了ツールバーの■を押します。
> (もし出ていなければ、ツール、ユーザー設定、ツールバー、記録終了にチェックを入れる)
>4.ALT + F11 で、VBEの画面を出し
> VBAProject(PERSONAL.XLS)の中に、Module1 が、ありますか?。
このModule1というのは
Sub Macro1()
'
' Macro1 Macro
' マクロ記録日 : 2006/7/30 ユーザー名 : .........
'
'
Range("B15:L17").Select
End Sub
という内容のものでよいのですよね?ありました。
>5.すべて保存で、終了してください。 VBAエディタ、ブックともに上書き保存で良いのですよね?保存して終了 しました。 >6.普通にExcelを起動してみてください。 > PERSONAL.XLSが表示されていますか?。(ウィンドウ(w)で確認してください) > PERSONAL.XLSをアクティブにして、ウィンドウ-表示しない をクリック > これで、Excelの画面には表示されなくなりました。 > VBEの画面には表示されているはずです。 「普通に起動」というのはまっさらなブックを開いた状態にするということで 良いのでしょうか?まっさらなブックを開きましたが、PERSONAL.XLSがありま せん。。。右クリックメニュー登録したいです。
>>536 もう一度Excelを起動しなおしてください
Book1.xlsが表示されていると思います。
ウィンドウ(w)-表示する をクリックすると、どう表示されますか?
>マクロの保存先を個人用マクロブックにします ちゃんとここ変更してる? それと、 >VBAProject(PERSONAL.XLS) これはちゃんとある事を確認してる?
>>537 ウィンドウ(w)-表示する が無いです。
ウィンドウ(w)-表示しない はあります。
ウィンドウ(w)-再表示 を選択すると表示するブック(U)にPERSONAL.XLS
が出てきます。
540 :
482 :2006/07/30(日) 13:49:55
>>483 さんありがとうございます。
仕事で使用している質問票がWORDで出来ていて、その一覧表を
エクセルで作成したいのです。
ですから、WORDの文章をエクセルに転写したいのですが、エクセルみたいに
セルという概念がないので、場所を特定するのにどうすればよいのかと。。。
>>538 > ちゃんとここ変更してる?
変更しました。
> これはちゃんとある事を確認してる?
確認しました。VBAProject(PERSONAL.XLS)の中に標準モジュール
があって、標準モジュールの中に
>>535 の内容のModule1がありま
した。
うぬぅ。何がいけないのやら。
>>539 とりあえず
>>531 まではokのようです
では、
> ├VBAProject (hoge.xls)
> |├Microsoft Excel Object
> ||├Sheet1 (Sheet1)
> ||├Sheet2 (Sheet2)
> ||└ThisWorkbook
> |└標準モジュール
> | └Module1 <-ここにあるSub abc()〜End Sub を
> └VBAProject (Personal.xls)
> ├Microsoft Excel Object
> |├Sheet1 (Sheet1)
> |└ThisWorkbook
> └標準モジュール
> └Module1 <-ここに移動Sub 貼り付け2()〜End Subに変更
切り取って、貼り付け
Personal.xlsにマクロが記述されているので
今後はいつでも使用可能になります。(常に非表示でPersonal.xlsが開かれている)
つづく
>>539 > Sub Macro1()
> '
> ' Macro1 Macro
> ' マクロ記録日 : 2006/7/30 ユーザー名 : .........
> '
> '
> Range("B15:L17").Select
> End Sub
これは、不要ですので削除していいです
>ここに移動Sub 貼り付け2()〜End Subに変更
これは名前を abc から 貼り付け2 に変更の意味
>>539 起動直後からツール(T)-マクロ(M)-マクロ(M)をクリックし、PERSONAL.XLS!貼り付け2
を実行可能になりました!
>>545 このあたりからは、個人の責任において行ってください(問題ないとは思いますが)
Personal.xlsのModule1に以下を貼り付け
-----ここから
Sub 登録()
With Application.CommandBars("CELL").Controls.Add(Before:=1) '1は一番上
.Caption = "貼り付け2" '表題
.OnAction = "貼り付け2" '登録するマクロ
.FaceId = 481 'ハート
End With
End Sub
Sub 削除()
Application.CommandBars("CELL").Controls(1).Delete '1は一番上
End Sub
Sub リセット()
Application.CommandBars("CELL").Reset
End Sub
-----ここまで
貼り付けたら、
Sub 登録()
With Application.CommandBars("CELL").Controls.Add(Before:=1) ←この行にカーソルを置いてF5を押してみてください。
Excel画面で右クリ!してみて
>>532 スピンボタンを押した時にグラフをアクティブにしないと駄目では?
>>546 おおっハートが出た!貼り付け2もでけます。
何となく仕組みも分かってきたような。VBAが書けるようになればかなり
幅が広がりそうですね。
ありがとうございました(はーと)
>>547 なるほど。マクロの記録でもう一度確認してみます。
ツールバーにフォントやセルの色を複数色登録したいのですが、単純に追加しても 一方の色を変更すると他方も同じ色になってしまいます。 これはマクロで追加するしかないんでしょうか?
フォームを2つ定義したとして、フォーム1上のボタンでフォーム2を開くには どうコーディングすれば良いのでしょうか? フォーム2で色を選んでその値をフォーム1に返したいのです。
>>552 俺が自分用に作っているやつの中から
MainFormというユーザーフォームから
それぞれのフォームを出している。
Private Sub Cmd_Search1_Click()
MainForm.Hide
Frm_Search1.Show
End Sub
Private Sub Cmd_Search2_Click()
MainForm.Hide
Frm_Search2.Show
End Sub
554 :
552 :2006/07/31(月) 00:20:22
>>553 レスサンクス。
でも、フォーム2はこの例だとタイトルバーの[×]ボタンを押さないと閉じませんね。
フォーム2上のボタン([×]以外のボタン)を押すと、フォーム2を閉じてフォーム1に
戻りたい場合はどうすればよいのでしょうか。
フォーム2のボタンクリックのイベントでendを入れるとマクロ全体が終了してしまいますね。
555 :
名無しさん@そうだ選挙にいこう :2006/07/31(月) 00:33:39
つーかこんなの自分で考えないと進歩せんぞ。
(゚Д゚)ウマー
557 :
名無しさん@そうだ選挙にいこう :2006/07/31(月) 01:04:37
hideとshow、loadと・・ うわっ何をする(゚Д゚ )ウマー
558 :
552 :2006/07/31(月) 06:23:49
>>557 form2でme.hide, 続いてform1.showとすればよいのですね。
動きました。サンクス。
form2で得た結果で、form1のボタンの背景色を変えようとしたのですが、
変化しません。UserForm_Initializeではボタンの背景色が変えられたのに、
UserForm_Activateではダメですね。
よい方法はないでしょうか?
559 :
名無しさん@そうだ選挙にいこう :2006/07/31(月) 08:36:01
まったく (ーー゛) 甘えん坊さんだなぁ〜
うちの会社にもこんなヤツいるよ(今出社して来た10分遅刻) ガチャガチャと動いてるように見せかけて 実際は自分で何一つ考えない、周りに聞きまくって理解しないまま 言われた事をくっつけて、ハイ出来ましたと持ってくる。 矛盾点を指摘すると「〜先輩違うじゃないですか」と責任転換 だから査定は最低、ボーナス最低
こういうのを見ると、やはりテンプレは必須かなと思うな ネタかもしれんけど自分で一切調べてないだろ
防虫剤でも撒いておくか
テンプレがあれば自分で考えるだろうってものでは無いと思うが。 本人の意識の問題なわけで。
相談所に役立たずが湧いてる。 説教がましいが役に立たない先輩っているよな。 夏厨ウゼェ
典型的・夏@564
緊張の夏@564
567 :
558 :2006/07/31(月) 21:28:03
色々調べたり考えたりした上で再度質問したんですが・・・(´・ω・`)ショボーン 大変お騒がせしました。
568 :
名無しさん@そうだ選挙にいこう :2006/07/31(月) 21:33:32
>>567 普通にuserform2からuserforma1の色を変更してから閉じればいいんじゃないのかな?
ボタン押したら
userform1.backcolor = rgb(0,0,0)
me.hide
とかで
能書きイラネw
571 :
名無しさん@そうだ選挙にいこう :2006/08/01(火) 12:28:13
もうすこしマシにならんのか
575 :
名無しさん@そうだ選挙にいこう :2006/08/01(火) 14:30:49
ありがとうございますやってみます。
すみません、教えてください。 【1 OSの種類 .】 WindowsXP sp2 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 少々 【4 VBAでの回答の可否】 可 --- Sub HideColumns(columns As String) Dim strColumns As String strColumns = columns columns(strColumns).Select Selection.EntireColumn.Hidden = True End Sub Sub a() HideColumns "AC:DC" End Sub --- Sub aを実行すると、「コンパイルエラー:配列がありません」となります。 columnsが配列変数とみなされているようですが,なぜでしょうか。 VBEでColumnsとしてもcolumnsと頭文字が小文字になってしまいます。 どうすれば、引数で渡して列を隠せるのでしょうか。 よろしくご教示おねがいいたします。
Sub HideColumns(xcolumns As String) Dim strColumns As String strColumns = xcolumns columns(strColumns).Select Selection.EntireColumn.Hidden = True End Sub
>>576 >VBEでColumnsとしてもcolumnsと頭文字が小文字になってしまいます
引数でcolumnsとしてるから。それにcolumnsは予約語だから使わない方がいいかな。
引数も移し替える必要ないんじゃないかな?
Sub HideColumns(strCcolumns As String)
Columns(strColumns).EntireColumn.Hidden = True
End Sub
579 :
576 :2006/08/01(火) 15:11:42
>>577 早速のご教示助かりました。
うまくいきました。
引数名が関数内部の変数名と同じ、というのが原因だったでしょうか。
勉強になりました。
ありがとうございました。
580 :
576 :2006/08/01(火) 15:17:22
>>578 すみません、リロードし忘れました。
スマートなプロシジャありがとうございます。
私はまだまだマクロ記録そのままといった段階ですが、勉強になりました。
ありがとうございました。
581 :
名無しさん@そうだ選挙にいこう :2006/08/01(火) 17:27:57
在日朝鮮人が、通名を使い、朝鮮人であることを隠すようになった理由 コピペ 私は50歳代の、おじさんです。私の子供のころ(昭和30〜40年)ころは 終戦直後の余韻がまだ残り『朝鮮人』と言うと、それは凶悪犯罪者を意味しました。 小学生のころ、夜のラジオで聞くニュースは「キン・・」 「ボク・・」などの朝鮮人による 事件のニュースのない日はありませんでした。 敗戦と同時に、全国で一斉に始まった朝鮮人による強盗・強姦・恐喝・・など、 あらゆる社会的犯罪のひどさは、いずれ明るみに出されると信じています。 敗戦後、日本は急速に治安を回復すると、朝鮮人達は、誰からも相手にされなくなりました。 すると、このころから、『在日に対する言われなき差別』などと言い始めました。 しかし、当時の日本人は、こんな「身勝手な言い分」を誰も相手にしませんでした。 日本人が、朝鮮人に対して、「軽蔑」と「恨み」を強めていったのは この日本が戦争に敗れた時の、朝鮮人の言動のひどさにあります。 満州・半島では、女・子供と老人ばかりの避難民を襲っては、 女は強姦して殺し、子供は中国人に売りました。 何年か前、在日たちは、以下のことを日本人に言いました。 ・・・「お前たちは、昔、悪い事をした日本人の子孫だから、お前たち子孫が、責任を取れ」・・・ 朝鮮人は、自分達の犯罪をごまかす為に、強制連行・従軍慰安婦など、 歴史の捏造や歪曲して、事実を逆さまにして大声で叫んでいるのが真実です。 必ず本当の歴史が明るみに出てきます。・・出します。 私たち日本人は決して朝鮮人を許してはならないのです。 朝鮮人のした日本人に対する残虐な歴史を決して忘れてはならないのです。
質問です 【1 OSの種類 .】 Windows2000pro 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 数年前に少しやった程度で、ほぼ忘れている 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 罫線 行 固定 EXCELで表を作成しました。 データの入れ替えの際、コピー・貼り付けを繰り返すと 罫線がばらばらになってしまうので データ範囲のセルの罫線を自動で引き直すボタンを作りたいのですが VBAで可能でしょうか?
表の書式がどれぐらいのものなのかわからないが 単純なもので表の行数・列数が変わらないのであれば 一番楽なのは別の場所に同じ表を退避しておいて 選択範囲の書式をコピー・貼り付けでいいんでないの 手作業でできることは、VBAで操作可能でしょ
>>582 > VBAで可能でしょうか?
可能
つ マクロの記録
585 :
名無しさん@そうだ選挙にいこう :2006/08/02(水) 20:46:07
1234asd358→asd 675fgy8462→fgy 894jui8754→jui 45iujg895546→iujg 数字の中に入った文字列を取り出すにはどのような関数を使えばいいのでしょうか?
587 :
585 :2006/08/02(水) 21:06:18
▼━質問テンプレ (出来れば使ってね) ━━━━━━━━━━━━ 【1 OSの種類 .】 Windows2000 【2 Excelのバージョン 】 Excel2002 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 不可
>>587 何のためにテンプレがあると思ってるの?
省略してると後から探す人が不便
君の質問は過去ログにあったから
もう聞かないでね
589 :
585 :2006/08/02(水) 21:12:33
冷たい振りしてサンクス子
590 :
名無しさん@そうだ選挙にいこう :2006/08/02(水) 21:29:06
591 :
名無しさん@そうだ選挙にいこう :2006/08/02(水) 22:02:08
革命的喜びです! ありがとうございます
592 :
名無しさん@そうだ選挙にいこう :2006/08/02(水) 22:39:54
また他人に成りすましてるよ。こえーなコイツ。
>>585 の質問を見て、同じものが過去ログにあったと断定出来る人は超能力者だと思う。
尊敬する。
検索すればいいだけじゃね?
xlsファイルを開きたいのですが、ノートPCの方には入ってません。 veiwerをダウンロードしたのですが、 マクロが有効にできず困っております。 xlsファイルを開くには他のソフトウェアが必要でしょうか?
マクロ実行したいなら他のソフトなんかではなくExcelが必要だなあ
597 :
595 :2006/08/03(木) 01:21:23
>>596 ありがとうございます;
結局は世紀版が必要なんですね;;
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 いいえ フーリエ変換をしたんですが、65+26iみたいな複素数表示で返されます これを実数と虚数で分けて表示したいのですが、IMREAL等のエンジニアリング関数は 自分のエクセルでは使えないみたいなのです。 エンジニアリング関数以外で実数と虚数で分けて表示できるような機能はありますでしょうか?
[ツール]-[アドイン] ?分析ツール
>>598 FINDとかLEFTとかRIGHTとかの文字列関数を組み合わせれば出来そうかな
601 :
名無しさん@そうだ選挙にいこう :2006/08/03(木) 05:45:44
E1がAVERAGE(A1:D1)で (A1:D1)に数字が入ってない場合のE1の#DIV/0!のエラー値の消し方はどうすればいいいのでしょうか? IFをどうネストさせれば・・・?? 教えてください すみません
【1 OSの種類 .】 WinXP 【2 Excelのバージョン 】 Excel2000〜Excel2003 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 Excelアプリケーション1つに1つのブックのみを開くように制限する処理は、 マクロから可能でしょうか? 出来るのであれば、開きたいブックのAUTO_OPENのタイミングでマクロから 制御したいと思っているのですが・・・
>>603 1.特定のブックを開いているときは他のブックを開かせたくない
ex:「hoge.xls」で作業中は他のブックは開かせたくない
2.常に一つのブックで作業をしたい
ex:「higi.xls」で作業中に「rame.xls」を開いたら自動的に「higi.xls」は(保存して/しないで)閉じる
どっちさ?
どっちでもApplicationのイベント拾うアドイン使えばできるよ。
605 :
名無しさん@そうだ選挙にいこう :2006/08/03(木) 15:03:00
606 :
名無しさん@そうだ選挙にいこう :2006/08/03(木) 15:47:54
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 はい 超初歩的なことかもしれませんが、うまく調べられなかったので 教えて下さい Aというユーザーフォームで使用した変数の内容を、 Bというユーザーフォームで再び使用したいのですが どう記述すればいいのでしょうか? Aのユーザーフォームを閉じると変数は初期化されて0になってしまいます (AもBも同じフォームモジュール内に記述してあります)
>>605 思考能力がなければ無理です
>>606 ユーザーフォームを閉じても初期化されない変数を使用したらいいんじゃないのかなぁ
608 :
名無しさん@そうだ選挙にいこう :2006/08/03(木) 16:48:38
>>606 Public w_flg As String
↑みたいにPublicで変数を定義すればー
>605 作ってみたいのなら作ってみれ、止めやせん。 >606 public
611 :
名無しさん@そうだ選挙にいこう :2006/08/03(木) 19:05:05
わかんねーから質問するんだろ馬鹿が 回答しないなら書き込むな屑
>>611 >枠印つくれるソフト探してて
探してるくらいだから分かってるんじゃないのか???
分からないものを探す人はいないでしょ
分からないことなら別だけど・・・
613 :
名無しさん@そうだ選挙にいこう :2006/08/04(金) 06:07:19
【1 OSの種類 .】 Windows2000 【2 Excelのバージョン 】 Excel2000 印刷中に、用紙切れや部数間違いを想定して 印刷中断のコマンドをVBAで組みたいのですが できますでしょうか?
>>613 出来る。
しかし君の質問は「Excelの印刷制御」ではなく「プリンタドライバの制御」だな。
そしてプリンタドライバの制御はExcel関係ないから
>>2 ・7
印刷が終わるまでExcelからちょこちょことデータ送ってるわけではなく
プリンタドライバに一括してデータ渡したら、あとはプリンタドライバ側の仕事なので
その後の制御はExcelに限ったことではなく、画像印刷でもテキスト印刷でも同じという汎用的なもの。
615 :
613 :2006/08/04(金) 07:56:04
>614 そうですか。難しそうですね。 ありがとうございました。
616 :
名無しさん@そうだ選挙にいこう :2006/08/04(金) 08:44:49
>>610 枠印ってなに?
会社で使うような枠が付いてるゴム印みたいんとちがうん?
>>612 611は条件反射で書いちゃったんだろうな
>>615 ん?話分かってる?
プリンタ制御ソフトと組み合わせろってことだぞ
あなたはVBAが使えるみたいだし難しくもなんともない
一桁だけの数字は一桁目に0を追加して表示するように出来ますか? 例:72 2 67 8→72 02 67 08
620 :
名無しさん@そうだ選挙にいこう :2006/08/04(金) 10:01:35
619です。どうも、解決しました。
624 :
名無しさん@そうだ選挙にいこう :2006/08/04(金) 13:02:54
文字が中身をくり抜いたみたいな枠状に するにはどうすればいいですか
ワードアートでやれ
627 :
624 :2006/08/04(金) 13:24:55
わかりました さんきゅ
628 :
名無しさん@そうだ選挙にいこう :2006/08/04(金) 13:53:06
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 はい 印刷関係で質問です。 印刷範囲1:Sheet1のA1:J29 印刷範囲2:Sheet2のA1:F35 上の印刷条件で1枚の用紙に改頁しないで 印刷したいのですが方法はありますか? 図形貼付でやる方法は思いついたのですが この方法だと大きな範囲だと図形コピーでき なかたりしたので、別の方法があるならご教授 お願いします。
629 :
名無しさん@そうだ選挙にいこう :2006/08/04(金) 13:57:18
エクセルの資格で最もスタンダードなものは マイクロソフト オフィス スペシャリストのエクセル でしょうか?? 業務の7割でエクセルを使用する職場に異動になりました 自己啓発も兼ねて資格取得しようと思っています
630 :
名無しさん@そうだ選挙にいこう :2006/08/04(金) 16:48:04
Excelと直接関係ないけど OFFICEのボリュームライセンスのプロダクトkeyで何台でも インストできちゃうんだけど、MSはどうやって台数チェックしてるの? アクセスログ取って調べたけど、MS側にOFFICEがそのへんのデータ 送ってないみたいだしー 企業のモラルに任せてるだけ?
質問です・・・ あるセル内の文字列から、指定した文字列の個数を返す (例 : A1セルの文字列「あいうえおああいい」から、”あ”の個数を返す) という作業には、どういう関数を使えばいいのでしょうか。
調べ方を教えてもらえ
一つ一つ数える
VBA使っていいなら Sub testcount() Dim i As Long Dim c As Long For i = 1 To Len(Range("a1").Value) If Mid(Range("a1").Value, i, 1) = "あ" Then c = c + 1 End If Next i MsgBox c End Sub
>>631 =LEN(A1)-LEN(SUBSTITUTE(A1,"あ",""))
Excel2003 はXMLで保存できますけど 他のバージョンもXMLで保存できますか? 2003で保存したXMLファイルを、それ以前のExcelで開いて操作できますか?
639 :
637 :2006/08/04(金) 23:33:50
>>638 xmlスプレッドシートとxmlデータがあるんですね
xmlスプレッドシートで保存しても、以前のバージョンでは
XML Schemaがないと駄目なんですね?
xmlスプレッドシートのXML Schemaがあれば以前のバージョンでも
使えるようになるんでしょうか?
XMLは単純なテキストファイルだから どうにでもなる 開くときにVBAで整形すればOK
前はバージョンが違うと 互換性は低かったよな 今は楽になっていい時代だよな
642 :
名無しさん@そうだ選挙にいこう :2006/08/05(土) 13:22:48
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 officeXP 【3 VBAが使えるか .】 いいえ(勉強中) 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 教えてもらいたい 初心者です。 : = "" は、どういうときに使うのか? Worksheets.Add After:=Worksheets("Sheet3") Rnge("B4").Value="月" 上記のような場合、:をつけたり、つけなかったりする。 どういう場合につけて、どういう場合につけないのかがわからないのです。 ("B4:B10")この場合は、B4からB10の「から」という意味だと理解しています。 ""も、中に入るのは文字とか、選択する箇所とか、のようですが、 「どういったもの」という明確さが、いまいち理解できていません。 検索も、エクセル : コロン 意味 などでやってみましたが ダメでした。どのような言葉で検索していいかもわかりません。 説明が細かくなりそうでしたら、記載されているURLでもいいので 教えてください。そのサイトをじっくり読んでみます。 よろしくお願いします。
643 :
名無しさん@そうだ選挙にいこう :2006/08/05(土) 14:14:33
EXCELってへんじゃね? 文章を修正したい時にわざわざマウスを修正したいセルに持っていって ダブルクリックしないといけないってへんじゃね? キーボードだけで修正できるようにしろよ
>>643 変とか言う前に自分の頭の少なさを自覚しろ
つ[F2]
>>642 「名前付き引数」だとかいった類のものだな
EXCELをPowerPointみたいに使うことはできるでしょうか。 自作PCでOSはWindowsXPで、OFFICE2003を使っています。
>>642 その辺の仕様はVisual Basic言語と共通です。
そのためVBAに限って構文規則を説明している本やサイトは少ないですが
VBの構文については多くの入門サイトで解説されてるので
VB言語の構文規則について一から勉強してください。
VBの解説サイトについてはスレ違いなので具体的な紹介は控えます。
>>646 VBA使いこなせれば可能。
使いこなせなければ不可能。
液晶の解像度VGAでEXCELって厳しいでしょうか? ちょっと古いですが小さいノートパソコンでEXCELを使おうと思っています。 OFFICEは最初から入っているやつで98あたりだったと思います。
649 :
名無しさん@そうだ選挙にいこう :2006/08/05(土) 20:57:00
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 はい(中級くらいです) 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 ×ボタンを無効 Excelのタイトルバーについている×ボタンを無効にしたいです。 消せなくても×をグレーにできればいいです。 Win32APIっていうのを使うサンプルコードをつかってみたのですが エラーがでて動きませんでした。1氏のテンプレにExcelで出来ない ことに書いてないのでできると思います。ご教授お願いします。
>>648 一概には言えないと思うよ
何の目的に使用するのかによって変わるんでないの?
>>649 無効でいいなら
Private Sub UserForm_QueryClose
Cancel = True
End Sub
>>651 Excel自体の×ボタンの事じゃないの?
>>649 > Win32APIっていうのを使うサンプルコードをつかってみたのですが
> エラーがでて動きませんでした。
>>2 ・8
> 1氏のテンプレにExcelで出来ない
> ことに書いてないのでできると思います。
出来るのは確かだが、
>>14-15 に書いてないってのは根拠にならん。
あれは出来ないことの中でも超既出のものの一部で
そこに載ってなくても、他にも出来ないことなど腐るほどある。
>>648 10年前ならともかく
今じゃきついとおもう
>>649 >1氏のテンプレにExcelで出来ないことに書いてないのでできると思います。
質問内容は651のやりかたで出来るけど
テンプレに書いてなくても出来ないこともあるから
こういう判断はやめてほしい
けんか売ってるようにも見えるし・・・
>>649 「Win32API 閉じる ボタン 無効」でググったら答えはいっぱい出てきたよ。
Workbook_BeforeClose イベントを使うのではなく、ExcelVBAでWin32APIを
使って「×」ボタンを消す方法も使用不可にする方法もあったよ。
ところで、動かなかったWin32APIは何をどのように使ったの? で、動かないって
どのように動かなかったの?エラーになるとか、何も起こらないとか。そこらへんが
わからないと答えようがないかも。
>>657 う〜んと、
>>649 のような馬鹿を甘やかすのは良くないと思うよ〜。
「どのように動かなかったの?エラーになるとか、何も起こらないとか」
は質問するなら、最初に書いてしかるべきもんでしょーが。
>>648 '95年頃だとまだノートPCの解像度ってVGAが多かったから、当時そのくらいのノートPCで
Excel使ってたよ。OSはWin95で、Officeは95とか97とかね。CPUはPentium75MHzが
積んであったかなw
ちなみにWord98ってのはあるけどExcel98ってのはないです。
660 :
657 :2006/08/06(日) 00:21:40
>>658 たしかに 658氏の言うとおりかもしれませんね。放置しときますかw
> Excel98ってのはないです。 ありますよ。Mac版のみですが。 WordはWin版/Mac版共に98があります。 そしてWin版Office97にはWord97をパッケージした物と Word98をパッケージした物があります。
662 :
名無しさん@そうだ選挙にいこう :2006/08/06(日) 03:01:23
【1 OSの種類】 WindowsXP 【2 Excelのバージョン】 Excel2002 【3 VBAが使えるか】 はい 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 タイトルバーアイコンを無効 タイトルバー関係でもめてますなー。ついでに教えてください。 Excelを起動したときタイトルバーの左端にExcelマークがついてますが、 これを非表示にするのは、どういうVBAを書いたらいいですか? このアイコンを無効にできたら649のような馬鹿がやりたいこともできると思うが。
同じ馬鹿が何上から見た気になってんだwwwはらいてえwwwww API使え馬鹿www
【1 OSの種類 .】 WindowsXPProSP2 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 少し 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 シート見出し コメント シート見出しにコメントを付けるには? シート選択時にステータスバーへの表示でも可。
45789 98715 32658 12498 ↓ 2 1 3 3 このように各セル内に書かれた5つの数字の中にある 偶数の数を返す処理って出来ますか?
>>665 5桁固定だったら配列数式で各桁ごとに2で割り切れるかどうかを計算して
奇数の数を出してから、5から引く感じでいけるんじゃない?
A1に数字あったら
=5-SUM(MOD(INT(A1/10^{0,1,2,3,4}),2))
と入力して[ctrl]+[shift]+[enter]
>>664 ThisWorkbookのSheetActivateイベント使うと楽かな?
'シートが切り替わるごとに発生するイベント
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
Dim statusMessage As String
Select Case Sh.Index 'シートのインデックス番号でアクティブなシートを判断
Case 1
statusMessage = "らめぇ"
Case 2
statusMessage = "ひぎぃ"
Case Else
statusMessage = "後のチンギスハンである"
End Select
Application.StatusBar = statusMessage
End Sub
669 :
649 :2006/08/06(日) 13:12:12
668氏 ありがとうございます。×ボタンを無効に出来ました。 相談してよかったです。。。 651氏 Excelです。ご教授ありがとうございます。 656氏 早とちりしてすいません。 657氏 何も起きませんでした。詳しく書かなくてすいません。 662氏 馬鹿ですいません。 663氏 Excel総合相談所に質問した662氏を馬鹿にして答えられない663氏は?
1.XP HOME 2.2000 3.NO 4.YES 5.関数 一つのシートに日付、品物、個数を入力して それを品物別のシートに日付、個数をリンクさせるには どうしたらいぃでしょうか?
671 :
名無しさん@そうだ選挙にいこう :2006/08/06(日) 14:14:26
質問します ロータスで言う [データ] [埋め込み] って処理はどこに有るのでしょうか? 1日〜31日の様に連番を自動的に書く機能です
672 :
名無しさん@そうだ選挙にいこう :2006/08/06(日) 16:17:58
【1 OSの種類 .】 Windows2000
【2 Excelのバージョン 】 Excel97
【3 VBAが使えるか .】 はい
【4 VBAでの回答の可否】 可
【5 検索キーワード 】 Excel 関数 数値 参照
この図にあるように
↓
ttp://up.sussiweb.com/up3/img/4303.jpg C2に入力されている数値”4”を使って、
MIN(A1:A4)の結果が表示されるようにしたいのですが、
どうすれば良いのでしょうか?
スレのFAQをみてINDIRECTかなとも思ったのですが
=MIN(A1:A&INDIRECT($A$4))
とかやってみてもうまくいきません。
よろしくお願いいたします
673 :
名無しさん@そうだ選挙にいこう :2006/08/06(日) 16:32:45
=MIN(A1:INDIRECT("A"&$C$2))
674 :
672 :2006/08/06(日) 16:34:25
>>673 うおおおおおおおおおお
ありがとうございますううぅ
675 :
名無しさん@そうだ選挙にいこう :2006/08/06(日) 16:37:13
>>670 =VLOOKUP
=HLOOKUP
=LOOKUP
=INDEX
・・・・・・・・・・・・・etc.
他の人が作ったファイルなんですが 文字列のセルに対して、+とか−をしてもエラーになっていません。 でも、rightとかleftの文字列関数も使えなくなっています。 どんな設定をしているんでしょうか?
677 :
672 :2006/08/06(日) 17:09:09
再度すみません。
>>673 さんから教えて頂いた
=MIN(A1:INDIRECT("A"&$C$2))
をフィル ハンドルを引張って下にだーっとコピーしたいのですが、
$C$2の部分が固定になってしまうのですね。
これはどうすればいいのでしょうか今現在も調べてますがわかりません
よろしくお願いいたします。
>>676 可能性が4つあるのでそのブックをうpしてね。
あ、タダで教えて貰おうって立場なんだから4つの可能性
全部解説しろなんて贅沢は言わないように。
>>677 行の絶対参照外せばいいだけじゃん。
679 :
672 :2006/08/06(日) 17:22:54
>>678 絶対参照と相対参照をわかっていませんでした。
$外してもだいじょぶだったんですね。
ありがとうございました
680 :
名無しさん@そうだ選挙にいこう :2006/08/06(日) 17:23:55
>>677 =MIN(A1:INDIRECT("A"&C2))
絶対参照と相対参照
$C2:Cが固定される
C$2:2が固定される
681 :
名無しさん@そうだ選挙にいこう :2006/08/06(日) 17:24:57
右上の×ボタンが無い
>>676 他の人が使ってるエクセルのバージョンと
保存ファイル形式
あなたが使ってるエクセルのバージョンも書こうね
684 :
名無しさん@そうだ選挙にいこう :2006/08/06(日) 21:32:08
三角グラフの書き方を教えてください。
>>684 3軸から2軸にそれっぽく座標変換して表示する
687 :
684 :2006/08/06(日) 22:12:38
>>687 通常、三角グラフだと2つ値が決まれば残りの値も決まるから どの2つ値を使うか決めて、
正三角形でなくてもいいなら、散布図やその他の方法でそのままの値でプロットすればいいし
正三角形がいいならそうなるように元の値から新しい値を計算すればいい
応用力のない子が増えてきたね
【1 OSの種類 .】 Windows xp 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 ちょっと 【4 VBAでの回答の可否】 可(ぜひ) 1 肉 破棄 2 野菜 機械ミス 3 肉 機械ミス 4 菓子 人的ミス1 5 野菜 破棄 とうデータがあり、機械ミスは肉が何件、野菜は何件というふうに データを作成したいのですが、一応 i = 1 j = 1 do while cells(i,"B") <> "" if cells(i,"B") = "破棄" then cells(i,"A").value = a1 a1 = range(cells(j,"D"),cells(j,"D")).value j = j + 1 elseif 以下ifの条件を変更して続く。 endif i = i + 1 loop この後でまたApplication.WorksheetFunctionを使ってcountifをE列に貼り付けて種類をカウントさせた後にダブり排除するVBAを 作成したのですが、条件分岐が20ほどあり、VBAが煩雑になってしまいました。そこで質問なのですが、一旦振り分けた後にカウントさせる という2度手間ではなく、もっとすっきりと記述する方法はありますでしょうか?
結果表が下記の様に予め用意されているなら 肉 野菜 菓子 破棄 機械ミス 人的ミス1 データにオートフィルターかけて B列に表の縦の項目・・・ A列の表の横の項目をカウントして表に数字を埋めてけばいいんでないの? (あるいはデータのA列B列の項目の重複データを削除したデータで処理する) あと情報が省略されているとVBAでの回答は難しいかも ↓? cells(i,"A").value = a1 a1 = range(cells(j,"D"),cells(j,"D")).value ←無駄な表現?
692 :
名無しさん@そうだ選挙にいこう :2006/08/07(月) 09:43:36
【1 OSの種類 .】 WindowsXP SP2 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 ノートパソコンでエクセル使用中、不注意からバッテリー残量が無くなり電源が落ちました。 その後、ファイル側からの起動(マイドキュメントやデスクトップに置いてあるファイル)ができなくなりました。 エクセルを起動後に、「開く」からファイルを指定すると問題なく開けます。 この状態は元のように、ファイル側から開くことは可能でしょうか?
>>692 [ツール]-[オプション]-[全般]で[他のアプリケーションを無視する]のチェック外す
>690 配列とSelect Case
仕事で、一度送ったアドレスには送らないというさぎょうをしているのですが、これをことをEXCELでしたいです。
たとえば
[email protected] に送信して一ヵ月後に
[email protected] が現れた場合送らないといったことです。
アイデアとして、送る前にアドレスをEXCELに張り付け送信前にそのアドレスを登録し、以前にそのアドレスがあったなら「重複」と知らせてくれるような簡易データベースを作りたいです。
このばあい、どのようにすればよいでしょうか?
VBAではなく関数のみでやりたいです。
>>695 フラグたてて、既に送ったかまだ送ってないか判断。
それくらいしか思いつかん。
というか、SPAMツールでもつくるんか?
>>695 VBA無しですか、大変ですね。
MATCHなどの検索系関数で以前に登録したデータと重複してないかチェック
重複してなければ登録
>>695 単に送ったか送ってないかの判断だけなら、検索関数で一発。
但しVBA無しでやるからには、メール送るたびに逐一送り先アドレスを
シートに入力していかなければならないし、チェックするにも
いちいちチェック用のセルにアドレスを入力しなきゃならない。
具体的にはA列に送信済みアドレス入力していって、
B列に確認したいアドレスを入力、C列に=IF(COUNTIF(A:A,B1),"重複","")
それが面倒ならVBA使えばいいし、面倒でもVBA使いたくないなら
頑張ればいい。その辺は君の自由だ。
699 :
名無しさん@そうだ選挙にいこう :2006/08/07(月) 15:50:52
データ入力の補助及び後の確認作業のため、VBAのフォーム を作成し、データを入力しています。 その中に数値を入力・表示するテキストボックスがあるのですが、ここに 数値を入力した場合、テキストボックス上での表示形式変更は可能でしょうか? できないはずはないと思い色々試したのですが、うまくいきません。 NumberFormatをどこにどういう風に指定すれば良いのでしょうか? (ちなみに形式は#,##0のように、カンマで区切る数値にしたいのです) どなたかご教授お願い致します。
>>695 数行のVBAでできるからチャレンジしてごらんよ
>>699 Private Sub TextBox1_AfterUpdate()
TextBox1.Value = Format(TextBox1.Value, "#,##0")
End Sub
702 :
699 :2006/08/07(月) 18:27:33
何度もすみません。もう少し詳しく記入します。 データを入力しているシートは、縦に個別番号が50行程、横に項目毎100列程のものです。 そのうち手入力が必要な部分のみを個別番号毎に表示・入力できるようにしたくて、フォーム に表示させる事としました。 個別番号の切り替えは、スクロールバーで行います。 では以下、フォームのコードを一部記載します。 Private Sub Scrollbar1_change() 'テキストボックスの参照位置指定 TextBox2.ControlSource = Range("c5").CurrentRegion.Cells(ScrollBar1.Value, 5).Address TextBox3.ControlSource = Range("c5").CurrentRegion.Cells(ScrollBar1.Value, 6).Address 〜繰り返しにつき一部略〜 '号数表示に関する指定です。 Label1.ControlSource = Range("c5").CurrentRegion.Cells(ScrollBar1.Value, 1).Address End Sub Private Sub UserForm_initialize() 'スクロールの範囲です。行数を指定します。 ScrollBar1.Min = 5 ScrollBar1.Max = 108 End Sub
703 :
699 :2006/08/07(月) 18:28:06
以上、大まかな記載内容です。
その他は、コンボボックスを使用しているくらいです。
そこで!なのですが、フォーム中のこれらテキストボックスの中に、
数値を入力・表示するものがあります。
もともとのシート上ではカンマ区切りの数値として表示形式を指定しているのですが、
テキストボックス上ではカンマ無しで表示されます。
これを、できればカンマつきで表示させたくて、そしてできなくて困っています。
どうすればよいか、ご教授お願い致します。
>>701 すみません、できませんでした。
といいますか、私の説明不足でした。申し訳ないです。
連結コントロールを使用した場合 セルのデータの[数式バー]に表示される内容が、コントロールの Value プロパティに反映されねぇ? 従って、以下のように指定した場合に数値の書式が反映されねぇ? > TextBox2.ControlSource = Range("c5").CurrentRegion.Cells(ScrollBar1.Value, 5).Address 連結コントロールを使用せずに、Format 関数を使用するのでこんな感じかな Private Sub TextBox1_AfterUpdate() Range("C10").Value = TextBox1.Value End Sub Private Sub TextBox1_Change() TextBox1.Value = Format(TextBox1.Value, "#,##0") End Sub Private Sub UserForm_Initialize() あるいはScrollbar1_change TextBox1.Value = Format(Range("C10").Value, "#,##0") End Sub Range("C10").Value は Range("c5").CurrentRegion.Cells(ScrollBar1.Value, 5).Value とかに差し替えてくり 自分は連結せずに組むので、他に指定方法があるかも・・
違った セルのデータの[数式バー]に表示される内容が、コントロールの Value プロパティに反映される。 です
すみませんが、宜しくお願いします。 フォームを呼び出すコードを標準モジュールに書いたのですが、 「実行時エラー'424':オブジェクトが必要です」 とか言われて実行できません。 呼び出したいフォーム hogeform はVBE上で単独で実行できるのですが、 ショートカットキーで呼び出したいのです。 標準モジュールでは以下のように記述していますが、何が問題なのでしょうか? Sub 設定() Load hogeform hogeform.Show Unload hogeform End Sub
hogeform ←タイプミスでないかい?(名前が違う)
708 :
706 :2006/08/08(火) 07:14:18
>>707 レスサンクス。
いいえ。名前は間違っていませんが、load hogeformでエラーが出ます。
勿論、標準モジュールとフォームは同一のワークブック上にあります。
Load hoge まで入力してCtrl+スペース で選択してみたら?
710 :
699 :2006/08/08(火) 11:17:22
>>704 おかげ様で完成しました。
TextBox1.Value = Format(TextBox1.Value, "#,##0")
↑これがうまく記述できていなかったみたいです。
返事が遅くなりすみません。
せっかくなので・・・
>>706 設定という名のマクロを作成し、
Sub 設定()
hogeform.show
End sub
と記載し、あとはフォームを表示させたいシートにボタンやワードアートを作成して、そこにそのマクロを登録する
さらにフォームにコマンドボタンを追加する(プロパティのCaptionに”閉じる”等記述してみる)
で、
Private Sub CommandButton1_Click()
Unload hogeform
End Sub
自分はよくこうするんだけど、こんなんじゃだめでしょうか?
711 :
名無しさん@そうだ選挙にいこう :2006/08/08(火) 11:20:38
【1 OSの種類 .】 Windowsxp 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 hai 【4 VBAでの回答の可否】 ka 【5 検索キーワード 】 列幅 印刷 自動調整 列幅のタイトルの境界をダブルクリックすると、 列幅が自動的に調整されますよね。 でも、印刷すると、この「自動調整」が結構役に立ってないと思います。 具体的には、列幅を狭くしすぎてしまったのか、 その列の文字の最後の一桁とかが、 印刷時に印刷してもらえません そこで、 列に記載されている数値等が末尾まできちんと印刷されるように、 列幅を自動的に調節するにはどうすればよいのでしょうか。 (勿論、手動で列幅ダイアログに数値を入力したり、マウスDDで手動で 調節すればいいのでしょうけれども、できれば、「自動調整」の 機能で対処したく思います。) 宜しくお願いします。
標準の自動調整を使わずに、自分で自動調整機能を実装する。 APIを使ってセルの文字列、フォントの種類、サイズ、修飾などから 文字列の印刷幅を算出し、列内で最大の物に合わせる。 標準の自動調整で対応できるものなら、最初からやってるさ。
713 :
711 :2006/08/08(火) 11:29:12
>>712 ありがとう。
System.Image.Drawing2D.String
にそういえば、文字幅を取得する関数ありましたよね。
どうもありがとうございました。
714 :
名無しさん@そうだ選挙にいこう :2006/08/08(火) 11:32:30
【1 OSの種類 .】 Windowsxp 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 ちょと 【4 VBAでの回答の可否】 OK 【5 検索キーワード 】 枠 緑 コーナ 三角 △ ▲ ▼ セルに数字を書いて、あとで見直してみたら、 セルの左上に緑色の三角印が表示されるようになってしまいました。 これって、ちょっとなんかきになるので、 非表示にしたいのですけど、それらしき設定ダイアログを 未だ、見つけるにいたっておりません。 もしよろしければ、どこをどうすれば、 この、「セルの左上に表示されている緑色の三角を非表示にできるか」 教えていただけないでしょうか。 宜しくお願いします。
なんで解らないのか不思議。 緑三角の出るセルをアクティブにすると警告メニューが出て エラーの内容が表示されるだろ。 非表示にするには、エラーの内容に沿ってエラーが出ないように書き換えるか オプションのエラーチェックで、エラーがあっても無視するように設定するかだ。
716 :
714 :2006/08/08(火) 12:26:48
>>714 これだっけ?
[オプション]-[エラーチェック]-設定のチェックを外す
以前にソートで並びがおかしくなる原因として
書式設定が変えられてしまうようなので無効にしたような記憶がある。
718 :
714 :2006/08/08(火) 17:14:22
> [オプション]-[エラーチェック]-設定のチェックを外す 既に715が書いてるし > オプションのエラーチェックで、エラーがあっても無視するように設定する
720 :
714 :2006/08/08(火) 17:26:01
ちょっとにたようなことだが、とある値(人名)があってそれを検索すると、その値がなければ登録され、その値があれば「登録済み」と判るようにしたいです。 いったいどうすればいいでしょうか?
とある値を引数にmatchで探して、#N/Aなら登録、それ以外なら登録済み。
【1 OSの種類 .】 Windows2000 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 のー 【4 VBAでの回答の可否】 イエスー 【5 検索キーワード 】 コンボボックスで100 300 500 700のような数値を選択し 実際に使うと100なら1 300なら2とセルの数値が反映されず並びの順番の値がリンクしたセルに 張られちゃうんですよね 入力規則ではなくなんか上手いやり方ありませんかね
【1 OSの種類 】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか 】 × 【4 VBAでの回答の可否】 ○ 簡単な2-3ケタの足し算/引き算の計算問題を作りたいのですが、解が負にならないように ランダムな数字を自動入力することは可能でしょうか?
>>724 乱数値は2個?
そうなら、
引き算なら
単に10〜999の間で2個取り出して
大きいほうから 小さいほうを引けばいいじゃん
足し算の結果は4桁になって廃刊の蚊?
=10+INT(RAND()*1000) =INT(RAND()*RC[-1])+1
727 :
725 :2006/08/09(水) 03:14:59
一部間違い =10+INT(RAND()*990) =INT(RAND()*RC[-1])+1
728 :
721 :2006/08/09(水) 04:47:03
一日50回程度するわけですが、フォームを作ってやりたいです。 なにかいいあいでぁないでしょうか?
>>728 あなたは
>>695 さんですか?
そうだとしたら、レスが付いているのに質問しっぱなしで放置ですか?
経過の説明もなしに更に質問されても無意味になってしまうと思いますよ。
まず
>>1 テンプレを嫁
>>695 >>721 と合わせて内容を整理してから質問しなおしてください。
このログや過去ログに答えがあるような気もしますが、
応用力が無いと検索しても理解できない場合もあるので、
質問することは構わないです。
730 :
721 :2006/08/09(水) 05:57:43
すいません、詳しく書きます。 【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 可(できれば関数で) 【5 検索キーワード 】 EXCEL 検索 登録 簡単なデータベース作成したいです。 例えば、、とあるユーザーの一回目の行動。A1に「千代田区千代田1−1」といれるとA2にそれが登録されます。 2回目の行動。A1に「新宿区歌舞伎町1−3」といれると、A1〜A1000にそのデータがないので「新宿区歌舞伎町1−3」はA2に登録され、A1にあった「千代田区千代田1−1」はA3にずれます。 3回目の行動。いつものようにA1に「千代田区千代田1−1」といれました。するとA1〜A1000を検索し、このデータはすでにあるので何らかの方法で「重複だよ」と教えてくれました。 このようなデータベースを作りたいのですが、どんな方法でやればいいのかさっぱりです。できれば関数のみで行いたいです。
>>723 それはフォームツールバーのコンボボックスの挙動だね。
こいつは手軽に使えるようにしてある代わりに融通が利かないので、偽物のコンボボックスではなく
本物のコンボボックスであるコントロールツールバーのコンボボックスを使え。
こっちは基本的にVBAで操作するものだが、君がやりたいことくらいならコードを一切書かずに
プロパティ設定だけでいけるから。
>>721 ,728
@入力した値を変数に格納
A適当な重複チェックアルゴリズムやワークシート関数で重複判断
B重複していれば、ラベルとかメッセージボックスに重複ありと表示し
重複していなければ、データ列の末尾に入力値を代入。
これで問題ないでしょ。
ちなみにVBAコード書けないとは書いてないし、「フォーム(ユーザーフォーム)でやりたい」という発言からも
VBA使えるものと判断されるので、具体的なコードは書かない。
>>1 ★4
日本語で回答してやれよ
733 :
721 :2006/08/09(水) 06:11:25
>>733 >>721 には書いてませんよ。
>>730 で後出ししてるね。何回も後出しするから、みんな、全部読む気にならないと思うよ。
もし騙りだったら、嫌われたもんだね。
>>730 みたいなことをやりたいんだったら、ExcelじゃなくてAccessを薦めるけどね。
ExcelでやろうとしたらVBA必須だし、作る手間が大きいのにできるようになることが小さい。
もし騙りだったら もし騙りだったら もし騙りだったら もし騙りだったら もし騙りだったら もし騙りだったら もし騙りだったら もし騙りだったら
お前がテンプレ嫁 みっともねえwww
>>730 VBA使わないと完全自動化は難しいけど、一案を
1.B1に「=IF(COUNTIF($A$2:$A$65536,$A$1),"ある","ない")」
2.A1に住所入れる。A2以降になければB1に「ない」と表示される
3.ない場合にはセルA1を選択して[挿入]-[セル]
→ツールバーのユーザー設定で挿入・セルボタンを付けておくと楽かもね
で、チェックはできる。ちょっと面倒だけどね
全自動ならVBA使うしかないかな
ここもID導入した方が良いんでない? pu
そうすりゃテンプレ読まないテンプレ厨も減るかもな
>>733 ここは後出し禁止だから、あとから書いても無視されるよ。
つまり君の質問は既に解決扱いで終了。
こういう扱いされるのが嫌なら、次から気を付けること。
こんなことになってるとは。
>>729 は私が書き込みしたのですが・・。
>>731 さんのレスは時間からみると
>>730 さんの書き込み前の状態のスレに対してと思われます。
なんか微妙なタイミングになってしまった様です。
その辺を了承してあげて下さい。
もう終わった質問だからどうでもいい
【1 OSの種類 .】 WindowsXPsp2 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 多少 【4 VBAでの回答の可否】 可 東京__100__2355 ______2.1___7300 大阪__135__7555 ______3.9___300 札幌__90___5500 ______1.1__26000 「 _ 」は、タブが掲示板ではうまく表示できない為のものです。 6列3行をあらわしています。 でソートをしたいのですが、そのキーが2.1、3.9、1.1で、 2行ずつの組で並べ替えしたいのです((100,2.1)、(135,3.9)、(90,1.1)という組)。 ですから希望の並びは、 札幌__90___5500 ______1.1__26000 東京__100__2355 ______2.1___7300 大阪__135__7555 ______3.9___300 となります。 これを出来ればマクロを使わず(マクロでも結構ですが)実現できますでしょうか。 よろしくお願いいたします。
2.1、3.9、1.1の上にセルの色と同じ色で 2.01、3.09、1.01みたいな値を入れとく
745 :
743 :2006/08/09(水) 12:43:01
>>744 早速のレスありがとうございます。
>2.1、3.9、1.1の上にセルの色と同じ色で
とありますが、それぞれその上のセルは100,135,90なので、
>2.01、3.09、1.01みたいな値を入れとく
何かの値を入れることは出来ないと思うのです。。
勘違いしていたらすみません。
また表の示し方が悪くてすみません。
>>743 6列3行じゃなくて6行3列だろ。
東京がA1だとすると、D1に「=B2」、D2に「=B2」を入れて
2セル選択した状態で下方にフィルコピー。
あとはD列をキーにソートすればお望みの結果になる。
作業列を使いたくなければVBA必須。
>>744 Excelシートの並び替えは安定ソートアルゴリズムだから
2.1に対して2.01のように値を変えてやる必要は無い。
それに、やるなら値が小数第一位までとして、2.01、3.09、1.01ではなく2.01、3.81、1.01だろ。
3.9に対して3.09じゃ、間に3.1、3.2、3.3〜3.7、3.8が割り込まれてしまう。
>>745 きっと744は6列という言葉と表のズレで、
東京と100の間に1つ空セルがあると思ったのだと思われ。
その空セルに値を入れろって意味なんだろうな。
747 :
743 :2006/08/09(水) 13:13:41
>>746 >>746 >
>>743 > 6列3行じゃなくて6行3列だろ。
間違ってしまいました。すみません!
> 東京がA1だとすると、D1に「=B2」、D2に「=B2」を入れて
> 2セル選択した状態で下方にフィルコピー。
> あとはD列をキーにソートすればお望みの結果になる。
出来ました!ありがとうございます
>
>>745 > きっと744は6列という言葉と表のズレで、
> 東京と100の間に1つ空セルがあると思ったのだと思われ。
> その空セルに値を入れろって意味なんだろうな。
ほんとうにすみませんでした。
748 :
724 :2006/08/09(水) 15:06:11
【1 OSの種類 .】 WindowsXP SP2 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 Excel 文字色 教えていただきたいことがあります =IF(C7=F7,"同",IF(C7>F7,"陰","陽")) の関数を使って条件によって 同、陰、陽の表示だけでなく 同=青、陽=赤、陰=黒 と言ったように 色もつけたいと思っています 一応 =IF(C7=F7,"同",IF(C7>F7,"陰","陽")) と 書式>条件付き書式で色分けはできたのですが 汎用性があるように関数の中に色設定をしたりできないものでしょうか? ユーザー定義で [青]"同";[赤]"陽";[黒]"陰" としてみたのですがうまく設定できていないようで・・・・ 初心者の質問で申し訳ないのですが 教えていただけ無いでしょうか?
【1 OSの種類 .】 Windows2000 【2 Excelのバージョン 】 Excel97 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 excel VBA 複数の条件分岐 if and or すいません VBAのマクロのIF文で こういう複数の条件分岐を組み合わせた記述は有効でしょうか? If Cells(gyo, 1) = Cells(gyo - 1, 1) And (Cells(gyo, 9) <= Cells(idx1 - 1, 29) + 10 Or Cells(gyo, 9) = 0) And Cells(gyo, 10) <> 1 Then 真中のORとか最後のANDの判定がおかしくなることとか 起こり得るでしょうか? よろしくお願いいたします
>>749 表示形式でやるなら正の数値、不の数値、零の数値を入れて
>>750 文法上問題がなければ複数の条件を組み合わせても書いた通りに動きます
が、VBAに絶対バグが無いとも言い切れないので「起こり得ます」と言う回答しかできない
752 :
750 :2006/08/09(水) 23:11:24
>>751 うーんなるほど。ありがとうございます。
しかし並列して表記してると順序とか括弧でくくった通りでちゃんとやって
くれてるのか不安になりますね (^^;
しかも一行が長くなって観づらくなりますね
VBAの条件分岐は改行できないのですよね?
こういう場合はケース文とかを使うのが一般的なのでしょうか・・・
>>752 行の終わりを_にして改行できる
If a < b _
And c < d _
Then
顔文字使う人は なんで失礼な人が多いんだろう?
Excel2003で 計算するとき最初に「=」をいれないと計算してくれないのですが、 これを省略できるような設定はできますか?
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 特定の書式だけのセルの合計を出すことは出来ますでしょうか? 例えば黄色に塗りつぶしたセルだけの合計をだすとか・・ 赤色のフォントのセルだけの合計とか 宜しくお願いします。
>>752 すばらしい手法を考えてる時間があるなら
多少不格好でも現実的な手法のほうが合理的
根拠のなく不安とか言ってるようだしさ・・・
758 :
名無しさん@そうだ選挙にいこう :2006/08/10(木) 00:51:42
>>750 論理演算子の優先度って知ってる?
知らないなら一度調べてみな。
>>755 設定は無いけど、方法はある。
つ VBA
>>756 >>15 ・ 表示形式以外の書式の取得設定、書式情報を条件とする数式 (ユーザー定義関数)
ワークシート関数では、書式を拾ったり、書式を条件とする式を書いたりは出来ない。
VBAでそのままやるか、VBAでユーザー定義関数作ってそれを使うしか無いな。
761 :
750 :2006/08/10(木) 12:40:49
>>753 (」゚ロ゚)」オオオオオッッッ ありがとうございます
>>754 私のことですか?><
どういう部分が失礼に感じられたのでしょうか。教えてください
【1 OSの種類 .】 Windows XP Pro 【2 Excelのバージョン 】 Excel 2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 エクセル セル内 写真 挿入 エクセル セル内 画像 挿入 一つのセルに、一つのJPG(他の画像フォーマットでも可)を挿入することができるのでしょうか? その隣のセルに商品名を書き、Lookup関数を用いて、画像をその商品名で検索したいと考えています。
763 :
名無しさん@そうだ選挙にいこう :2006/08/10(木) 20:38:37
>>763 どうやって挿入するのか教えてください。
挿入は普通に 検索はVBA使えば出来る 否ってかいてるからやり方は省略
>>765 普通にやっているつもりなのですが
セルの入らず、ワークシートっていうか
府儒数のセルの上に乗ってしまうのですが
要するに出来ないということですね。
771 :
名無しさん@そうだ選挙にいこう :2006/08/10(木) 22:55:55
>>770 よく分からないので詳しく教えてください!!
762ではありません。 同じような質問があります。お願いします。 【1 OSの種類 .】 Windows XP Pro 【2 Excelのバージョン 】 Excel 2003 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 エクセル セル 写真 挿入 エクセル セル 画像 挿入 一つのセルに、一つのJPG(他の画像フォーマットでも可)を挿入することができるのでしょうか? その隣のセルに商品名を書き、Lookup関数を用いて、画像をその商品名で検索したいと考えています。
出来ない 無理 不可能
お前に聞いてねえよwww 精神異常者は何でも自分に話しかけられてると 思うってのは本当だなwwww
774みたいのが出てくると夏本番だなぁと実感する w
ほんとだね。
2007だとセルに画像表示しても軽くていいね サイズによるんだろうけど以前は5000枚超えると重くて使い物にならんかった
厨回避にはトリップしてね
779 :
名無しさん@そうだ選挙にいこう :2006/08/11(金) 04:51:47
>>772 ActiveSheet.Pictures.Insert("C:\マイドキュメント\" & Range("A2").Value).Select
というところまではできた。あとは任せる
VB2005持ってるのですがVB初心者です(VBAは最近覚えた)。VBでモーダルな ダイアログを出すようなDLLを作って、エクセル上のVBAから呼び出したいと 思いますが、VBでDLLを作るのに参考になるようなサイトとか本はありませんか? ググってもコレ、というサイトがすぐに見つかりませんでしたので。 宜しくお願いします。
781 :
名無しさん@そうだ選挙にいこう :2006/08/11(金) 07:59:15
>762 セルの中に入力データのように画像を入れたいって事か! そりゃ無理だ セルサイズと画像サイズを調整してレイアウトするしかないな 貼り付けた画像の検索は「図のリンク貼り付け」を利用すれば VBAを使わなくても簡単に出来るよ。
782 :
名無しさん@そうだ選挙にいこう :2006/08/11(金) 08:17:21
>>781 いくら厨相手でも嘘はよくない
リンク貼り付けのアドレス変更は手かVBAで直すしかない
1年365日毎日つけているデータを グラフウィザードを利用して 表示させようとしたところ データが細かすぎてみにくいのですが、 1週間単位、1月単位で グラフを書きたい場合はどうすればいいでしょうか? 日付 データ 8/10 100 8/11 120 こんな感じのデータを線形グラフにしようとしました。
>>785 1月単位だったらピボットテーブルでグループ化の単位を「月」にすれば簡単かな
10日単位だと自分で別の個所に集計してからじゃないと無理かな
取違科だね
【1 OSの種類 .】 WindowsXP SP2 【2 Excelのバージョン 】 Excel2002 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 オートフィルタ 項目 並び替えOR並べ替えORソート オートフィルタで項目を指定する際にプルダウンするメニュー、 ここの表示順を元データを加工することなく並び替える事はできますか? つまり A のようになっているリストを B のようにしたいのです。 よろしくお願いします。 A [ Country ▼]| |(すべて) .| |(トップテン...) .| |(オプション...) | |Australia | |Germany | |Japan .| |United States | . ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ B [ Country ▼]| |(すべて) .| |(トップテン...) .| |(オプション...) | |Japan .| |Australia | |Germany | |United States | . ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
>>789 無理だろ。
意味ないし(一部の人間にとって意味あるのはわかるよ)フィルタ生成処理を重くするだけだ。
バージョンアップで対応してくれるのを期待するしかないんジャマイカ。
そういう細かい要求出す客には、Accessとの組み合わせを薦めるけどね。
即レスありがとうございます。そうですか、無理ですか・・・ アクセス使用も検討してみます、どうもありがとうございました。
792 :
名無しさん@そうだ選挙にいこう :2006/08/12(土) 11:24:46
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 ユーザーフォームのテキストボックスの余白や行間の幅は設定できないんでしょうか?
>>790 Access使うんだったら、Japan などの表示文字列のほかに、配列用の隠し列を使うのがポイントだよ。
先頭に持ってきたい文字列だけ 0, 1 をふって、他は Australia などとそのままふって、辞書順に並べ替える。
>>792 できない。
そういうことしたければ、RTFコントロールとかカスタムフォームとかを探してくるのがいいと思う。
794 :
792 :2006/08/12(土) 13:55:50
win2000 & excel2000を使ってます。 ユーザー定義書式を使って、小数点以下がある場合にその小数を%で表示したいのですが、 入力値 -> 表示 45 -> 45 00% 45.0 -> 45 00% 45.5 -> 45 50% 上手いやり方ありませんでしょうか?
>>795 私たちはサポセンではないので
下手なやり方しか思いつきません
サポセンに電話してください
>>795 0. 00"%"
これで
45. 00%
45. 00%
45. 50%
という表示になる。(小数点は消せないが、Pフォントならさほど気にならないだろう。)
小数点をどうしても表示させたくなければ、表示を2セルに分けるか、VBAでユーザー定義書式を作る。
798 :
所長係長 :2006/08/12(土) 16:34:23
すみません。「エクセル」か「三四郎」で「同じものの合計」を計算するやり方教えてください。例えばロト6の当選番号なんかで 第1回の当選番号 1 5 10 20 25 30 第2回の当選番号 2 5 18 20 26 33 第3回の当選番号 1 3 7 10 20 35 となったとき,この合計3回の当選番号で1は何回出たか?2は何回か?3は・・・という感じです。どなたかお願いします。
CountIf
801 :
名無しさん@そうだ選挙にいこう :2006/08/12(土) 18:55:49
802 :
名無しさん@そうだ選挙にいこう :2006/08/12(土) 19:48:31
株価のグラフに5日移動平均というものがあるんですけど、 例えばExcelのセルで A B 1 100円 2 120円 3 90円 4 110円 5 100円 6 80円 7 60円 8 120円 というものがあって、B欄にその5日移動平均を計算させたい とすればどういう計算式を入力すればいいのでしょうか? (A欄はその日の株価) ちなみにB5には「=(A1+A2+A3+A4+A5)÷5」 という計算式が入り、B6には「=(A2+A3+A4+A5+A6)÷5」 という計算式が入るのですが、単独ではそれぞれの欄に入る計算式 はわかるのですが、B5欄に一つ式を入力して、それを自動的にB6 以降の欄に計算式を自動的に入力させる方法がわかりません (本当は25日移動平均をグラフにしたいのですが、それをいちいち入力 していくわけにはいかないので…)
803 :
名無しさん@そうだ選挙にいこう :2006/08/12(土) 20:45:25
【1 OSの種類】 WindowsXP 【2 Excelのバージョン】Excel2000 【 VBAでの回答 】 可 COMアドインでDLL作ったのですが、使い方がわかりません。 DLLにモジュールでメッセージボックスを表示する「hyouji」というコードを 書いたのですが、どうすればエクセルの別のブックから「hyouji」を呼べるので しょうか? DLL作っただけです。設定とかも教えてください。よろしくお願いします。
804 :
名無しさん@そうだ選挙にいこう :2006/08/12(土) 21:07:03
「アイドルなんかなりたくなかったし」 「中学のときにアイドルやってて、その時握手会(笑)っていうのがあって、 なんかブサイクな40代のおっさんと握手しないといけなくて、すっごい嫌だった(笑)」 「ああいうキモイ人見てると、彼女作ればいいのにって思ってた(笑) できないから中学生の女に金払って手を握ってもらうんだろうけど(爆)」 「でもさ、手を握るまでしかできないんだな、この人たちって思うと、逆にすごい哀れに見えて(笑) そう思えるなんて私もひとつ成長できたかなって思ったんです」
>>802 単純にその計算式を下にコピーしていけばいいだけでは?
806 :
802 :2006/08/12(土) 22:57:31
自己解決しました ツール−分析に「移動平均」がありますね
807 :
名無しさん@そうだ選挙にいこう :2006/08/12(土) 23:55:09
【1 OSの種類 .】 Windows XP 【2 Excelのバージョン 】 Excel 2000 SP1 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 他の人にExcelファイルを配布するときに、 マクロが正しく動作しなくなるような 操作を制限したいです。 1.クイック起動の「デスクトップの表示」をExcelで 制御することは可能ですか? (可能な場合は方法をヒントでもいいので教えてください。) 2.Shiftキーやファンクションキーを無効にするには どうすればいいですか? →Shift押しっぱなしで処理をはしらせると マクロが停止してしまいます。 (他のファイルを開くOpen命令のときに「マクロを無効にする」で ブックをひらいてしまってるようです。) いろいろ検索してみたのですがこれだっていうものが見つかりません。 ご教授お願い致します。
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2002 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 ある行に書いた数式を、その下の行にも同様にコピーしたいです。 ドラッグして下にもっていくことでコピーすることはできるのですが、 この方法だと行数が多い場合非常にめんどくさいので、簡単にやる方法なにかないでしょうか? 最終行に####と適当に文字列を入力して、Ctrl+Shift+↓ で最終行までいくことを利用できるような気もしたのですが、うまくコピーがされません。 どなたか教えてくださいませ
>>807 マクロとシートを保護してマクロからシートの保護を制御
ハート様か?
811 :
名無しさん@そうだ選挙にいこう :2006/08/13(日) 00:40:03
【1 OSの種類 .】 Windows XP 【2 Excelのバージョン 】 Excel 2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 グラフの元のデータからデータ範囲を参照したいのですが・・・ データ範囲が複雑すぎるため表示できません。 と表示され、データ範囲のセルの参照ができません。 系列を見れば、どこの値からグラフを作成したかわかるのですが、 データ範囲でも表示させるにはどうしたらよいのでしょうか? ご存知の方、ご教示ください。
>>808 > 最終行に####と適当に文字列を入力して、Ctrl+Shift+↓
> で最終行までいくことを利用できるような気もしたのですが、うまくコピーがされません。
?何をしたいねん
>>808 場合によるけどセルの右下角をダブルクリックとか。
814 :
808 :2006/08/13(日) 01:52:30
>>812-813 ちょっと質問の仕方が悪かったようでごめんなさい
とりあえず
>>813 さんのやり方で、解決しました。ありがとうございます!
815 :
名無しさん@そうだ選挙にいこう :2006/08/13(日) 13:56:30
>>809 ありがとうございます。
試してみます!
OS…WindowsXP バージョン…Excel2003 いつしか、入力した数値が自動的に1/10化されるようになりました。1と入力すると0.1に変換されてしまいます。 ヘルプを使っても解決できなくて困っております。どなたか元に戻す方法を教えてください
818 :
816 :2006/08/13(日) 16:36:16
>>817 度々すみません
書式を見てもどこもおかしくないんです。表示形式はすべて標準です。
どこに数値を入力しても変換されてしまんですが、不可解な事に、小数点をいれると変換されないんです。
10と入力→1に自動変換されて表示
10.0と入力→変換されず、10と表示
情報不足で分からんが 書式、常駐ソフト、マクロあたりをちゃんと見直してみれ
Excelをちゃんと理解していれば情報なんて
>>816 で充分。
最低でも
>>818 の
> 10.0と入力→変換されず、10と表示
で確信を得られる。
>>816 ツール > オプション > 編集 > 小数点位置を固定する
のチェックを外す。
821 :
816 :2006/08/13(日) 16:52:12
>>819-820 どうもありがとうございました。解決しました。
簡単な操作で直せるんですね。勉強不足ですみませんでした
822 :
名無しさん@そうだ選挙にいこう :2006/08/13(日) 19:17:51
1000000分の1の数列の最小公約数(正数じゃないから最小公約数といわないかな)を求めたいのですが、どなたか方法を教えてください。
>>822 ゴメンナサイ、1000000分の1の数列というのは何でしょうか?
【1 OSの種類 .】 Windows XP 【2 Excelのバージョン 】 Excel 2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 可能 【5 検索キーワード 】 無知な初心者なのですが、どうか教えてください。 割引の値段を出す方法なのですが、 割引率(%)と定価税抜きもしくは税込の数字を入れるだけで 定価税込み・割引後の値段(税込金額も)・割引率と表示される 用にするのは可能でしょうか?
算数をちゃんと理解していれば充分
828 :
名無しさん@そうだ選挙にいこう :2006/08/14(月) 01:37:14
教本には普通に「メニューバーの[データ]-[XMLソース]の・・・」と載ってるのですが、 自分の環境では[データ]の中に[XMLソース]がありませんでした。 何か取り込まなければならなかったりするのでしょうか。 ちなみにexcel2003を使ってます。
>定価税抜きもしくは税込の数字を入れるだけ この辺りでエスパー機能を要求しなければ
>>826 計算の仕方が分からないの?
それならエクセルの質問じゃないね
計算とか算数、電卓あたりのスレに行ってね
計算式は分かるなら それを書いてくれればエクセルでのやり方を教えるよ
>無知な初心者なのですが、どうか教えてください。 初心者は免罪符にならない 検索キーワードは空だし・・・ こいつ何考えてるんだろう・・・
>>828 > 注 Professional Edition のみ、ユーザー定義のXML (Extensible Markup Language) スキーマおよび
> IRM (Information Rights Management) による、アクセス制限の設定に対応。
ってことで、PersonalとかStandardみたいに安いバージョンには付いてないようだな。
とりあえず君のPCにAccessが入ってなかったらProfessionalでは無いだろう。
834 :
名無しさん@そうだ選挙にいこう :2006/08/14(月) 05:12:01
A B C D 1 期 出欠 2 1 0 出欠欄において0なら欠席、1なら出席 3 1 1 もし期の数が未記入なら出欠欄も未記入 4 5 1 0 6 7 1 1 8 出席 欠席 一期a b 二期c d 三期e f c、d、e、fは無視で良いのですが aは=SUMIF($A$2:$A$8,"1",$D$2:$D$8) の計算式で出せるのはわかるのですが bの出し方がわかりません。 *を使ってみてもどうにも式を導き出せないのです。 非常にわかりにくく申し訳ないのですが どなたか教えていただけないでしょうか?
836 :
名無しさん@そうだ選挙にいこう :2006/08/14(月) 05:57:50
>>823 説明不足ですいませんでした。
2.296875
1.031250
1.140625
1.406250
1.109375
の、5個の最大公約数(?)を求めたいわけで。
>>836 0.015625
つーか、「算数(小学校高学年)」が出来れば小数なんかで悩む問題じゃないだろ。
「さんすう(小学校低学年)」レベルの頭じゃ無理だろうが「数学(中学校)」レベルの話ですらない。
いちいち講釈垂れんな
>>838 歪んだ受け取り方ばかりしてたら成長しないよ
840 :
名無しさん@そうだ選挙にいこう :2006/08/14(月) 11:43:30
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 全くの初歩すぎる質問ですがお願いします。 教本には普通に「メニューバーの[データ]-[XMLソース]の・・・」と載ってるのですが、 自分の環境では[データ]の中に[XMLソース]がありませんでした。 何か別に取り込まなければならなかったりするのでしょうか。
>>840 >>833 読んだ?
あと、うちはOffice2003 Professional Editionだが
データ > XMLソース
ではなく
データ > XML > XMLソース
になってる。
もし、この項目が無く、Professional Editionじゃないなら
諦めるかProfessional Edition買い直すかだね。
成長云々じゃねーよ馬鹿が それ以前の人としての常識だ もっと人前に出ろ
あったよ 馬鹿が馬鹿回答を得意げにしていて 自分で気づかないところを見たことかな
845 :
名無しさん@そうだ選挙にいこう :2006/08/14(月) 12:25:19
>>833 ありがとうございました。
>>841 すみません。見落としてました。
うちのはパーソナルみたいです。
どうもありがとうございました。
>>844 それなら馬鹿回答じゃない回答をお願いします。
俺が回答書いたって馬鹿の馬鹿回答がいまさら消えるわけねーだろ 馬鹿が書き込まなきゃいいんだよ そんなことも分からないのか マジで頭悪すぎだな
なんだ口だけかw
849 :
名無しさん@そうだ選挙にいこう :2006/08/14(月) 14:59:09
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 はい(若干 【4 VBAでの回答の可否】 可 テキストファイルからのデータ切り出しについてご教唆ください。 たとえばIDというステータスが10,11,12の設定がある場合 ID=(10,11,12) とか ID=10 ID=11 と単品ずつに表記であったり ID=(10) と単品で括弧でくくってあったりするものが混在しています。 これを、いずれの場合も自動でID別にセルに格納したいのですが、うまくいきません。 serch分でID=を見つけ、if文でその1文字後ろがカッコかどうかを調べる文を作ったのですが なぜか1行目を延々とサーチし続けて次の行に移ってくれない状態です。
>>849 教唆って犯罪をそそのかすってことだよね
通報しておきますね
教示と教授を間違える人はいても 教唆と間違える人は初めて見たかも
854 :
名無しさん@そうだ選挙にいこう :2006/08/14(月) 18:25:01
【1 OSの種類 .】 Windows xp 【2 Excelのバージョン 】 Excel 2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 一応可 それしか手段が無ければゼロから調べて「コード」から使えるように …なる努力をします… 【5 検索キーワード 】 エクセル+金利とか金利計算とか単年度金利とかIRRとか (知恵足りずことごとく撃沈) たとえば、 「 a円をb年間投資したらc円になったとき、単年度あたりの利率( 複利)はx% 」 abcの値があるとき、xを求めたいのです。 一覧表にしたいので、できればオートフィルできる形で…。 1000円を3年間投資して1030.301円なら単年度利率(複利 )は1%(←今回はここを求めたい)という具合です。 (1030.301=1000*1.01*1.01*1.01 まではわかるのですが)
何か阿呆が騒いでますね
858 :
名無しさん@そうだ選挙にいこう :2006/08/15(火) 00:20:08
お世話になっています またまた質問させてください リストで数種類の中から数字を選ぶと、その下にある表中の数字が更新されます その更新された数字のみを、同形の所定の表に貼り付けたいのですが、これを自動でおこ なわせる方法はないものでしょうか? これを手動でしながら作図しているんですが、毎回手動でやるのはかなり面倒なんです 毎回、「数値のみ貼り付け」しないといけないし(これのショートカットキーはないですよね?) ぜひお知恵をかしてください〜
お客様の中にエスパーはいらっしゃいませんか?
>>858 > リストで数種類の中から数字を選ぶと、その下にある表中の数字が更新されます
> その更新された数字のみを、同形の所定の表に貼り付けたいのですが、これを自動でおこ
> なわせる方法はないものでしょうか?
漠然としすぎ
仮にVBA可としても回答しづらい。
> これを手動でしながら作図しているんですが、毎回手動でやるのはかなり面倒なんです
> 毎回、「数値のみ貼り付け」しないといけないし(これのショートカットキーはないですよね?)
マクロの記録という手もある
とりあえず
>>1
A2がリストで選ぶセル Private Sub Worksheet_Change(ByVal Target As Range) If Target.Address(0, 0) = "A2" Then ほにゃらら End Sub
>858 同じ式を「所定の表」に入れておけば良いのだが 「数字のみ」となるとマクロしかない。 ユーザー設定で値貼り付けのアイコンを置いて桶。
863 :
854 :2006/08/15(火) 13:19:09
>>857 回答どうもですm(__)m 落としてみましたが解決は無理でした…。
>>854 の質問の件は、例えば、「100万円が3年で337.5万になりました。複利だとしたら1年あたりの利率はいくらか?」という場合に「答え50%」を導けるような式を作りたいのです。
サラ金のような月々のお金の出入りが無いかわりに、上の式をたくさんオートフィルで使いたいのです。
説明が拙くてすみません。
100*1.5^3=337.5 1.5=(337.5/100)^(1/3) って算数の問題です
865 :
854 :2006/08/15(火) 14:41:45
>>864 ありがとうございます! 解決しました。
恥ずかしながら、「^(1/3)」の表現を知らなかったのです。
(何か関数があるのかと思ってました…)
感謝ですm(__)m
【1 OSの種類 .】 Windows98 【2 Excelのバージョン 】 Excel97 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 VBA 1週間前までSUMしか知らなかった者なので質問内容がアレかもしれませんが、 エクセルについているVBAで Dim Ch as Double Dim Substitute As Application Set Substitute = Application.WorksheetFunction.Substitute Ch = Substitute(40,5) こんな感じにエクセル関数を簡略化してVBAで使えないでしょうか。 自力で探しても見つからないのでないのかなと思ってるんですが。。。
>>866 とりあえずExcelの事は無知でもいいから
正しい日本語でよろしく。
指定のセル(A1 A2 A3)に値を入れるとこのセルに対応したグラフが変動するという エクセルファイルがあります(graph.xls) このファイルへ外部ファイルを読み込ませて値を代入するという処理は 可能でしょうか? たとえば10,20,15という記述のtxtファイルがあり、これをgraph.xlsに 読み込ませてA1,A2,A3にそれぞれ10,20,15を代入させグラフを変動させ たいのですが。 どなたかご教授お願い致します。
869 :
名無しさん@そうだ選挙にいこう :2006/08/15(火) 18:04:53
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 はい(初心者) 【4 VBAでの回答の可否】 可 変数xが1〜20の間、画像(g1〜g20)を取得して表示したいと思います。 繰り返しはできるのですが、変数xと画像のパス名を組み合わせて取得することができません。 色々試しましたがだめでした(´・ω・) どなたかお教えて下さい。
>>868 可能。
VBAでやってね。
>>869 "g" & x
細かく書くと
"ディレクトリパス\" & "g" & x & ".拡張子"
かな。(パスと"g"は繋げてもいいけど)
871 :
名無しさん@そうだ選挙にいこう :2006/08/15(火) 21:28:00
>>858 です
レスありがとう
やはりマクロやらVBAなどが必要なんですね・・・
これから電車の中などで、ぼちぼちこれらの勉強をして
いきたいのですが、移動中よみやすいサイズの本で
お勧めのものはありませんでしょうか??
872 :
869です :2006/08/15(火) 21:49:27
873 :
名無しさん@そうだ選挙にいこう :2006/08/15(火) 22:30:24
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 はい(初心者) 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 VBA 質問なのですが A1〜A3にそれぞれ山田,男性,大学生 B1〜B3にそれぞれ佐藤,男性,高校生 C1〜C3にそれぞれ鈴木,女性,社会人、とデータが入力されているとして 男性なら1,女性なら2という値を別のセルに作成しておいて 1,1,1 2,1,2 3,2,3 のように表示するにはどうしたらよいのでしょうか? 御教授お願いします。
問題文を丸写しにしろとは言わないが、せめて日本語で書いてくれ
質問の内容が把握しきれないが VLOOKUPで解決できるレベルっぽい
876 :
名無しさん@そうだ選挙にいこう :2006/08/15(火) 22:51:06
すみませんでした 問題内容は 最初に A1〜A3にそれぞれ山田,男性,大学生 B1〜B3にそれぞれ佐藤,男性,高校生 C1〜C3にそれぞれ鈴木,女性,社会人、とデータが入力されています 別の場所(任意) 仮に E1〜E3に1,2,3 F1〜F2に4,5 G1〜G3に6.7.8が入力されているとします。 山田なら1を、佐藤なら2を、鈴木なら3 同様に男性なら4,女性なら5 大学生なら6,高校生なら7,社会人なら8に対応した値に変換し 1,4,6 2,4,7 3,5,8 のように変換して表示したいのです。 1,2,3で分かりにくかったので値は変えてみました。
これで間違いなくVLOOKUPで解決できるレベルの問題であることが断定されましたね。
ってことで
>>873 つ VLOOKUP
ついでに言っておくが、数式まで書いてくれとか言わないように。
変換するための対応表がないな・・・ 場所が任意ということなのでMATCHとINDEXと推しておくかな
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 2003 【3 VBAが使えるか .】いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 「excel+ユニーク行+取り出す」、「index match indirect 」等 | A | B | 1|001|斉藤| -+--+------ 2|001|渡辺| -+--+------ 3|001|田中| -+--+------ 4|001|斉藤| -+--+------ 5|002|飯田| -+--+------ 6|002|矢田| -+--+------ 7|002|飯田| -+--+------ 8|001|渡辺| -+--+------ 9|001|田中| 10| 001 | 斉藤 11| . | 渡辺 12| . | 田中 A1:B9にデータが入っています。 A10に番号「001」を入れるとB10:B12に その番号のデータを検索してきて入るように 関数を利用したいのですが、上手くいきません (A10に番号「002」を入れると飯田、矢田が表示される) MATCH関数とindirect関数、index関数などを使い、検索結果が重複して表示されるようには出来たのですが 重複したデータは表示させたくありません。やり方を教えて下さい、お願いします。
>>879 最初から一つの数式にしようとしないで、一つ一つ作業セルを使って確実に潰していくといいよ。
「対応値の検索」「複数の値を返す」「重複した値は表示しない」という3つのうち、
前者2つは出来てるとのことだが、このことは完全に忘れて、
飯田
矢田
飯田
というデータから、
飯田
矢田
というデータを返す部分だけを考えてみな。
とりあえずはこれだけについて2,3日悩んでみろ。話はそれからだ。
それと
>>2 ・8ってことなので、前者2つも含めて、自分でやってみた数式は全て書こうね。
【1 OSの種類 .】 Windows2000 【2 Excelのバージョン 】 Excel97 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 excel VBA 時間 関数 分 10の位 1の位 VBAのマクロの記述で セルに入力された時刻の10の位、1の位を取得する関数はないでしょうか? 今は、Minute(Cells(gyo - 1, 10)) Mod 10 とやって算出しているのですが。 よろしくお願いします
>>882 あのね、VBAでは関数って探す物ではなく作る物なの。
Function 関数名(引数 As 引数の型) As 戻り値の型
End Function
884 :
882 :2006/08/16(水) 17:16:10
>>883 DATEDIFF のようなVBAの中でも記述できるものはないでしょうか
Functionステートメントで作成した関数は DATEDIFFのようにVBAの中で記述することが出来ます。 というかVBAの中で使うために作るんだし。
886 :
名無しさん@そうだ選挙にいこう :2006/08/16(水) 18:12:29
【1 OSの種類 .】 Windows xp 【2 Excelのバージョン 】 Excel 2000 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 段組 1行n列(n=300とか)で作られたスプレッドを たとえば7行n/7列(あまりが出ても良い)に再構成 したい。if(row(a1,7)=1,a1)とか関数を書いたりしたけど コピペ大変だし、ファルスって出てきた奴をカットして上へ 縮めていくのもしんどそうってことで あきらめた
887 :
名無しさん@そうだ選挙にいこう :2006/08/16(水) 18:21:26
【1 OSの種類 .】 Windows xp 【2 Excelのバージョン 】 Excel 2000 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 段組 1行n列(n=300とか)で作られたスプレッドを たとえば7行n/7列(あまりが出ても良い)に再構成 したい。if(row(a1,7)=1,a1)とか関数を書いたりしたけど コピペ大変だし、ファルスって出てきた奴をカットして上へ 縮めていくのもしんどそうってことで あきらめた
888 :
882 :2006/08/16(水) 18:23:17
>>885 VBAの中で使うために作るのですね。ありがとうございました。
> あきらめた だけ読んだ。
【1 OSの種類 .】 Windows xp 【2 Excelのバージョン 】 Excel 2000 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 excel . 文字列 日付け 変換 CHAR 日付けが標準形式で 2004.01.02 と入力されているデータを、 VBAで 2004/01/02 のような日付けデータとして処理したいのですが、 どのようにしたらいいのでしょうか
標準形式というのがいまいち不明だが、 文字列値ならDateValueでシリアル値にしてFormat シリアル値ならそのままFormat
892 :
890 :2006/08/16(水) 19:26:42
>>891 A1に 2004.1.1 が文字で入ってる状態で
Sub TEST()
Range("A2") = DateValue(Range("A1"))
End Sub
と書いてみたのですが、型が一致しません と出るのですが
どのようにしたらいいのでしょうか
893 :
890 :2006/08/16(水) 21:09:03
もうだめぽ
894 :
名無しさん@そうだ選挙にいこう :2006/08/16(水) 21:30:28
/で区切ってないからじゃない
【1 OSの種類 .】 Windows xp 【2 Excelのバージョン 】 Excel 2000 【3 VBAが使えるか .】 はい(初心者) 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 VBA マクロ セルA1,C2,E1,G1,I1にそれぞれ○,×が入力されいます それを○だったら1,×だったら0を表示するものを以下のように作成し ボタンを押すことで変換できるようにしました。 Sub 変換() Dim henkan As Integer Select Case Range("A1,C1,E1,G1,I1").Value Case "○" henkan = 1 Case "×" henkan = 1 End Select Range("A1,C1,E1,G1,I1") = code_dai End Sub 質問なのですがこの記述だと1行目のデータしか変換する事が出来ません 同様に2行目、3行目…にも値が入るとして データがある行を検出(?)して変換するにはどうしたらいいのでしょうか?
×セルA1,C2,E1,G1,I1にそれぞれ○,×が入力されいます ○セルA1,C1,E1,G1,I1にそれぞれ○,×が入力されています 文章が間違っていました すみません。
897 :
890 :2006/08/16(水) 21:35:38
>>894 元のデータが 2004.1.1 の形式で何十万件と入っているデータなのです
898 :
名無しさん@そうだ選挙にいこう :2006/08/16(水) 21:50:40
>897 当方、ド素人です。 VBAなどの難しいことは分かりませんが、 同じ列にあるのであれば、単純に 1.置換で「.」を「/」に変更 2.セルの書式を「日付」[yyyy/mm/dd] としたのではだめでつか?
899 :
名無しさん@そうだ選挙にいこう :2006/08/16(水) 22:06:48
>>895 Range("A1,C1,E1,G1,I1") = code_dai
ってなんか意味あるの?
for文で回せばいいと思う
for each hoge in range("a:a")
if hoge.value="○" then
henkan=1
end if
next
900 :
890 :2006/08/16(水) 22:09:39
>>898 行を選択して「.」を「/」に置き換えや
ワークシートでSUBSTITUTEをオートフィルすることも最初は
考えたのですが、
A列が 2004.1.1 形式で六万行あるシートが100枚以上あります。
日付けデータの横にあるデータを処理するマクロは出来てるので、
あとはマクロ内で 2004.1.1 のA列の記述を日付けとして認識できれば、
マクロを各シートに実行していくだけなので
作業時間を大幅に減らせると思ったのですが。
>>890 A1に 2004.1.1 が入ってるとして
Sub test()
Dim buf() As String
buf = Split(Range("a1").Value, ".")
Range("a2").Value = buf(0) & "/" & buf(1) & "/" & buf(2)
End Sub
902 :
895 :2006/08/16(水) 22:14:37
>>899 すみません
Range("A1,C1,E1,G1,I1") = henkan
の間違いでした。
903 :
名無しさん@そうだ選挙にいこう :2006/08/16(水) 22:14:42
>>890 説明が悪かった。縦に「びよーん」とのびた(A1からA280)
データがあるんだけど それを読みやすくするため
40行7列構成になおしたい (A1 to A40, B1 to B40, C, D, E, F, G...)
ってな感じ。頼みます
904 :
890 :2006/08/16(水) 22:21:34
>>901 もうしわけありません。
私の表記が間違っていました。Excel が 97 でした。
せっかくコードを書いていただいたのにすみません。
905 :
901 :2006/08/16(水) 22:27:24
>>890 97はSplitはだめなのか
ちなみに月と日が一桁の場合は
2004.1.1となる?2004.01.01となる?
906 :
890 :2006/08/16(水) 22:29:28
>>905 すみません
>>903 97はSplitがありませんでした。
月日は2004.1.1となります。
907 :
名無しさん@そうだ選挙にいこう :2006/08/16(水) 22:31:51
マクロで.を/に置換すればいいじゃん
908 :
895 :2006/08/16(水) 22:39:12
>>899 たびたびすみません
range("a:a")というのはどういった範囲をしているのでしょうか?
909 :
895 :2006/08/16(水) 22:41:47
×範囲をしているのでしょうか? ○範囲を指定しているのでしょうか? 間違えてばかりですみません
A1:A65535
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 関数内の参照セルを、貼り付けの際に固定化したい。 えと、貼り付けの際、choose(a2,a1,b1,c1,d1) となっているとき、下にどんどん貼り付けをしていった際、 以下のように、値取り出し番号も、値参照セルも下にずれていってしまいます。 choose(a2,a1,b1,c1,d1) <コピー元 choose(a3,a2,bd,cd,d2) <1個下に貼り付け。 choose(a4,a3,b3,c3,d3) <2個下に貼り付け。 これだと、値セルまでずれていってしまうので、 以下のように、値取り出し番号だけが加算されていくようにはできないでしょうか? choose(a2,a1,b1,c1,d1) <コピー元 choose(a3,a1,b1,c1,d1) <1個下 choose(a4,a1,b1,c1,d1) <2個下
>>890 地道に1文字チェックでよければ
Sub test()
Dim bday As String '変換前
Dim nday As String '変換後
Dim dlen As Integer
Dim i As Integer
bday = Range("A1").Value
dlen = Len(bday)
For i = 1 To dlen
If Mid(bday, i, 1) = "." Then
nday = nday + "/"
Else
nday = nday + Mid(bday, i, 1)
End If
Next
Range("A2").Value = nday
End Sub
97で動くのなら
Range("a2").Value = Replace(Range("a1").Value, ".", "/")
でいいんだろうが
914 :
890 :2006/08/16(水) 22:53:32
915 :
名無しさん@そうだ選挙にいこう :2006/08/16(水) 22:54:23
簡単にお金稼ぎ!!!
以下の手順でやれば、無料でお金稼ぎができます。
企業も広告の宣伝になるから、お金をくれるわけです。
最初の1日目で 2000 円〜3000 円 は確実に稼げます。
実際の作業は数十分程度、1時間はかかりません。
@
http://www.gendama.jp/invitation.php?frid=469323 ↑このアドレスからサイトに行く。
Aそこのサイトで無料会員登録(応募)します。
(その時点で 500 ポイントが貰えます。)
※事前に新規でヤフーなどのフリーメールアドレス
を取っておくといいですね。
Bポイントを稼ぎます。
懸賞の応募や無料会員登録をすればするほど、
ポイントが貰えます。
他にも沢山種類があるので、1日目で
約 20000 ポイントは GET できます。
C 3000 ポイントから、現金や WEB マネーに交換できます。
Dトップの右上に「交換」という所がありますので、
そこから交換をしましょう。
その月に初めてポイントバンクにポイントを移行した時、
さらに別途として 1000 ポイント貰えます。
これで現金や WEB マネーを稼ぐといいですよ!!!
916 :
名無しさん@そうだ選挙にいこう :2006/08/16(水) 22:59:25
ワークシートの中にあるFALSEという文字列の入ったセルをしらみつぶしに デリートしていくマクロが書きたい for counter = A to Z for counter2 =1 to 63325 if(row("ここがわからん”=="false")) then ???.delete.???? shiftup? end if next counter2 next counter 文字列の比較だから comparetextとかいうメソッドを使わなあかんのか
917 :
名無しさん@そうだ選挙にいこう :2006/08/16(水) 23:38:36
Sub hoge() Dim hoge As Range For Each hoge In cells If hoge.Value Like "*FALSE*" = True Or hoge.Value = False Then hoge.Clear End If Next End Sub
918 :
名無しさん@そうだ選挙にいこう :2006/08/16(水) 23:40:15
If hoge.Value Like "*FALSE*" = True Or hoge.Value = FALSE Then 4行目は間違いだな
>>912 choose(a2,a1,b1,c1,d1)→choose(a2,$a$1,$b$1,$c$1,$d$1)
920 :
895 :2006/08/16(水) 23:47:56
>>899 下のように記述したのですが
Sub 変換()
Dim youso As Variant
For Each youso In Range("a:a")
If youso.Value = "○" Then
henkan = 1
End If
Next
End Sub
これで変換された1を○が入力されている各々のセルに表示するには
どう記述すればよいのでしょうか?
921 :
名無しさん@そうだ選挙にいこう :2006/08/16(水) 23:50:27
henkan=1→youso.value=1
Sub 変換() Dim youso As Variant Set myrange = Application.Union(Range("A1"), Range("C1"), Range("E1"), Range("G1"), Range("I1")) For Each youso In myrange If youso.Value = "○" Then youso.Value = 1 ElseIf youso.Value = "×" Then youso.Value = 0 End If Next End Sub
923 :
名無しさん@そうだ選挙にいこう :2006/08/17(木) 02:41:34
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 セルの上に画像を置いた場合、エクセルの機能では、 セルをクリックしたつもりでも、セルの上にある画像がクリックされてしまいます。 セルの中に数字を手入力し、画像の上に重ねるように数字を表示したいです。 ところで、背景を使う方法やテキストボックスを使う方法ではなく、あくまで 画像が重ねられたセルにおいて、セルをクリックし数字を手入力する方法を探しています。
924 :
名無しさん@そうだ選挙にいこう :2006/08/17(木) 04:33:12
【1 OSの種類 .】 Windows XP Home SP2 【2 Excelのバージョン 】 Excel 2003 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 Excel テキスト 精度 浮動小数点 Visual C++ で作成したプログラムでの計算結果を double (80bits) の精度いっぱいで TSV(タブ区切り形式) に出力しました。 double の精度を完全に表現できていることは 浮動小数点のメモリ上での表現と手計算で比較することで確認済みです。 この精度を保ったまま Excel に読み込みたいのですが、 Excel を開いて TSV ファイルを D&D して読み込むとどうも 適当なところで丸められてしまっているようです。 Excel 内での計算の過程で精度が失われるのは仕方ないのですが、 読み込みんだ段階ですでに精度が失われるのが気持ち悪いです。 なんとか double の精度を保って読み込むことはできませんか?
>>924 Excelのワークシートでは有効桁数で15桁までしか扱えない仕様。
12345678901234567890 なら、上位15桁を有効桁とし
12345678901234500000 として扱う
0.1234567890123456789 なら
0.123456789012345 となり
0.00000000001234567890123456789 なら
0.0000000000123456789012345 となる。これが有効桁数での丸め。
つまりは0以外の部分が最大15桁しか扱えないってこと。
TSVからの読み込みとかそういうのは関係ない。これは普通に手入力したって同じ。
それ以上は文字列で保持してVBAのみで計算するしかないな。
TSVに書かれた数値を数値としてではなく文字列として入力するには
標準インポートは使えないから、TSV読み込みを自前で実装するんだな。
C++扱える奴なら容易いだろ。
というか、精度求めたいなら速度重視の表計算ソフトではなく、精度重視の表計算ソフト使ったら?
Excelとか三四郎とか123とか、全部速度重視設計だから。
926 :
名無しさん@そうだ選挙にいこう :2006/08/17(木) 05:28:31
928 :
名無しさん@そうだ選挙にいこう :2006/08/17(木) 13:51:36
エクセルに貼り付けた文字化けしている文字達を、 自動で翻訳して表示させることってできない?
日本語でOK
930 :
名無しさん@そうだ選挙にいこう :2006/08/17(木) 16:23:16
>>895 Sub hoge()
Range("A:A,C:C,E:E,G:G,I:I").Replace What:="○", Replacement:="1", LookAt:=xlWhole
Range("A:A,C:C,E:E,G:G,I:I").Replace What:="×", Replacement:="0", LookAt:=xlWhole
End Sub
932 :
名無しさん@そうだ選挙にいこう :2006/08/17(木) 17:04:25
↑ 後からガタガタ言ってんじゃねぇよ おととい、きやがれ
934 :
名無しさん@そうだ選挙にいこう :2006/08/17(木) 17:55:22
【1 OSの種類 .】 WindowsXP Home Edition 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 カメラ機能 CPU使用率 エクセルのカメラ機能を利用したファイルを開いてなにか作業を行おうとすると すぐにCPU使用率が100%になってしまい、戻るのに30秒はかかります。 ポインタを合わせるだけでも30秒ぐらいかかってしまうので作業になりません。 カメラ機能を使っていないエクセルファイルはなんら問題ありませんし、 ワードや他のアプリケーションはまったく問題なく動きます。 また、他のWindows2000のPCではカメラ機能の有無に関わらず正常に動作します。 カメラ機能を使ったまま正常に動作させるにはどうしたらいいでしょうか? このCPU使用率は下げられるのでしょうか? どなたか宜しくお願いします。
935 :
名無しさん@そうだ選挙にいこう :2006/08/17(木) 22:28:14
>>933 わかりました。タイムマシンが開発されたら、おとといにまた来ます。
>>934 つ再インスコ
家はXP pro SP2 + excel2000 だけど問題なくサクサク動いてるよ。
p4 2GHzで1GB積んでる。
フォームを常に表示したままセルの編集などを行うことはできますか? (というかそういうVBA等を書くことはできますか?) 必要なときだけフォームの機能を利用したいのです。 フォームを出しているときはセルを編集できないようなので、少し不便です。 ただし、シートにフォームを貼り付けないことが条件です。
939 :
名無しさん@そうだ選挙にいこう :2006/08/18(金) 11:15:24
>937 ShowModal >939 オートフィル
942 :
名無しさん@そうだ選挙にいこう :2006/08/18(金) 11:56:00
>941 できました。ありがとうございました。 >940 しね。
数式が入力されている列を縦にオートフィルでコピーする際、 同じ列の複数のセルを選択してオートフィルしても別に問題はないですよね? まずい場合とかありえますでしょうか? 一列ずつやる方が無難でしょうか?
944 :
934 :2006/08/18(金) 14:35:31
>>936 遅くなってすいません。ありがとうございました!
>>942 そんな失礼な人だと思わなかった
答えなきゃよかった
>943 同じ列の複数のセルを選択してオートフィルする場合、 内容と選択の仕方によっては結果が異なる場合がある。 それと、1列づつやるのとは別問題で、 別に複数列を一度にオートフィルしても釜わない。
>>943 一列ずつやろうがオートフィルだろうが結果は変わらない
やってみれば分かること
948 :
943 :2006/08/18(金) 18:51:26
>>946 >>947 数行では試してみたのですが、数万行オートフィルするので不安になってました。
ありがとうございます。
949 :
名無しさん@そうだ選挙にいこう :2006/08/18(金) 20:31:09
【1 OSの種類 .】 WindowsXP SP2 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 CTRL 選択 CTRLキーを押しながらセルを選択すると、複数のセルが選択できますが、 それを取り消す事はできますか。 間違ったセルを選択したときに、そのセルだけ選択を取り消したいときがあります。
>>949 >>14 > ★ Excelで出来ないこと、仕様上の制限 (括弧内は代用法)
> ▼操作
> ・ 選択範囲から一部を除く
>>950 ,951
ありがとうございました。
FAQは長すぎて見落としてました。すいません。
953 :
名無しさん@そうだ選挙にいこう :2006/08/18(金) 22:36:29
IMEのモードが「全角かな」の状態で、セルに英数字を入力した場合強制的に半角になり、 漢字ひらばなを入力した場合全角になるようにしたいのですが、できますでしょうか?
>>953 変換後というか、IME確定後に再変換でいいならVBAで出来るが、
入力途中、確定前の話ならExcel関係ないのでスレ違い。
自分の使ってるIMEのスレに行ってくれ。
MS-IMEならプロパテイの和英混在入力あたり ただ「ai」と英数字入力した場合、「ai」のままで良いのか 「愛」に漢字ひらばな変換したいのかキカイにはワカラン。
956 :
名無しさん@そうだ選挙にいこう :2006/08/18(金) 23:43:33
すみません あるセルに例えば0.125という数値が入って それを自動的に12.5%と変換する関数を 教えてください。
957 :
956 :2006/08/18(金) 23:46:09
自己解決しました。 関数では無くて、セルの書式ですね
958 :
名無しさん@そうだ選挙にいこう :2006/08/18(金) 23:52:00
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 勉強中 【4 VBAでの回答の可否】 可 ユーザーフォームにイメージを配置し、そのイメージに当てはめる画像を 条件によって入れ替えるようなマクロを作りました。 ちなみにそのブックと画像は同じフォルダにまとめておいてあります。 ここで、僕は画像の配置場所の指定方法を Image1.Picture = LoadPicture("C:\Documents and Settings\Owner\デスクトップ\フォルダ名\画像名.gif") のように絶対パスで指定する方法しか知らないため、職場で配布後、 みんながそのフォルダをデスクトップから移動するとエラーになるということに気付きました。 これを相対パスで表す方法がありましたら教えて下さいm(__)m
普通に相対パスで書けるけど。 LoadPicture("画像名.gif") LoadPicture(".\画像名.gif") でもカレントは変更できて、ブックのあるディレクトリ以外になる場合もあるから ThisWorkbook.Path & "\画像名.gif" と絶対パスで書いた方がいい。要は絶対パスを書いてるのが問題なんじゃなくて パスをマジックナンバーで書いてるのが問題なんだから。 ちなみにブックがC:\Test\hoge.xlsの場合 ThisWorkbook.Path:C:\Test ThisWorkbook.Name:hoge.xls ThisWorkbook.FullName:C:\Test\hoge.xls となる。
960 :
>>959 :2006/08/19(土) 00:42:19
『ThisWorkbook.Path & "\画像名.gif"』でうまくいきました。 簡単なことなのになかなか気付かなかったです(´・ω・) とても勉強になりました、ありがとうございます!
961 :
名無しさん@そうだ選挙にいこう :2006/08/19(土) 01:11:00
C3セルに“=C1/C2”と数式を入力しておいて C1セル、C2セルにそれぞれ数値を入力するとC3セルに 自動的に答えが表示されますよね その表示された答えに“倍”という文字を添えたいのですが どうすればいいのでしょうか? C列のセル全部に“倍”の文字を添えたいのですが…
964 :
名無しさん@そうだ選挙にいこう :2006/08/19(土) 01:32:36
965 :
名無しさん@そうだ選挙にいこう :2006/08/19(土) 11:16:47
【1 OSの種類 .】 Windows XP 【2 Excelのバージョン 】 Excel 2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】キーワードが思いつかないです。 表を作っていて 「項目」とでもいいましょうか、 たとえば 売り上げ東京大阪名古屋 一月 二月 三月 という表があって 表が何十行にも渡る場合 売り上げ東京大阪名古屋 普通にスクロールしていくとこれ↑の部分が見えなくなってしまうんですが 常にこの一行目を表示する方法はあるのでしょうか?
966 :
名無しさん@そうだ選挙にいこう :2006/08/19(土) 11:33:32
ウインドウ枠の固定
967 :
名無しさん@そうだ選挙にいこう :2006/08/19(土) 13:00:23
a〜cまでの合計が5だとして、上限が3だった場合、合計欄に3と出したい場合どうすればいいでしょうか。
ちゃんと教科書を読み直すんだ
969 :
名無しさん@そうだ選挙にいこう :2006/08/19(土) 14:01:19
>>966 すいません解決しました。
ありがとうございました。
>>967 何をしたいのかよく分からないけど、超飛躍的なエスパー解答してみる
SUM()→MAX()
4万行近い数式入力されているWSを保存する時に、 5分以上時間がかかるときと、 かからないときがあります。 時間がかかるときが事前にわかる方法はないでしょうか。 習慣でうっかりCTRL+Zを押したり、列を削除すると 10分経っても状態が「応答なし」のままだったりして CPU率100%で占有されてしまいますし 強制終了させるとシートが壊れてることもあります。 よろしくお願いします。
973 :
972 :2006/08/19(土) 16:44:59
ちなみに壊れてしまった場合は、 7CAB0000 ↑のような名前のファイルも出来ています。 これがあるともうだめだと思っていいのでしょうか。
>>972 とりあえずそのブックをうp
うp出来ないものならここでの回答は諦めて。
975 :
972 :2006/08/19(土) 17:16:22
>>974 人のお金の計算に関するデータなのでうpできません。
調べてみると、どうも計算エラーの行があって
それが悪さしてるのではないかと思うのですが。
エラー数式とかなければ私のように時間が5分以上かかったりかからなかったり
というようなことはないのでしょうか。
マクロで保存時に分岐させればいい バージョン書いてないからマクロは省略
>>975 エラーが無くて、あまり複雑な処理をしていなくて
CPUが80286とかでなければ、5分以上はかからない はず。
upしたところでそんな危険なファイル、開く気にならない。
979 :
名無しさん@そうだ選挙にいこう :2006/08/19(土) 19:50:06
>>917 みたいに全部のセルに処理かけるのだとすごい重くなるんだけど
なんか軽く出来るいい方法ありますか?
検索するセル範囲が判ってるなら前もって制限してからにするとか(当たり前だけど)
>>978 データ量によるってw
処理をなにもしなくても時間がかかるよ
982 :
名無しさん@そうだ選挙にいこう :2006/08/19(土) 20:24:21
計算を手動にしておく
その程度で時間がかかるって事は最初の設計が へたくそって事だから、始から見直すしかないね
( ^ω^)おっ( ^ω^)おっ( ^ω^)おっ
1万行を超えるならエクセルですべきじゃないとおもうけどな
986 :
名無しさん@そうだ選挙にいこう :2006/08/20(日) 01:11:40
【1 OSの種類 】 Windows XP 【2 Excelのバージョン 】 Excel 2003 【3 VBAが使えるか 】 否 【4 VBAでの回答の可否】 否 =10*LOG((10^(A1/10)+10^(A2/10)+10^(A3/10)…+10^(A500/10))/500) このように常用対数の平均を求めたいのですが、 一つづつ上のように入力すると 手間がかかりすぎてしまい困っています。 楽に計算できる方法はありますでしょうか?
時間をかけて美しい解法を探すよりは 多少醜くても実用的な解法のほうが実用的
> 多少醜くても実用的な解法のほうが実用的 頭痛が痛いよりひどいな
そのまま置き換えたら =10*LOG(SUMPRODUCT(10^(A1:A500/10))/500) なんとなくオーバーフローや誤差が大きそうな感じがする
>楽に計算できる方法はありますでしょうか? こういう人は 答えを教えても文句いいそうで教える気なくすんだよな
>>990 馬鹿?
質問の意味ぐらい理解してから書けよw
10^(A1/10)の部分だけ別セルに書いて500までオートフィルすればいいんじゃね? その上で=10*LOG(sum(b1:b500)/500)みたいな
994 :
名無しさん@そうだ選挙にいこう :2006/08/20(日) 02:30:11
995 :
972 :2006/08/20(日) 02:51:58
いろいろアドバイスありがとうございます
996 :
名無しさん@そうだ選挙にいこう :2006/08/20(日) 03:05:12
【1 OSの種類 .】 XP 【2 Excelのバージョン 】 2003 【3 VBAが使えるか .】 NO A1からA20までに適当に数字が入っているとします。 そこからA21、A22、A23・・・と下に向かって数字を入れていったとき、常にB1に、A列に入力されているものの最下段の数字が表示されるようにするには、B1にどのように入れればよいのでしょうか?
=INDEX(A:A,MATCH(MAX(A:A)+1,A:A,1))
>>997 ほえー・・・どうもありがとうございましたm(_ _)m
ほえー・・・ ほえー・・・ ほえー・・・ ほえー・・・ ほえー・・・
顔文字使う奴はなんで頭がおかしいんだろう
1001 :
1001 :
Over 1000 Thread このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。