No.1ベストアンサー
- 回答日時:
VBAプログラムを書いてみました。
上から順に見ていって、内容の異なるセルがあれば、そこより上を結合する、という手順にしてあります。
数値は文字列として処理します。細かいチューニングはしていません。適当にアレンジしてください。
Sub セルの結合()
Dim 行, 対象列, 開始行 As Long
Dim 上のセルの内容, このセルの内容 As String
Dim 対象シート As Worksheet
対象列 = 1 '・・・(数字で指定)
開始行 = 1 '・・・(数字で指定)
Set 対象シート = Sheets("Sheet1") '名前で指定
With 対象シート
行 = 開始行 + 1
上のセルの内容 = .Cells(行, 対象列)
Do While Not (IsEmpty(.Cells(行 - 1, 対象列)) And IsEmpty(.Cells(行, 対象列)))
このセルの内容 = .Cells(行, 対象列)
If このセルの内容 <> 上のセルの内容 Then
If 開始行 < 行 - 1 Then
.Cells(開始行 + 1, 対象列).Resize(行 - 開始行 - 1, 1).ClearContents
End If
.Cells(開始行, 対象列).Resize(行 - 開始行, 1).Merge
開始行 = 行
上のセルの内容 = .Cells(開始行, 対象列)
End If
行 = 行 + 1
Loop
End With
End Sub
ご親切に、ありがとうございました。
こんなに短時間で、プログラムがかけてしまうなんて、
すごいですねー!感動しました。
前にも、マクロのやり方を教えてもらったことがあって、
それも見返しながら、チャレンジしてみたいと思います。
ありがとうございました。
No.2
- 回答日時:
こういうのは、セルの結合をすると後々ややこしいので
たとえばA1:A12にデータがあるとして、それを範囲指定する。
CTRLを押しながらA2をクリック。A1:A12が範囲指定したままになっていること。
書式-条件付き書式-
数式が
式に=A2=A1
といれて書式の文字フォントの色を白を指定する。(セルのパターン色と合わせる)
OK
で続きの先頭行の1行がけが、残って見える。
>ある縦1列に(A01が5行、A02が8行・・・
G32が4行といったように)規則的に
並んでいる複数の分類番号があるとして、・・・
は何のことか判らなかったが多分上で私が言っているようなことでしょう。
セル番地に使うA1やA2に似たものを、セルの内容の例示に使わないほうがよいと思う。よく見ると、A01と0が入っているけれども。
アドバイス、ありがとうございました。
文字を白地で消してしまうというのも、
なるほどのアイデアでした。
確かに、結合すると、のちのちややこしいですよね。
後は、表示をそれぞれの真ん中にもっていく方法について、
もう少し考えたいと思います。
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセル関数のXlookupのフィルハンドル機能(類した機能でも可)を知りたいです。 3 2022/09/20 20:02
- Excel(エクセル) 【エクセル】文中に別シートのセルの内容を自動入力したい 6 2022/11/17 11:30
- Excel(エクセル) 関数EXACT(文字列,文字列)とexcelVBA 3 2022/04/14 15:07
- Excel(エクセル) エクセルのVBAで上の表の最下行を求める 4 2022/09/14 15:22
- Excel(エクセル) エクセルデータの集計、一つのセルに複数のデータがある場合 7 2022/12/28 20:19
- Excel(エクセル) 条件付き書式 別のシートで色付けされたセルデータの転記漏れを防ぐ書式を入れたい 4 2022/04/22 06:36
- Excel(エクセル) 【Excel】指定のセル内容を基に別シートのセルを検索して選択する【VBA】 1 2022/06/16 16:16
- Excel(エクセル) Excelについて 6 2023/03/03 16:19
- Excel(エクセル) SUMIFのIF分岐について 4 2023/04/15 12:57
- その他(Microsoft Office) エクセルで1行の長いデータを指定の桁数で分割する方法が知りたいです。 4 2022/05/20 21:55
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセル マクロ オートフィ...
-
【Excel関数】UNIQUE関数で"0"...
-
excelのデータで色つき行の抽出...
-
AのセルとB行を比較して、一致...
-
エクセル 上下で列幅を変えるには
-
エクセルで特定の文字列が入っ...
-
EXCEL VBA マクロ 別シートの...
-
Excel グラフのプロットからデ...
-
エクセルVBAのEntireRow.Hidden...
-
excel 小さすぎて見えないセル...
-
EXCELのVBAで空白列を削除して...
-
エクセルで昨日までの日付デー...
-
Excel:いまフォーカスがあるセ...
-
エクセル マクロで数値が変っ...
-
アクティブになっている行をマ...
-
エクセルのマクロで意図しない...
-
結合されたセルをプルダウンの...
-
【エクセル】自動で、同じ内容...
-
エクセルのセルに指定画像(.jpg...
-
【マクロ】book1からbook2への...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセル マクロ オートフィ...
-
エクセルで特定の文字列が入っ...
-
[EXCEL]ボタン押す→時刻が表に...
-
【Excel関数】UNIQUE関数で"0"...
-
特定の文字がある行以外を削除...
-
Excel グラフのプロットからデ...
-
excelのデータで色つき行の抽出...
-
AのセルとB行を比較して、一致...
-
結合されたセルをプルダウンの...
-
エクセル マクロで数値が変っ...
-
エクセル 上下で列幅を変えるには
-
VBAで色の付いているセルの行削除
-
excel 小さすぎて見えないセル...
-
A1に入力された文字列と同じ文...
-
罫線の斜線を自動で引くマクロ
-
アクティブになっている行をマ...
-
エクセル2016で時間を入力して...
-
EXCELマクロを使い、空白行では...
-
エクセルマクロで偶数行(又は...
-
セルの色によって条件文をつけ...
おすすめ情報