Q&A
2回答
6612閲覧
総合スコア9
VBAはオブジェクト指向プログラミング言語のひとつで、マクロを作成によりExcelなどのOffice業務を自動化することができます。
0グッド
1クリップ
投稿2017/06/28 09:29
0
1
100という10進数をDo loop を使って2進数に変換させるにはどのようにすればよいのでしょうか? イメージとしては、100を2ずつ割っていってそこで出たそれぞれの余りの数をセルA1に表示させたいです。 よろしくお願い致します。
VBA Sub Sample() Dim SM As Long SM = 100 Do Until SM = 100 SM = SM / 2 Mod 2 Cells(1, 1) = SM SM = SM + 1 Loop End Sub
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
質問へのコメント
回答2件
手っ取り早いのは
Sub Sample() Range("A1") = Application.WorksheetFunction.Dec2Bin(100) End
投稿2017/06/28 10:07
総合スコア1820
その処理ですと +1 したあとループが止まってしまいます。正しくは 2 で割っていき、余りを文字として足していくようにします。
vbs1Function Sample(SM) 2 Sample = "" 3 Do Until SM = 0 4 b = SM Mod 2 5 SM = (SM - b) / 2 6 Sample = b & Sample 7 Loop 8End Function
vbs
1Function Sample(SM) 2 Sample = "" 3 Do Until SM = 0 4 b = SM Mod 2 5 SM = (SM - b) / 2 6 Sample = b & Sample 7 Loop 8End Function
このような関数でどうでしょうか?
投稿2017/06/28 09:54
総合スコア5030
回答へのコメント
2017/06/29 00:56
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
まだベストアンサーが選ばれていません
アカウントをお持ちの方はログイン
15分調べてもわからないことはteratailで質問しよう!
ただいまの回答率85.29%
質問をまとめることで思考を整理して素早く解決
テンプレート機能で簡単に質問をまとめる
VBA Do loop を使って10進数から2進数への変換
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。