Следующая UDF извлечет все, что вы вводите, в список с разделителями-запятыми только из AK
номеров билетов. Предполагается, что за шаблоном номера билета следует AK-
, за которым следуют только цифры, что вы и показываете. Извлекаются только номера билетов и то, что вы говорите, что хотите.
Option Explicit
Public RE As Object
Public MC As Object
Public M As Object
'Assume starts with AK- and ends with numbers
' as per your example
Public Const sPat As String = "\bAK1-\d+"
Function getAK(vIN As Variant) As String
Dim V As Variant
Dim sTemp As String
Set RE = CreateObject("vbscript.regexp")
With RE
.Pattern = sPat
.ignorecase = False
.Global = True
End With
If IsArray(vIN) Then
For Each V In vIN
sTemp = sTemp & "," & getStrOnly(CStr(V))
Next V
Else
getAK = getStrOnly(CStr(vIN))
Exit Function
End If
getAK = Mid(sTemp, 2)
End Function
Private Function getStrOnly(str As String) As String
Dim sTemp As String
With RE
If .test(str) = True Then
Set MC = .Execute(str)
For Each M In MC
sTemp = sTemp & "," & M
Next M
End If
End With
getStrOnly = Mid(sTemp, 2)
End Function
Использование версии для одной ячейки: getAK(A1)
:
Используя метод нескольких ячеек:
=getAK(A1:A12)
мы получаем
AK1-97760,AK1-96767,AK1-97719,AK1-97999,AK1-98105,,AK1-97113,AK1-97073,AK1-97019,AK1-97951,AK1-97858,AK1-97195,AK1-96806,AK1-97719,AK1-97896,AK1-98115,AK1-98151,AK1-98089,AK1-96780,AK1-90919,AK1-96705,AK1-96806,AK1-95397
Если вы также хотите вернуть статус заявки (часть в скобках после номера заявки), вы можете изменить регулярное выражение на:
"\bAK1-\d+(?:\s*\([^)]+\))?"
И если ваши шаблоны заявок отличаются, вы также можете соответствующим образом изменить регулярное выражение.
Используйте мастера диаграмм.
На Шаге 2 4, существует вкладка, маркировал "Series". Существует 3 поля и поле списка на этой вкладке. Поле списка показывает другой ряд, который Вы уже включаете в диаграмму. Каждый ряд имеет и поле "Name" и поле "Values", которое характерно для того ряда. Заключительное поле является полем "Category (X) axis labels", которое характерно для всего ряда.
Нажмите на кнопку "Add" ниже поля списка. Это добавит пустой ряд к Вашему полю списка. Заметьте, что значения для "Имени" и для "Значений" изменяются при выделении ряда в поле списка.
Выберите свой новый ряд.
Существует значок в каждом поле на правой стороне. Этот значок позволяет Вам выбирать ячейки в рабочей книге для получения по запросу данных из. При нажатии на него Мастер временно прячется (за исключением поля, Вы работаете в), разрешение Вам взаимодействовать с рабочей книгой.
Выберите соответствующий лист в рабочей книге и затем выберите поля с данными, которые Вы хотите показать в диаграмме. Кнопка справа от поля может быть нажата для отображения мастера.
Надежда, которая помогает.
Править: Вышеупомянутое относится к 2003 и прежде. На 2007, когда диаграмма выбрана, необходимо смочь сделать подобное действие с помощью опции "Select Data" на вкладке "Design" ленты. Это открывает диалоговое окно, перечисляющее Ряд для диаграммы. Можно выбрать ряд, как Вы могли в Excel 2003, но необходимо использовать кнопки "Add" и "Edit" для определения пользовательского ряда.
2007 стал мощнее с лентой...:=) Чтобы добавить новую серию в диаграмму, сделайте следующее: Выберите Диаграмма, затем нажмите Дизайн в Инструментах диаграммы на ленте, На ленте Design выберите "Select Data" в Data Group, Затем вы увидите кнопку Добавить для добавления новой серии.
Надеюсь, это поможет.