Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


6326 / 13646 ツリー ←次へ | 前へ→

【45918】特定のセルだけフォント・サイズを指定したい さや 07/1/17(水) 20:12 質問[未読]
【45919】Re:特定のセルだけフォント・サイズを指定... ichinose 07/1/17(水) 20:32 発言[未読]
【45921】Re:特定のセルだけフォント・サイズを指定... さや 07/1/17(水) 21:19 質問[未読]
【45922】Re:特定のセルだけフォント・サイズを指定... ichinose 07/1/17(水) 21:25 発言[未読]
【45923】Re:特定のセルだけフォント・サイズを指定... さや 07/1/17(水) 21:33 お礼[未読]

【45918】特定のセルだけフォント・サイズを指定し...
質問  さや  - 07/1/17(水) 20:12 -

引用なし
パスワード
   例えば、Sheet2のセルA1からA50に全国の都道府県が、ばらばらに入力されているとします。マクロを実行すると北海道のセルだけフォント・サイズが10ポイントに変わる。
こんなVBAを作成したいのです。
この掲示板は丸投げの質問は禁止されているので、私なりに考えたのですが、以下のようなプログラムしか作れませんでした。すみません。
よろしくお願いします。

Sub フォントサイズの指定()

  Sheets("Sheet2").Select
  Range("A1:A50").Select
  With Selection.Font
     .Size = 10
   
  End With
End Sub

【45919】Re:特定のセルだけフォント・サイズを指...
発言  ichinose  - 07/1/17(水) 20:32 -

引用なし
パスワード
   ▼さや さん:
こんばんは。

>例えば、Sheet2のセルA1からA50に全国の都道府県が、ばらばらに入力されているとします。マクロを実行すると北海道のセルだけフォント・サイズが10ポイントに変わる。
>こんなVBAを作成したいのです。
>この掲示板は丸投げの質問は禁止されているので、私なりに考えたのですが、以下のようなプログラムしか作れませんでした。すみません。
>よろしくお願いします。

このコードの中にはセルの内容が、
「北海道」であるかという調査するコードがないですよね?
セルA1〜A50の中で北海道と入力されているセルを探さなければなりません。


>Sub フォントサイズの指定()
>
>  Sheets("Sheet2").Select
>  Range("A1:A50").Select
>  With Selection.Font
>     .Size = 10
>   
>  End With
>End Sub

プログラムの基本として、繰り返し処理をさせる というのがあります。

一般的には、ループ処理なんて呼ばれています。


'======================================================================
Sub セルA1からA50のなかで北海道を探してそのセルのフォントサイズを10にする()
  Dim rng As Range
  For Each rng In Worksheets("sheet2").Range("a1:a50")
    If rng.Value = "北海道" Then
     rng.Font.Size = 10
     Exit For
     End If
    Next
End Sub

上記のコードはセルの内容が「北海道」なのかチェックしていますよね?

【45921】Re:特定のセルだけフォント・サイズを指...
質問  さや  - 07/1/17(水) 21:19 -

引用なし
パスワード
   ▼ichinose さん、昨日に引き続き、早速のご回答ありがとうございます。

ichinose さんが作成した下記のVBAをコピペして、試してみました。

すると、A1からA50に複数の北海道が入力されている場合、1番上のセルの北海道しか10ポイントに変わりませんでした。
私が、何か勘違いしているのでしょうか?
よろしくお願いします。


>  Dim rng As Range
>  For Each rng In Worksheets("sheet2").Range("a1:a50")
>    If rng.Value = "北海道" Then
>     rng.Font.Size = 10
>     Exit For
>     End If
>    Next
>End Sub

【45922】Re:特定のセルだけフォント・サイズを指...
発言  ichinose  - 07/1/17(水) 21:25 -

引用なし
パスワード
   ▼さや さん:
>
>すると、A1からA50に複数の北海道が入力されている場合、1番上のセルの北海道しか10ポイントに変わりませんでした。

>私が、何か勘違いしているのでしょうか?
そのつもりのコードです。複数あるのなら、
>
>
>>  Dim rng As Range
>>  For Each rng In Worksheets("sheet2").Range("a1:a50")
>>    If rng.Value = "北海道" Then
>>     rng.Font.Size = 10
      Exit For 'この行を削除してください
>>     End If
>>    Next
>>End Sub

【45923】Re:特定のセルだけフォント・サイズを指...
お礼  さや  - 07/1/17(水) 21:33 -

引用なし
パスワード
   ▼ichinose さん

早速のご回答ありがとうございました。

私の説明不足で、申し訳ありませんでした。

6326 / 13646 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free