Excel 根据单元格内容对单元格进行排序

Excel 根据单元格内容对单元格进行排序,excel,isnumeric,vba,Excel,Isnumeric,Vba,我目前掌握的是客户信息(姓名、地址、固定电话或手机号码),都在A栏中,中间有空白单元格,在F和G栏中有一些关于每个客户的说明 我想做的是将每个客户的相关信息移动到与姓名相同的行(例如姓名@A1,然后地址@B1,号码(如果固定线路)@C1(否则@C2)),并将客户的注释合并到同一行的一个单元格中(F1=F1和F2) 我们讨论的是数千行和多个工作簿,因此这需要通过VBA完成。 请在下面找到我迄今为止尝试过的内容: Sub SORT() ' Keyboard Shortcut: Ctrl+Shift+

我目前掌握的是客户信息(姓名、地址、固定电话或手机号码),都在A栏中,中间有空白单元格,在F和G栏中有一些关于每个客户的说明

我想做的是将每个客户的相关信息移动到与姓名相同的行(例如姓名@A1,然后地址@B1,号码(如果固定线路)@C1(否则@C2)),并将客户的注释合并到同一行的一个单元格中(F1=F1和F2)

我们讨论的是数千行和多个工作簿,因此这需要通过VBA完成。
请在下面找到我迄今为止尝试过的内容:

Sub SORT()
' Keyboard Shortcut: Ctrl+Shift+M
Dim i As Long, j As Boolean
i = 1
j = IsNumeric(ActiveCell.Range("A1"))
Do
    If j = True Then    'Check if cell content is numeric
        If ActiveCell.Range("A1") < 3000000000# Then    'Then if it's a landline
            Selection.Cut
            ActiveCell.Offset(-3, 2).Range("A1").Select 'Put it in column C
            ActiveSheet.Paste
            ActiveCell.Offset(1, -2).Range("A1").Select 'Go to Address Cell
        Else
            Selection.Cut                   'If it is a mobile
            ActiveCell.Offset(-3, 3).Range("A1").Select 'Put it in column D
            ActiveSheet.Paste
            ActiveCell.Offset(1, -3).Range("A1").Select 'Go to Address Cell
        End If
        Selection.Cut                   
        ActiveCell.Offset(-1, 1).Range("A1").Select
        ActiveSheet.Paste                   'Put the Address to column B
        ActiveCell.Offset(4, -1).Range("A1").Select     'Go to next cell
        i = i + 4
    Else
        ActiveCell.Offset(1, 0).Range("A1").Select      'If Check if cell content is not numeric, go to next cell
        i = i + 1
    End If
Loop While i <= 100
End Sub
子排序()
'键盘快捷键:Ctrl+Shift+M
Dim i等于长,j等于布尔值
i=1
j=IsNumeric(ActiveCell.Range(“A1”))
做
如果j=True,则“检查单元格内容是否为数字”
如果ActiveCell.Range(“A1”)<3000000000,那么如果是固定电话
选择,剪
ActiveCell.Offset(-3,2).范围(“A1”)。选择“将其放入C列”
活动表。粘贴
ActiveCell.Offset(1,-2)。范围(“A1”)。选择“转到地址单元格”
其他的
选择。如果是移动设备,则剪切
ActiveCell.Offset(-3,3).范围(“A1”)。选择“将其放入D列”
活动表。粘贴
ActiveCell.Offset(1,-3)。范围(“A1”)。选择“转到地址单元格”
如果结束
选择,剪
ActiveCell.Offset(-1,1)。范围(“A1”)。选择
ActiveSheet.Paste'将地址放入B列
活动单元格。偏移量(4,-1)。范围(“A1”)。选择“转到下一个单元格”
i=i+4
其他的
ActiveCell.Offset(1,0).Range(“A1”)。选择“如果检查单元格内容是否不是数字,请转到下一个单元格。”
i=i+1
如果结束

循环,而我不能在这里使用dropbox-你能提供一个需要转换的屏幕截图或示例“客户端块”吗?提前谢谢你。@RikSportel谢谢你的回复。我现在添加了一个示例屏幕截图。请让我知道你对此的想法。谢谢你今天刚遇到这个老问题。你解决问题了吗?还是你还需要帮助?如果是,是否还删除空白行,因此条目是连续的?