在单元格中打印字母,数组循环

时间:2015-12-10 12:53:19

标签: excel vba excel-vba

我希望第1行中的单元格编号为A,B,C ......

我在这个语句中有红色语法,意思是语法错误。

代码:

For Each In "ABCDEFGHIJKLMNOPQRSTUVWXYZ".ToCharArray() ' goal: to iterate through alphabet
        cells(1, counter).value2=lettter in this array
Next

如果我开始工作,我希望能够让用户输入一个变量“shift”,它将Cesarian转换应用于字母,这样X就是第一列而不是A(shift = 23)。

2 个答案:

答案 0 :(得分:2)

在VBA中String是一种原始数据类型,它没有方法(所以你不能这样做:"ABC".ToCharArrray())。

实现任务的最简单方法是使用常规For ... Next循环和函数Mid

Sub printLetters()
    Const ALPHABET As String = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
    Dim i As Integer

    For i = 1 To VBA.Len(ALPHABET)
        Cells(1, i).Value = VBA.Mid(ALPHABET, i, 1)
    Next i

End Sub

答案 1 :(得分:2)

为了它的乐趣,这是一个单行:

<ons-toolbar-button ng-click="app.slidingMenu.nameOfYourPage.toggle()">

您可以非常轻松地将其重写为字母表的任何排列。