質問: excelについてアドバイスをお願いします。 在籍者が28名だとしてその月の有給取得者は「c26」か excelについてアドバイスをお願いします。 在籍者が28名だとしてその月の有給取得者は「c26」からの枠に氏名と取得日数を書き込みしていきます。 手動で入力すると手間なので「m26~」に氏名、「n26~」にはドロップダウンリストで数字を入力できるようにしました。 そこで「c26~i29」のセルを結合して式を作ってみました。【if】を使ってみました。 これだと有給を取得していない人は表示されなくなり枠内に自動的に有給取得者が入力できるようにしました。 ※この式についてもっと簡単?にできる方法があればアドバイスお願いします。 さて本題ですがセルを結合してのやり方だと7人目の佐藤さんがこのように表記されて見映えが悪いです。 そこで枠内「c26~i29」のセルの結合を解除し理想としてはやはり1つのセルに1人づつ枠内の左上から順に表示されるようにできる方法はありますか? 例 有給取得者1人目の「c26」に山田さん、二人目の「d26」に鈴木さんなど.. ちなみに山田さんが有給取得が0であれば表示されないので鈴木さんが「c26」とセルが繰り上がるように出来ますか?よろしくお願いします(^.^) 説明が下手ですいません。 不明な点はおっしゃってください
回答: 簡単な関数を使った例として、質問者さんが作られた式をベースに修正しました。 ※1 26行目~35行目までの例です。36行目以降を参照させるため、"="を除いたこの式をコピーして式の末尾に貼り付けて、参照範囲を正しく修正してください。 ※2 セルc26を選択して、『折り返して全体を表示する』に設定してください。(添付図をみると設定済みと思いますが念のため) ==if(o26>=1,n26&o26&" ","")&if(o27>=1,n27&o27&" ","")&if(o28>=1,n28&o28&" ","")&if(o29>=1,n29&o29&" ","")&if(o30>=1,n30&o30&" ","")&char(10)&if(o31>=1,n31&o31&" ","")&if(o32>=1,n32&o32&" ","")&if(o33>=1,n33&o33&" ","")&if(o34>=1,n34&o34&" ","")&if(o35>=1,n35&o35&" ","")&char(10) 解説 1 char(10)を式に入れることでセル内改行することができます。 上記の例は5人毎に改行をいれました。ただし有給が0の人がいた場合は5人未満で改行されます。 2 氏名は式に入力するのではなく、有給数と同様にm列の入力内容を参照するようにすることで、有給0の人を表示しないようにできます。