• ベストアンサー

列の高さを自動調整できるマクロ?

■顧客情報一覧のシートと、 顧客情報→個人の顧客を閲覧するシートがあります。 マクロを起動すると、 「一覧」に入力をしてある顧客の行動経歴が、 「閲覧」のシートのセルに反映するようになっています。 ■入力してある行動履歴は、顧客によって、その長さが違います。 ある顧客は、30数行にも渡る長さですが、 べつの顧客は1行しか行動履歴がありません。 その「情報量」に応じて、「行の高さ」が全て表示されるように自動調整してくれるマクロをくみたいと思っています。 どのようにしたらよいのか‥ アドバイスをよろしくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
  • chayamati
  • ベストアンサー率41% (254/607)
回答No.2

100行まで マクロで Sub Macro1() Rows("1:100").EntireRow.AutoFit End Sub

penichi
質問者

お礼

これは…シンプルで、かなり使えそうですね…。 まさにこういうものを探していました…。 ご回答、どうもありがとうございました!

その他の回答 (1)

  • keithin
  • ベストアンサー率66% (5278/7940)
回答No.1

こんばんは。 >どのようにしたらよいのか‥ アドバイスとしては、次の2点です。 1.セルの結合は使用しない(少なくとも問題のセルについて) 2.折り返して全体を表示の設定をする >「情報量」に応じて、「行の高さ」が全て表示されるように自動調整してくれるマクロをくみたい どこをそうしたいのかトンとわかりませんので、例えばD10セルについて sub macro1()  with worksheets("閲覧").range("D10")   .wraptext = true   .entirerow.autofit  end with end sub のようにすれば、エクセルが勝手にやってくれます。自力で適切に応用してみて下さい。

penichi
質問者

お礼

entirerow.autofit というコマンドを探し求めていました…。 大変勉強になりました…。 どうもありがとうございます!

関連するQ&A

  • Excelマクロ・行の高さを自動調整したい

    データベースから抽出したExcelの人材情報リストから、VLOOKUP関数で情報を射影して、指定した人材を数人分連続で印刷するマクロを設定して、定型のプロフィールシートを作成しました。  改良したい点として、人によって情報量が異なる項目があるので、特定の行(例えば5行目)の高さのみを自動調整するようにしたいのですが、どのようにすればよいでしょうか。  VLOOKUP関数を使用しているからか、書式から行の自動調整を設定してみても1行の高さになってしまいます。  マクロで一度に印刷できるようにしたので、一枚一枚レイアウトを修正しなくてもいいようにしたいです。  VBA初心者ですので、宜しくお願いします。

  • 会社の上司に、エクセルでマクロを作って欲しいと頼まれました。

    会社の上司に、エクセルでマクロを作って欲しいと頼まれました。 セールスの仕事をしており、シート1とシート2に情報を記入しています。 A:確定したセールス情報 B:未確定情報 訪問した日に、相手の情報をBシートに記入し、それが確定したらAシートに移しています。 取引が完了したらAから消しています。 頼まれたマクロは、 ・Bシートでボタンを押すとBシートの顧客情報がAシートの空いているセルに移動(コピーではなく、移動です)。 ・Aシートでボタンを押すと、顧客情報が並べ替えられる(上から古い取引順) ボタンを二つにわける理由としては、エクセルの更新は会議中にするためです。 会議中にBからAに移動、終わってからAを並べ替えるという手順です。 エクセルの特徴としては、 セルA1に顧客名を入力しています。 その他情報も入力しているので、一人の顧客に対して、A1~G5まで入力しています。 一人の顧客に数行使用しているため、次の顧客名はセルA6に入力しています。 (A1,A6,11,A16,A21…という感じで顧客名が入力されています) 次の会議が水曜日にあるため、焦っております。 どうかお助けください。

  • エクセル2000 マクロ

    エクセル2000を使用しています。マクロを使って定型の入力フォームへの入力を素早く、正確に行えるようにしたいと思っています。 「申請書」と「標準事務用品」の2種のシートに分かれており、「申請書」が定型の入力フォーム、「標準事務用品」は入力フォームに反映させたいデータが一覧になっています。 「標準事務用品」のデータの一覧は5つの項目があり、左から1.品物 2.商品名 3.品番 4.メーカー名 5.申請 となっています。 5.申請の列はオプションボタンを1行ごとに1つ設けてあり、オプションボタンがオン(True)の時に、同じ行の1~4の項目のデータを「申請書」シートの入力フォームの任意のセルへコピーしたいです。 何かよいマクロの記述方法はありますでしょうか。

  • calc で参照するシートのセルを自動的にずらす

    openoffice.calc で、顧客シートを作成中です。 sheet1に、すべての顧客情報をまとめて入力し、sheet2は、sheet1のいち顧客の情報(sheet1の2行目データ)を上手く並べて個人データ票としたいと思います。 sheet2は、sheet1のそろぞれのセルを参照して作成することはできたのですが。 sheet3にはsheet1の3行目の顧客、sheet4にはsheet1の4行目の顧客というようにズラして行く場合。 sheet2で作った個人データ票をコピーして増やしても、参照セルはsheet1の2行目で、もちろんすべてがsheet1の2行目の顧客情報になってしまいます。 sheet3を作る際に、sheet2をコピーして使いたいのですが、参照セルだけsheet1の3行目に自動的にずらす方法はありませんか? ただ、項目(sheet1の1行目)だけは同じなので、これはずらしたくありません。 このような方法でcalcで顧客シートを作成する場合、どのような方法が一般的なのか教えていただければ幸いです。 よろしくお願いいたします。

  • 入力列のみを抽出

    宜しくお願いします。 winndows エクセル2010 添付の画像のように、各行に入力されたセルのみ別シートに抽出して、その列に対応したタイトル(ABC~)が反映されるようにしたいです。 セルに入力される数字は、1でも2でも構わず、あたまのABCが反映される形にしたいです。 ※添付の画像は3行ですが、アンケート形式で行が随時増えていく形で、それに応じて別シートにリンクしていくようにしたいと思っています。 なのでマクロではなく数式で完結できればと考えています。 宜しくお願い致します。

  • VBAでマクロを走らせた日時をSheet2のAセルに入力する

    VBAでマクロを走らせた日時をSheet2のAセルに入力する はじめまして。 現在、ファイルを整理するマクロを使っています。 そのマクロを使った履歴を残す意味で、 いつマクロを走らせたかすぐにわかるように、 Sheet2のAのセル(2行目から)に走らせた日時を示したいと思っています。 マクロでの処理が終わったら、 毎回Sheet2に日時が入力されるようにするには、 どんな命令文を追記したらよいのでしょうか。 マクロに関しては知識がなく、 インターネットで調べて、 Sheets("Sheet2").Cells(R, "A").Value = Now というのを追記してみたのですが、 Sheet2に入力はされるものの、 Aセルの行がとびとびに入力されたり、 整理したファイルの数だけ(複数)入力されてしまいます。 マクロを1回走らせたら1つの日時が入力されるようにしたいです。 Sub ()とEnd Subの間にFor RとNext Rがあり、 作業が繰り返されているようです。 転記ができないため、マクロを示すことができません。 さすがに、これだけの情報では難しいでしょうか。 わかるかたがいらっしゃいましたら、 よろしくおねがいします。

  • 自動入力マクロ教えてください

    sheet1のB列に数値を入力していますデータは10行目以降に入力されています。 データが1,10.20ならsheet2のB列、2.15.35ならsheet2のC列5.40ならsheet2のD列それ以外はsheet2のE列に自動的に入力したいのですがそのマクロを教えていただけないでしょか。行はsheet1と同じ行に入力します

  • シート追加時にリンクを埋め込みたい

    顧客用ラベルを作成 シートA:入力専用フォーム(顧客情報1、情報2、情報3) シートB:印刷用テンプレート シートC:顧客情報一覧表 処理1.シートAに入力されたデータは、シートBの指定セルに転記される 処理2.同時に顧客情報はシートCの一行目から下方に一覧表として作成される 処理3.顧客シートととしても残しておきたいので、出来上がったシートBをコピーし     同ブックに追加しておく     この時のシート名は、シートB(2)、シート(3)、、、、となります     顧客情報をシート名にしても良いのですが、文字数など一定していないので、、 ここまでの処理は、マクロVBAにて完成しています ここから追加したい処理  一覧表から、リンクで各顧客シートに飛びたい  上記処理2実行の際、追加された顧客情報に、そのシートのリンクを  同時に埋め込むことは可能でしょうか  (現在は、追加の度に手入力にて一覧の顧客情報1にリンクを埋め込んでいます) 手詰まりしています どなたかアドバイス願います

  • 繰り返し処理のマクロ

    下記のマクロをご教示いただけるでしょうか。 ①シートAのアクティブセルをコピーし、シートBのE1セルにペースト ②マクロ「結果反映」を実行 ➂シートAのアクティブセルを1行下に移動 ①から➂をアクティブセル=空白セルになるまで繰り返し

  • Excelのシートからシートへデータを移動したい

    Excelのシートで作成されている申込書(シート)があり、現在はその申込書シート(セル)に記載されている情報を別のシート(顧客データとして管理しているシート、複数行存在しています)に手入力しています。 この手入力の作業をマクロか関数で簡単にしたいのですが、下記の点がクリアできる良い案が分かる方がいたら教えて頂きたいです。 (1)申込書シートは顧客データシートに情報を移動したら、都度上書きしていきたい⇒申込書シートは同じbookで管理しないため(上書きについては申込書内容を都度手作業で貼り付けするつもりです) (2)顧客データシートは顧客が増える毎に2行目、3行目・・・というようA列が空欄になっている一番上に、申込書データの内容が反映されるようにしたい。 (3)貼り付けられたデータ(セル)は関数ではなく、値(文字)が貼り付けられるようにしたい。((1)のように申込書シーは都度上書きしたいため) 分かりづらい質問で申し訳ありません。。 ちなみにマクロは作成したことがありませんが、マクロでできるのであれば挑戦したいと思っています。 ご回答よろしくお願い致します。

専門家に質問してみよう