1 :
名無しさん@そうだ選挙にいこう :
2007/01/05(金) 00:06:20 ▼━ 答えやすい質問のしかた ━━━━━━━━━━━━━━━━
★1 質問するときは環境や条件はきちんと書いてね。情報後出しはダメ。
★2 要望は具体例や図を使って明確かつ具体的に。
★3 質問前に
>>2-1000 あたりの注意書きやQ&Aも読もう。
★4 質問テンプレは必須じゃないけど、
OSやExcelのバージョン、VBAの可否など(下記テンプレ1〜4の情報)は必須情報。
これを書かなかった場合は、以後まともな回答が付かなくても文句言わないでね。
▼━質問テンプレ (出来れば使ってね) ━━━━━━━━━━━━
【1 OSの種類 .】 Windows**
【2 Excelのバージョン 】 Excel**
【3 VBAが使えるか .】 はい・いいえ
【4 VBAでの回答の可否】 可・否
【5 検索キーワード 】 Googleやヘルプでの検索キーワード
※【4】は、VBAはわからないけどコード書いてくれるならVBAでもいいって場合は「可」
VBAを使うのは避けたいって場合は「否」にしましょう。丸投げする場合は、必要に応じてブックをアップすること。
前スレ:
http://pc10.2ch.net/test/read.cgi/bsoft/1164813734/
▼━質問時の注意・決まり事 ━━━━━━━━━━━━━━━━━ ・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 テキストボックス(エディトボックス)、コンボボックス(ドロップダウンリスト)、リストボックス、コマンドボタン、 チェックボックス、オプションボタン(ラジオボタン)、スピンボタン、スクロールバー、等の質問をするときは、 ユーザーフォーム、コントロールオブジェクト、フォームオブジェクトのどれなのかを必ず書くこと。
★注意1 テンプレを使わないのも、情報を出さないのも自由です。 ただし後出しの情報に延々と付き合っていたら他の質問者に迷惑が掛かるので 回答は最初に出された条件のみを元に行われることもあります。 指摘されてから質問し直しても無視されることがあるので、 そういう扱いをされるのが嫌なら、きちんと情報を書きましょう。 ★注意2 VBAを知りたてでプログラミングまでは出来ない人は、 VBAが高機能なのをいいことに、いろんなことをVBAでやろうとする傾向がありますが、 Excelのブック、シート、およびシート上に配置されたオブジェクトの操作以外は スレ違いなのでここで質問しないでください。 ユーザーフォームについても、VBとVBAで違いがある部分以外はVBの分野です。
★ Excelで出来ないこと、仕様上の制限 (括弧内は代用法) ▼環境・書式 ・ 列数を256列以上、行数を65'536行以上に増やす (Excel2007では16'384列、1'048'579行扱える) ・ 条件付き書式を3つ以上設定する (文字色だけなら、入力規則でも3つ設定可能。それ以外はVBA) ・ 行の高さを0.25きざみ以下の単位で指定する ・ セル内の文字を○で囲む、一部のみ2段にする (オートシェイプ、オブジェクト) ・ オートフィルタで英字の大小文字を区別する (小文字 → 半角、大文字 → 全角、と使い分ける) ・ 祝日を判断する (作業セルに祝日を列挙、VBA) ・ 同一列内でセル(行)ごとに列幅を変える、同一行内でセル(列)ごとに列高を変える (セルの結合) ・ ヘッダー・フッターのページ番号の開始番号任意指定、ページ番号演算、同シート内で違ったものを指定など ・ セルのサイズ(幅、高さ)を、長さの単位(ミリメートルなど)で指定する ・ 罫線幅の自由指定 ・ 表示形式で「10/ 1」といった書式を指定し、日付が一桁の場合のみ日付の前にスペースを入れる (TEXT関数、VBA) ・ 書式設定の「折り返して全体を表示する」と「縮小して全体を表示する」を同時に使う (折り返しを有効にして、手動で文字サイズを調整) ▼操作 ・ ファイラーの右クリックメニューからの新規作成で、Excelで設定したシート数のブックを作る (任意のシート数のテンプレートを作成) ・ 複数シートを選択して入力規則やシートの保護を設定する (VBA) ・ オートコンプリート機能を、別列や離れたセルで動作させる (VBA) ・ 選択範囲から一部を除く、Ctrlを押しながらの複数選択で一部を取り消す (VBA) ・ 優先キーを3つ以上指定しての並べ替え (優先度の低い方から順に並べ替える) ・ 1セルを分割 (分割したいセル以外を結合)
★ Excelで出来ないこと、仕様上の制限 (括弧内は代用法) ▼数式・関数 ・ 表示形式以外の書式の取得設定、書式情報を条件とする数式 (ユーザー定義関数) ・ 関数式でセルの選択状態を取得する (VBA) ・ セルの値でパスを補完して、開いてないブックのセルを参照する (VBA) ・ 入力したセルに結果を返す (VBA) ・ 数式を入れたセル以外に結果を返す (VBA) ・ 範囲を引数にしての文字列連結 (ユーザー定義関数) ・ 値の書き換え、値の保持 (VBA) ・ 複数の結果を抽出、不定な数の結果を返す (VBA、結果の最大数が解っていれば最大数以上の式を論理式で組む) ・ 空白のセルの部分を上詰め、左詰めなどで表示する (作業セルを使って別セルに詰めて表示なら可能、それ以外はVBA) ・ VLOOKUP,HLOOKUP,MATCH等の関数で、検索語を全半角両方にマッチさせる (ユーザー定義関数) ▼VBA ・ ExecuteExcel4Macroの参照で空セルと0値を区別する ・ セルの値や変数値で直接変数名を指定する (配列、コレクション) ・ VBのコントロール配列と同じような操作をしたい (イベント以外ならコントロール名を「同名+連番」にしてControls(名前 & インデックス)で処理、イベントはクラスでWithEvents) ▼ユーザーフォーム ・ フォーム上から変更したプロパティ値の保持 (シートや外部ファイルに書き出して、次回読み込む) ▼グラフ ・ 棒グラフでひとつだけ突出したデータがあった場合に波線を入れて位置を合わせる (オートシェイプなどで見た目だけそうなるように弄る、別アプリでグラフを作り、オブジェクトとして挿入) ┌┐ 〜〜 ||
上記 「Excelで出来ないこと、仕様上の制限」 は、一般的に出来ないとされていること、出来ないと思われるものです。 間違いがある可能性もあるので、上記に挙がってるもので「コレはこうすれば出来るよ」というものがあったらご指摘ください。 また、ここに書かれてないことでも、Excelで出来ないことはたくさんあります。 ここに書かれてないからといって必ず出来るはずだなんて思わないように。
前スレ
>>998 ありがとうございました。確かめてみてできました。超感謝します。
範囲の設定については少しは自分で調べてやってみます。
範囲の設定について調べてみました。動作します。 ただし,えらくかっこわるいことをやっている感じがします。 もっとスッキリできないでしょうか? Private Sub Worksheet_Change(ByVal Target As Range) ' 範囲のセル以外では動作させない If Target.Column < 5 Then Exit Sub If Target.Column > 34 Then Exit Sub If Target.Row < 11 Then Exit Sub If Target.Row > 52 Then Exit Sub
>>9 If Not Intersect(Target, Range("F12:AG51")) Is Nothing Then
' 処理
End If
又は
If Intersect(Target, Range("F12:AG51")) Is Nothing Then Exit Sub
' 処理
>9 やっている事は同じだからカッコ悪いかも知れないがスッキリさせてみた。 Private Sub Worksheet_Change(ByVal Target As Range) Dim r As Long, c As Long r = Target.Row: c = Target.Column If c > 4 And c < 35 And r > 10 And r < 53 Then _ If Cells(r, c) = "E" Then Cells(r, c + 1) = "-" End Sub
>>11 減らしたなーw
初心者には読みにくいかもしれんw
> If c > 4 And c < 35 And r > 10 And r < 53 Then 初心者がよくやる悪い例
16 :
名無しさん@そうだ選挙にいこう :2007/01/05(金) 11:52:15
【1 OSの種類 .】 Windows2000 【2 Excelのバージョン 】 Excel 97 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 エクセル OR excel 97 ファイル名 勝手 ファイル名の最後に勝手に「1」が追加されていくという奇妙な症状が出て困っています。 エクスプローラーから、xxx.xls というファイルをダブルクリックして開くと、 xxx1.xlsと勝手に「1」がファイル名の最後に追加されてしまいます。 そして保存したらxxx1.xlsというファイル名のファイルが作成されます。 しかし、エクセルを開いて、エクセルの「開く」からファイルを開くと「1」はつきません。 また、エクセルを開いて、そこにxxx.xlsをドロップしても「1」はつきませんでした。 インストールしたのはかなり昔のPCで自分で使ってなかったのですが、 最近になってそのような症状があるのに気がついたそうです。 どこか自動でバックアップファイルを作成するようなオプションでも変更したのかと 調べてみたのですが、どうもわかりませんでした。 何が悪いのか原因はわかりませんでしょうか? よろしくお願いします。
前スレ未解決 【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2002 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 Excel 標準のテンプレート 新規作成 Excelを起動したときの新規作成されるブック(標準のテンプレート!?)は、通常どこに保存されていますか? 標準テンプレートを変更したいのですが? フォルダウィンドウでの新規作成はExcel9.xlsの変更で出来たのだけど XLStartフォルダにBook.xlt作っても、うまくできません・・
>>17 実は
>>9 の方式の方が良いコードだ。
RowとColumnを変数に取っていればな。
可認性な
>>22 違う。可視性、可読性といった、人がコードを読む上での話ではなく
PC(CPU)が実行する処理として
>>13 みたいな書き方は不適切。
最近の高性能PCじゃ体感での差いは出ないが、計測して数値にすれば
結構な差が出ると思うよ。
>>20 だから
[ファイルの種類] を [テンプレート] にすれば自動的にxltになりますが?
ANDはORと違って、速度に差は無くね?
どっちも評価を省略しないな
速度厨は消えろや。 初心者相手のスレだから、可読最優先だ。
で、実際And使うとどのくらい遅いの?
>>30 自分で試してみるといいよ。
Sub test()
Dim r As Long, c As Long
Dim sngStart As Single
sngStart = Timer
For r = 1 To 65536
For c = 1 To 256
Next c
Next r
MsgBox Round(Timer - sngStart, 2)
'Debug.Print Round(Timer - sngStart, 2)
End Sub
これの真ん中の空いてる部分に
If c > 4 And c < 35 And r > 10 And r < 53 Then
' ## 処理 ##
End If
' ***
又は
Do
If r > 52 Then Exit Do
If c > 34 Then Exit Do
If r < 11 Then Exit Do
If c < 5 Then Exit Do
' ## 処理 ##
Exit Do
Loop
' ***
のどちらかを入れる。どちらもr,cが指定範囲内なら、「## 処理 ##」を実行し、
それ以外なら「***」に抜けるというコード。条件分岐速度の計測なので不要な処理は省いてある。
行と列はExcelの有効範囲で可変、Do Loop,Exit Doはcontinueの代わり。
11だけど、
>>21 の 余分な処理はさせずに、とっとと戻す
というのは、よくワカルし同意する。
しかし条件が、例えば列の制限だけだったらどうだろう。
If c > 4 And c < 35 Then …
↑これより、↓こっちを使うべきなのか。
If c < 5 Then Exit Sub
If c > 34 Then Exit Sub
要は、程度問題と言うことだろうが、
オレの程度感覚としては4つなら、おkかなと、、
ループの中は別として。
33 :
名無しさん@そうだ選挙にいこう :2007/01/05(金) 15:54:00
or使え
>>32 > If c > 4 And c < 35 Then …
> ↑これより、↓こっちを使うべきなのか。
> If c < 5 Then Exit Sub
> If c > 34 Then Exit Sub
なんで
> If c > 4 And c < 35 Then …
を使いたいの?
「1行で書けるから」とか言わないでね。
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 セルの中に画像を入れたいのですが、可能でしょうか? 一枚のシートに複数枚の写真や図形を入れて 実験のデータ管理をしたいです。 よろしくお願いいたします。
>>35 そうでもない。今の話題は前スレ991の質問のことでは無いし。
>>36 セルの中に画像は入れられないが、セルの上にオブジェクトとして画像を置くことは出来る。
気に入ってるようだけど そのグーグルの押し売りはもうイイよ
>>38 じゃないけど、検索しないで来るよりは良いと思うよ
特に
>>36 のようなひどい質問の場合w
そうだな 安易なちょっと調べれば済む事に対しては こうやって検索すればいいという指針にはなるかもな
>>34 なんで … を使いたいの?
上の方が一般的でしょ。
それとExitでひとつづつ弾き返すやり方は、当てはまるケースが
多い場合は効果的だけど、Goto を多用してるみたいで嫌だな。
44 :
名無しさん@そうだ選挙にいこう :2007/01/05(金) 19:07:52
速度厨に何を言っても無駄。
>>44 は自分が速度厨の恩恵を受けているなんて
一生築かないんだろうなあ。
>>33 orz
一生築かないんだろうなあ。
書き方なんか個人の癖や嗜好でいくらでもあるから
別にこれがいいとかアレは駄目とか全く無いと思う
自分は
>>11 のようなifの2重使用をすると後から見たときに
汚いので出来るだけ使わない
止むを得ない場合はif if endif endif のように入れ子にする
49 :
9 :2007/01/05(金) 20:54:48
帰ってから覗いてみたら自分の発言が波紋を呼んでいてびっくり。 勉強になりました。今後ともよろしく御願いいたします。
前スレの972さんありがとう 原因は972さんのいうとおり条件付書式でした どういう関連性があるのかいまいち判らないんですが・・・ ただマクロで片っ端から条件付書式を削除するのは気持ち悪いので on error gotoで逃げるだけにしました
>>42 > 上の方が一般的でしょ。
いいえ
>>44 > 速度厨に何を言っても無駄。
対立する意見には、とりあえず〜厨と付ければ
それだけで自分たちの立ち位置が上になったと
勘違する可哀想な子
53 :
名無しさん@そうだ選挙にいこう :2007/01/05(金) 21:49:42
前スレ961(年度と取引先に応じた売り上げの切り分け)ですが セルB14が2001年度A社の売り上げ欄として、配列数式で {=SUM(($A$2:$A$9=B$13)*($B$2:$B$9=$A14)*$C$2:$C$9)} んで、他の所にコピペってなやり方をよく使ってるんですが この方法ってあんまりよくないんでしょうか? あまり見かけないので何か問題があるのかと不安です^^;
蒸し返すな馬鹿
>51 リンク先にあるリンクが見れないですが スクロールしてレンジ選択するのも駄目なんですか・・・ インプットボックスの仕様にはそういう不文律があるんですね ありかとうございました
56 :
たすけて〜〜 :2007/01/05(金) 22:13:36
オフィス2000のソフトが壊れてしまい カボスでソフトをダウンロードしたのですが なんと英語、日本語にはできないのでしょうか? だれか助けてください
>>56 お金を払ってソフトを購入した方のみ相談に乗ります。
59 :
名無しさん@そうだ選挙にいこう :2007/01/05(金) 23:02:26
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 { }で囲まれた計算式があるのですが、セル内を編集すると{ }が消えてしまって、計算結果が正しく出なくなってしまいます。 実際の一例を出すと {=SUM(IF([KbaDataYK.xls]ALL!$F$3:$F$65535="GII",IF([KbaDataYK.xls]ALL!$I$3:$I$65535>0,1,0),0))} で計算できていたものが、編集すると =SUM(IF([KbaDataYK.xls]ALL!$F$3:$F$65535="GII",IF([KbaDataYK.xls]ALL!$I$3:$I$65535>0,1,0),0)) なってしまい、正しく計算されません。 ネット上で公開されていたシートを改変して使おうとしているので、計算式の内容もいまひとつわかりません。他のシートとリンクさせていることはわかるのですが。 どうすれば正しく計算できるようになるでしょうか。ご教授お願いします。
>>59 マンドクサイので、公開されているサイト晒して。
>>59 CtrlとShift押しながらEnter
>>55 こんなのがあった、メモメモ
Function MyInputBoxRange(Prompt As String, Title As String) As Range
Dim Counter As Long
Dim RealPrompt As String
Counter = 0
Do
Select Case Counter
Case 0:
RealPrompt = Prompt
Case 1:
RealPrompt = "ちょっと内部で問題が発生したみたいです。すみませんがもう一度選択してください。" & Chr(13) & Prompt
Case 2:
RealPrompt = "まだ問題が解決しません。セルを直接選択せずに範囲をキー入力してみてください。" & Chr(13) & Prompt
Case Else:
If MsgBox(Prompt:="問題が解決しないようですのでキャンセルしますか?", Title:="確認", Buttons:=vbYesNo + vbDefaultButton2) = vbYes Then Exit Function
End Select
On Error Resume Next
Set MyInputBoxRange = Application.InputBox(Prompt:=RealPrompt, Title:=Title, Type:=8)
On Error GoTo 0
If MyInputBoxRange Is Nothing Then Counter = Counter + 1
Loop While MyInputBoxRange Is Nothing
End Function
63 :
名無しさん@そうだ選挙にいこう :2007/01/05(金) 23:29:34
便乗ですまんが、複数セルに関数貼るときにシフト コントロール エンター同時押しするよな。 関数貼ったあと、その内の一つのセルの内容変えたら無限ループが始まってしまうというのは仕様か? 幸い、保存もできないから電源切ってしまえば解決するんだが。
64 :
名無しさん@そうだ選挙にいこう :2007/01/05(金) 23:34:59
>>63 配列数式でなければCtrl+Enterで
Shiftはいらないのでは?
65 :
59 :2007/01/05(金) 23:44:13
>>63 「配列の一部を変更できません。」
なら正常動作だと思います。
67 :
名無しさん@そうだ選挙にいこう :2007/01/06(土) 00:02:28
いや、そのあと無限ループが始まるんだよ。 何しても同じメッセージが続く。
循環参照でもしてるんでしょ
変更を取り消せよ
70 :
名無しさん@そうだ選挙にいこう :2007/01/06(土) 00:44:58
71 :
名無しさん@そうだ選挙にいこう :2007/01/06(土) 01:33:16
変更を取り消せなくなるんだよ。 エクセルの終了もできん。不具合だな。
72 :
名無しさん@そうだ選挙にいこう :2007/01/06(土) 01:38:57
ESC押して
73 :
名無しさん@そうだ選挙にいこう :2007/01/06(土) 01:57:53
数式バーにカーソルを移動させるショートカットキーを教えてくdさい。
74 :
名無しさん@そうだ選挙にいこう :2007/01/06(土) 03:37:00
セルに001と入力すると1になってしまいます 001と入力するにはどうしたら良いですか???
75 :
名無しさん@そうだ選挙にいこう :2007/01/06(土) 03:41:16
オートフィルタオプションはどうやれば出てくるのでしょうか?
76 :
名無しさん@そうだ選挙にいこう :2007/01/06(土) 04:33:42
【1 OSの種類 .】 MacOS X 10.4.8 【2 Excelのバージョン 】 Excel v.X 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 セル 編集 Mac版のv.Xでは、セル編集するためにいちいちダブルクリックしなければなりません。 Windows版では[F2]キーでセル編集モードになりマウスを使う必要がないので効率的です。 Mac版ではセル編集モードに入るキーボードショートカットはないのでしょうか? 「ない」という回答でも結構です、ご存知の方教えてください。
グラフの大きさを完全な正方形にする方法はありますか? 単位はなんでもいいので、グラフの大きさを数字で指定できればウレシイのですが。
>>70 ああ、流れちゃったか
作ったBOOKは会社のPCの中だし、今夜は夜勤じゃないんだ。
覚えてたら明日の夜勤の時にアップしてみる。
>>73 F2キーでセルを直接編集できる
>>77 縦横を同じポイント数にしたセルに合わせれば、【表示範囲】は正方形にできる
表示範囲の四隅をAltキーを押しながらドラッグするとセルの角に沿って範囲を変えられるから頑張ってちょ
プロット範囲だったら知らん
>>74 '001 あるいは表示形式を文字列にして
81 :
名無しさん@そうだ選挙にいこう :2007/01/06(土) 10:46:55
ユーザーフォームにTextboxを4つ配置してMaxlengthを設定、オートタブをTrueにしましたが、Textbox1の入力がおわるとフォーカスがTextbox4に移ってしまいます。どこか設定がおかしいのでしょうか?ご教授下さいm(__)m
83 :
名無しさん@そうだ選挙にいこう :2007/01/06(土) 11:00:19
ひとつのセルの前からある値と 新しく書きかえた値を合計するやり方を教えてください。
>>83 不可。
折角のExcelなんだから別セルを利用せよ。
>>83 あまりうれしくない事が起こる可能性が大
Dim s
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
s = Target(1).Value
End Sub
Private Sub Worksheet_Change(ByVal Target As Range)
Application.EnableEvents = False
Target(1).Value = s + Target(1).Value
Application.EnableEvents = True
End Sub
86 :
83 :2007/01/06(土) 12:15:51
87 :
名無しさん@そうだ選挙にいこう :2007/01/06(土) 12:20:05
>>82 上から0、1、2、3です。タブオーダーも順番通りにしてあります。ちなみに入力はスキャナーでバーコードを読んでます。
>>81 マルチポストの上にテンプレ無視
この情報だけで分かるわけないだろ
標準のセルに全角で「+キャベツ」と書き込みたいのです 「+」が勝手に「=+」に変換されて「#NAME?」となります セルの書式を「文字列」にする あるいはセルに「="+キャベツ"」と入力するしかないですか? ようするに素で「全角+」を特殊なものと認識させない方法です
'+キャベツ
十キャベツ
93 :
9 :2007/01/06(土) 15:26:50
95 :
90 :2007/01/06(土) 16:07:56
表の罫線の太さを変えたいのですが_ですか? 2002です。
普通の線だと太すぎるのでもっと細くしたいんですが ぐぐったら仕様で出来ないと見つけたので、 2ちゃんねらだったら裏技知ってるかな?と思いましたので。
98 :
名無しさん@そうだ選挙にいこう :2007/01/06(土) 16:59:38
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 罫線 線が引けない 罫線を引いた時に一つのセルの1部分だけ線が表示されなません。セルの保護はかか ってないと思うのですが他にどんな原因が考えられるでしょうか?
>97 種類は少ないが、セルの書式設定で細い線は引ける。 あるいは、グレーにして見掛上細く見えるようにする。 この時ページ設定で、白黒印刷のチェックは外す。 >98 空白文字が入ってんじゃないの。
>99 ありがとうございます。 解決しました。
>97 セルのプロパティ→罫線→スタイルから選択できるけど "なし"のすぐ下の点線みたいなのが一番細い線が引きたいならマクロを使っても無理 オートシェイプで引いた線ならあるいは? >98 違うと思うけど条件付書式とか
102 :
101 :2007/01/06(土) 17:37:38
またやっちゃった
103 :
エキシージ :2007/01/06(土) 18:46:19
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 ほんのすこし 【4 VBAでの回答の可否】 可 質問 リアルタイム(2〜5秒間隔)で外部データ(数字)が入ってきます その数字に関数式を使用して、違う数字として出力させていますが その計算式の結果をリアル(データ分)で記録させたいのです。 (今は見てるだけw) 関数式のみでは、難しかったので VBAの式をお教えください。よろしくお願いします。
それって株式のaddinか何かなんだろ。 ここで聞いて答えが出る類のものじゃないと思うがな。 でないんだったら、もっと具体的に書いてよ。その外部データは どのように入ってくるものなのかとか。
>>99 微妙ですね・・
>>101 オートシェイブは大量にセル幅変更したときずれやすいので嫌いなんです。
106 :
エキシージ :2007/01/06(土) 19:57:38
>>104 そうです株式の値段です。
そのままのデータを関数に入れると
計算してくれませんので、簡単な数式を組み合わせて
結果を出しています。
6.333とか2.888とか
この計算した数字のみの結果を記録したいのです。
107 :
104 :2007/01/06(土) 20:09:41
>>106 OnTime メソッド を使って計算し、その計算値をどんどん貼っていくぐらいしか思いつかん w
一定時間隔で自動計算して計算した時間をファイル名に付加してsaveasで保存とかかな
外部データって何のアプリ使ってるの?
つうか
>>104 も書いてるけど絶対的に情報が少なすぎて答えようがないな
システム自体は多分めちゃくちゃ簡単なものになるだろうけど
>>103 Sheets("Sheet1").Range("B1")=Sheets("Sheet1").Range("A1")
112 :
エキシージ :2007/01/06(土) 20:55:43
113 :
名無しさん@そうだ選挙にいこう :2007/01/06(土) 22:12:33
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 可・否 シート1のA1のセルに入力した文字をシート2にも表示したいのですが 出来ますでしょうか?
なに?この低レベルな・・・
116 :
エキシージ :2007/01/06(土) 23:11:36
>>111 これでいいんですかね〜?
Sub Macro1()
Sheets("Sheet1").Range("B1")=Sheets("Sheet1").Range("A1")
End Sub
走りません・・・
>>110 何を言えばいいのか
それさえもわかんないもんで・・
イメージとしては
ぱらぱら数字が来るのを、まず受け止めて
別シートにA1からA2・・・・とならべて
書いてくれるプログラム
>>116 俺語で書かれてもわからん、ちゃんとした言葉で書くか
せめて「リアルタイム(2〜5秒間隔)で外部データ(数字)が入ってきます」
は何を使って実現しているのかを公開して
>>116 質問もきちんとできない奴はとっとと消えてくれ
>>116 あなたがわからないものが、ここで答えてる人にわかるわけないじゃない。
例えばさ、Sheet1にWebクエリで定期的に更新される株価情報をSheet2に
A B ・・・
1 銘柄
2 時間 株価
・
・
・
見たいな感じで書き込みたいってこと?漠然としたイメージじゃ誰も答えようがないし
>>116 のレベルじゃコード書いてもらっても意味わからんでしょ?
120 :
113 :2007/01/06(土) 23:39:05
>>114 どうもありがとうございます!出来ました。
あともう一つお聞きしたいのですが、
シートのAH3〜AN26までが画面から外れバーをずらさないと見えなくて困っています。
同じシート内に、その部分だけドラッグ移動出来るような別ウィンドで表示させるという事は
不可能でしょうか?
122 :
エキシージ :2007/01/06(土) 23:55:35
>>119 はい、わかりました
Sheet1にクエリで入る値段があります
その値段を3で割ります。
割った値段が
Sheet2に
A
1 2.33
2 2.42
3 2.58
・ ・
・ ・
今現在は、この数字がぱらぱら動いているだけ
やりたいことはシート2に記録として
蓄積したい。
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 外部データの取り込みで、 エクセルファイルから取り込もうとしてるんですが、 一部反映されないデータがあります。 どうやら、書式に不具合なデータは除外されるようです。 例:日付の書式にしてるとこに文字列が入力されているセルは弾かれる 単純にリンク貼り付けるだけだと重くなりそうなので、 他にいい方法ないかなと思ってます。 よろしくお願いします。
>>122 Sub Macro1()
MyRow = Application.CountA(Sheets("Sheet2").Range("A:A")) + 1
Sheets("Sheet2").Range("A" & MyRow) = Sheets("Sheet1").Range("A1") / 3
End Sub
126 :
エキシージ :2007/01/07(日) 10:58:03
>>125 まだ、リアルでは確かめてないのですが
手動では動きました。
ありがとうございます
拙い説明でご迷惑かけました。
127 :
名無しさん@そうだ選挙にいこう :2007/01/07(日) 12:41:16
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 散布図グラフのプロットの上にマウスを持って行くと、各点のデータ(要素)がポップアップで 表示されますよね。 このポップアップに別の行の値を表示させることはできますか? たとえば、 A B C 1 国語 算数 2 安倍 80 85 3 小泉 85 80 4 森 75 86 5 小渕 90 80 6 橋本 80 90 でBとCの散布図の点にマウスを持って行くと、Aがポップアップで表示されるような。。。 Aのセルをクリックすると散布図上の対応する点が強調表示されるようにもできませんか?
質問です。 Excelにハイパーリンクを仕込んで、そこから飛ぶと、 画面のフェード効果/スクロール効果が勝手にONになるようです。 (画面のプロパティ→効果→次のアニメーション効果を…のとこ) ONにならないようにする方法はないでしょうか。 毎回OFFにするのがめんどくさくて。。。 OS:WinXPSP2 Excel2000 試した検索は「excel (フェード効果|スクロール効果|アニメーション効果) ハイパーリンク 画面 -powerpoint」 です。
それExcelの問題なの?
XPのスレで聞いたらこっちに誘導されたのです。。。
A B 1 日付 売上 2 1/1 140 3 1/2 125 4 1/3 115 5 1/4 135 6 1/5 120 7 1/6 150 ・ ・ ・ ・ ・ ・ Bに毎日売上を付け足していって、最近10日間の平均売上を 自動的に表示するようにしたいのですが、どのようにすれば良いのでしょうか?
C列にIF関数で「A列の値が最近10日間以内なら」を条件に Bの値を返す式を組んで、C列の平均を出す。 作業列使いたくなければ配列数式
133 :
70 :2007/01/07(日) 19:07:39
F2 の方、ありがとうございました。
再現性がある問題なら、MSのサポートに投げておいた方がいいかもね。 つーか、それ以外にできることなさげ。
137 :
78 :2007/01/08(月) 03:08:10
138 :
78 :2007/01/08(月) 03:11:19
大丈夫だ!
139 :
70 :2007/01/08(月) 10:49:40
>>78 さん
夜勤ご苦労様です。
無事DLできました。感動しましたよ〜 ありがとうございます。
RAND()*30のところは30を最大ー平均の値を参照するようしてみました。
問題ないですよね?
平均、最大、最小値を小数点2桁にしたかったので
差の入力で小数点の数値を入れたました。(列B)
この方法以外にありますか?
コメントあったらお願いします。
140 :
名無しさん@そうだ選挙にいこう :2007/01/08(月) 11:16:26
Sub 例題12() Dim uriage As Range, i As Integer Worksheets("sheet4").Select Set uriage = Range("sheet1!A3:J7") For i = Range("A3").Value To Range("C3").Value Step 1 moveData uriage.Rows(i) ActiveSheet.PrintPreview Next i End Sub Sub moveDaata(siten As Range) Dim i As Integer Cells(6, 6).Value = siten.Cells(1).Value Cells(6, 8).Value = siten.Cells(2).Value For i = 3 To 10 Step 1 Cells(9, i - 1).Value = siten.Cells(i).Value Next i End Sub これの意味を日本語訳で教えてくれませんか。
>>140 潜水艦例題12()
薄暗いuriage As Range、i As Integer
ワークシート、(「sheet4") .Select」
uriage=範囲を設定してください。(「sheet1!A3: J7"、)、」
i=範囲、(「A3") 及ぶ.Value、(「C3") .Valueは1moveData uriage.Rowsを踏み
ます」。(i)
ActiveSheet.PrintPreview
次のi
終わりの潜水艦
潜水艦moveDaata(siten As Range)がsiten.Cells(2).Value For i=3To10Step1
siten.Cells(1).Value Cells(6、8)i As Integer Cells(6、6).Value=.Value=
Cellsを薄暗くする、(9、i--、1).Value=siten.Cells(i).Value Next i
終わりの潜水艦
>>140 マルチじゃなかったら教えてやるんだがな
とはいえ、このくらい簡単なら誰かが踊って(答えて)くれるかも
マルチにも意気揚々と答えちゃうバカの中にも
このくらいなら解る奴も居るだろうから
>>141 潜水艦でマジコーヒー吹いたじゃねーかコノヤロー
エキサイト翻訳バカスwww
145 :
名無しさん@そうだ選挙にいこう :2007/01/08(月) 14:45:06
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可能な限り使わない方向でお願いします。 【5 検索キーワード 】 Googleやヘルプでの検索キーワード 上から順にa,b,a,c,c,d,a,d,e...等とセルに入力されている状態で、 並べ替えをした時にa,a,a,c,c,d,d,c,e...と重複したものだけをまとめて一番上、若しくは一番下に来るようにする場合、 どのようなやり方がいいでしょうか? 今考えているのは、列を増やして=COUNTIF($A$1:$A$7,A1)という式を一番上の行に入れた後、 そのまま下にオートフィルで最後の行までもっていき、最後にその列を基準にして並び替えるというものです 宜しくお願いします。
148 :
森田 :2007/01/08(月) 18:14:46
【1 OSの種類 .】 Windowsxp 【2 Excelのバージョン 】 Excel97 【3 VBAが使えるか .】 少し 【4 VBAでの回答の可否】 可 セルに入力されている文字を変更する時、デリートで消してからしか、 新しい文字を入力できないように出来ないでしょうか?標準の設定では、 すでに入力されている文字が消えて、新しく打った字が、上書き入力 されてしまうので、、、 教えてください。
>>148 セルをロックしてシートを保護しておき、
Deleteが押されたら、アクティブセルのロックを解いて編集状態に
編集が終わったら再ロック
あとはヘルプ読んで頑張ろう
がんばれ森田
151 :
名無しさん@そうだ選挙にいこう :2007/01/08(月) 22:02:03
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2002 SP-1 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 Excel 書式の固定 どのセルやオートシェイブのテキストボックスでも文字の大きさを8、文字を真ん中にセンタリングしたいです。 メニューのツール→オプション→全般タブで文字の大きさを8にしましたが、11のままです。 どうしたら固定できるのでしょうか?
行番号と列文字の左上にある箇所を押すと全セル選択できるから その状態で書式設定すればいいよ。 オートシェイプは一つの書式を設定した後に、右クリックのメニューで [オートシェイプの既定値に設定]すればいいんじゃないかな? すべての新規ブックの書式を揃えたいんだったら、xlstartフォルダ内に テンプレートとして保存しとけばいいよ(この辺は検索してみて)。
153 :
名無しさん@そうだ選挙にいこう :2007/01/09(火) 07:14:52
エクセルでセル内に「18.0」と入力すると、自動的に「18」となってしまうのですが、 どうやれば「18.0」のまま表記できますか? XPでエクセル2003です。 お願いします。
>>153 表示形式
小数表示桁上げ下げのツールコマンドもある
155 :
名無しさん@そうだ選挙にいこう :2007/01/09(火) 07:33:51
すいません。 具体的にどこの設定をどう変えればいいのか教えてください。 お願いします。
> ▼━質問時の注意・決まり事 ━━━━━━━━━━━━━━━━━ > ・5 回答内容でわからない部分があっても、すぐに聞き返さずにヘルプやGoogleなどで検索しましょう。
157 :
エキシージ :2007/01/09(火) 09:17:41
>>125 マクロの実行ボタン押すと走るのですが
自動では走りません
すみませんが
お教えください。
>>157 そのくらい自分でやれよ
「ほんのすこし」はVBA出来るんだろ
この程度も出来なかったら全く出来ないと申告した方がいいな
∨ / ̄ ̄ ̄ ̄\ ( 人_____,,) |ミ/ ー◎-◎-) (6 (_ _) ) カタカタカタ | ∴ ノ 3 .ノ ______ ヽ、,, __,ノ | | ̄ ̄\ \ / \.____| | | ̄ ̄| / \___ | | |__| | \ |つ |__|__/ / /  ̄ ̄ | ̄ ̄ ̄ ̄| 〔 ̄ ̄〕
161 :
Excel関数マスター様m(_ _)m :2007/01/09(火) 09:55:42
質問があるんですが、 例えば、 1〜10までの10個の数字のうち3つの数字を選ぶ通り数は120通りだと思うんですが、 この120通りすべてを一気に表示ことってできますか? 知ってる方いたら教えてください!! XP・2000です!
>>161 どう考えて120通り?
A列:1桁目、B列:2桁目、C列:3桁目として、
---------------------
1 1 1
1 1 2
1 1 3
1 1 4
1 1 5
1 1 6
1 1 7
1 1 8
1 1 9
1 1 10
1 2 1
1 2 2
1 2 3
1 2 4
1 2 5
---------------------
1桁目「1」だけで100通りはあると思うけど。
この流れで下方向に連番振ってけばすぐ出来上がるよ。
コツは連番と列単位でのソート。
一気にはVBA使わないと無理だと思う。
上記と同様の考え方で3つの変数をループさせよう。
>>158 =
>>160 横から見てて見苦しい。回答しないなら書き込まなくて良い。
>>162 10個の数字のうち3つの数字を選ぶと、いうことは
1 1 1
というように重複したらおかしいね。
日本語が理解出来ないのかな。アホな回答するなら書き込まなくて良い。
必死だなw
>>162 俺は154=156=158だが残念ながら160ではないぞ
161はマルチだから答える必要無いし
○質問する方へ○ モジュール、プロシージャ、変数、イベント等の基礎知識が無いのに "初心者"や"すこしできる"などと申告すると回答者はそれに合わせて回答します。 けっして自分のためになりません。実力は正しく申告しましょう。
>>166 自分も突っ込みたいんだけど駄目?(´・ω・`)
確かに必死でワラタ
170 :
Excel関数マスター様m(_ _)m :2007/01/09(火) 11:30:12
あぁやっぱり地道に入力しないとダメですか・・・ なんかないかなって探したんですがなくて。 ありがとーございました!!
> あぁやっぱり地道に入力しないとダメですか・・・ そうでもない > なんかないかなって探したんですがなくて。 1つの関数で一発で出来るようなのはないけど 複数の関数で式を組めば可能 > ありがとーございました!! はい、さよーなら
173 :
名無しさん@そうだ選挙にいこう :2007/01/09(火) 12:28:48
ちなみに何のために表示させたいの?
なんか162が必死だね 余程恥ずかしかったのかな?
175 :
162 :2007/01/09(火) 13:01:00
>>163 おお、重複してたか。すまん。フィルタ張って消したらエエがな(´・ω・`)
>>165 外してたか、これまたすまんw
>>174 俺今日は一回しか書いてないよ。
なんか荒れてしまって正直すまんかった。消える。
176 :
名無しさん@そうだ選挙にいこう :2007/01/09(火) 13:21:40
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 VLOOKUP 『「会員番号」を入力すると、それに該当する人のデータが表示される機能をVLOOKUP関数を用いて作成しなさい』 という問題が出たのですが、初心者の私にはさっぱり分かりません。教科書には載っていないし、検索しても分かりませんでした。何方か教えてください! 会員番号氏名〒住所誕生日年齢血液型性別
|
|
ぱくっ|
/V\
/◎;;;,;,,,,ヽ
>>176 そんなエサで
_ ム::::(,,゚Д゚)::| 俺様が釣られると思ってんのか!!
ヽツ.(ノ:::::::::.:::::::.:..|)
ヾソ:::::::::::::::::.:ノ
` ー U'"U'
>>161 すっごい思いつきなんだけど、これで。
for a=1 to 8
for b=a+1 to 9
for c=b+1 to 10
'組み合わせ(a,b,c)
next
next
next
179 :
エキシージ :2007/01/09(火) 14:01:39
すみません 全然できません
そうでしょうね。
笑うところ ↓ 181
つーか161は条件が不足しすぎ。
「1〜10までの10種類の整数を、重複しないように3つ選択した場合の組み合わせ通り数」
くらいの条件は出そう。120通りというのから、重複無しの組み合わせ通り数であることは予測できるけど
クイズスレじゃないんだから回答者に予測させるような質問はやめよう。
>>162 は重複有りの並び通り数という解釈をしたようだが、120通りという情報が無かったら、
その解釈を間違いだと言い切れるだけの条件は
>>161 には書かれてない。
もうスルーすりゃ良いんじゃね?
次の話題に行きたいのは山々だが、
>184
>120通りという情報が無かったら、その解釈を間違いだと
言い切れるだけの条件は
>>161 には書かれてない。
だから120通りという情報があったの!
>>186 かろうじて予測を可能にする情報ではなく明確な条件を書いた方が良いということを
言っただけなんだが、何かお気に障ったようで。
>>187 こういうのは放っておけ
何か嫌なことでもあったんだろ
きみたち、煽り耐性を身につけてはどうかね?
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2002 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 Excel 色 文字 VBA 特定の文字のみ色を一括変更したい。 例) Sheet1 A1にABCとあった場合Bの文字のみを赤色に変更 Sheet1 A2にDEFとあった場合Fの文字のみを青色に変更 Sheet2に変更したい文字(A列)とColorIndex(B列)を入力 A列 B列 B 3 F 5
>>190 特定の文字のみの色変更をマクロの記録に録ってみな。
特定文字の色変更方法がバッチリわかるから。
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 メッセージボックス 改行 If Msgbox("なんたらかんたら〜" ,VbYesNo) = VbYes Then のメッセージボックスですが「なんたらかんたら〜」の文字を任意の位置で改行させる事は可能でしょうか。
196 :
192 :2007/01/09(火) 21:21:25
>>193 If MsgBox("なんたら" & Chr(10) & "かんたら", vbYesNo) = vbYes Then
って事ですね。
ありがとうございました。
>>193 そのググり方は間違いだ。vbCrLfという回答を与えるなら、直接書けばいいが、
ググった結果を提示するならvbCrLfは行き着く結果であって検索単語には入らない。
vbCrLfを知っていたら
>>192 のような質問は出ないからな。
検索結果で回答するなら「VBA 文字列 改行」あたりが妥当。
198 :
186 :2007/01/09(火) 21:42:38
オレは荒らしなのか? >161で示された条件を読むと 10*10*10 or 10*9*8 or 10*9*8/(3*2) の3通りが思い浮かぶ。で 120通りという事だから 重複なしの順序は無視する、3番目と分かる。 条件が不足しているとは思えない。 >120通りという情報が無かったら… あったのに、無かったらなんて仮定は、 無茶だと思いませんか? 蒸し返してスマン
200 :
名無しさん@そうだ選挙にいこう :2007/01/09(火) 22:37:31
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 VBAについて ・VBEを開くとき、「プロジェクトがロックされています」を表示 ・バイナリエディタにて開くとき、「DPB=」を非表示 とする方法ってありますか?
201 :
名無しさん@そうだ選挙にいこう :2007/01/09(火) 22:44:57
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 csvファイルをエクセルで開いたとき、 文字列のデータで"1-2-3"ようなものが、 日付として認識されてしまうのですが、 それを回避する方法ってありますか。
>>200 1番目はVBEプロパティで出来るだろたぶん。
2番目はVBA関係あるのか?
なんで3.をはいって答えてるのにヘルプも見ないのか
>201 俺も知りたい 頭に付く0が勝手に省略されるんだよね
>>201 (拡張子をtxtに変更してExcelから開き)
テキストファイルウィザードで設定し文字列として読む
すみません
ここで聞いてよいのか分からないのですが・・・
IMEの手書きパッドが下の画像のようになってしまって困っています
ttp://kjm.kir.jp/pc/?p=27905.jpg どなたか元に戻す方法、ご存じありませんか?
【1 OSの種類 .】 Windows2000
【2 Excelのバージョン 】 Excel 2003
【3 VBAが使えるか .】 いいえ
【4 VBAでの回答の可否】 否
【5 検索キーワード 】 エクセル OR excel IME
207 :
201 :2007/01/09(火) 23:25:16
>>205 フィールドが100個ぐらいあるデータなんだけど、
やっぱりチマチマと指定してくしかないか・・・
>207 予めテキストエディタで , を , ' で置換しておくとか・・・
データのプレビューの右端をクリック、SHIFTを押しながら左端をクリック
【1 OSの種類 .】 Windows XP 【2 Excelのバージョン 】 Excel 2002 sp3 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 Excel 計算 行全体 etc 4万行ほどのデータがありまして、それぞれの行の数値を定数で除したいのですが、 他の列の行の先頭のセルに数式を打ち込んで、その計算を行全体に適用したいと思っています。 セル右下の十字をドラッグしていけばいい計算出来るのですが、 4万行ともなるとかなり面倒なので、一発で計算を行全体に適用する方法はありますでしょうか? わかりにくくて申し訳ありません。 かなりの初心者ですが、よろしくおねがいします。
>>210 Ctrl+G → 式を入れたい範囲を入力 → 数式バーに式を入力 → Ctrl+Enter
先頭行に式を入力 → Ctrl+G → 式を入れたい範囲を入力 → Ctrl+D
先頭行に式を入力 → データ列の先頭をアクティブにして、 Ctrl+↓ ・ →(式を入れる列まで) ・ Ctrl+Shift+↑ ・ Ctrl+D
こう書くと面倒そうに見えるかも知れないが、要は式を入力してから範囲選択したらCtrl+Dで一発、
又は範囲選択してから式を入れてCtrl+Enterで一発。基本的なキー操作は覚えておきましょう。
212 :
210 :2007/01/10(水) 01:22:43
213 :
名無しさん@そうだ選挙にいこう :2007/01/10(水) 02:02:23
【1 OSの種類 .】 Windows2000 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 次の式で答えが1になる意味が理解できません。 言葉で表現すると、どういう意味なのでしょうか。 A B C D 1 1 2 3 4 2 =(A1<B1)*(C1<D1) 不等号はIF関数などで使用する場合の意味程度で理解しています。 初歩的な質問なようで申し訳ありませんが、宜しくお願いします。
TRUE:1 FALSE:0
>>210 数式を4万行埋込むのが好きなら、別に止めないが
定数をコピー⇒形式を選択して貼り付け⇒除算
という方法もある。
範囲選択はデータが連続していれば
Ctrl+Shift+↓ で一発。
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】グラフ 書き方 EXCELで横棒グラフを書くときに分類名が長いと勝手に斜めにされたり 8つ項目があったのに省略されてひとつ飛ばしに4つしか名前が表示されなかったりします これをちゃんと全部表示するにはどうすればいいのでしょうか?
↑またでた
↑またでた
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2007 【3 VBAが使えるか .】 【4 VBAでの回答の可否】 【5 検索キーワード 】 Excel 制限 ブックに含まれるセルの書式の組み合わせが約 4,000 を超える場合に発生する "表示形式を追加できません" は2007では改善されてるでしょうか?
>>220 発売前の商品は、Microsoftのサポセンにご確認下さい。
書式の追加はできません。と出るのはなぜですか?
解除は出来ないのですか?
出来ないこともないこともないってわけではない
ダメだ、この時間帯のこのスレ。
4000も、書式設定が必要な book ってどんなんやろ? ある意味尊敬するわ。
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2002 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】フィルタ なんて説明したらいいかわからないので、わかりにくいかもしれませんが・・・ エクセルで、一つのセルをアクティブセルにしたら、そのセルの中でオートフィルタみたいな 形になって、三角がでるやり方知ってる人いますか?(オートフィルタの時のあの矢印です) 名前?設定?をなんていうのか、わからず検索すらできません。 よろしくお願いします
コンボボックス、リストから選択
232 :
104 :2007/01/10(水) 20:15:39
>>229 入力規則の設定の事を言ってるのかどうか
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 勉強1ヶ月位 【4 VBAでの回答の可否】 可 ハイパーリンクのコピー → 貼り付け を自動実行したく マクロにて記録してみたのですが 通常の 全てをコピー → 貼り付け になってしまい上手くいきません どうにか方法ないでしょうか? よろしくお願いします
>>234 ハイパーリンクしているセルを選択してコピーすればマクロで記録出来ていますが?
一体何をしたいのか分かりません
>>234 こちらも2000
試すとハイパーリンク関連はマクロの記録で取れないね
ちょっと違った、「取れないことがある」だ 全部じゃなかった別手順にすればとれるかも
【1 OSの種類 .】 Windowsxp 【2 Excelのバージョン 】 Excel 2003 sp2 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 残業中です。 グループの中のアイテムの個数の合計を、グループ単位で呼び出す方法がありますでしょうか。 たとえば、下記のような場合、野菜のグループ等が全部でいくつあるのか 野菜=○個 くだもの=○個と呼び出せる関数などはありますでしょうか。 オートフィルタを使って値を表示し、一つずつ別の表に値を打ち込んでいますが グループ数が300あるため時間がかかりすぎます。よい方法があれば帰れそうです・・・。 やさい 大根 5 くだもの ぶどう 5 雑貨 消しゴム 2 やさい じゃがいも 3 くだもの りんご 2 くだもの バナナ 3 雑貨 えんぴつ 5
241 :
名無しさん@そうだ選挙にいこう :2007/01/10(水) 22:49:20
>>214 なるほどです。
ありがとうございました。
242 :
名無しさん@そうだ選挙にいこう :2007/01/10(水) 22:53:09
243 :
242 :2007/01/10(水) 22:55:14
あ、グループ数が300あるんじゃめんどうか 失礼しました
239です。
>>240 様、
>>242 様ありがとうございます。
できました!
すごい機能を発見して嬉しいです。
本当にありがとうございます。
245 :
名無しさん@そうだ選挙にいこう :2007/01/10(水) 23:47:14
【1 OSの種類 .】 Windows ME 【2 Excelのバージョン】 Excel2002 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 1ヵ月間 個数 カウント 不具合の発生日と場所の表をつくりました。(A,B列) 発生するごとに日付を入力し、場所を選択できるようにしました。 (場所は、入力規則で20個のリストから選ぶようにした) その隣(D列以降)に、1ヶ月間(16日から翌月15日まで)にどの場所で何件起こったかを表示させたいのですが。 完成したら下のようになる表にしたいです。 A B C D E F G H I 1 日付 場所 1月(1/16-2/15) 2月(2/16-3/15) … 2 1/16 階段A 階段A 2件 通路C 1件 3 1/30 階段B 階段B 1件 4 1/30 階段A 5 2/18 通路C 6 : : 日付と場所を入力するごとに、該当月に場所・件数が表示されるようにしたいのですが、 どのような関数を入れればいいでしょうか? わかりにくいかもしれませんが、宜しくお願いします。
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン】 Excel2002 【3 VBAが使えるか .】 まぁなんとかかんとか? VBEditorって通常(?)は2ちゃんの専ブラみたいに3ペイン(って言うのかな?)できっちり収まってるじゃないですか。 それがあれこれ触ってる最中に急にばらばらになってしまったんで、これを元の状態に戻したいんでそのやり方、 教えて下さい〜。
【1 OSの種類 .】 WindowsXP 5┃ \ 4┃ / ─── \ 3┃ / ─── \ 2┃/ 1┃ ━━━━━━━━━━━━━━━━━━━━━━━ 1 2 3 1 2 3 1 2 3 1 2 3 この図のように縦軸は1つで横軸を複数というようなグラフはかけますか? あるなら書き方を教えてください。 またはそれができるフリーソフトがあれば教えていただけますか?
>>249 横軸の元データの項目数増やせば良いだけじゃね?
>>245 DCOUNTとCOUNTIFの組み合わせ
252 :
名無しさん@そうだ選挙にいこう :2007/01/11(木) 14:39:35
>>250 すいません、もう少し詳しくおねがいします。
どうしても重なった感じのグラフになります。
>>252 横軸が、123 123 123 123となっているが、
これをABC DEF GHI JKLと考えれば、
元の表の項目を増やす、って意味は分かるかねぇ?
つか、どうなりたいのか、も一つ分からん。
>>253 今、abc defで試したところできました。
しかし123 123でするとやはり重なってしまいます。
別々のグラフを横に並べて表示したいのです。
分かりにくくてすいません。
>>254 正直123 123て何なの?
月別とかなら、元データを年まで入れて、グラフ側の表示形式で
月だけ表示すれば良いし、何がしたいか、もう少し書いてくれん?
256 :
名無しさん@そうだ選挙にいこう :2007/01/11(木) 15:25:18
123ってのは粉末の量です。縦軸が温度です(実際は12345でなくて0〜100度)。 それで粉末の種類が4種類あってそれを比較するグラフが書きたいのです。 1 2 3 1 2 3 1 2 3 ↑ ↑ ↑ 粉末A 粉末B 粉末C って感じです。
1g 2g 3g でやっってスペース空けたらうまくいきました。 できればgは消したいところですがなんとなくはできました。 ありがとうございます
258 :
名無しさん@そうだ選挙にいこう :2007/01/11(木) 16:06:53
段落罫線を消したいんですが消えません。 どうすれば消せますか。。
>>258 それはWordの例のバグの話か?
Excelの段落罫線ってのは何の事だろう。
260 :
名無しさん@そうだ選挙にいこう :2007/01/11(木) 16:35:56
>>259 すみません。Wordでした。
Word板で聞きます。。
261 :
245 :2007/01/11(木) 18:04:43
DCOUNTとCOUNTIFはどんなふうに入力すればいいんでしようか? すみませんが詳しく教えてください。 それと、ピボットテーブルを使ったやり方も、わかる方教えてください。
> DCOUNTとCOUNTIFはどんなふうに入力すればいいんでしようか?
ヘルプ参照
> ピボットテーブルを使ったやり方も、わかる方教えてください。
ヘルプ様やGoogle様が知ってますよ
とりあえず
>>2 の・5読んで、後は自分で頑張ろう
またでた
264 :
名無しさん@そうだ選挙にいこう :2007/01/11(木) 19:00:08
シート開いた瞬間に文字入力ボックスを自動で発生させたいときはどうすればいいのですか 普通にやると、どこかのセルをダボークリッキンとかすることがトリガーになるじゃないですか そういうことを何もせずとも出したい。
よく出るんだよね、回答に対してすぐに聞き返す奴。
>>264 Workbook_OpenイベントをヘルプやGoogleで調べてごらん。
またでた野郎がまたでたよ
269 :
名無しさん@そうだ選挙にいこう :2007/01/11(木) 20:21:12
「またでた野郎」が、またでたよ またでた野郎=いきなり「またでた」と言い出す野郎=263
272 :
名無しさん@そうだ選挙にいこう :2007/01/11(木) 20:59:33
うぜえな
,,,,,,,,,,,,,,,,,,,, /": : : : : : : : \ /-─-,,,_: : : : : : : : :\ / '''-,,,: : : : : : : :i /、 /: : : : : : : : i ________ r-、 ,,,,,,,,,,、 /: : : : : : : : : :i / L_, , 、 \: : : : : : : : :i / よし、『またでた』 /●) (●> |: :__,=-、: / < っと… l イ '- |:/ tbノノ \ l ,`-=-'\ `l ι';/ \ ヽトェ-ェェ-:) -r'  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ヾ=-' / / ____ヽ::::... / ::::| / ̄ ::::::::::::::l `──'''' :::|
でるのはGoogle案内人
276 :
名無しさん@そうだ選挙にいこう :2007/01/11(木) 21:53:20
ある列(号)の値が次の行のそれと一致していれば、ある行全部を削除する。 というマクロを作っています。 処理自体は出来ているのですが、無限ループしてしまいます。 Sub Macro Dim 号 As Integer Dim 行番号 As Integer 号 = 2 行番号 = 2 While Cells(行番号, 号).Value = Cells(行番号 + 1, 号).Value Rows(行番号).Select Selection.Delete Shift:=xlUp 行番号 = 行番号 + 1 Wend End Sub ステップインしてみたところ、 途中行から号列が空白になるのに、 それをWhile中の条件式が理解していないようです。 しかし、どーなおしたらよいのか謎、といったところです。。 どなたかヒントだけでもお知恵をさずけてくださいませんでしょうか?
277 :
名無しさん@そうだ選挙にいこう :2007/01/11(木) 21:56:38
うわ、ヘッダー付け損ねました。276です。 【1 OSの種類 .】 WindowsXPPro 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 はい多少は 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 While Do Loop
>>276 行ごと消す処理のループは、一番下のデータから順に上方向に
チェックしていくのが鉄則。1行目になったら終了、という風にしなさい。
280 :
名無しさん@そうだ選挙にいこう :2007/01/11(木) 22:18:53
【1 OSの種類 .】 WindowsXPPro 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 可 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 オートフィルタオプション 表示するレコードを複雑な条件で絞り込むことができるオートフィルタオプション。 右上のボックスには、「と等しい」「と等しくない」「より大きい」「以上」・・・「を含む」「を含まない」と 条件を選択する一覧があると思います。 さて、この条件の一覧の並び具合を変えることはできるのでしょうか(よく使うものを上のほうにもっていきたい)。 具体的には「を含む」「と等しい」・・・「含まない」「等しい」といったように並べ替えたいです。
蒸し返して悪いが、またでた野郎が嫌がってるGoogleの奴は、 各板の質問スレでよく行われている回答方法だと思うが、何が嫌なのか。 「○○(用語)でググれカス」というレスを、URL出す部分までやって くれてる訳だから、むしろ優しいし。
283 :
名無しさん@そうだ選挙にいこう :2007/01/11(木) 22:42:41
276です、ご回答ありがとうございます。
>278
>>276 >行ごと消す処理のループは、一番下のデータから順に上方向に
>チェックしていくのが鉄則。1行目になったら終了、という風にしなさい。
他のメンバーもあまりプログラムに詳しくないので、
彼らの理解のしやすさも考えできれば下方向ループにしたいんです。。
(データが昇順にならんでいるのです)
逆方向なら無限ループが防げるというのはわかるのですが
>279
>空白同士でもループするのでは?
最後の行と、空白最初の行とでは値が等しくないので、
ここでループを抜けるはずだと考えているのです。。
>抜けるはずだと考えているのです。。 この「はずだ」という思い込みで時間を浪費するんだな ww
285 :
名無しさん@そうだ選挙にいこう :2007/01/11(木) 22:58:37
どこの板だろうがコミュニケーション能力皆無の糞見るのはいい気分じゃねーだろ うぜーんだよボケ
>>283 他のメンバーを教育しろボケ
てめーが一人で何でもやるのが一番効率いいとかうぬぼれてんな馬鹿
人間そこまで馬鹿じゃねーよアホ
てめーだけが理解できるとか勝手に気負ってんな死ね。
>>283 Whileの後の条件が真である間、ループするもんだぞ。
データがどうなってるかによるだろ。
B2とB3が異なってたら、即終了だが、そんな処理なのか?
セオリー通り、最終行から、For〜Loopで逆順に回せ。
>>285 誰だお前w
>>286 言い杉
288 :
名無しさん@そうだ選挙にいこう :2007/01/11(木) 23:07:49
質問です。 例えば、A3セルで、=A1+A2とかで求めた数値を、その数字で確定させることってできますか? つまり、最初にA1+A2の数値を出したあと、数値を確定させたいのです。 (その後A2やA1セルに何を入力しても、A3セルは変わらないようにしたいのです。 説明が下手ですいません。 分かる方いましたらぜひよろしくお願い致します。
>>288 コピーしてから「形式を選択して貼付け」で値だけを貼る。
>288 計算方法を手動にする、とか
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 Excel エクセル F3キー 昔々使っていたロータスで可能だったF3キーのペースト機能がとても便利で、 2000以前ではオプションで『ロータス形式のキー操作』という選択をすると 同じようにF3キーが使えていたのですが、2000以降では使えません。 なんらかの方法でF3キーでのペーストが可能になりませんでしょうか? ご存知の方、宜しくお願い致します。
294 :
名無しさん@そうだ選挙にいこう :2007/01/12(金) 00:21:37
【1 OSの種類 .】 WindowsXPhomeSP2 【2 Excelのバージョン 】 Excel2002 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 Refedit 絶対参照 範囲 とあるデータシートのRefeditで選択した範囲をテキストファイルに書き込む というマクロを組んで使っています。ただ、選択範囲がsheet1!$1:$10のような場合だと 1gyome = Range(Refedit.Value).Row gyosu = Range(Refedit.Value).Rows.Count saigo = 1gyome + gyosu - 1 見たいな感じでやってるのですが、sheet1!$1:$1,$5:$5のような場合だと 1行目はRowで取れますが2行目がどうやって行数を取得すれば良いのかわかりません。 複数範囲を変数に取るにはどうすれば良いでしょうか?
295 :
294 :2007/01/12(金) 00:24:44
補足ですが、テキストデータへの書き込みはWrite #ステートメントをループさせてます。 出来ればループできるような形が良いです。
>>294 Refedit使った事ないけど、取得した範囲で、For Eachで
ループさせたら駄目なの?
297 :
名無しさん@そうだ選挙にいこう :2007/01/12(金) 00:37:24
【1 OSの種類 .】 Windows2000 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 エクセルの折れ線グラフについての質問させていただきます。 月曜日〜日曜日までの体重の増減の表を作ったとします。縦軸が体重、横軸が曜日で土日だけ縦に線を入れたい場合どうすればよいですか?
>>296 ありがとうございます
そうですよね、まるごとForEachにぶち込むこと考えますよね普通・・・
アホだ自分・・・
今ちょっとやってみます。
>>297 特定の項目だけ線を入れる、みたいな真似は出来ない。
300 :
297 :2007/01/12(金) 01:06:07
>>299 早速のご回答ありがとうございます!
やっぱり出来ないですよね・・・
>>296 For Each Rg In Range(UserForm1.RefEdit1.Value)
Set Rg = Range(UserForm1.RefEdit1.Value)
i = Rg.Row
Write #Fnum, Cells(i, 1), Cells(i, 2), Cells(i, 3), Cells(i, 4), Cells(i, 5)
Next Rg
これだとやっぱりRowプロパティで何度ループしても先頭行しか取れませんでした。
iが変化しません。お知恵をお貸し下さい。
302 :
294 :2007/01/12(金) 01:39:15
ごめんなさい、わかりました。 行番号クリックしてたので256列目までループしてました・・・ DoLoopと組み合わせれば出来そうな気がします。 ありがとうございました。
303 :
294 :2007/01/12(金) 02:15:35
できました〜。
>>296 さんヒントありがとうございました!
304 :
名無しさん@そうだ選挙にいこう :2007/01/12(金) 11:02:44
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 無関係 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 Excel 問題 コンテキストメニュー など Excelを2ウィンドウ開き、ウィンドウaの任意のセルをコピー、 ウィンドウbの任意のセルへCSVで貼り付けを行っていました。 <形式を選択して貼り付けより ある日突然、メニューキーを叩いてコンテキストメニューを表示させると、 「Alt,Space」で表示されるウィンドウのコンテキストメニュー(最大化など)が 一緒に表示されるようになってしまいました。 <メニューキー叩きで、「ウィンドウ」「セル」の2つに関するコンテキストメニューが表示される 現象が起きないときもあり、ランダムのようです。 同様の現象を確認されている方、解決法をお知りの方などがおりましたら、 情報提供をお願いいたします。
winXP office2003です。 一つのセルに長文を入れているのですが 文章の最初の方はきちんと折り返されますが、 最後の方は折り返されなくなります。 改善方法はありますでしょうか? 一行45文字程度で行数は40行ほどで、 何箇所か7箇所ほど改行が入っています。 よろしくお願いいたします。
>305 任意の位置で改行するなら改行したい場所でalt + enter
エクセルファンクラブが閉鎖になってるが、何があったのか知ってる人いる?
エクセルファンクラブは閉鎖になってないだろ。 Q&Aラウンジのみが、悪戯投稿対策のため一時ラウンジ閉鎖。
309 :
名無しさん@そうだ選挙にいこう :2007/01/12(金) 19:58:37
>>276 です。
みなさんのご指示通り逆ループにしてみたら
すべてがうまくいきました。
本当にありがとうございました!!
まじで2ch閉鎖かよ・・・ このスレにはかなり助けられたのに。このスレがなかったら、残業しすぎて死んでいたと 思う。 マジでどうしよう
2chが無くなっても、ここが無くなるわけじゃない 一時的に人は減るだろうがな
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2002 【3 VBAが使えるか .】 無関係 COUNTIFの検索条件に関する質問っす。 例えばA列に 44 46 48 50 51 とあって40〜49の範囲にある個数を知るのに現在 =COUNTIF(A1:A5,">=40")-COUNTIF(A1:A5,">=50")としてるんですけど、 この検索条件にANDで指定する事って出来ないのでしょうか。 =COUNTIF(A1:A5,AND(">=40","<50"))としたら結果に0が返ってきます。 まぁこれはANDの論理式がおかしいからなんでしょうけど。
>312 オートフィルタとSUBTOTALを使うとお手軽だけど駄目?
>>313 レスどもです。SUBTOTALってのをヘルプで見てみましたが、それとオートフィルタをどのように
使うのでしょうか?
論理式や論理値ってものが解ってないようだね。
例の式はわざと間違ってんでしょ。
>>317 お、俺にきくのかw
ええと、やってみれば分かるんだけど、
COUNTはオートフィルタで絞っても、解は変わらないけど、
SUBTOTALはオートフィルタで絞ったら、可視になっているセルのみ数える様に出来てる。
つまり、オートフィルタで、40〜49を絞れば、個数が出るって事でしょ。
>314 SUBTOTALで集計範囲を選択して集計方法を2にする 後はオートフィルタで40以上50未満に絞るだけなんだけど 考えているものと違ってたらごめんね
>317 配列数式ってのもあったね {=SUM(IF(A1:A5>=40,IF(A1:A5<50,1)))}
皆さん、どもありがと。 これからまた勉強してみます m(__)m
323 :
名無しさん@そうだ選挙にいこう :2007/01/12(金) 23:30:53
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2000 【3 VBAでの回答の可否】 否 【4 検索キーワード 】 連続データ オートフィル など 連続データ(数式)をコピーしたいのですが、 フィルハンドル⇒ドラッグ⇒オートフィルオプションと開いていっても、 「連続データ」という項目が出てきません。 右クリックでドラッグしても同様なのです。。 以前は出ていたような気がするのですが、どこかで設定を変えるのでしょうか? 本当に困っております。どなたか、お知恵をお貸しください。。
>>323 数式の場合、セル参照しかないだろうから「連続データ」は出ないので正解。
例えば、
A1に「=B1」って書く→A1を選択→Ctrl+C→A2にCtrl+V
とすると、A2には「=B2」と入るだろ。
これは連続データじゃなくて、ただのコピー、
つまり右クリフィルで言うところの、セルのコピーでOK。
>>320 おっ、牽制球投げて来たね!
うしろめたいのかな?
327 :
名無しさん@そうだ選挙にいこう :2007/01/13(土) 11:54:25
エクセルでセル内で()を使うと自動的に−になりんだけど、どうすれば解消されますか? 例 (21)と入力すると-21と表記される。 どなたかアドバイスお願いします。
>>327 頭に「'」(シングルクォーテーション)つけるか、セルの書式設定で文字列に。
↑これもテンプレに入れて。
>>326 >>320 じゃないが、お前もう黙ってろ。
test
331 :
名無しさん@そうだ選挙にいこう :2007/01/13(土) 12:22:12
EXCEL2002のVBAについての質問です。 VBAでグラフを描きたいのですが、 グラフ関連のオブジェクト、プロパティの一覧が載っている ホームページ、書籍等をご存知でしたら教えて下さい。
>>331 エクセル2002・VBAのヘルプに全部載っている。
333 :
名無しさん@そうだ選挙にいこう :2007/01/13(土) 16:26:27
日本語で言ってくれないと確認のしようが無いわけだが
335 :
名無しさん@そうだ選挙にいこう :2007/01/13(土) 17:41:33
集計で困っています 商品の売れ行きを計るためのもので、縦500横6ぐらいのデータに それぞれの商品が記入されています(種類は200-300近くの種類があります) それを集計して各商品がどれだけ売れているか集計したいのですが 現状使っている集計プログラムが 商品Aと6:500のデータを全て比較→商品Aの売れた個数を記入 商品Bと6:500のデータを全て比較→商品Bの売れた個数を記入 商品Cと… という感じで比較していくのですが、恐ろしく時間がかかってしまい 1ヶ月単位とかなると目も当てれない状況になっています 作った方はすでに退社しており、私に丸投げされたのですが どのようにしていけばいいでしょうか? 時間がかかる理由としては比較条件が多い気がします 変数Aに商品Aを入力 変数AとA1を比較 同じだったら+1 変数AとB1を比較 同じだったら+1 : 変数AとF1を比較 同じだったら+1 変数AとA2を比較 同じだったら+1 : とやって、一番下まで進んだら変数Aに商品Bを記入して同じように上から抽出するという感じです これを少しでも早くできるようにしたいのですが、参考になるHP、やり方があればお教えください
336 :
名無しさん@そうだ選挙にいこう :2007/01/13(土) 17:56:23
↑追記 上記の比較が全てIF文とループ文で行われているので 命令文が6*500*商品種類(200〜300)=600000〜90000回繰り返されてるのが最大の原因と思われます
>>335 商品A・B・C・・・・のデータはどこに書いてある?
売れた数はどこに書き出す?
他の場所にある?それとも同一シート内のどこか?
それとも何が商品Aなのか決まってなくて、6:500の中から拾うの?
あと縦500横6のレイアウトに意味はある?
変えちゃダメ?
集計プログラム? マクロ組むまでも無く countif で十分
>>335 他人がコーディングしたもんならコード晒すわけにいかないだろうしなぁ
6500件ぐらいならループで比較してもそんなに時間かからないと思うけど
チェックの部分だけでも晒してくれるとみんなアドバイスしやすいと思うけど
6500件じゃなくて6*500件か それにしてもそんなに時間掛かるもんかねぇ
341 :
名無しさん@そうだ選挙にいこう :2007/01/13(土) 23:01:41
>>334 説明が悪いのでしょうか?
メニューキーを叩くと、コンテキストメニューと「Alt > Space」を叩いたときに表示される
ウィンドウのコンテキストメニュー(?)の2つが表示されてしまうのです。
今現在は、この現象がランダムに出るので、問題の切り分けができていません。
343 :
名無しさん@そうだ選挙にいこう :2007/01/14(日) 10:39:50
エクセル2002の質問です あるデータをピボットの表に作り変えてピボットの項目の行、合計の行とサブ合計の行を 他のシートに移したいと思います。 (他の言葉でいうと複数枚のピボット表の合計欄だけを他シートに集めたい) これを毎日繰り返すのですが、いつもやり方がわからず、ピボット表の シートを値コピーして入らない行を削除してつくって、他のシートにコピーしてます。 データを入れて更新すると、自動的にコピーされる方法は何かないでしょうか? どなたかご助言お願いします。
345 :
名無しさん@そうだ選挙にいこう :2007/01/14(日) 10:47:02
>>343 VBAですか。調べてみます。ありがとうございます。
344さんでした。すみません。
>>335 の文面から想像すると多分こんなんかな。
For c = 2 To 7 'B〜Gの6列とする
For r = 1 To 600 '行
If Cells(r, c) = "からしめんたいこ" Then Cells(1, 1) = Cells(1, 1) + 1
Next r
Next c
これを300商品分ループさせたら、そら時間かかるわ。
Cells(1, 1) = Application.WorksheetFunction.CountIf(Range("B1:G600"), "からしめんたいこ")
商品名は一旦配列に読み込んでおけば、For Next で回しやすい。
エクセルの質問です。 計算で3.640E-06とでるのですが E-06ってどういう意味ですか?
349 :
名無しさん@そうだ選挙にいこう :2007/01/14(日) 16:34:02
タイムカードの時間計算で教えてください。 09:00と入れれば簡単に計算できるんですが、「:」の入力を省きたいです。 そこで、0900と4桁の数字を入力すると「09:00」と認識する方法はありませんか? いろいろ調べてはみたんですが・・・。 詳しい方、ぜひよろしくお願いします。
浮動小数点表記
テンプレ使わないのが流行ってんの?
>>348 指数表記
>>349 VBA使えば可能
9.00を9:00にする方法なら過去ログテンプレにある
353 :
名無しさん@そうだ選挙にいこう :2007/01/14(日) 16:48:06
>>353 Y軸に日付けを使わない(日付けっぽい文字列にする)
356 :
349じゃないけど :2007/01/14(日) 17:44:26
>354 9時50分の950と入力すると9:30になっちゃうよ
>>356 分まで (950→9:50)
=INT(A1/100)/24+RIGHT(A1,2)/1440
=TIME(INT(A1/100),RIGHT(A1,2),0)
秒まで (950.45→9:50:45)
=INT(A7/100)/24+RIGHT(INT(A7),2)/1440+MOD(A7,1)/864
=TIME(INT(A1/100),RIGHT(INT(A1),2),MOD(A1,1)*100)
VBAで質問です。 (1)オブジェクトのテキストボックスに数値を入力すると,sheet1のあるセルにその値が入力される。 (2)その値に従って,sheet2,sheet3,sheet4の様々なセルに,vlookupによって引っ張られた値が表示される。 というマクロなのですが,sheet1のあるセルに値を入力することからスタートするため, sheet2やsheet3やsheet4を表示させた上で実行しても,必ずsheet1に切り替わってしまいます。 そこで, ・表示するsheetを切り替えない。 ・現在表示してあるsheet名を取得し,マクロの最後で,そのsheetに切り替える。 のいずれかのマクロの記述を教えていただきたいのです。 よろしくお願いします。
360 :
名無しさん@そうだ選挙にいこう :2007/01/14(日) 19:11:32
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2000 【3 VBAでの回答の可否】 可 【4 検索キーワード 】 ダイアログ 保存 VBAで保存ダイアログを出す時って Set WSH = CreateObject("WScript.Shell") DeskP = WSH.SpecialFolders("Desktop") F_Name = Application.GetSaveAsFilename(DeskP & "\Sample.txt", _ FileFilter:="txt(*.txt),*.txt") 上記になると思いますが 有無を言わさずデスクトップ上に保存したい場合で、仮に同名ファイルが存在している場合 強制的に上書きする場合どうすればいいのでしょうか?
>>358 MySheet=ActiveSheet.Name
Sheets(MySheet).Select
>>360 Workbooks(MyBook).Close savechanges:=True
362 :
名無しさん@そうだ選挙にいこう :2007/01/14(日) 20:08:58
あらかじめグラフ範囲を決めていて、(そこにリスト出力がくるように設定) マクロ登録で実行すればその範囲でグラフになるボタンを作成したんですが リストが写されて数値が表示されているとこはきちんと表示されたのですが、空白のとこはグラフは表示されないものの 凡例のとこにズラーっと空白のグラフの系列のやつまで表示されるんですけど、これを表示しないようにする方法を教えてください。
363 :
名無しさん@そうだ選挙にいこう :2007/01/14(日) 20:13:32
>>324 早速にありがとうございました。
ですが、やはり上手くいきません。。
物凄く具体的な状況として、
I13=J13-J12
I14=J14-J13
I15=J15-J14
・
(以下、同様)
・
・
という入力をしたいのですが、どうやっても上手くいかないのです。
どなたかお教えいただけませんでしょうか?
365 :
名無しさん@そうだ選挙にいこう :2007/01/14(日) 20:23:48
>>364 そんなこと聞いてるんじゃないってことぐらいわかるだろ
質問スレでそんなしょうもないこと言って面白いとでも思ってるわけ?
ほんとウザイよお前
367 :
363 :2007/01/14(日) 20:38:16
右クリック→コピー→貼付け で、問題ないので解決しました。
>>361 即レス感謝です。ありがとうございました。
>>367 それなら
>>365 に回答もらって下さい。
以後363の質問は365が答えるので、他の方はスルーして下さい。
371 :
363 :2007/01/14(日) 20:51:03
>>368 同じ数字が出ちゃうんです。なぜなのでしょう?
計算結果が同じ値の場合 計算式がおかしい 計算方法が自動になっていない
以後363の質問は365または373が答えるので、他の方はスルーして下さい。
Excel2000を使っています。 カレンダーを作り横軸を日付にして、日が進むにつれて縦軸のAを削除することで全体が左へとスライドして日が過ぎていくようなものを作りました。 このとき日が進むにつれて自動的に縦軸を削除するようにすることができるでしょうか。
377 :
363 :2007/01/14(日) 21:14:40
すいません、早く答えてくれませんか・・
378 :
375 :2007/01/14(日) 21:27:50
379 :
名無しさん@そうだ選挙にいこう :2007/01/14(日) 21:37:30
>>363 まず>372のアドバイスに答えるのが先だろ
380 :
375 :2007/01/14(日) 22:48:49
NOWを使って自動的に縦軸を削除するようにするには、マクロの知識もないとできないのでしょうか。 適当でいいので流れを教えてください。
>>380 横レスだが、
A1を「=Today()」で当日日付を入れ、B1に「=A1+1」C1に「B1+1」…
と書いておけば、特に、列を削除する事なく、同様の見た目になるが
駄目なのか。
382 :
375 :2007/01/14(日) 23:39:24
>>381 予定ごとなども一緒にスライドしてもらわないといけないので、縦軸削除をしています。
あと横軸は256マスくらいしか表示されないため、当日過ぎた日付は消滅した方が都合がいい為です。
まあ手動で削除でも問題はないのですが。
384 :
名無しさん@そうだ選挙にいこう :2007/01/15(月) 00:33:15
>>361 360です
Workbooks(MyBook).Close savechanges:=True
これっていうのは
ダイアログを出して自動的に「はい」を押下する方法ですよね?
やはり固定されている名前の新規ファイルを保存したい場合でも
保存ダイアログを出してからの方法じゃないといけないのでしょうか?
そもそも保存したいファイル名が固定されている場合、
ユーザにファイル名を決めさせることはないので、
わざわざ保存ダイアログをだす必要はないのですが
>>384 Application.DisplayAlerts = False
ThisWorkbook.SaveAs Filename:="hoge.xls"
Application.DisplayAlerts = True
>>363 粘着されそうなんでマジレスしておくわ
フィルハンドルってのをググレ
スレに粘着ってことね
388 :
名無しさん@そうだ選挙にいこう :2007/01/15(月) 10:16:55
AかつBかつCを、 =AND(A,AND(B,C)) これよりも分かりやすく表記することはできないのでしょうか?
=AND(A,B,C)
390 :
名無しさん@そうだ選挙にいこう :2007/01/15(月) 10:23:38
>>384 やってみてから書け
ダイアログ出ないぞ!
ActiveWorkbook.Close savechanges:=True
393 :
名無しさん@そうだ選挙にいこう :2007/01/15(月) 14:10:06
EXCEL2002のVBAです。 あるセル(B3)にデータが入力されたら、そのセルの下のセル(B4以下) を全て下方(B5以下)にシフトして、B3のデータをB4に移動し、 B3セルをクリアしたいのですが、どうすれば良いでしょうか。 Changeイベントプロシジャの中で次のようなコーディングしたのですが 下方へのシフトが1セルでなく235セルシフトします。 これはどうしてでしょうか。 i=1 Range(Cells(4, i + 1), Cells(4, i + 1)).Select Selection.Insert Shift:=xlDown 宜しくお願いします
>>393 Range("B3").Insert Shift:=xlDown
395 :
393 :2007/01/15(月) 15:10:43
>>394 レスありがとうございます。
教えて頂いたとおりになってみましたが、
やはり1セルだけなく239セルシフトしました。
どうしてでしょうか?
>>395 EnableEventsプロパティを一時的にFalseにする
>>394 で特に問題ありませんが?
一部のコードだけ書き込まれて、どうしてかと問われてもわかりかねます。
398 :
名無しさん@そうだ選挙にいこう :2007/01/15(月) 15:30:44
【1 OSの種類 .】 Windows2000 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 A B C D 1 日付 点数 最近の平均 2 3/1 50 50 3 3/2 休 50 4 3/3 65 57.5 5 3/4 62 59 6 3/5 70 65.7 7 3/6 72 68 D列に「今日より、近3回の平均」を入れていきたいのですが どのような関数を当てていけばいいでしょうか?
>>398 「休」とかあるなら、VBA無くして不可とオモ。
401 :
名無しさん@そうだ選挙にいこう :2007/01/15(月) 15:58:53
>>400 "Excel 関数 平均"のどこかにうまい方法載ってましたか?
>>398 作業列いっぱい使う方法でよければVBA無しでも可能だけど
>>398 SUMIFとCOUNTIFでよいような
自分で探してください。
この時間帯は、なれ合いたいだけの回答者しかいないでFA。 相談持ちかけた側が間違いw
【1 OSの種類 .】 XPPro 【2 Excelのバージョン 】 Excel2000、XP 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 座標 回転 回転行列 原点X,Y を基準に座標a(x,y)をθ度回転させた後の座標b(x',y')を求めたい 必死こいてググったりExcelで計算式入れて試算してもことごとく正解な(0度だとx,yは変化無し) 値が出てこなくて困ってる。 一部教えてgooやら参考になるログがいくつかあったが例のセル位置が間違っており数式が成立せず 暇な人頼んますわ
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 Googleやヘルプでの検索キーワード 大学で、こんな宿題が出たんですけど、正直言うと授業フケまくってたんで全く分かりません・・・ 良かったら助けてくださいorz sheet1に下のような成績表を作成し(“クラス”の欄をB2セルとする)、印刷ボタンをクリックすると、5科目の平均が80点以上90点未満の人のクラスと氏名が印刷されるマクロを作ること。ただし、平均は小数点以下第2位を四捨五入すること。 クラス氏名国語英語数学理科社会 A相沢恵子 A青木和美 A伊藤卓 A上原信次 A岡田政男 A加藤信夫 B久保俊輔 B小林実 B佐藤慎一
なんでいろんな解釈の仕方が出来る曖昧な質問するかなぁ
算数と宿題…
>>408 ループ回して処理すればいいだけじゃん。
ループ内で行ごとに平均だして条件分岐
あとは条件に一致した物をsheet2に書き出してそれを印刷するとか
条件不一致の行を非表示にしてクラスと氏名列を印刷するとか
というか、これ、中学校レベルの課題じゃね?
413 :
407 :2007/01/15(月) 17:05:01
>>411 その通りで三角関数が分かってなかっただけだった。
解決したので自レス
>407
x'=(x-X)*cos(θ)-(y-Y)*sin(θ)+X
y'=(x-X)*sin(θ)+(y-Y)*cos(θ)+Y
414 :
408 :2007/01/15(月) 17:13:34
>>412 そのマクロの記述の仕方が分からないという・・・
>>414 ヒントもらってんだから、教科書開くくらいしろよ。
Excel起動して、Alt+F11でVBE開くから、考えながらやれって。
卒業したら、今時どの企業でもExcel使わせられっぞ。
417 :
408 :2007/01/15(月) 17:28:31
大学でExcelって今じゃ普通なの? 高校の商業科とか専門学校じゃなくて? ゆとり教育もここまできたかって感じ。
横レスで悪いけど、印刷ボタンクリックのイベントってあるの?
「印刷」というキャプションを乗せたボタンを作れって事でしょ。
421 :
408 :2007/01/15(月) 20:14:46
すみません。「印刷」と「少数点以下第二位を四捨五入」がどうしても分かりません・・・ そこだけでも教えてもらえないでしょうかorz
424 :
408 :2007/01/15(月) 20:57:40
上手く出来ずにイライラしてたら間違えて保存せずに閉じてしまったOTL
GJとしか言いようがない
吹いたw
427 :
408 :2007/01/15(月) 21:06:49
If SUM(”D3:H3")/5=80≦90.PrintOut こんな感じでのを9列分書けば良いんですかね・・? ウザかったらこれ以上書き込むの止めます(;・ω・)
428 :
408 :2007/01/15(月) 21:08:42
自分で質問しておきながら「小数点以下第2位を四捨五入」の部分忘れてました(汗
>If SUM(”D3:H3")/5=80≦90.PrintOut 何オブジェクトを印刷してんだよw
>>427 これってマジレスなの?どこの大学だよ。
431 :
408 :2007/01/15(月) 21:19:35
何オブジェクト??
432 :
408 :2007/01/15(月) 21:21:50
>>430 マジレスですが・・・
出席だけして何もしてなかったツケが回ってキマシタ
大学名は勘弁して下さい
休学と留年一回して、6年間みてどんどん学生の質が悪化していくのが手にとるようにわかった いまはもっと悪化してそうだねぇ
と、単位が足りず、2年留年した男が言っております。
435 :
408 :2007/01/15(月) 22:05:55
SUM使わないでAVERAGEだけ使えばOKですか?
授業中の説明で「AVERAGEの使用禁止」とか言ってるかもしれないし その辺が判らないとどうしようもない
まず、何で元データの点数が埋まってないの?
438 :
408 :2007/01/15(月) 22:13:54
いや、言ってなかったと思います。 練習問題とかで普通に使ってましたし、問題文に使用禁止と書いてないので・・
439 :
名無しさん@そうだ選挙にいこう :2007/01/15(月) 22:23:27
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2002 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 不可 【5 検索キーワード 】 保護 保護の解除 一度にすべてのシートの保護または保護の解除をする方法を教えてください。
442 :
408 :2007/01/15(月) 22:27:13
>>437 さぁ・・・
始めから埋まってませんでした・・・
>>440 居ません。
ゼミもサークルも入ってないと大学って友人1人も出来ないんですね。
入っておけば良かったと後悔してます(ノД`)
その得点部分が授業で発表されたんだな、たぶん。
444 :
名無しさん@そうだ選挙にいこう :2007/01/15(月) 22:47:56
VBAで新規ファイルを作成して 中身に書き出す文字列を Print #FileNo, "<html>" Print #FileNo, "<head>" ・・・ といった形にして任意のHTMLを作成した時に なぜかエンコードが西ヨーロッパ言語(Windows)になって文字化けしてしまいます これを自動的に日本語(自動選択)にしたいのですが教えてください
>>444 Excel関係ない
ブラウザかHTML関連へどうぞ
>>408 点数は"=INT(101*RAND())"で出した。突っ込まれたら適当に言い訳しとけ。
クラス 氏名 国語 英語 数学 理科 社会
A 相沢恵子 13 69 87 15 17
A 青木和美 87 61 22 66 29
A 伊藤卓 89 6 66 64 87
A 上原信次 80 0 37 79 75
A 岡田政男 84 69 53 92 73
A 加藤信夫 70 50 4 53 46
B 久保俊輔 12 26 9 10 42
B 小林実 43 4 83 13 10
B 佐藤慎一 17 30 46 82 83
448 :
408 :2007/01/15(月) 23:01:57
>>446 ええと・・・多分、どんな値を入力しても印刷ボタンをクリックしたら
5科目の平均が80点以上90点未満の人のクラスと氏名が印刷されるマクロを作れって意味だと思うんです。
数値は発表されてないと思います
ってかもう全然進まない・・・
付け焼刃に出来る課題では無かった模様・・・
諦めかけてきた
処理手順。全部マクロの記録でおk。 @H列に「=AVERAGE」で平均点を入れる→下までフィル。 Aオートフィルタを展開。 BH列をフィルタ!80〜90点。 CA列とB列を印刷範囲に。 D印刷。 もっと簡単な方法があるかもだが、マクロの記録でやれ。
>>408 よかったね相手してくれる人が沢山いて
そのうち、丸々解答書いてくれる親切な人が出てくるよ。
回答者の気持ちを逆なでしないように、適当に返事しながら
じっくり待ってな
Sub test() 学校の宿題だろ?丸々教えるのは本人のためにならないんじゃないか? End Sub
452 :
408 :2007/01/15(月) 23:35:54
>>449 すみません、オートフィルタの機能がよくわかりません・・・
If 80≦ROUND[{AVERAGE("D3:H3")},1]<90,Then Range("B3"&"C3")PrintOut
エラーで不正な文字ですって出てくるんですが・・・
どこが不正なんだ・・・
全然違ってんのかな・・・
453 :
408 :2007/01/15(月) 23:37:39
「80点以上90点未満」の部分って80≦x<90でOKですか?
全然間違ってるし、教えてもらってんのに、マクロの記録もしねぇし、いい加減、諦めろ。 他の人が質問しづらくなるから、余所行って。ごめんね。
>>408 Sub 平均()
Worksheets("Sheet2").Range("A2:C65536").ClearContents
GYO2 = 2
EffectiveRow = Range("C65536").End(xlUp).Row
For GYO1 = 2 To EffectiveRow
MyPoint = Round(Application.Average(Sheets("Sheet1").Range(Cells(GYO1, 4), Cells(GYO1, 8))), 2)
If 80 <= MyPoint And MyPoint < 90 Then
Sheets("Sheet2").Cells(GYO2, 2) = Sheets("Sheet1").Cells(GYO1, 2)
Sheets("Sheet2").Cells(GYO2, 3) = Sheets("Sheet1").Cells(GYO1, 3)
GYO2 = GYO2 + 1
End If
Next GYO1
'Worksheets("Sheet2").PrintOut
Worksheets("Sheet2").PrintPreview
End Sub
宿題の答え書くヤツがいるとは完全に馬鹿だな
457 :
408 :2007/01/15(月) 23:51:32
>>454 いや、悪いのは自分です・・・
お騒がせしました。他所いきますorz
>>455 これで・・・正解なんですか?
正直正解かどうかも見分けられないけどそのまんま利用させて頂きます┏○ペコッ
ありがとうございました
458 :
398 :2007/01/16(火) 00:06:02
>>402 作業列いっぱい使う方法だと休みがやたら多い場合の対応が難しいので、
VBでの方法を教えて頂けませんか?
>>458 3/4の場合は、
「62、65、休」の平均か、一個dで
「62、65、50」の平均か、DOTCHだい?
460 :
名無しさん@そうだ選挙にいこう :2007/01/16(火) 00:39:29
エクセルは2002のバージョンを使っています。置換に関しての質問です。 テキストエディタで、 AAAA(改行) BBBB(改行) CCCC(改行) こうなっている部分を、全て同じセル内に貼り付けたいのです。 通常にこれをコピペすると、(改行)の部分で行がわかれてしまい、うまくいきません。 AAAA BBBB CCCC ならば、そのまま同じセル内に貼り付けられたので、この空白を何とか改行に置換できないかと考えております。 何か良い方法はないでしょうか?
>>398 普通にD3セルに「=AVERAGE(B1:B3)」で下方向にコピーじゃ駄目なの?
>>460 テキストエディタを「さくらエディタ」(例)など、改行コードを置き換えられる
ものに変えて、「改行コード」を「スペース」に置き換えてから貼り付けとか。
463 :
460 :2007/01/16(火) 00:48:58
>>461 お お お !
ありがとうございます!
解決しましたwww
・・・あと〜。
ついでといってはなんですが、下の空白をセル内改行に置換させる方法は、何かないでしょうか?
何せエクセル内のほとんどのデータをこの方法で入力してしまっているもので、一つ一つ置き換えていくのは大変で・・・。
464 :
398 :2007/01/16(火) 00:50:55
>>459 この場合、下段の「62、65、50」の平均になります。
>>463 テキストエディタに再度貼って、改行に置換えてからまたExcelに貼る。
466 :
名無しさん@そうだ選挙にいこう :2007/01/16(火) 00:52:57
0から10までの偶数の合計を表示させるには どうしたらいいかわかる人いますか? Sub 合計() Dim intcount As Integer Dim inttotal As Integer For intcount = 0 To 10 Step 2 MsgBox intcount Next End Sub これだと0から10までの偶数が並べられるだけで足されません。
>>466 inttotal がひとりぼっちでかわいそうなことになってる
>>398 面倒なので、もとデータの見直しは考えちゃ駄目?
例えば、フィルタとかで、いったん「休」の行をどこかに避けてから
式で答え出して、後で戻すなど。
>>466 Sub 合計()
Dim intcount As Integer
Dim inttotal As Integer
For intcount = 0 To 10 Step 2
inttotal = inttotal + intcount
Next i
MsgBox inttotal
End Sub
469 :
名無しさん@そうだ選挙にいこう :2007/01/16(火) 01:19:06
>>468 ありがとうございます!!
偶数の足し算を順に表示されるようにはどうしたらいいのでしょうか?
0→2→6→12→20…という風にクリックする度に足し算の合計
が出るようにしたいのですが…。
470 :
408 :2007/01/16(火) 01:22:48
もう1問あった・・・・・空所補充問題・・・・・ ・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・ ・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・
>>468 細かいとこだけど、
Dim inttotal As Integer
この宣言だけで inttotal = 0 って保障されるんだっけ?
VBAはこれでいいんだっけ。
472 :
398 :2007/01/16(火) 01:28:06
>468 点数にあたる列が非常に多く、他の関数も入れているためシート2枚にわたっています。 ACCESSとデータを連動させて多くのデータを複数回処理しないといけないので、 フィルター処理は避けたいです。
>>469 VBAでやらずとも、ワークシート上でA列に2、4、6、8と偶数を縦に書いていき、
B列に、B1「=A1」、B2「=B1+A2」、あとはB2から下にフィルでB列に答えが出る。
>>471 悪い例だけど、おk。
>>408 助けてくれる友人が居ないからって何でもかんでもここで聞いてんじゃねぇぞカスが
ここはテメェ1人の掲示板じゃねぇ
授業サボってたテメェの自業自得だろうが
死ねよ
ツッコミ遅っ
476 :
名無しさん@そうだ選挙にいこう :2007/01/16(火) 01:57:14
>473 ありがとうございます!! 初心者にVBAは難しいですね…。
>>398 コード書こうとしたけど、ちょっと考えただけでも面倒なのでやめた。
誰か時間が余りすぎてる優しい人の登場を待て。
>>398 3日以上連続して「休」がないなら
3/3に =AVERAGE(OFFSET(B2:B4,(IF(B4="休",1,0)+COUNTIF(B2:B3,"休"))*-1,0,3+COUNTIF(B2:B3,"休"),1))
あとはフィルで下にコピー
3/1,3/2は知らん
479 :
398 :2007/01/16(火) 02:40:14
>>478 ありがとうございます。残念ながら長期休暇あります。
この方法は参考にさせて下さい。
関数ではやはりちょっと無理そうですね。
>>458 ,479
休みがやたら多い場合に対応させるために作業列使うわけだが。
うまくやれば関数のみでも長期休暇にも対応させられる。
というか、VBA拒否だったのでは?
【4 VBAでの回答の可否】を訂正するならハッキリ書こう。
VBA可ならVBAの方が楽だからな。
481 :
478 :2007/01/16(火) 07:24:47
482 :
331 :2007/01/16(火) 08:24:22
>>332 レスありがとうございます。
初歩的な質問で申し訳ないのですが、
ヘルプの中どこに、グラフのプロパティ一覧が載っているのでしょうか
探したのですが、見つけられないのですが・・・
見つけられなければ諦めればいいじゃん 諦められなければ必死に探せばいい 必死になってるのに見つからないというなら 必死さが足りないからもっと必死になれ
グラフってことはChartオブジェクトを見ればいいのでは?と初心者の俺が答えてみる
>>471 ↓ こっちは、つっこまないの?
next i
たしかに Integer型の初期値が0なのは保障されてるけど next iじゃ動かないわなw
【1 OSの種類 .】 Windows2000 XP 【2 Excelのバージョン 】 Excel2000 2002 2003 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 操作 監視 イベント ブック中で何か操作や変化があった場合、まとめて監視するイベントって無いでしょうか? 具体的にはマクロで組んだアプリケーションのエラーを潰す為に操作ログを残したいと思ってます。 あれば何というイベントなのかお教えください。
491 :
名無しさん@そうだ選挙にいこう :2007/01/16(火) 13:04:10
またまたまた、で〜た〜
>>491 「教えて君」「教える君」というのは、
ネット上に存在する2種類の人種の人たちを示す揶揄された敬称のことであるが
その影には「教えない君」という人種が多数いるの事にはあまり注目されていない。
しかし、実はその「教えない君」という人種が一番厄介かつ迷惑な存在だったりするのである。
そもそも荒れる原因というものは「教えない君」の、無秩序かつ、無神経なレスにある部分が
大多数なのだが、彼らの多くは、そういった感覚はどうやら持ち合わせていないようである。
第三者がそうした場面を見た場合に、誰に一番の非があるというのは
「教えない君」にあるというのが客観的事実であるのは明らかなのであるが、
彼らは認めようとしない。
表面上は、「教えない君」はネット上のルールや倫理や秩序などを叫ぶのであるが
どうやら真相は、現実社会において蔑まれる存在である「教えない君」の
鬱憤晴らしのようである。
上記でそういった悲哀のレスを付けた人たちは、勇気を持って自らの弱さと過ちを認め
反省しなければならない。
それがキミたちニートの人間的に成長できる少ないチャンスなのである
なが〜い いまどきの子はそんなダラダラ文は読まねーよ
495 :
名無しさん@そうだ選挙にいこう :2007/01/16(火) 16:00:48
>493←こんな不細工な文章力も、ゆとり教育の弊害か・・・・・・・
497 :
482 :2007/01/16(火) 18:43:16
>>484 レスありがとうございます
そのchartオブジェクトが、ヘルプで見つからないのですが
どうしてでしょう。
以前Rangeオブジェクトなどがなくて、調べたらヘルプが
インストールされてなく、その時インストールしなおした
のですが・・・
【1 OSの種類 .】 Windows2000 XP 【2 Excelのバージョン 】 Excel2000 2002 2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 ズーム ショートカット キーボード操作だけで、ズーム(倍率?)を変えることができますか?
>>497 Microsoft Excel のヘルプ
└ プログラミング情報
└ Microsoft Excel Visual Basic リファレンス
└ Microsoft Excel のオブジェクト
ここから先は自分で探してくれ
501 :
497 :2007/01/16(火) 19:21:43
502 :
497 :2007/01/16(火) 19:27:04
>>500 ありがとうございます。
今までVBAのヘルプ見てました。
503 :
498 :2007/01/16(火) 19:56:06
>>499 ありがとうございます。
他にも方法はありませんか?
Alt→V→Z以外の方法で、ボタンを押すごとに倍率が変わる方法があるみたいなんですけど。。l
くぐったのですが、わかりません。
これ以外に方法はないですか?
>>503 無い。
Application.OnKeyで自分で割り当てろ。
505 :
498 :2007/01/16(火) 20:04:28
>>504 そうですか。わかりました。ありがとうございました
【1 OSの種類 .】 Windows2000 XP 【2 Excelのバージョン 】 Excel2000 2002 2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 エクセル とばす たとえば、A1にセルがあって、それをいきなりR500とかに、セルを飛ばす方法はありますか?
507 :
名無しさん@そうだ選挙にいこう :2007/01/16(火) 20:15:57
体重をグラフにしているのですが、先日計り忘れてしまいました。 すると折れ線グラフが途切れてしまいました。 つなげて綺麗にしたいのですが、できません。 ツール→オプション→グラフ→空白セルのプロット→補間してプロットする をしたいのですが、補間してプロットするが消えていて選択できません。 ご教授下さい。
509 :
名無しさん@そうだ選挙にいこう :2007/01/16(火) 20:30:54
>493 >499 見覚えがあるからコピペなんだろうが 何を、何時、コピペするかも個性の表れなんだよ。
510 :
名無しさん@そうだ選挙にいこう :2007/01/16(火) 20:33:44
>>508 削除するとそこだけ時間的に消滅するという有り得ないグラフに
なってしまいますよね。
きちんとその日の分のスペースは確保したいのですが。
1日目に60キロで3日目が62キロなら
2日目を61キロのところを通過するグラフを作りたいのです。
これを自分で計算してではなく、エクセルでできませんか?
何故計測しなかった2日目が61キロだとわかるんだね?
>>512 ありがとうございます!!
>>513 わかるとかの問題ではなくて、点と点をつなげば(ry
>>513 ヒント:実は計っていたがExcelの勉強がてら
516 :
名無しさん@そうだ選挙にいこう :2007/01/16(火) 23:06:34
【1 OSの種類 .】 WindowsXPPro 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 SUM ActiveCell.FormulaR1C1 下のマクロを実行すると、 SUMの行で「アプリケーションの定義またはオブジェクト定義のエラーです」となります。 []の中を定数にしてしまうとエラーが出ないので、 変数を使っていることが原因だと思います。 自力検索したところ、行と列を変数を使って書いている例は見当たらず、困っています。 どなたかお助けください、、 F列の数字の合計を表の一番したに入力するマクロです。 Sub 回数カウント() Dim 表の行数 As Long Dim 回数 As Long 回数 = 6 'F列 Sheets("01").Select 表の行数 = ActiveSheet.UsedRange.Rows.Count Cells(表の行数 + 1, 回数).Select ActiveCell.FormulaR1C1 = "=SUM(R[-表の行数+1]C:R[-1]C)" End Sub ===========================
>>516 例えば「01」という名前のシート以外から実行してんじゃないの?
もしそうなら、
>Cells(表の行数 + 1, 回数).Select
これは、実行もとのシートのその部分を選択してしまうが。
>>516 ActiveCell.FormulaR1C1 = "=SUM(R[-"& 表の行数 &"+1]C:R[-1]C)"
>>516 Sub 回数カウント()
Dim 表の行数 As Long
Dim 回数 As Long
回数 = 6 'F列
Sheets("01").Select
表の行数 = ActiveSheet.UsedRange.Rows.Count
Cells(表の行数 + 1, 回数) = WorksheetFunction.Sum(Range(Cells(1, 回数), Cells(表の行数, 回数)))
End Sub
>>516 ""で囲ってるんだからFormulaプロパピーで変数使っちゃ駄目じゃないのか?
あんまり使う機会が無いから知らんけど
>>516 Sub 回数カウント()
Dim 表の行数 As Long
Dim 回数 As Long
回数 = 6 'F列
Sheets("Sheet1").Select
表の行数 = ActiveSheet.UsedRange.Rows.Count
Nurupo = -表の行数 + 1
Cells(表の行数 + 1, 回数).Select
ActiveCell.FormulaR1C1 = "=SUM(R[" & Nurupo & "]C:R[-1]C)"
End Sub
522 :
名無しさん@そうだ選挙にいこう :2007/01/17(水) 01:14:51
VBAで Range("A1").SpecialCells(xlLastCell).Row 上記はA列の文字が存在する1番最後の行という意味ですが 仮にそのシートがシートの保護(中身はすべて許可)をしている状態では 実行時エラー1004が出てきて実行できません これを実行しようとするとどうすればいいのでしょうか?
>>522 これだったら取れない?
Range("A65536").End(xlUp).Row
524 :
名無しさん@そうだ選挙にいこう :2007/01/17(水) 01:39:20
質問お願いします。 文字を入力(たとえば住所、氏名など) した場合に複数のシートのセルに連動させる ようにするにはどうのようにしたらいいでしょうか? いろいろ本を読んだり、ネットで調べましたが、 どうしてもわからなくて・・
>>524 画面最下部のシートを切り替えるタブをCtrlキーを押しながら
選択してから入力して。
526 :
名無しさん@そうだ選挙にいこう :2007/01/17(水) 01:47:28
>>525 ありがとうございます。
ただ、ちょっと質問の仕方が悪かったです。
全体を連動させるのではなく、
SEET1の特定のセルと、SEET2の特定のセル(場所違い)
を連動させることは
できないのでしょうか?
例えば、SEET1のあるセルに500円と入力していた。
それを600円に変えたらSEET2のあるセルも連動するというよな・・・
528 :
名無しさん@そうだ選挙にいこう :2007/01/17(水) 02:01:37
>>527 すごくよくわかりました。
優しい方ですね。本当にありがとうございました!
真上に書いてあることを答えてエスパーて。
>524 >質問お願いします。 文章がバカ丸出し
【1 OSの種類 .】 WindowsMe 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 範囲設定 VBA 値の取得 ループ処理 あいう_えお か_きくけこ 上の様な(_は空白セルの)文字が打ち込まれた小さな表があります。 あいう えお か きくけこ と言う風に、空白や、行の最初から始まる文字群をそれぞれコピーして貼り付けたいのです。 未熟なのにやりたいことが高度すぎて詰まってしまいました。 まずどこから手をつけたらいいのでしょうか?よろしくおねがいします。
>>532 データのある行を選択→(メニューから)データ→区切り位置
534 :
532 :2007/01/17(水) 18:37:32
>>534 を見ても、どうしたいのかさっぱりわからん
「あ」の右にあった「い」が出力結果では「あ」の下にあるし
>>534 1文字ごとにセル分かれてんのか。
こりゃ、VBA使わないと無理だな。
For Eachで右方向に総当たりでチェックして、空白セルが
あったら、改行してどんどん貼っていけば良いと思う。
誰か、時間を持て余した優しい人が来るのを待ってな。
飯行ってくる。
>>532 Sub Nurupo()
LastRow = Sheets("Sheet1").Cells.SpecialCells(xlLastCell).Row
LastCol = Sheets("Sheet1").Cells.SpecialCells(xlLastCell).Column
MyRow1 = 1
MyCol1 = 1
For MyRow = 1 To LastRow
For MyCol = 1 To LastCol
If Sheets("Sheet1").Cells(MyRow, MyCol) <> "" Then
Sheets("Sheet2").Cells(MyRow1, MyCol1) = Sheets("Sheet1").Cells(MyRow, MyCol)
MyCol1 = MyCol1 + 1
Else
MyCol1 = 1
MyRow1 = MyRow1 + 1
End If
Next MyCol
MyCol1 = 1
MyRow1 = MyRow1 + 1
Next MyRow
End Sub
>>524 オレも少し気になったが
>質問(があります、回答)お願いします。
と脳内変換した。
しゃべる言葉と、タイプして残る言葉は違うから
書き込む前に読み返さないと
>>531 のように
柔軟性の足りない輩に誤解されるから気をつけて。
んなの2chなんだから、スルーしろよ
540 :
名無しさん@お腹いっぱい。 :2007/01/17(水) 20:33:39
【1 OSの種類 .】 Windows XP 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 ものすごく少し 【4 VBAでの回答の可否】 可 すんません質問です 条件に合う部分だけの和を求めたいのです。 たとえば 1 100 2 200 3 150 2 150 2 300 2 500 6 200 とあって、2のよこの数字だけの和を求めるにはどうしたらよいでしょうか。 並べ替えでもできますが、なるべくVBAで処理したいので。 for next と if をつかったけどさっぱりできませんでした。
>>540 =SUMIF(A1:A7,2,B1:B7)
542 :
532 :2007/01/17(水) 21:00:42
自分なりに、>536さんのヒントを元に
For Eachでデータ範囲の要素1をSelectしながら
入れ子のFor Eachで、貼り付け範囲の要素2をSelectするところまで出来たのですが、
要素2.Pasteでは、デバッグで引っかかって出来ず、
貼り付け範囲..Pasteだと上手くいくのですが
クラブのいっぱい並んでいるモニターみたいに全部に貼り付けられて終ってしまいました。
勉強不足でこの件はサイト等で調べてみますが、また詰まってしまったらここで質問させてください。
>>537 貼り付けて実行してみたらちゃんと並んで貼り付けられてました!
文章中にPasteが一つも無かったのにデータが並んでいて摩訶不思議でした。
仕組みはまだよくわかりませんが、当面の問題は解決できそうです。
ソースありがとうございました。
>>524 例えば
Sheet1のA1の値をSheet2のA1へ表示させたい場合は
Sheet2のA1で=キーを押してそのままSheet1をクリックして切り替えます。
そしてSheet1のA1を選んだらEnterキーを押します。
すると、Sheet2のA1には、
=Sheet1!A1
と入力されて、Sheet1のA1の値が表示されます。
544 :
名無しさん@そうだ選挙にいこう :2007/01/17(水) 21:12:10
グラフを作っていて、 x軸に日付を入れているのですが、 1月17日(水曜日)を 1 月 1 7 日 〔 水 〕 のようにする方法を教えて下さい。 縦バージョンの〔〕も見つかりません。 よろしくお願いします。
>>541 サンクs
sumifにこんな機能があるとは知りませんでした。
>>544 軸の書式設定の表示形式で
m▲"月"▲d▲"日"▲"〔"▲aaa▲"〕"
▲の部分は実際に▲を入れる訳じゃなくて、Ctrlを押しながらjという操作に置き換えて考えてくださいです。
547 :
546 :2007/01/17(水) 22:00:14
追加 Ctrlを押しながらjは日本語入力オフで。 目には見えない改行記号を入れる魔法だとでも思ってください。
縦書きは書式設定の配置で 文 字 列 って書いてあるところの色を反転させれば良いだけな気がする・・・ でも()だけ90度回転するのはフォントの設定でも出来そうにない・・・
549 :
548 :2007/01/17(水) 22:21:57
全角で()入れれば自動的に90度回転した
>>546 ありがとう。
裏技って感じですね。
すごく前進しました。
>>548 文
字
列
ってボタンだったんですね。
知りませんでした。
552 :
名無しさん@そうだ選挙にいこう :2007/01/17(水) 23:35:39
クロス集計表(ビポットテーブル )を逆にデータベース形式に戻すことはVBAでできますか?
マルチポストお許しください。 エクセルでつくった表計算結果をAUTOCADで作った図枠をつける必要があります。 ●エクセル 123・・・・ ●図枠 ーーーー | | ーーーー ↓ ーーーー |123・・| ーーーー エクセルのデータをDXFにする or CADの図枠をエクセルにする方法ってありませんか?
2007/1/16 ・・・・ 2007/1/16 ・・・・
2007/1/13 ・・・・ 2007/1/14 ・・・・
2007/1/12 ・・・・ 2007/1/13 ・・・・
2007/1/10 ・・・・ 2007/1/11・・・・
というようなデータがあったとして、
左右どちらかに欠けている日付があった場合、
その日付を以下のように埋めたいと思います。
(※0000の部分は空白あるいは0で)
2007/1/16 ・・・・ 2007/1/16 ・・・・
2007/1/15 0000 2007/1/15 0000
2007/1/14 0000 2007/1/14 ・・・・
2007/1/13 ・・・・ 2007/1/13 ・・・・
2007/1/12 ・・・・ 2007/1/12 ・・・・
2007/1/11 0000 2007/1/11・・・・
2007/1/10 ・・・・ 2007/1/10 0000
どなたか効率的な方法をご存知でしたらご教授ください。
説明不足でしたらすみません。
サンプルファイルうpしました。(パスは”225”)
http://1m.mata-ri.tk/src/1M0757.zip.html 【やってみたこと】 期間全ての日付を連番で作成し、並べ替え→ぐちゃぐちゃorz
【1 OSの種類 .】 Windows XP Professional
【2 Excelのバージョン 】 Excel 2003
【3 VBAが使えるか .】 はい(基礎のみ)
【4 VBAでの回答の可否】 可
【5 検索キーワード 】 Excel 並べ替え オートフィル 連番 日付順 etc
だうそできません。
>>556 ””で囲んだのが悪かったみたいですね。
225
でやってみてください。
だうそしたら質問の意味がわかるかと思ったけどわからんかった たぶん誰かが答えてくれるはず
VLOOKUPとエラーの関数をつかえば出来る。 意味はわかるが説明が面倒 =VLOOKUP(A1,Sheet1!$A$2:$E$1769,2,FALSE)
561 :
名無しさん@そうだ選挙にいこう :2007/01/18(木) 09:24:09
エクセルでエンター押すとカーソルが下に来ますが、エンター押したら カーソルが横に動くようにする設定ってありますか?超初心者で何も分からない もので・・・
564 :
名無しさん@そうだ選挙にいこう :2007/01/18(木) 10:21:46
kusosure
565 :
名無しさん@そうだ選挙にいこう :2007/01/18(木) 10:23:37
馬鹿が意地はるおかげであっというまに糞スレ化 検索リンクとオナニーzipファイルのたまり場かよw
567 :
名無しさん@そうだ選挙にいこう :2007/01/18(木) 10:33:07
検索すりゃ即出るのに質問⇒検索リンク生貼り これは普通の流れだと思うが?
569 :
名無しさん@そうだ選挙にいこう :2007/01/18(木) 10:44:14
恥ずかしいから、あんなバカレス(493)紹介するなよ
572 :
名無しさん@そうだ選挙にいこう :2007/01/18(木) 12:51:14
貴方のレスも十分恥ずかしいのですが・・・
ゲラゲラw
ツール⇒オプション⇒編集 と答えればそれで済むのに わざわざリンク貼る感覚が分らない。
IDないから言いたい放題だな
多分、安易に答えるのは簡単だが、それをすると、次回も 調べずに質問するから、調べ方を教える為にそうすんだろ。 「Excel ×× △△」でググれ。 って書くのと同じ。 そのあとに、「ググれ」って何ですか、という質問の防止じゃないの。
577 :
名無しさん@そうだ選挙にいこう :2007/01/18(木) 14:19:04
【1 OSの種類 .】 Windows XP 【2 Excelのバージョン 】 Excel 2003 sp2 【3 VBAが使えるか .】いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 複数行を貼り付けるとき、貼り付けたあとに自動的に文字数に応じて 欄が大きくなる操作を ならないようには出来ますか? キーワードのみ言ってもらッてもいいです
>>577 行高が自動調整(初期値)になってるとそういう動作をする。
一度、行高を数値設定してやれば自動では変更されない。
因みに数値自体は変更しなくても良い。ただ自動変更されたくない範囲を
選択して行の高さ設定ダイアログを出し、OKを押すだけでよい。
再度自動調整に設定したければメニューの 書式 > 行 > 自動調整 か行境ダブルクリック。
579 :
名無しさん@そうだ選挙にいこう :2007/01/18(木) 16:13:30
【1 OSの種類 .】 Windows XP 【2 Excelのバージョン 】 Excel 2003 【3 VBAが使えるか .】 基礎のみ 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 検索ワード思いつきませんでした。 エクセルで以下の表示をする関数を教えてください。
580 :
名無しさん@そうだ選挙にいこう :2007/01/18(木) 16:14:36
一行目に1日から31日まで日付が入っています。 そしてA2とB2に1日から31日の間の一期間を表す日付が入っています。 同じくA3とB3、A4とB4にも期間の日付が入っています。 A2とB2の期間にあたる日が それぞれの列の左(C列より左)に○が表示されるようにしました。 「=IF(AND(A2<=C1, B2<=C1),"○","")」 「=IF(AND(A2<=C2, B2<=C2),"○","")」 「=IF(AND(A2<=C3, B2<=C3),"○","")」 という式です。 ここからが質問なのですが、 この段階だと、二行目に書いた期間と三行目に書いた期間と四行目が それぞれの行別々に○が付くのですが この○がつく行を一つに統一したいのです。 複数の行にそれぞれ別々の期間を入力すると そのデータがひとつの行に統括されて見やすくしたいのですが どのような数式を入れればよいでしょうか? 「=IF(AND(A2<=C1, B2<=C1),"○","")」 「=IF(AND(A2<=C2, B2<=C2),"○","")」 「=IF(AND(A2<=C3, B2<=C3),"○","")」 この条件を全て満たすセルを作りたいわけです。 よろしくお願いします。
>>580 具体的な値、期間がわからないし
何がしたいのかさっぱり理解できません。
とりあえず、行列を入れ替えて見ると分りやすいかも知れません。
Excel2002でパスワードを掛けたファイルを送られてきました。 当方は、Excel2000なのですが、教えて貰ったパスワードで開けませんでした。 これは、暗号化の種類の違いなのでしょうか? また、こちらで開けるようにパスワード設定して貰うためには、 なにか保存時のオプションが必要なのでしょうか?
>>579 まずは行別に○を付けるだろ
そしたら列ごとに、その列に○が有るか否か(COUNTIF)を条件に○か""を返すだろ
そしたら行別に○を付けたところは非表示にする
これでOK
作業セルを使いたくなければ配列数式で
>>582 特別なオプションは不要
たぶんパスワードが間違ってるかファイルが壊れてるだけ
パスワードをもう一度確認して慎重に入力してもダメなら
ファイルを送り直してもらえ
>>582 PASSは、アルファベット大文字小文字を区別するよ。
585 :
582 :2007/01/18(木) 17:45:35
>>584 きちんとあわせてやっているのですが、
だめだと言われるんですよね。
送り返してチェックして貰うと、きちんと開けるようなのですが…
>>585 ヒント:CapsLock
てゆーかPASSを数字とかにしてもらいな。
>>582 なぜ送られて来たパスワードをコピペしないんだ。
寒くて手が動かない?
>>580 ???
EXCEL2002ですが、書式設定のユーザー定義で、日付をHや平成の表示のない年月日の設定が可能なら教えて下さい。 (H19.1.1でなく19.1.1のみに) 日数の計算をしたいので文字列でなく日付でやりたいのです。 お願いします。
>まずは行別に○を付けるだろ ↑この時点でもう条件式不要じゃないの?
すみません エクセル2003の行列計算についてです。 16*16正方行列の逆行列をMINVERSEで求めているのですが 実際の値と微妙に異なっていたり、違う場所で計算させると違う値が出たりします。 (たまたま対角行列だったのでわかった) なにか分かること有りましたら教えてください。 =MINVERSE(A36:P51)を計算させF2をおして そこを左頂点とする16*16のますを選んでctrl+shift enter でやっています
実は小数が混じっている
私のエスパー能力をフルに発揮してみたところ >591は>583 で、肝心の>580は ↓ こういう事では? C1:AG1に日付1 〜 31 を入れておく 2行目を集計用(○表示行)とする A2に =MIN(A3:A20) B2に =MAX(B3:B20) (とりあえず20行まで) C2:AG2に =IF(AND(C$1>=$A2,C$1<=$B2),"○","") 3行目以降、A列に期間の始め、B列に期間の終りを入れる
とりあえず質問者もちつけw よく読んで、読んでくれる人が理解できるかどうか 情報は十分かどうかきちんと検討してから投下してくれ わかりやすい質問文考えるのも勉強のうちだぞ
お尋ねします。 【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 ??? 伝票計算にExcelを使用しているのですが、 もっと楽にできないかと思っているのですがいい方法がわからないので お尋ねします。 いま、私のExcelのデータには 日付 商品名 伝票番号 金額 伝票小計 1/1 商品AA 11011 500円 500円 1/1 商品AB 11015 800円 1/1 商品AC 11015 1,100円 1,900円 1/2 商品AB 12001 800円 800円 1/3 商品CC 14004 5,600円 1/3 商品CB 14004 2,500円 8,100円 というデータを入れているのですけれども この中の伝票小計の欄を(半)自動で入力できるようにはならないでしょうか? いちいちSUM関数を使っているとすごく時間がかかってしまってて、、、、
599 :
名無しさん@そうだ選挙にいこう :2007/01/18(木) 22:41:14
エクセルというより統計学の質問に成ってしまいますが、 回帰式つくって、説明変数のP-値が例えば0.005だったら、 「ぜーんぜんあてにならねー」と思っていいのでしょうか?
>>598 伝票番号が必ず昇順にならんでいるなら
E2に =IF(C2<>C3,SUMIF(C:C,C2,D:D),"")
と書いてフィルコピー
>>600 うわ、すごい!
ありがとうございます。これで少しは仕事が早くできるようになります。
>>600 横から質問です。
こういった、関数の勉強ってどこでされてますか?
自分もいろんな参考書読んだのですが、このような応用力をつけるためには、どうしたら
いいですか?
IF関数、SUM関数の基礎はわかるのですが・・・
>>602 ホントは関数関係の参考書読んだ事ないだろ。
逆引き系の本1冊買ったら、結構、この時はこうしたら良いってのが
浮かんでくるようになる。頑張れ。
>>603 逆引き関数の参考書ですか・・・それはないですね。
自分は、ソースネクストの実践編と参考書ですね。
ソースネクストはそれなりに参考になりました。
この程度の自分でも職場ではかなり重宝されてます。しかし、もっともっとエクセルの力を
つけたくて。今は、ピボットテーブルを極めるたいと思ってますけど・・・
ありがとうございます
605 :
604 :2007/01/18(木) 23:15:18
日本語がかなりへんですね・・・失礼しました
>>604 実践編だけですか?
関数編もオススメっすよ。
608 :
604 :2007/01/18(木) 23:21:48
>>606 そうですか。自分の職場ではそんなにたくさんの関数を使うことがないので、
たとえばIF関数、SUMIF関数、ピボット・・・そんなに使うことはないです。
難しい関数勉強しなくてもいいかな〜って思って買いませんでした。
このスレを見て、応用力がある人がいるんだな〜って思って、聞いてみました。
1行目に常に参照したいデータを入力してあるのですが、 一定以上入力するとスクロールして見えなくなってしまいますよね? 特定の行や列がスクロールしないようにするにはどうしたら良いのでしょうか?
611 :
609 :2007/01/19(金) 01:10:13
>>610 即レスありがとうございます。
なんて検索すればよいのかわからなくて…
助かりました!
612 :
578 :2007/01/19(金) 01:55:44
>>577 ありがとうございました。
複数行貼り付けでもうひとつ質問があるんですが、
元のデータの文字の色を変えずに(赤なら赤のままで)
ひとつのセルの中に複数行入れる方法はありますか?
改行させたものがダメでしょうか?
そのまま貼り付けで複数のセルに貼り付けるなら色は
元のデータを反映してくれてるんですが・・
614 :
555 :2007/01/19(金) 03:23:53
615 :
名無しさん@そうだ選挙にいこう :2007/01/19(金) 04:26:56
580 C2に=IF(OR(AND($A2<=C1,$B2>=C1),AND($A3<=C1,$B3>=C1),AND($A4<=C1,$B4>=C1)),"○","") でAG2まですべらせたらいい
>>612 値だけ貼り付けたいなら、F2キー押してからCtrl+V。
【1 OSの種類 .】 Windows98se(たぶん) 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 勉強すればできるかも 妹にエクセルで自動的にこういうことができるか?と聞かれたのですが、 一つのxlsファイル内に複数のシートがあり、次のようになっています。 日報シート(1/19)、日報シート(1/20)、日報シート(1/21)…… と 個人集計シート(Aさん)、個人集計シート(Bさん)、個人集計シート(Cさん)…… (30人ぐらい) 日報シートには、その日活動した社員の名前が入り、例えば 1/19 Aさん 10〜14時 Bさん 12〜14時 Cさん 15〜21時 1/20 Bさん 11〜13時 Dさん 12〜15時 というようになります。 個人集計シートには、各社員が何日何時間働いたかをまとめます。 必ずしも毎日出社ではなく、また、欠勤した日は記載されません。
618 :
617 :2007/01/19(金) 13:47:11
続きです。 これを、日報から個人集計シートに自動的にデータをまとめる?なんて ことはできますか? その逆でもいいのですが、毎日のデータ入力を楽にする方法はあるで しょうか?
>>617 日付 氏名 開始時間 終了時間 総時間
01/19 Aさん 10:00 14:00 =D2-C2
01/19 Bさん 12:00 14:00 =D3-C3
01/19 Cさん 15:00 21:00 =D4-C4
01/20 Bさん 11:00 13:00 =D5-C5
01/20 Dさん 12:00 15:00 =D6-C6
こういう集計のシート1個足して、毎晩そっちにデータ移していけば、
SUMIFとるなり、ピボット組むなり、自由自在だけど、駄目かね。
ここへデータ移す部分をマクロ組めばいいかも。
>617 30人の行を固定して串刺しすれば?
621 :
617 :2007/01/19(金) 17:04:58
619さん、620さん、レスありがとうございます。 619さんのように集計のシートを1つ作って、そこから日報シート、 個人別シートというのがよいような気がしてきました。 アイデアありがとうございます!
622 :
名無しさん@そうだ選挙にいこう :2007/01/19(金) 17:23:50
質問ですが、複数のセルにランダムな数字を与えたいのですが、 その時に、それらのセルの合計が1となるような条件を付けるには どうしたらよいでしょうか? 【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 ランダム 合計
>>622 A1 =RAND()/2
A2 =RAND()/2
A3 =1-SUM(A1:A2)
624 :
622 :2007/01/19(金) 17:51:45
>>623 すみません、説明不足だったかもしれません。
セルの数が30以上あり、その書式だとランダムな数値の幅が
限られてしまうのです。
何か他の方法があればよろしくお願いします。
>>624 合計1にしたい目的は?
それによっては、やり方も幾通りか出るかも。
626 :
622 :2007/01/19(金) 18:09:30
>>625 統計学をExcelでやっているのですが、合計100%になるように、30以上の
セルに割り振って、そのパーセンテージに応じて出た値をサンプルとして
まとめたものをグラフにしようとしています。
RAND関数を用いて上手くできないか考えたのですが…
>>622 RANDで乱数とって、それを合計
合計:1=乱数:解
で解が出る
628 :
622 :2007/01/19(金) 18:30:37
>>627 なるほど!うまくいきそうです。
みなさん、ありがとうございました。
629 :
名無しさん@そうだ選挙にいこう :2007/01/19(金) 20:23:25
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2002 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 FAX 差込印刷 FAXプリンタで差込送信を行う場合、VB使わないと無理でしょうか? プリンタ起動から終了までループさせると非常に不安定なので何か良い方法があれば 教えてください。
630 :
名無しさん@そうだ選挙にいこう :2007/01/19(金) 21:32:43
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 はい(少し) 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 チェックボックス オートシェイプ 切り替え 下みたいな表なんですが、チェックボックスのON/OFFで、 オートシェイプの表示/非表示切り替えるのはどうやればいいんでしょうか? A B ・・・ □ 1 レ 2------------------ □ 3 レ 4------------------ レ 5------------------ チェックが入ってる行にオートシェイプの直線が引かれています。 チェックボックスONの時にオートシェイプの直線表示、 OFFの時に非表示に切り替えたいです。 よろしくお願いします。
631 :
名無しさん@そうだ選挙にいこう :2007/01/19(金) 21:41:13
例えば数値0.25を 分数1/4に変換する関数はありますか?
>631 セルの書式設定-表示形式-分数
>>630 チェックボックスクリック時のイベントで、
ONかOFFを判断、シェイプのVisibleプロパティを変更。
>>630 こんな感じ
C2にチェックボックスがONならTRUE、OFFならFALSEと表示させるとすると
Sub 六百三十()
If Range("C2") = True Then
ActiveSheet.Shapes(2).Visible = True
Else
ActiveSheet.Shapes(2).Visible = False
End If
End Sub
チェックボックスそれぞれにマクロを登録しておく。
チェックボックスはShapes(1)になると思うのでShapes(2)からが直線になろうかと思います。
沢山チェックボックスがあるとめんどくさいな〜
635 :
630 :2007/01/19(金) 22:09:58
>>633 先にオートシェイプ引いておいて、表示非表示切り替えですか。
目から鱗です。試してみます。ありがとうございました。
636 :
名無しさん@そうだ選挙にいこう :2007/01/19(金) 23:56:05
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 勉強中 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 マクロ 歳事記 季節の行事 スケジュール帳を作っています。 六曜のマクロは見つけさせていただいたのですが、 立夏、忙種、彼岸等のマクロというのは存在するのでしょうか? 記念日のように第二日曜日等のような計算で出せるのでしょうか?
マクロは見つける物ではなく書く物だよ がんばれ
0 12.9 15.5 48.4 40.4 27.9 20.9 0 33.5 210.2 こういうデータで、どの辺に一番多く分布しているかが一目で分かるようなグラフを出したいんですが。 散布図というのをやったんですがちょっと違う。X軸には意味がないんで。 もっとはっきりと分かるグラフと言ったらどんなのがありますか。
はっきりというのは、 いくつからいくつまでに一番多く分布しているねというような感じです。
Excel 2007へのアップグレードに関する質問を ここでしてもかまいませんか? 今、2000と97を使っているのですが、どちらも 新バージョンへ移行できるでしょうか? 購入したのが遠い昔のことなので箱も何も どっかへ行ってしまったのですが、それでも 大丈夫でしょうか?
>>642 参考にはならんと思うが。
手元にあるOffice2003のアップグレード版の箱には、
Office97以降(97、2000、XP)が対象と書かれているな。
645 :
642 :2007/01/20(土) 11:24:10
>>643 ありがとうございます。
かたっぱしから読んでみます。
複数の離れたセルのデータをグラフ化する方法がわかりません。 昨日エクセルのヘルプ内を彷徨い続けましたがわかりませんでした。 どなたかご教授ください。
>>646 データ範囲を選択するときに
Ctrlキーを押しながら離れたセルを選択しなさい
648 :
642 :2007/01/20(土) 14:24:23
解決しました。 97からのアップグレードは無理のようですが、 2000は大丈夫みたいです。 また、ヘルプを開けば表示されるプロダクトIDさえわかれば アップグレードできるということもわかりました。 ただ、互換機能パックをインストールすれば 2007で作成されたファイルも、2007固有の新機能で作られた 部分を除いては2000でも開けるそうなので、 すぐにアップグレードはせずに様子を見ることにします。 取引先から送られてくるファイルを開けなかったら どうしよう、ということが心配だったので。 今後、2007の新機能が普及して、2000では見られない部分が 多くなるようであれば購入しようと思います。
>>647 シートをまたいでの話でした。説明不足で申し訳ないです。
いろいろ試してみましたが「参照が正しくありません」と表示されるだけでした。
範囲に名前を付けるとか、参照で同一シートに全てのデータを引っ張るとか
651 :
名無しさん@そうだ選挙にいこう :2007/01/20(土) 19:15:55
質問させて下さい すでに携帯電話を入力してある(500人の顧客名簿)の**********を***-****-****と自動でするにはどうしたらよいですか XP HOME オフィス2003 テンプレートみました マクロワカンナイデス>< やった事 ユーザー定義で **********を***-****-****とやって一つのセルは出来ましたが、大量のセルは出来ませんでした
>651 例1)書式設定の場合 000-0000-0000
>>651 一つ出来たのなら全部を同時にすれば済む話ぢゃないのか?
warata
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 EXCEL 罫線をコピーしない ctrl+D 縦に連続した範囲を選択し,ctrl+D を押すと,または, 横に連続した範囲を選択し,ctrl+R を押すと, それぞれ下方向や右方向へ手軽にコピーすることができますが, 罫線も含めてすべてコピーされてしまいます。 ショートカットキーで,同様の動作を,「罫線をコピーしない」状態でさせたいのですが, 標準機能ではないようなので,VBAでマクロを組み,それにショートカットキーを 割り当てたいと思います。これを実現するVBAを教えてください。
657 :
名無しさん@そうだ選挙にいこう :2007/01/20(土) 21:48:00
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 ノー 【4 VBAでの回答の可否】 不可 毎回ファイルを開くたびにソースが不明って出るんだけど ソース変更で再度設定しても何度も出る。何なんすかこれ?
660 :
655 :2007/01/20(土) 22:04:41
>>656 マクロの記録ではできないのでお聞きしたのですが…
661 :
659 :2007/01/20(土) 23:15:10
だからマウス使えってば AutoFillで出来ればよかったんだが分からん 完全ではないが出来ないことはないみたい Sub test() Selection.Offset(-1, 0).Select Selection.Copy Destination:=Selection.Offset(1, 0) Selection.Offset(1, 0).Select With Selection .Borders(xlEdgeLeft).LineStyle = xlNone .Borders(xlEdgeRight).LineStyle = xlNone .Borders(xlEdgeBottom).LineStyle = xlNone End With Selection.Offset(1, 0).Select End Sub
662 :
名無しさん@そうだ選挙にいこう :2007/01/20(土) 23:23:27
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 少し 【4 VBAでの回答の可否】 可 行を表す変数xを使ってオートフィルしたいんですが、 Range(Cells(9, 40), Cells(9, 41)).Select Selection.AutoFill Destination:=Range(Cells(x, 40), Cells(x, 41)), Type:=xlFillValues を実行すると、エラーが出てしまいます。 他のやりかたがあるのでしょうか?
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 少し 【4 VBAでの回答の可否】 可 商品名 価格 タコ 1200 イカ 1000 タコ 1500 タコ 2000 イカ 1000 カイ 500 上記のようなデータが入っている表があります. その中からタコの価格の総額(1200+1500+2000=4700)を出す関数を作りたいのすが countifを使って柿のように組むと結果がなぜか0になってしまいます。 =COUNTIF(A:A,B:B="タコ") いい方法ありましたらお教えください
×柿 ○下記
>>662 そのxがSelectionした範囲を含んでいない
>>662 Range(Cells(9, 40), Cells(9, 41)).Select
Selection.AutoFill Destination:=Range(Cells(9, 40), Cells(X, 41)), Type:=xlFillValues
>>663 ▼━質問時の注意・決まり事 ━━━━━━━━━━━━━━━━━
・1 現行スレ内で既出の質問が無いか、ページ内検索をしよう。(Ctrl+F)
>>541
>>663 A・B列全て選択するなら=COUNTIF(A:B,”タコ”)
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 ノー 【4 VBAでの回答の可否】 不可 エクセルで数式が入っているセルをコピーして貼り付けすると 数式の計算式が変わってしまいます。 変化しないでコピー&ペイストする方法ってあります?
669 :
名無しさん@そうだ選挙にいこう :2007/01/21(日) 00:03:15
>>665 >>666 ありがとうございます。
rangeの始点は(9,40)で固定してオートフィルするんですね。
なんかわかったようなわからないような。
671 :
名無しさん@そうだ選挙にいこう :2007/01/21(日) 00:27:54
関数の名前ボックスや関数の挿入のある列(数字の列の上) のことをなんていうんですか?
>>669 始点と終点の変数が同じなら範囲が変わらないじゃん
開始行から何行目までと指定しなきゃ、開始行を基準にするんだから
674 :
名無しさん@そうだ選挙にいこう :2007/01/21(日) 01:49:48
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 ノー 【4 VBAでの回答の可否】 不可 複数のシートがある状態で、コピーの余白設定をすべてのシートに反映させるにはどうすればいいですか。 すべてのシートを選んで設定しても最初のひとつしか反映されません。 よろしくおねがいします。
675 :
名無しさん@そうだ選挙にいこう :2007/01/21(日) 05:12:42
【1 OSの種類 .】 Windows2000 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 少し 【4 VBAでの回答の可否】 可 プリンターの印刷を指定部数の途中で止めたいのですが、 コントロールパネル→プリンタのドキュメントのキャンセル(項目全キャンセル)の コードはどう書くのでしょうか?
>>674 コピーの余白って何だ?
印刷の余白なら、印刷設定は複数シートを一括して変更すると
矛盾が生じる部分が有るため出来なくなってるけど。
>>675 >>2 ・7
君がやろうとしてるのは
【Excel】
↓印刷データ・設定などを一括して送る
【印刷制御プログラム】
↓印刷データを設定に従い、印刷状況やプリンタバッファに合わせて順次送る
【プリンタ】
の【印刷制御プログラム】の操作。
Excelだけでなく他の印刷機能のあるソフト全てから利用するもので
Excelとは直接的な関係は全く無い部分。
677 :
675 :2007/01/21(日) 07:01:48
>676 お答えありがとうございます。そうですか、VBAでできるかと思ってました。
VBAで出来るけど、VBAではなくVBの分野ってこと VBAはVisual Basic for Applicationで、Applicationとは Application └Workbooks ├Charts └Worksheets ├Range ├Shapes └ChartObjects というオブジェクトの親。つまり、例えExcel付属のマクロ機能を使おうと、 ブック、シート、セル及びシートに配置されたオブジェクト等のの操作以外、 外部プログラムを制御するとか、外部データを整形するとか、Webアクセスしてデータのやりとりするとかは Application以下のオブジェクトのメソッドなどとして実装されていない限り、VBA分野の話じゃない。
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 少し 【4 VBAでの回答の可否】 VBA 配列 検索 あるセルに入力されている文字列の一部を 指定するワークシートから検索してそのセルの位置を返すマクロを作成したいのですが 1.For Each ,...NextとIfを組み合わせる 2.Findメソッドを使う(?) 3.ワークシート関数のMatchを使う のどれが一番賢いやり方でしょうか
単純一致ならFindだね 正規表現で一致検索するならFor EachとIfとRegExpのTest 高速化したければ範囲を配列に取って二重ForとIfとRegExpのTest
>680 レスありがとうごさいます For EachよりForを二重にした方が早く LikeよりRegExpとTestを使うほうが良いんですね ちょっと試してみます
>>675 Sheets("Sheet1").PrintOut From:=1, TO:=2, Copies:=3, Collate:=True '1ページ〜2ページまでを3部印刷
>>676 >>678 知ったかぶりして書き込まないように
>>682 それ、指定したページを指定した部数印刷でしょ
印刷を始めちゃったやつを 【途中で】 止める方法を
>>675 は聞いていると思うぞ
>>681 For EachよりForを二重が速いんじゃなくて
Valueプロパティを何度も取得するより、配列に一括取得した方が速いということ
For二重は配列を調べるための手段なだけ
For二重でValueプロパティ取得してたら逆に遅くなる
それとRegExpとTestは先にも書いたように「正規表現検索したければ」の話だ
likeよりRegExpの方が良いなんて一言も言ってない
ワイルドカードで済むならlikeで充分
686 :
名無しさん@そうだ選挙にいこう :2007/01/21(日) 11:58:56
>>683 >>663 の質問の場合
正しい回答はCOUNTIFの使い方ではなくSUMIFになる
当然
>>675 の質問も印刷を途中で止める方法と解釈するのは適切ではない。
>>685 このスレの質問者が勘違いしているのであって
回答者には、それを理解するエスパー力が必要なんだよ。
【1 OSの種類 .】 Windows2000orXp 【2 Excelのバージョン 】 Excel97〜2003どれもで良い 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 ユーザーフォーム,最前面,表示 ユーザーフォームを常に最前面に表示したい。 またExcelだけでなく全てのアプリケーションに対しても有効で 常にユーザーフォームを最前面にする。 上記機能を持ったフリーウェアはあるのですが、 その都度最前面にするフォームを指定する必要があります。 Excel VBAを使うなどしてフォームを自動で最前面に表示する方法はないでしょうか? 別アプリケーション使用時に参考データとして常時表示するために使用したいのです。 よろしくお願いいたします。
>>689 そう言ってやるな。
当人は顔真っ赤にしてるはずだからさ
691 :
675 :2007/01/21(日) 12:55:38
>>682 VBAでできるのですね。
ありがとうございます
「途中で止める」ではなく「指定位置まで印刷する」なら簡単
>>688 おお、出来そうでね。ありがとうございました。
>>693 意地になってこれ以上恥の上塗りはやめろ
ここでやめておけばまだ救える
696 :
名無しさん@そうだ選挙にいこう :2007/01/21(日) 13:41:25
キチガイ粘着はスレ違い!!!!
698 :
名無しさん@そうだ選挙にいこう :2007/01/21(日) 14:36:52
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 少 【4 VBAでの回答の可否】 可 CELL (1,2)に入ってる2006/12/15 て所から変数HOGEYEAR に年だけ文字列として入れたいので DIM HOGEYEAR AS STRING Cells(1, 3).Formula = "=TEXT(B1,"yyyy")" HOGEYEAR= CELLS(1,3).VALUE とやろうとしたのですが、エラーがでて進みません。 HOGEYEAR に2006てのが入ればいいだけなんですけど、自分でも おそらく凄く回りくどい事をやってる気もします。 なにかいいアイディアありますか?
Year関数(日付から年を返す関数)使えばいいだけじゃないの? CStrしなくても変数がString型なら、普通に代入するだけで自動変換で文字列になるし。
700 :
名無しさん@そうだ選挙にいこう :2007/01/21(日) 14:57:51
すみません
>>674 はコピーの余白ではなくて、印刷の余白でした。
シートが90くらいあるので、印刷の余白の設定が非常に大変なんですが、
なにかいい方法はないでしょうか?
>>700 VBAという良い方法があるにはあるが、VBA不可という条件なので
手動でやれと言うしかないな
因みに条件後出しは無しの方向で
>>674 プレビュー画面だとひとつのシートしか反映されないけど、シートのプロパティ
で余白を数字で入力すれば全部反映されなかったっけ?
703 :
名無しさん@そうだ選挙にいこう :2007/01/21(日) 16:21:21
>>702 シートのプロパティってどうやって表示するんですか?
>702 おおほんとだ!ありがとうございます
プロパティーっつーかページ設定の事だべ
>>698 1.) =YEAR(B1)
2.)書式→ユーザー定義
3.)HOGEYEAR = Format(Cells(1, 2), "yyyy")
Cells(1, 3) = HOGEYEAR
707 :
名無しさん@そうだ選挙にいこう :2007/01/21(日) 18:25:41
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 ○ 【4 VBAでの回答の可否】 可 シート名をある文字に変更したい場合、 指定した文字だけは不可にすることって可能なんでしょうか?
>>707 可能です。
VBAが使えるようなので、ご自分でお考えください。
709 :
名無しさん@そうだ選挙にいこう :2007/01/21(日) 19:50:10
がんばれ
711 :
名無しさん@そうだ選挙にいこう :2007/01/21(日) 20:14:29
エクセルで作った表を上に移動させるのにはどうしたら良いのでしょうか?
713 :
名無しさん@そうだ選挙にいこう :2007/01/21(日) 20:50:28
>>708 すいません
どうしてもわかりません
本当に教えてください
714 :
名無しさん@そうだ選挙にいこう :2007/01/21(日) 21:11:11
なんか自演が多いね
716 :
名無しさん@そうだ選挙にいこう :2007/01/21(日) 22:16:28
VBAで現在開いているファイル名を取得する場合って ActiveWorkbook.Nameだと思いますが これだとaaa.xlsみたいになります これを拡張子抜きのものを取得したい場合どうすればいいのでしょうか?
717 :
名無しさん@そうだ選挙にいこう :2007/01/21(日) 22:23:18
開くたびに「マクロを有効にしますか」とでるのですが、セキュリティレベルを低にしても大丈夫でしょうか。
>>716 結果から、全体の文字数-4を、文字列の左から抜く。
>>717 仕事場だったら×
自宅なら○
>>713 EXCEL7クラスをフックするといいよ
フックってのは、プログラム制御の基本手法の一つなので詳しくはググろう
フックすら使いこなせないレベルなら諦めよう
>>716 Left InStrRev
拡張子が固定の場合ならLeft Lenでも出来るけどInStrRevが基本
Lenの方が簡単だけど、結果は同じでも意味が違ってくるからな
>>717 君の使い方次第
Excel側のセキュリティを下げても、別な方法でマクロウィルスを
回避する手段やスキルを持ってるとか、ネットに繋がってないPCで
自分の作ったブックしか扱わないとかなら問題ないだろ
720 :
717 :2007/01/21(日) 22:58:08
>718 >719 おとなしく中にしときます。 ありがとうございました。
>>716 Dim MyFile As Object
Set MyFile = CreateObject("Scripting.FileSystemObject")
MsgBox MyFile.GetBaseName(ActiveWorkbook.Name)
>>717 低
確認メッセージの表示や署名の確認が行われることなく、マクロが有効になります。
ウイルス検索プログラムがインストールされているか、
すべてのドキュメントが安全であると確認した場合のみ設定してください。
ttp://support.microsoft.com/kb/882824/ja
【1 OSの種類 .】 WindowsXP Home Edition version 2002 Service Pack 2 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 エクセル 並び替え 2級の表計算検定の勉強をしているのですが、数字の並び替えがうまくできません。 出力形式2の方を(例えば昇順で)並び替えようとすると、コードや名前は 並び替わるのですが、肝心の数値や判定/評価が全くもとのままの並びです。 ググって数値と認識させるために0を加算する、などはやってみましたが 変わりありませんでした。 どうすればよいでしょうか。
>>722 数値として認識させたいだけなら、区切り位置や、
いったんテキストファイルに貼り付けてから、
再度Excelの新規ファイルに貼るという方法を試してみて。
この程度でActiveXコンポーネントに頼るのはどうかと
>>723 ありがとうございます。
数値は一応桁区切りスタイルにしているので、数値として認識されては
いると思うのですが……。
あと、数値だけでなく評価/判定(アルファベットやアスタリスク)も
何故か並び替えされないのです。 コードや名前欄は並び替えされるのですが……。
>>722 資格か何か知らんが、何をしたいのかが分からん。
>>726 日本情報処理能力検定協会の、2級の表計算の検定の模擬試験問題を
やっています。
729 :
名無しさん@そうだ選挙にいこう :2007/01/22(月) 14:50:54
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 少 【4 VBAでの回答の可否】 可 Countifを使って表示させた数値が、2以上になった場合 入力規制のエラーを表示させたいのですが どのように設定すればよいでしょうか? セルに丸を入力してもらって、その丸の数が複数のセル内に二つ以上入力されるとエラーを出すようにしたいのです。 宜しくお願いします。
>>729 その条件で論理値を返す式を設定すれば良いだけだよ
731 :
名無しさん@そうだ選挙にいこう :2007/01/22(月) 15:15:44
Excel2003なのですが、起動時にワークシートが表示されません。 また既存のファイルから起動し、新規作成をクリックしてもワークシートが出ません。 既存の文書に変更を加え閉じる時「保存しますか?」のメッセージも出ません。 これはどうしたら直りますか? 再インストールでは直りませんでした。
ちゃんとOSから再インストールしたの? してないなら、まずはそれを試せ
733 :
名無しさん@そうだ選挙にいこう :2007/01/22(月) 15:45:40
>>730 ごめんなさい!もう少し詳しくお願いします。。すみません!
>>731 ウインドウ→再表示
の中には何か入ってる?
736 :
729 :2007/01/22(月) 16:08:19
>>735 実はもっと複雑なことをしてまして、
指定のセルに1/1と1/4と入力すると
別シートに用意されたカレンダー式のセルの1/1、1/2、1/3、1/4のところに「1」と表示するよう設定してあります(1)。
それが三人分作られていて、もしその入力された期間が誰かと被ってしまった場合(2)に警告を出したいのです。
(1)
=IF(AND(入力された期間開始日<=カレンダー日付, カレンダー日付<=入力された期間終了日),"1","")
(2)
=COUNTIF(カレンダー一人目のセル:カレンダー三人目のセル,"1")
これで三人のスケジュールの結果が一つの行にまとめて表示されます。
もしスケジュールが被った場合(2の結果が"1"以上になった場合)に、
条件付書式でセルが赤くなるように設定しました。
それと同時に警告を出すようにしたいのです。
複雑ですみません!
A1〜A20には○と×が書いてあります。 B1〜B20には1〜5の数字が書いてあります。 1〜20の中で「Aが○」かつ「Bが1」の個数をカウントしたいのですが、そんな関数ありますか?
739 :
729 :2007/01/22(月) 16:25:51
>>737 入力規制で指定する数式が分からないのです。。
ただ2以上の入力を規制しても、数式の結果である数字には反応しないみたいです。
>>738 Excel2007にはCOUNTIFSってのがあるようです
そうでなければ組み合わせて作ります
>>739 入力値の種類をユーザー設定に
数式を =(式<2) で式が2未満のときのみ入力できます
741 :
731 :2007/01/22(月) 16:48:47
>>741 新規作成押したら、ファイルは作れるんでしょ?
作った真っ白のファイルをそのまま「personal.xls」と名前をつけて保存。
そのファイルをOfficeインストールフォルダ内の「XLStart」フォルダの中に
ブチ込んで、Excelを再起動したら、どうだ。
>>741 正規に購入して、ちゃんと登録したのか
登録して無いと起動後50回までしか編集作業はできないぞ
その後はビュワーとしての機能しか使えなくなる
744 :
729 :2007/01/22(月) 17:10:16
まだ苦戦中です。。すみません。 今度は被った日の数を別の場所に表示させました。 A1とB1に日付を入れるとC1に数が出てきます。 B1に数字を入れ終わったとき、C1の数が1以上になった場合に警告を出すには どこのセルにどんな数式を入れるのでしょうか? A1とB1に入力規制をかけて 入力値の種類→ユーザー設定 数式を =(CI=<1) でやってもうまくいきません。。 何度もすみませんがお願いいたします。
745 :
729 :2007/01/22(月) 17:11:47
=(CI=>1)ですね。 また=(CIに入っている数式=<1)でも駄目です。
746 :
731 :2007/01/22(月) 17:15:02
>>742 それは出来ますけど既存のファイルを開いた時もそれが出ちゃいます。
起動時に何か読み込んでるようなんでVBAから見てみたらTOKUEXCEL.xla
ってのがあります。
ソースネクストの特打ち式パソコン入門/Excel編って言うソフトが入ってますね。
妹のPCなんで人事のようなんですが・・
747 :
731 :2007/01/22(月) 17:15:53
終了。
750 :
731 :2007/01/22(月) 17:27:51
問題のソフトを立ち上げて終了したら直ったぞ。 なんだこりゃ???
Excel2000を使っています。 ハイパーリンクを使うとインターネットエクスプローラが開いてウェブページが表示されますがエクセルが最小化になってしまいます。 エクセルが最小化にならず、ウェブページが最大化でなく少し小さく表示されるようにしたいのですがどうすればいいでしょうか。
>>729 (
>>744 ,
>>745 )
とりあえず等号不等号は、<>が先で=が後とかそういう初歩的なことをきちんと覚えよう
そして超初心者なら超初心者らしく、入力規則式を作るときは、いきなり入力規則に式を設定しないで
適当なセルに式を入力してTRUE/FALSEの結果を確認しながら勉強しよう
それと入力規則はエラーを出す条件式を作るんじゃなくて、入力可能な条件を式にするんだからね
そして入力規則は文字通り入力を行うセルに設定するものだからね
最後に、試行錯誤もせずに数十分から1時間単位で聞き返しまくったりしないで
せめて1日くらいは自分で頑張ろう(
>>2 ・5)
では、またわからなかったら明日の夕方以降にどうぞってことで、さようなら
>>744 B1に =C1<2 でできないかな
(またはA1とB1にそれぞれ =C2<2)
入力規則は正常な範囲を指定するものですからね
それを外れたら警告が出る・・・です
残業中です。よろしくお願いします。 【1 OSの種類 .】 Windows2000SP4 【2 Excelのバージョン 】 Excel2002 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 SaveAs FileSystemObject など やりたいこと: イベント発生時に、ファイルのバックアップをとりたい バックアップ完了後も、元のファイルを続けて編集したい ここが上手くいかない: SaveAsを使うと、実行後は「別名」のファイルがアクティブになってしまう
>>729 Private Sub Worksheet_Change(ByVal Target As Range)
If Sheets("Sheet1").Range("A1") >= 2 Then
MsgBox "日付が重複しています。"
End If
End Sub
>>754 ActiveWorkbook.Save
>>754 SaveAsじゃなくてSave使えばいいじゃん
その上でSaveしたファイルをコピーすれば、それがバックアップになる
Save前のファイルも残したいなら、Save前のファイルもコピーを取っておけばいいだけだし
>>740 ME(つд`)・゚・。
組み合わせってどうやって(つд`)・゚・。
AND関数
760 :
754 :2007/01/22(月) 19:03:10
SaveCopyAs でいけました。 回答してくださった方々ありがとうございました。
761 :
名無しさん@そうだ選挙にいこう :2007/01/22(月) 19:03:14
>>758 COUNTIFは条件1つなら数えられる。
だから作業列を作って、そこに複数条件の判定結果(IF関数でよい)を書き、
その列をCOUNTIFで数えりゃよろし。
>>738 {=(SUM(IF(A1:A20="○",IF(B1:B20=1,B1:B20,0))))/1}
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2002 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 1月 1 2 3 4 … 月 火 水 木 … A ○ B ○ みたいな感じの表を作ってます。 数字は固定にして曜日はtext関数にするとしたら、 土日だけに設定した入力規則を 月が変わって曜日がずれても持ち越す方法はありますか? また、中6日などでローテが固定されていて○の位置が決まっている場合、 関数や入力規則を使って簡単に一ヶ月分入力できる方法はありますか?
765 :
名無しさん@そうだ選挙にいこう :2007/01/22(月) 21:15:37
>>763 日はシリアル値にして
曜日は=CHOOSE(WEEKDAY(),"月",・・・)にすると
簡単にできるよ
766 :
名無しさん@そうだ選挙にいこう :2007/01/22(月) 22:34:44
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 【5 検索キーワード 】マルチページ ユーザーフォームにコマンドボタンを複数配置してクリックするボタンによって 別のユーザーフォームに配置したマルチページのタブに切り替える出来ますか? ボタン1クリック→マルチページのタブ1画面 ボタン2クリック→マルチページのタブ2画面 という感じです、よろしくお願いします。
>>766 それぞれActiveにするだけじゃねーの。
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 工場の寸法測定結果を紙に記録してるんですが、 PC化することになりました。 紙のフォームはEXCELで作ったんですが 特定のセルに入力したデータをその日毎に 集計して連続して(一ヶ月とか一年とか) CSVファイルなどに出力できないでしょうか? 2006.01.18 A 200 199 B 199 C 198 196 D 199 のようなエクセルフォームを下のような感じで集計したい。 データは日毎に縦軸方向に増えていって欲しい。 A B C D 2006.01.18 200 199 198 199 199 196 2006.01.19 199 200 201 ・ ・ フォームがエクセルなんでエクセルで出来たらと思います。 アドバイスお願いします。
>768 すいませんズレました。 A B C D 2006.01.18 200 199 198 199 199 196 2006.01.19 199 200 201 ・ ・
>>768-769 最初のデータは手入力なの?
だったら、後々計算しやすいように入力フォームを変えたら?
俺もそう思う。 あとCSVでデータベース化するなら2行に分けてるレコードを同じ日付で 別レコードにしたほうがいい。 固定長で出力するのかカンマで出力するのかとかその他いろいろ。 一番手っ取り早いのは出力する形式で入力してCSVで保存すればいい。
772 :
名無しさん@そうだ選挙にいこう :2007/01/22(月) 23:36:25
Excel2002を使っています。 質問なんですが、Excelを使用し名前付けて保存したのですが、その時に「概存したファイルがありますが置き換えますか?」になり間違えて「はい」と答え、別のExcelに上書きされてしまいました。これは元に戻す事は出来ないでしょうか?
773 :
768 :2007/01/22(月) 23:37:04
さっそくのレス感謝します。 入力フォームといいますか、紙とほとんど同じにしないと 現場のオジサン連中が嫌がります。 なんで入力フォーム(紙の原版)はそのままで 数字のデータのみ並び替えて毎日連続して記録したいんです。 以前アクセスを使っていたようですがPCが古いので トラブルが多く、現在は使えない(使うな!!)らしいです。
>>773 一日分が1シートかな?
どっちにしても、データをつど(マクロで)テキストデータに落として毎日保存。
必要なときにそのテキストデータを(マクロで)読み出して集計。
というのが一番よさげ、、、
オジサン達には入力フォームはそのままで入力してもらって、 別のシートに入力したデータをCSV形式で保存するデータ形式にしてから、CSVに書き出す。 定型データならVBAを使ってもそれほど難しくはないと思う。 A B C D 2006.01.18 200 199 198 199 2006.01.18 199 196 2006.01.18 198 日付データは上でも書いてあるように、同じ日付をつけておいたほうが後々便利 あと、オジサンたちにわかりやすく、入力フォームには色をつけておくか、 別シートは隠しておくのがいいかも。
776 :
名無しさん@そうだ選挙にいこう :2007/01/23(火) 00:21:51
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン】 Excel2003 【3 VBAが使えるか 】 いいえ 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 グラフ作成について、教えてください。 身長・体重・体脂肪率を毎日計って 一年単位で表示する折れ線グラフを作りたいのですが、 ウィンドウに合わせてグラフが表示されてしまうために、 X軸に設定した日付がつぶれてしまって読めません。 恐ろしく横スクロールするグラフで良いんです。 グラフエリアをウィンドウ幅を超えて大きくする方法を教えてください。 よろしくお願いします。
>>776 グラフ作るときのウィザードの最後の所で、シートじゃなく、
オブジェクトを選べばいいよ。
test
779 :
名無しさん@そうだ選挙にいこう :2007/01/23(火) 02:15:06
>>777 ありがとうございました。
今までグラフはすべて使途にして作成していたので、
意外な盲点でした^^;
おかげさまで思い通りのグラフを作成できて、大変満足しています。
目からウロコ・・・ですね。
本当にありがとうございました。
【1 OSの種類 .】 Windows2000 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 少し 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 A B C 1 麻生 麻生 2 安倍 安倍 3 小泉 小泉 4 森 森 5 小泉 橋本 6 橋本 小沢 7 小沢 8 橋本 A列にデータが入っているのですが、C列にダブリのない状態でデータを移したい。 VBAではどのようにすればよいでしょう?
一列だけならループで総当りするか、Findで検索すればいいじゃん
782 :
781 :2007/01/23(火) 05:13:11
Private Sub Commandbutton1_Click() Dim myRange As Range, LastRow As Long, r As Long Range("C:C").Clear LastRow = Range("C65536").End(xlUp).Row For r = 1 To 8 Set myRange = Range("A1:A8").Find(Cells(r, 1).Value) If myRange.Address = Cells(r, 1).Address Then Cells(LastRow, 3) = Cells(r, 1).Value LastRow = LastRow + 1 End If Next r End Sub 長ったらしいけど基礎的なループ処理で書いてみたから勉強してくれよな! 動かんくてもしらん。
783 :
780 :2007/01/23(火) 08:17:10
【1 OSの種類 .】 WindowsXP SP2 【2 Excelのバージョン 】 Excel 2000 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 置換 定数 セルに入力しておいた文字列 "大福 + ジュース + まんじゅう" に対して、たとえば大福が60円、ジュースが150円、まんじゅうが70円だとして、 それを表で作っておき、 それを参照しながら別のセルに 280 という数値の答えが出したいです。 VLOOKUPにより、"大福"とだけ入力されているのなら 60と出来ましたが、 それを文字列中に複数個ある場合や、+ などの計算評価(VALUEで試しましたが・・)が出来ないです。 上手いやり方を教えてください。
785 :
784 :2007/01/23(火) 11:08:26
〜 追記 〜 "大福 + ジュース + まんじゅう" は可変であり、 "大福 * 2 + ジュース" などとなる場合もあり、 その値段の計算結果を出したいです。
大福を60ジュース150まんじゅう70に置き換えれば
>>784 メニュー > 挿入 > 名前 > 定義
名前:大福 参照範囲:=60
名前:ジュース 参照範囲:=150
名前:まんじゅう 参照範囲:=70
これで
=大福 + ジュース + まんじゅう
=大福 * 2 + ジュース
と、""で囲わず=を付ければ良し
789 :
784 :2007/01/23(火) 11:33:22
>>788 ありがとうございます。
その定義で参照範囲をセルから持ってくることに成功しました。
後半ですが、一つのセルに 大福 + ジュース + まんじゅう と書いてそれはそのままそこに表示、
その後のセルに計算結果がでるようにしたいです。
「」をセルだとして、
「大福 + ジュース + まんじゅう」「280」 という感じです。
現在だと、大福 + ジュース + まんじゅうを2度書き、
「大福 + ジュース + まんじゅう」「=大福 + ジュース + まんじゅう」
とやらなければならずスマートではありません。
前のセルの文字列を判定して計算はできないでしょうか?
調べたところevalというのが出ましたがこれは他の言語のようで、似たようなことができればと思っています。
>>789 Eval同等のことはVBA使えば出来るよ
VBA使いたくないなら文字列関数で切り出して
論理関数や検索関数を使って計算すれば良い
それぞれの関数の使い方はヘルプ参照
>>789 単体の参照だけならindirectワークシート関数でいけるかな?
でも式を計算させたいとなると、VBA使ってユーザー定義関数作らないとできないかも。
一応関数書いてみると、Evaluateメソッドていうの使ってこんな感じ
で、ワークシートにはセルA1に式の文字列つけて、B2には「=eval(A1)」
Function eval(s As String)
Application.Volatile
eval = Application.Evaluate(s)
End Function
VBA使わないですむ方法は知らない
792 :
784 :2007/01/23(火) 13:32:37
>>791 ありがとうございます。すばらしく完璧に狙い通りの動作になりました。
しかしこんな関数は標準装備しててもよさそうな気もしました。
明らかに仕様を変えた方が良いと思うが。 Excelで無理してやる方法じゃないし、明らかな自己マンだな。
なんでVBA否なのにVBAの回答で満足するんだ? VBA使えばどうにでもなる問題なんだから、VBAでもいいなら 初めからVBA可にしてれば、もっと早くに解決したろうに
795 :
784 :2007/01/23(火) 14:49:28
796 :
名無しさん@そうだ選挙にいこう :2007/01/23(火) 16:28:57
【1 OSの種類 .】 WindowsXP SP2 【2 Excelのバージョン 】 Excel 2002 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 センタリング 右寄せ 5000 50000 などと縦に書いていって、それをセンタリングして右端をそろえるのはどうやれば良いんでしょうか? インデントを使ってもなかなか中央にバッチリ行ってない感じなので・・・
>>796 普通に右詰めにして、
そのセルの右側にダミー用の空白セルを設け、主動で幅を変更。
798 :
名無しさん@そうだ選挙にいこう :2007/01/23(火) 16:40:00
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 少 数式により、セル内の数字が「1」と表示された瞬間に メッセージが現れるようにしたいのですが、どうすれば良いでしょうか? 入力規制は入力できなくなってしまうので、使いたくないのです。 宜しくお願いします。
1と表示された瞬間ではなくセルの内容が1と確定した瞬間であれば、 Private Sub Worksheet_Change(ByVal Target As Range) If Target.Value = "1" Then MsgBox "メッセージ" End If End Sub
800 :
798 :2007/01/23(火) 16:57:38
>>799 ありがとうございます。
ちょっと説明不足だったのですが、
特定の一列のなかに1以上の数字が現れた時にメッセージを出したいのです。
列はどこで指定すればよいのでしょうか。
799さんの回答をヒントに少し調べてみます。
また後付けか。
802 :
798 :2007/01/23(火) 17:05:24
ごめんなさい! 途中でやり方変えたんです。。すみません!
803 :
798 :2007/01/23(火) 18:03:01
やはりわからない。。 特定の一列のセル内に1以上の数字が数式によって現れた時、 メッセージを出すマクロを教えてください!
>>803 なぜ入力規制じゃだめなのかがわからない
805 :
798 :2007/01/23(火) 18:18:11
入力規制だと、規制されている内容が入力できなくなるので そうではなくただメッセージを出すようにしたいのです。
特定の用語の問題でもないのに、質問スレを 全部舐めろというのは、無理があるんじゃないかなーw
808 :
798 :2007/01/23(火) 18:23:51
>>806 すみませんでした!ありがとうございます!
>>807 入力規制でヒットしますが、ボンクラですか?
ボンクラですw
ボンクラでしたか。
812 :
名無しさん@そうだ選挙にいこう :2007/01/23(火) 19:12:24
Private Sub Worksheet_Change(ByVal Target As Range) If Sheets("Sheet1").Range("A1") >= 2 Then MsgBox "日付が重複しています。" End If End Sub これをA1の数値が増えた時のみにMsgBoxが開くにはどうするのでしょうか?
814 :
名無しさん@そうだ選挙にいこう :2007/01/23(火) 19:22:13
A1の値をどこかに確保しておいてそれと比べると良いのでは?
【1 OSの種類 .】 Windowsxp 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 連続データ max min 工場に勤めています。 A列からF列、1行から60000行の数値データがあります。 VBAを使って、このデータを250行ごとにmaxの値、minの値を抽出し、別の シートに順次記載して管理したいのですが、やり方がわかりません!! 誰か解決してください。お願いします。
>>815 =MAX(Sheet1!A1:F250) =MIN(Sheet1!A1:F250)
=MAX(Sheet1!A251:F500) =MIN(Sheet1!A251:F500)
このスレ、勤め先まで書く事になったの?
>>815 仕事で使うの?
この程度で質問するようなら上司に相談しようよ
「自分、Excelよくわかりません。このまま業務として使う必要があるのならパソコン教室に通いますから受講料の費用負担をお願いできませんか。できなければ自分を担当から外してください。」
これくらい言ってみよう。
いや正直な話、このままだとこの先辛い思いをするだけだよ。
819 :
名無しさん@そうだ選挙にいこう :2007/01/23(火) 20:12:41
821 :
名無しさん@そうだ選挙にいこう :2007/01/23(火) 21:01:53
質問させてください。 今年度入社する会社の課題(文章を長々と書くタイプの課題)で、 フォーマットとして会社からメールが送られてきたのが、エクセルなんです… 長文書くはずなのにワードじゃなくてエクセルって?と思ったのですが、そういった利用方法もあるのでしょうか? しかも3シート送られてきて、そのうち1シートが入力用で、2シートは白紙です。 これは会社のミスでしょうか?
822 :
名無しさん@そうだ選挙にいこう :2007/01/23(火) 21:02:05
カスどもがっ
>>821 初期設定ではブックに3つのシートが作られる。
一つ目のシートにフォーマットを作って残りのシートをそのままにしちゃった
おっちょこちょいの担当者がいるということでしょう。
Excelは報告用の帳票としても使われるからWordではなくExcelで作っちゃった
おっちょこちょいの(ry
ネタにマジレスかこいい
825 :
名無しさん@そうだ選挙にいこう :2007/01/23(火) 22:05:48
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 オートフィルタをかけた状態で、 ある範囲を選んだものをコピーし、 別のシートに貼り付けたら、 内容がずれてしまいました。 何かしらの理由、法則みたいなものはあるのでしょうか? 顧客情報がずれた状態で、データを出してしまい、 大変な事になってしまいました。 よろしくお願いします。
>>825 自分で、はっつけた後にソートしたんだろ。
絞った状態でズレる事なんて無い。
827 :
名無しさん@そうだ選挙にいこう :2007/01/23(火) 22:09:57
>>826 ではソートの段階でズレたという事でしょうか…
はっきりとは覚えていないのですが、
普段はソートするときは、
全て選択→オートフィルタ→ソート
をします。
この段階でズレる、という事は考えられますか?
829 :
名無しさん@そうだ選挙にいこう :2007/01/23(火) 22:24:42
>>828 元に戻す、が何か関係あるのでしょうか?
すみません、わかりません…
>>827 ソートするときに全部選択されてないとずれるよ
2002では選択セルの隣接セルにデータがある状態で並べ替えしようとすると
「選択されていないデータは並べ替えできません」って確認ダイアログが出るけど
あと、フィルタ展開する段階で、空行があったりして、全体が
範囲に入ってなかったりとか。
てゆーか、
>>825 の人的ミスをこんな所で、論じて何になる。
次から気をつけろとしか言いようがない。
832 :
名無しさん@そうだ選挙にいこう :2007/01/23(火) 22:51:37
>>830 普段は、オートフィルタがかかっている状態で、
ソートの基準にしたい行のセルを選択して
ソートをかけるのですが、
その状態でずれる事はありますか?
>>832 あのね、みんなが同じバージョン使ってるわけじゃないのよ
教えてもらったんだから自分でやってみなさいよ
数分もあれば確認できるでしょ
835 :
名無しさん@そうだ選挙にいこう :2007/01/23(火) 23:06:28
>>834 そうですね…
すみません、あれこれ試してみます。
流れぶった切るけど、なんでこの板名前欄が「そうだ選挙に行こう」なんだ?
838 :
名無しさん@そうだ選挙にいこう :2007/01/23(火) 23:36:01
本当にすみません、質問させて下さい。.xlsのちょっとしたファイルを今すぐ見たいのですが自宅のPCにエクセルが入ってません。その上、入れる空き容量さえないのですが、どうにかなりませんか?ネット上で.xlsのファイルを見ること(だけでいいので)が出来るページなどありませんか?
Google
>>838 エクセル自体は持っているんだったら
とりあえずHDに入っているエロ動画を捨てて空きを作れ。
エロ動画は捨てる前にうぷするのを忘れるなよ。
それがこのスレでの御礼の仕方だ。
>>838 「OpenOffice」「ExcelViewer」
この辺りの単語でググれば、幸せになれるかもしれんが、
いずれにしても、エロ動画をうpしない限りは、不可かと。
843 :
名無しさん@そうだ選挙にいこう :2007/01/24(水) 00:29:02
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 多少(編集程度なら…) 【4 VBAでの回答の可否】 不可 【5 検索キーワード 】 Excel 空白 "" 判定etc... 2時間以上色々検索しても原因がわからず悩んでいます…。 =IF(A1="111","111","") このようなIF関数を組んだのですがA1の値が111ではなく「""」で返された時 この「""」のセルは空白セルとして判定されないのでしょうか? 「""」で返された空白(に見える)セルを削除するマクロを組みたいのですが 編集→ジャンプ→セル選択→空白セルでも認識されず With Range("A1:A" & Range("A65536").End(xlUp).Row) .SpecialCells(xlCellTypeBlanks).EntireRow.Delete End With でも空白と認識されませんでした。 「""」を空白と認識させる方法がわかる方いらっしゃいましたらご教示ください。
844 :
名無しさん@そうだ選挙にいこう :2007/01/24(水) 00:39:30
【1 OSの種類 .】 WindowsXPPRO 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 はい 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 グラフウィザード 系列 棒グラフの各棒の下に文字を入れたい。 通常はグラフ作成のときにデータ範囲として指定するようだが、 それが出来ません(最終的には消したいので)。 グラフウィザードで系列を一個一個入れていけばいいかと思ったが 実際にやってみると、グラフの横に凡例として表示されてしまいます。 どなたか他の方法をご存じの方いませんか。
>>843 A1セルが全く空白でなく、ダブルクォーテーションが2つ入力された状態を
空白として、判断したいということ?
=IF(A1="""""","ダブルクォーテーション","")
で取れるので、"111"の式とネストすれ。
外してたらスマン。
>>843 質問の意味がよくわからんのだけども
参照してるA1の書式は文字列形式なの?
843です。説明下手ですいません。 参照しているA1は文字列です。111は仮に入れただけで実際は文字列単語です。 IF関数はA2に入力しています。このA2が「""」だった時にこのA2セルを削除してA3セルを上に詰めるマクロを組みたいという事なんです。 ジャンプから空白セルを選択してもA2が選択されず また、IF関数が入っているからかな?と思い、A2をコピーして形式を選択しての値貼り付けをした後も空白と認識されませんでした。 本当説明下手ですいません…理解できますでしょうか?
しつこく843です。何度もすいません。
>>845 のようにダブルクォーテーションが2つ入力された状態ではありません。
単純にダブルクォーテーション1つを空白セルと認識させたいという事です。
849 :
名無しさん@そうだ選挙にいこう :2007/01/24(水) 01:10:06
>>838 です!みなさん本当にありがとうございます!excelviewerで見れました!エロ動画は勘弁してください(笑)本当にありがとうございました!
【1 OSの種類 .】 Windows2000/WindowsXP 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 はい 【5 検索キーワード 】 Googleやヘルプでの検索キーワード 使っているのはExcel2000です。 VBAはプログラムが出来るので大体わかったんですが エクセル自体の機能にどんなものがあるのか理解するのに役立つ 本を探しています。 なにかオススメのものを紹介していただけませんか?
目的によって変わってくるから、とりあえずAmazonで「Excel」「VBA」で絞って 上の物からパラパラチェックしてみるのがいいんじゃないかな?
ちょっと書き方が悪かったようです。 VBAの機能は置いておいて、単純にエクセル自体の機能を学習したいということです。 以上、お願いいたします。
なる。一通り知りたいなら資格物がいいんじゃないかな。 Microsoft Office Specialist系のExcel関連のものを見れば ひととおり網羅されてると思うよ。
854 :
名無しさん@そうだ選挙にいこう :2007/01/24(水) 08:18:59
>>850 まずエクセルをあれこれいじくってみればいいんじゃない?
プログラムやってんなら、それでだいたいわかると思うけど。
で、わからないのはヘルプとかぐぐるとか。
それでも本がいいなら、適当に本屋行って買えばいい。
基礎の本なんてどの本もそんなに変わらないでしょ。
856 :
名無しさん@そうだ選挙にいこう :2007/01/24(水) 09:28:07
質問ですよろしくお願いします。 【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2000 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 excel 差引 在庫管理で使っています。 ある商品の出庫数や入庫数を入力したときに在庫数が差引で 残数が出るようにしたいんですが、どうすれば良いか見当もつきません。 具体的に説明すると 在庫数が100のときに 出庫数 50 入庫数 30を入力すると 在庫数が80になるようにしたいんです。 よろしくお願いします。
858 :
名無しさん@そうだ選挙にいこう :2007/01/24(水) 09:53:25
算数の問題をここで聞くか?変なやつ
実際に聞いてくる
>>856 みたいな変なやつがいるだろ
860 :
名無しさん@そうだ選挙にいこう :2007/01/24(水) 10:00:12
質問です。 作文用紙みたいに、文書を打ち込んだら、自動的に、下の段のセルに文書が流し込ませるような方法、ございますか?よろしくお願いします。 (送信案内のひな形を作成しております。)
861 :
名無しさん@そうだ選挙にいこう :2007/01/24(水) 10:02:42
>>856 式の入力の仕方が分らないって事だろ
エクセルって何?って所から勉強しないと始まんないね
マニュアルくらい読んどけよ
あと算数・数学の能力については君自身の問題だ
>>860 セルの書式設定で「折返して表示する」にチェック
>>860 VBA使えば出来るよ。
VBA使えないとか使いたくないという情報を出してないので
あとは自分でVBAコード書いてね。(
>>3 )
863 :
名無しさん@そうだ選挙にいこう :2007/01/24(水) 10:09:48
質門させてください。 【1 OSの種類 .】 Windows2000 【2 Excelのバージョン 】 Excel2002 【3 VBAが使えるか .】 使えません 【4 VBAでの回答の可否】 可(使えませんが、必要なら学習します) 【5 検索キーワード 】 セル 分割 関数 従業員の諸手当ての集計にエクセルを使用しています。 手当てには五つの種類があり、それぞれに1〜5までの番号が割り振られています。 月末、各従業員ごとに一日ごとに発生した手当てを番号によって抽出してCountIfなどで 集計しようと思ったのですが、一日に複数の種類の手当てが発生した場合に、ひとつのセルに 111(1番の手当てが一日中に3回発生している)や13(1番と3番の手当てが一日中に発生している) といった形で入力するためCountIfではうまく集計ができません。 提出する手当集計表の形式は規定で決められているため、セルの分割などを行わずにいまの表の形式のまま、 なんとか関数などでうまく集計できるようにしたいと思っているのですが… 何かいい方法はないものでしょうか? よろしければ知恵をお貸しください。
864 :
863 :2007/01/24(水) 10:22:03
自分で考えたやり方なのですが、別シートに作業枠を作成して、 入力枠を一文字ごとに分割した後CountIfで集計し、集計結果を元シートに表示させるやり方です ただ、この場合、別シートへの分割された作業枠の生成が自動化されなければ、かえって作業量を 増やすことになってしまいます。自動的にセルを一文字ごとに分割してくれる機能がないものか…と思って 検索してみましたが、みつけることができませんでした。 元シートへのデータ入力だけで自動的に集計結果が表示されるようにするにはどうしたらいいのでしょうか?
>>863 1がいくつあるかを数えればOKなんじゃないかな?
例えば、A1に「1113」だったら「=(LEN(SUBSTITUTE(A1,1,""))-LEN(A1))*-1」
で1を空白に置き換えた時の文字数と、置き換えない時の文字数の差で
1が含まれてる数がわかるよ。他にも含まれてる文字の数を数える方法があれば
なんでもいけるんじゃないかな?
そんな感じで応用して1日ごとの算出やって、で、まとめて集計。
配列数式使うなら、
「{=SUM((LEN(SUBSTITUTE(A1:A100,1,""))-LEN(A1:A100))*-1)}みたいな感じ?
867 :
名無しさん@そうだ選挙にいこう :2007/01/24(水) 10:45:49
【1 OSの種類 .】 Windows XP 【2 Excelのバージョン 】 Excel2002 【3 VBAが使えるか .】 勉強中 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 VBA セル 値 よろしくお願いします。 VBAでセルに値を設定する場合、通常は Range("A1").Value = 100 Range("A1").Value = "hoge" のようにValueプロパティだと思うんですが、これ Range("A1") = 100 Range("A1") = "hoge" のように書いても問題ないのでしょうか。 間違って.Valueを抜かして書いても特に問題なく動いたので、 あれ?と思いまして。
869 :
867 :2007/01/24(水) 10:56:21
871 :
863 :2007/01/24(水) 11:23:28
>865,866 すばやい回答ありがとうございます。 これでいけそうな感じですね! 配列数式未経験なので勉強して使用してみたいと思います。 たすかりました ^^
872 :
856 :2007/01/24(水) 11:32:39
質問の仕方が悪かったようです。 1回だけの入力であれば在庫数A100+入庫数B30-出庫数C50=現在庫数D80で良いんですが それだと2回目以降の入力が出来ないんです。 現在庫数D80が2回目の入力をする前に在庫数A80として自動で入力されている状況にしたいのです。 よろしくお願いします。
>>872 前日繰越在庫数 入庫数 出庫数 終業時在庫数
前月末日 100
2/1 =E1 30 50 =B3+C3-D3
2/2 =E2 2回目の入力 =B4+C4-D4
って感じでいいんじゃね
2回目(2日)以降は、順次下行に移っていけばいい
1回目の計算結果が、自動的に2回目の基準在庫となる
普通は「前日繰越在庫数」の列は作らずに、
直接一つ上の行の「終業時在庫数」を参照するけどね
条件後出しで、セルを移動せずに入力できるようにしたいとか言い出さないでね
読み取れない事はすべて後出しかw えらいえらいww
876 :
名無しさん@そうだ選挙にいこう :2007/01/24(水) 13:14:50
今更なんですが…Excelを勉強しようと思っているのですが、とにかく無知で何をどうしていいのかわかりません(^^;) 学習用のソフトがあると聞いたのですがコレはわかりやすい!って言うソフトがあれば教えて下さい。お願いします
>>876 適当に初心者用の本読めみながら、勉強しろ。
読むだけじゃなく、実際にやってみる。
以上。
>>876 2chでExcelスレを探し出して書き込める能力があるのならきっと大丈夫だ。
ソフトよりも本を買ったほうがいい。なるべく初心者向けのを実際にExcelを動かしながら読みすすめる。
本に書いてあることをだいたい把握して、応用的なことがしたかったらネットで検索するといい。
881 :
名無しさん@そうだ選挙にいこう :2007/01/24(水) 16:04:21
877さん、878さん、回答ありがとうございます。本屋さんに行って初心者向けの本を購入してきます。 それと、よく求人情報誌に「Excel使える方」って記載してますがどこまでの事が出来れば一般的な出来るレベルなのか教えていただけませんか? 全くの初心者でわからない事だらけで…初歩的な質問ばかりですいません
>>881 ヘルプも本も何も見ないで綺麗な家計簿が作れるくらいならなんとかなるだろう。
884 :
名無しさん@そうだ選挙にいこう :2007/01/24(水) 16:22:13
軸を日付にして 1ヶ月ごと(1月1日 2月1日 …)に目盛線をうつ事ってできますか? 当然目盛間隔は等間隔じゃなくなりますけど
>>884 グラフ?状況が今一つ掴めないんだけど、
目盛り線ってどういうもんだい?
888 :
884 :2007/01/24(水) 16:48:47
>>886 グラフです。軸の書式設定を開いて目盛タブとかで設定する目盛です。
あれの間隔は等間隔にしかできないが
現実の日付は等間隔ではなく1ヶ月が30日の日もあるし31日の日もあるため毎月1日に目盛をつけることができません。
何か方法があるんでしょうか?
ある
890 :
名無しさん@そうだ選挙にいこう :2007/01/24(水) 16:59:31
883さんありがとうございます。これから勉強してみます。 全くの初心者で初歩的な質問ばかりですいませんでした。 またわからない事があると思いますがその時はまた教えて下さいm(__)m
>>888 グラフには手動で線を描くこともできる
くれぐれもマッキーペンの極細でモニターに直接描かないように
この時間帯、ホントに駄目なスレだなここw
それって892が来る時間だからかな?
俺は夜の部専門だから関係ないw
>>884 弄ってりゃ聞くまでもなくできるだろう
軸の書式設定をよーく見てみろ
ここは厨ばっかりなんだからここで聞くのが間違ってるよ
897 :
名無しさん@そうだ選挙にいこう :2007/01/24(水) 20:56:54
エクセル2003を使用しています。 2次関数のグラフをかいて、 近似曲線を出して、数式をだしたら、 y=ax+bのaとbの小数点以下の桁数が違うんですが、 桁数を合わせる事はできますか?
何言ってんだかちっとも分からないが、 脊髄反射で「セルの表示形式」とか言ってみる
式を右クリックして表示形式だな
900 :
名無しさん@そうだ選挙にいこう :2007/01/25(木) 04:49:36
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 メニューバーのツールでenterキー押した時の次の方向を指定出来ますが (ほとんどの場合下か右だと思う)一回の動作で2個下に行くとかA1→A3 2個右に行くとかA1→C1は出来ないのでしょうか。詳しい方おりましたら 教えて下さい。
>>900 A1とA3のロックしていない状態でA1がアクティブ状態でエンター押すとA3に移動する
A1セルを選択した状態からCtrlキーを押しながらA3セルをクリックすると Enterを押したらA3セルに移動できるようになる A3セルの次にA5セルに移動させたかったらA3セルをクリックした後、同様にA5セルを選択しておくこt
前打った言葉を予測変換みたいに、打ってる後ろ側に表示されて エンター押したらそれが入力される奴なんだけど これの切り方教えてくださいな ATOKのヘルプ見て、省入力系とか全部切ってみても変わらず・・・ Officeのヘルプを「変換」でけんさくしても、それっぽいのは発見されず・・・なのです
> 「変換」でけんさくしても、それっぽいのは発見されず そりゃそうだろ。 > 打ってる後ろ側に表示されて は、変換ではなく補完なんだから 変換 ┌─123 ├→一二三 └→百二十三 補完 ┌─123 ├→123456 └→123000 ということで「セル 入力 補完」で検索してみろ。 ちゃんとOFFにする方法書いてあるから。
906 :
904 :2007/01/25(木) 09:49:29
なるほど 出来た ありがとう
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel 2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 不可 【5 検索キーワード 】 エクセル グラフ 図 リンク 書式 すいません、お忙しいとろこ質問です。 現在エクセルで簡単な計算を行ってグラフ化しています。ただ枚数が多いのでグラフは別に纏めようと思ったのですが 折角纏めても元の計算するシートと連動してグラフの形がころころ変わってしまうようです。 自分で調べて編集→リンクの設定でリンク切ればいいとわかったのですが、いちいち設定するのは面倒くさいです。 グラフを図として纏める方法はないでしょうか(但し点の位置情報は出来れば残したい) 計算シート2-3枚に対してグラフは何十枚となります。
909 :
名無しさん@そうだ選挙にいこう :2007/01/25(木) 18:03:26
これって、
910 :
名無しさん@そうだ選挙にいこう :2007/01/25(木) 18:06:34
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 【5 検索キーワード 】 INDEX 関数 Excel 空白 0 INDEX関数を使い参照先が空白の場合、結果が空白の時と0の時があるのですが、どうして二種類あるのでしょうか? 空白になって欲しいのですが、0が出て困っています。 =INDEX( 一覧定義.xls!シート名リスト, MATCH( $B3,一覧一覧.xls!シートNo,FALSE ), 1 ) こんな感じで別ファイルの一覧を表示しています。 空白が出るのがバグなのか、0が出るのがバグなのかも分からないところです。 ご教授お願いします。
訂正: ×一覧一覧.xls ○一覧定義.xls
>>910 空文字""を返しているセルを参照すると空文字が返る
何も入力していない空セルを参照すると0が返る
バグでもなんでもない基本的な仕様
それ以外が原因だと言うならブックをうpしてみろ
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 可 【5 検索キーワード 】 式典のプログラムを作っています。 社長訓辞 9:00 〜 10:10 (70分) 社長表彰 10:00 〜 10:20 (20分) みたいな形です。 他の行事でも使い回せるように (●分) のところを 関数を使って表示させたいのですが、 セルの書式設定など試したところ 05:00 みたいになってしまいます。 対応策を教えてください。
>907 どうかお願いします。 >908 それも考えたのですが、整理が煩雑になるのとエクセル形式で受け渡ししたいので諦めました。
915 :
910 :2007/01/25(木) 19:44:06
>>912 確かにVBAで文字列を返していました。そのため空白になっていたんですね。
ありがとうございます。解決しました。
>>914 現状、出てる方法以外無いかと。
てか、煩雑(面倒)などという理由が出てくる限り、一生無理。
>>913 ユーザー定義で"h:mm"にすればおk
ここんとこ雑誌か何かの問題みたいなのが続くな
919 :
名無しさん@そうだ選挙にいこう :2007/01/25(木) 22:51:58
あるセルに自動的に昨日の日を表示させたいのですが、 どのようにすればよいのでしょうか?
921 :
名無しさん@そうだ選挙にいこう :2007/01/26(金) 00:52:39
【1 OSの種類 】 Windows2000 【2 Excelのバージョン】 Excel2000 【3 VBAが使えるか 】 いいえ 【4 VBAでの回答の可否】 可 データを入力したシートを、 ”日報**月**日”という名前で新しいファイルを作成して 保存したいのですが、どうしたらよいでしょう。 **月**日の部分は入力した日付です。
やる気ゼロの質問には答えない 嘘でも検索キーワードぐらい書けよ
>>921 「”日報**月**日”という名前」はシートの名前なのかブックの名前なのかわからんな
【1 OSの種類 .】 WindowsXP 【2 Excelのバージョン 】 Excel2003 【3 VBAが使えるか .】 いいえ 【4 VBAでの回答の可否】 否 列、国語、数学、理科、社会、… 行、名前1、名前2、名前3、… の表があります。表の空欄には点数が入ります。 これを配布用に、A4に4人入るように印刷します。 詳しくは、名前1〜…それぞれに国語、数学等の項目を付加させた独立した表を 別シートに作り名前、点数をリンクさせたいのですが やり方がわかりません
ありがとうございます 明日試してみます。