• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:二次元配列のサイズについて)

二次元配列のサイズについて

このQ&Aのポイント
  • 二次元配列のサイズについて質問があります。プログラム中で二次元配列を宣言する方法について知りたいです。
  • また、プログラムでは文字列を一文字ずつに分解して別の列に転記する処理を行っています。
  • 主な目的は、DNAの塩基配列を入力した際に相補鎖の塩基配列を作成したり、タンパク質に翻訳したりするためのコードです。

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

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

例えばこんなカンジで。 public s as string public a() as variant sub macro1()  dim n as long, i as long, ss as string  s = range("A1")  n = len(s)  redim a(n - 1, 1)  for i = 1 To n   ss = mid(s, i, 1)   a(i - 1, 0) = ss   a(n - i, 1) = ss  next i  range("B1").resize(n, 2).value = a end sub #参考 redim preserveして使いたいときは、サンプルマクロを  redim a(1, n - 1) などのようにします VBEのヘルプでredimステートメントの説明と使用例をよく参考にしてください。

Kokorochaniuna
質問者

お礼

回答ありがとうございました。うまくいきました。ちょっといじって 一部をサブプロシージャに下げましたがそれもうまくいきました。 '===配列に入れる野自由だよ=== Public a() As Variant Public s As String Sub macro1() Dim n As Long, i As Long s = Range("A1") n = Len(s) ReDim a(n - 1, 1) For i = 1 To n Call submacro(i, n) Next i Range("B1").Resize(n, 2).Value = a End Sub Sub submacro(i As Long, n As Long) Dim ss As String ss = Mid(s, i, 1) a(i - 1, 0) = ss a(n - i, 1) = ss End Sub

関連するQ&A