[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『再度投稿「ctrl + Enter」』(再もうすぐ昼)
範囲選択をして何か適用な文字を入力し「ctrl + Enter」を押すと、範囲した箇所全てが入力した値になると思いますが、VBAで「ctrl + Enter」の機能を使う方法を教えてださい。
< 使用 Excel:Excel2016、使用 OS:Windows10 >
ちょっと真意が分かってないかもですが、 所期の結果が得られればいいハズなので、 これでよくないですか? ↓ Range(選択範囲).Value = 適当な文字
(半平太) 2020/09/08(火) 11:14
SendKeys “^{Enter}” とかでできないですね?
(再もうすぐ昼) 2020/09/08(火) 11:25
どんな方式であっても、シート毎に決まる「範囲と文字」が何なのか分かる仕掛けが必要です。
その情報は、どうやってエクセルに認識させるのですか?
(半平太) 2020/09/08(火) 11:39
この流れをVBAで行いたいです。
(再もうすぐ昼) 2020/09/08(火) 11:53
>R列にフィルターをかけて「OK」を抽出して表示させます。
その後の処理は、これでいいんじゃないですか?(2行目以下にある値セルを書き換える)
With Range("R2", Cells(Rows.Count, "R").End(xlUp)) .SpecialCells(xlCellTypeConstants, 23).Value = "■ OK" End With
(半平太) 2020/09/08(火) 12:20
>この流れをVBAで行いたいです。
前トピックでもアドバイスされていますが、マクロの記録を試してみてはいかがでしょうか。
(もこな2 ) 2020/09/08(火) 12:22
選択したセルですよね。 Selection.value=123 で、良いのでは。 (Why) 2020/09/08(火) 13:19
.SpecialCells(xlCellTypeConstants, 23).Value = "■ OK" End With
このコマンドのどの部分に Selection.value=123を入れたらいいですか?
(再もうすぐ昼) 2020/09/08(火) 15:09
>このコマンドのどの部分に Selection.value=123を入れたらいいですか?
??? 選択したセルでしょ。 Selection って、選択してあるものって意味よ。 まあ、選択した物がセルとは限らない事もあるし、 図形、画像、グラフその他色々あるので、解ってないと・・・。 (Why) 2020/09/08(火) 15:26
.SpecialCells(xlCellTypeConstants, 23).Value = "■ OK" End With
のコマンドで選択されている部分が「■ OK」に変わることはわかりました。
ただこの後に「■ OK」の■の部分だけ赤 OKは黒文字のままにしたいです。
(ひょっとこ) 2020/09/08(火) 15:44
>ただこの後に「■ OK」の■の部分だけ赤 OKは黒文字のままにしたいです。
簡単に言ってますけど、面倒くさいですよ。 マクロ記録を取ってみれば解ると思いますが、1セルずつかつ1文字ずつ比較するので。 まずはマクロ記録を取って、それを応用してみては。 (Why) 2020/09/08(火) 15:49
選択してる範囲で「■」特定の文字だけ赤色にするなどできるか調べてみます。
(再もうすぐ昼) 2020/09/08(火) 16:17
Sub test() With CreateObject("new:{1C3B4210-F441-11CE-B9EA-00AA006B1A69}") .SetText "<html><font color=#FF0000>■</font> OK</html>" .PutInClipboard End With Range("Z1").PasteSpecial Range("Z1").Copy
Range("R2", Cells(Rows.Count, "R").End(xlUp)).SpecialCells(xlCellTypeConstants, 23).Select ActiveSheet.Paste Range("Z1").Clear End Sub (???) 2020/09/08(火) 16:36
Sub test() 'オートフィルターが設定されているセル範囲の With ActiveSheet.AutoFilter.Range '1行下にずらしたセル範囲と 'R列が重なるセル範囲の内の可視セルの With Intersect(.Offset(1), .Columns("R")).SpecialCells(xlCellTypeVisible) '1個目のセルに対して操作 .Cells(1).Value = "■ OK" .Cells(1).Characters(Start:=1, Length:=1).Font.Color = vbRed .Cells(1).Copy .Cells '可視セルの全部にコピペ End With End With End Sub
こんな感じですかね?
とりあえず1個編集して、コピペすればよいと思いますが?
(まっつわん) 2020/09/09(水) 09:51
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.