Выбрать дату в календареВыбрать дату в календаре

Страницы: 1
Сортировка макросом смешанного столбца
 
SAS888,Спасибо! извините, что так долго не отвечала
Сортировка макросом смешанного столбца
 
Здравствуйте,

В таблице есть столбец "Зоны", который содержит в себе такие значения такого вида: числоА!числоПП
притом длина их разной может быть, т е и просто 1А или 1ПП, либо 23А!65А!2ПП!33ПП. Примеры возможных комбинаций есть в файле.

Нужно этот столбец отсортировать так: первыми шли по возрастанию с буквой А, а потом по возрастанию  с буквой ПП

Пример результата сортировки:
2A
5A!56A
11A!12A
12A!15A!7ПП!10ПП
717A!15ПП
1187A!1188A
1194A!1195A!1196A
1ПП!56ПП
2ПП!4ПП
11ПП!58ПП
30ПП
А стандартная сортировка не так делает. Возможно это решить с помощью макроса? Мне именно макрос нужен, т к выгрузку в эксель делаю из бд с помощью с# и оттуда хочу вызывать макрос.
Совпадение значений ячеек в БД
 
Может кто знает, как получить результат select в переменную?
Код
rst.Open "SELECT bookid FROM tbl_book_foto where bookid=" & ACell.Value, cn

  в sql server я бы так сделала так
select @op=bookid FROM tbl_book_foto where bookid=1
Изменено: Aumi - 19.12.2017 18:04:39
Совпадение значений ячеек в БД
 
Здравствуйте,

Требуется написать макрос.

На листе есть столбец "ID"  "Наличие".  А на sql server таблица тоже с "ID".
Если id из экселя есть на сервере, то в столбец "Наличие" писать "да". В противном случае "нет".
Код
Public Sub Photo()  
Dim cn As ADODB.Connection
Dim rst As ADODB.Recordset
Dim iCell As Range
Dim iArr As Variant, iRow&
Dim iTrr As Variant
Dim tmp As StringSet cn = New ADODB.Connection
Set rst = New ADODB.Recordset

Conn = "Provider=SQLOLEDB.1;Integrated Security=SSPI;Initial Catalog=MyBD;Data Source=spr;"
cn.ConnectionString = Conn
cn.Open

rst.Open "SELECT id" & tmp & "FROM tbl1 where id=" & iCell.Value, cn

rst.Close
cn.Close
Set cn = Nothing  
End Sub
Т е, если А2 существует в БД, то в T2 должно писаться "ДА", иначе "НЕТ". Как это реализовать?

В файле два столбца. id имеет имя, а вставка осуществляется в B  и в оригинале не имеет имени.
Внутри макрос с наработками

если есть какой то другой способ (не с помощью макроса), поделитесь тоже подойдет. Главное, задачу решить
Изменено: Aumi - 19.12.2017 17:19:23
Страницы: 1
Наверх