>>919 できればフォントは小さくしたくないんです。
テキストボックスのサイズが変えられないんです。
伸縮の矢印が名前のテキストボックスにはなくて、
とりあえずクリックして大きくしようとすると、
テキストボックス自体の移動になってしまって・・・
やっぱりフォントサイズを小さくするしかないんですかねぇ?
グラフオプション、タイトルとラベルのY軸でしょ?
ボックスをクリックしたら黒い点が8つ枠線の上に表示されない?
そこを掴んで引き伸ばせると思うんだけど……
あ、駄目だ。駄目なのか
テキストボックスでラベルを付けたらどうですか?
グラフエリア選択状態で文字入力すれば
グラフ中央に自動的に作成されます。
あとはもうああしてこうすればOKですよ。
>>921-923 ということは、
「新しくテキストボックスを作って
もともとあるテキストの上にもってくる」
ってことでいいのでしょうか?
これならできるし。めんどくさいけど(´・ω・`)
皆さん、ありがとうございました。
903さんに作ってもらったマクロについてです。
これって5*5の行列対応のようですが、
行列のサイズに関係なく、1列に変換するようにするには
どうすればいいのでしょうか?
よろしくお願いします。
926 :
名無しさん@そうだ選挙にいこう:04/08/01 16:35
SUMすると1の位が四捨五入(切捨て?)されるんだけど、どうしてですか?
>>925 こう変える。Application.ScreenUpdatingの行はおまけ。
Sub lower_triangleを1列にする()
Dim ColumnCount As Long
Dim RowCount As Long
Dim RowMax As Long
Application.ScreenUpdating = False
Worksheets("Sheet1").Select
RowMax = Cells(ActiveSheet.Rows.Count, 1).End(xlUp).Row
Worksheets("Sheet2").Select
Range("A1").Select
ColumnCount = 1
RowCount = ColumnCount
Do Until ColumnCount > RowMax
ActiveCell.Value = Worksheets("Sheet1").Cells(RowCount, ColumnCount).Value
ActiveCell.Offset(1, 0).Activate
RowCount = RowCount + 1
If RowCount > RowMax Then
ColumnCount = ColumnCount + 1
RowCount = ColumnCount
End If
Loop
Application.ScreenUpdating = True
End Sub
>>926 その状態が再現できるようなデータを提示してください。
929 :
名無しさん@そうだ選挙にいこう:04/08/01 17:54
教えてくだせー
下記のようなコードで、Sheet1のロックしてないセルを一括削除してるんですけど、
Sheet2のロックしてないセルも一緒に削除するためには、どしたらよいのでしょうか??
Sub NotLockDelete()
Application.ScreenUpdating = False
Dim c As Range
For Each c In ActiveSheet.UsedRange
If Not (c.Locked) Then c.ClearContents
Next
Application.ScreenUpdating = True
End If
End Sub
>>929 Sheet2に移動して、もう1回マクロを実行させればいいんじゃないでしょうか。
Sub NotLockDelete()
Application.ScreenUpdating = False
Dim c As Range
For Each c In ActiveSheet.UsedRange
If Not (c.Locked) Then c.ClearContents
Next
Application.ScreenUpdating = True
If ActiveSheet.Name <> "Sheet2" Then
Worksheets("Sheet2").Select
Call NotLockDelete
End If
End Sub
>>930 ご解答ありがとうございます!
なるほど、納得です!こんな発想全然浮かびませんでした!!
Sheet1にマクロボタンを配置しているのですが、
1回のクリックで実行するのは難しいんでしょうか?
>>931 すみません。1回のクリックで出来るんですね!
このマクロ実行時にメッセージボックスで警告を出していたので、、、
マクロを呼び出すのではなく、Sheet2のロックしていないセル削除する
マクロを、1つのコード化するのは、ムリなんでしょうか?
>>932 マクロはこうする。
Sub NotLockDelete(SheetName As String)
Application.ScreenUpdating = False
Dim c As Range
For Each c In Worksheets(SheetName).UsedRange
If Not (c.Locked) Then c.ClearContents
Next
Application.ScreenUpdating = True
End Sub
このマクロの呼び出しはこんな感じ。
Call NotLockDelete("Sheet1") 'Sheet1の場合
Call NotLockDelete("Sheet2") 'Sheet2の場合
934 :
名無しさん@そうだ選挙にいこう:04/08/01 19:22
マクロの処理スピードを上げる方法ってありませんか?
>>933 すみません。上記のコードはどこをどんな感じに直したらよいのでしょうか?
約1時間ほど試行錯誤してみましたが、ダメでした。。。
SheetNameを“Sheet1”にするだけじゃダメなんですよね?
>Sub NotLockDelete(SheetName As String)
>Call NotLockDelete("Sheet1") 'Sheet1の場合
>Call NotLockDelete("Sheet2") 'Sheet2の場合
上記の意味が理解できません。
せっかく書いていただいたコードなので是非利用したいです。
よろしくお願い致します。
>934
再計算をやめる。
再表示をやめる。
あたりが効果的かと。
with を使うと見通しは良くなるが速度には影響しないという説がある。
>>935 そのまま使えばいいんですけど・・・。
Sub NotLockDelete(SheetName As String) というのは、マクロの呼び出しに
Call NotLockDelete("Sheet1") とした場合、このSheetNameという変数に、
"Sheet1"という文字列が代入されます。
普通、マクロ内部で
Dim SheetName As String
SheetName = "Sheet1"
と変数を設定するところを、マクロ外部から変数の内容を設定しているということです。
マクロの中では、
For Each c In Worksheets(SheetName).UsedRange は、
For Each c In Worksheets("Sheet1").UsedRange
として処理されることになります。こうすれば、シート名だけ違うという場合、
同じコードの使い回しがきくわけです。
こんな説明でよろしいでしょうか。
>>927 ばっちりです、ありがとうございました!
おかげさまでだいぶ仕事の効率があがりました!
940 :
名無しさん@そうだ選挙にいこう:04/08/01 22:46
一定のセル範囲のうち、セルに色がついているのもの数を数える関数ってありませんか?
度々見かける質問ですね。
「塗りつぶし セル 数える」 これでググれば見つかるでしょう。
余談だけど、そもそも色は見た目を整えるためだけの機能であって、
それを手がかりに抽出やカウントをするのは賢いやり方じゃないぞと毎回思う。
何か専用のフィールドを作れよと声を大にして言いたい。
まあ、他人の作ったデータベースなら仕方がないが・・・
時々
>>941みたいなやついるけど、
「〜でぐぐれ」じゃこのスレの意味がない。
>942
じゃあ独自の方法でも転載でもいいんで書いといてください。
945 :
名無しさん@そうだ選挙にいこう:04/08/02 11:40
普通に起動すると、ひとつのウィンドウの中に
複数のエクセルがたちあがりますが
これをそれぞれバラバラなウィンドウに
したいのですが、どうしたらよいでしょうか
>>945 複数のExcelなど、立ち上がりませんが?
>>945 どんどんExcelアプリ起動すればいいじゃん。
{ミ田+R→Excelと書いてEnter}*α
で。
改ページプレビューの『1ページ』とか出てくるのを
消したりできますか?
MDIがいやつったってMDIなんだから仕方ないべ。
そんなにいやならメモ帳でも使ってなさいな。
>>948 SDIでスレ内検索してみれば?
ま、タスクトレイに表示するだけの疑似SDIぽいやつだから閉じるボタンを押したら終わりだけどな
タスクトレイじゃなくてタスクバーだ 一応つっこまれる前に訂正
SDI のように使用すれば済むことだと思うのだが
新しいブック作成すんなら新たに Excel 起動すりゃいいし
ファイルをダブルクリックで開くのは拡張子の関連付けを弄りゃいいし
そういうことではないのか?
954 :
名無しさん@そうだ選挙にいこう:04/08/02 15:20
excel97でシリアル値について教えてください。
時間の計算をしていて、270分(シリアル値0.1875)という数字がでてきて、270*A1という計算がしたいのですが、
0.1875*A1になってしまいます。
解決方法わかる方いましたらお願いします。
OK
開く を DDEなし にしてやったぜ
フン
>>954 セルの書式設定>ユーザー定義で [m] とか [mm] とか
表示の問題なら ↑ で。270という数字が必要なら
×1440(シリアル値1=1440分)
958 :
名無しさん@そうだ選挙にいこう:04/08/02 16:58
>957
解決しました。
ありがとうございました。
959 :
名無しさん@そうだ選挙にいこう:04/08/02 21:25
金額
1,000
500
300
800
という、金額の列があるとして、未入力のセルには0を表示するようにできるものなんでしょうか?
質問です
線を引くためのツールを表示するにはどうしたらよいのでしょうか?
Excel 2000
OS ME
よろしくおねがいします。
>>959 どゆこと?予め0入力しといたらいいんじゃないの?
既に穴あきの表があって、空いてる所に0を入れるなら、
Ctrl+Hの置き換えで。
>>960 表示→ツールバー→図形描画
962 :
名無しさん@そうだ選挙にいこう:04/08/02 23:35
質問どぇす
Sheetを保護したら、今まで正常に作動していたマクロが
作動しなくなっちゃんですけど、
こんな現象を解決するVBAのコードとかってあるんでしょうか?
>>962 そんときだけ保護を外せばいい。
もちろんコード上で。
まずマクロの記録してみ。
>>963 こんな感じのコードでいいんでしょうか?
・・・でも、どこに記述していいもんか分かりませぬ。
ActiveSheet.Unprotect
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
>>963 適当に最初と最後に入れてみたらうまくいきましたー
ありがとうございました!!
やらずに質問する典型だな。
一生技能なんてつかねーな。
>>966 あなたのおっしゃる通りです!
さすがに技術のある人は言うことが違うネ!!
この板、いつまで選挙なんだ?
969 :
名無しさん@そうだ選挙にいこう:
: ,illliii、 ,,,,,、
..llllllll゜ .,,,,,,,,,,,,,,,,,,,,,,_ ,,,,,,,,,,illlllll,,,、 .,iiiiii,
.lllllll「 llllllllllllllllllllllllllliii,, !!!!lllllllllllllllll! .,llllllll: ,,,,,,
illlllll  ̄`:  ゚゙゙゙̄!!lllllli、 __,,illlllll ̄: ,lllllll゜ .゙lllllllii,,、
llllllll .,,,,,, 'lllllll llllllllllllllllllllllllll! .,lllllll: .'゙!llllllli,
'lllllll, ,illllll : ,,llllll! ゙”lllllll゙”” ̄`iillii、 llllllllii,,,, .'llllllll: .,,,,,,
.'lllllll,、 ,lllllll″ .llllllliiiiiiiiillllll!l° .lllllll, ,llllll| lllllllllllllllli,,, ,,illlllll .,illllllli,,iiiiiii,
: ゙!lllllli,,iiiillllll!゙ ゚゙!!!!!!!!!!!゙゙` llllllll,, .,,iilllllll` ..lllllll!゙゙゙!!llllllllllllll!!° .゙lllllllllllllllll″
'゙!!!llll!!!!゙° ゙゙!lllllllllllllllll!゙° ゙゙!!゙` .゙゙゙゙!l゙゙゙゜ .llll!!゙゙゙゙゙゜
゚゙゙゙゙゙゙゙゙° ″
x軸の目盛の間隔とかグラフの棒の幅は固定しておいて
新しいデータをつぎ足したらそのぶんだけグラフエリア自体が横に広がるグラフってつくれますか
おしえてください