Уважаемые пользователи... возможно это обсуждалось... меня интересует вот такой вопрос Есть 6 таблиц-прайслистов, необходимо создать один, уникальным является столбец АРТИКУЛ (каталожный номер) 1.удалять строку если в АРТИКУЛЕ имеется символ *,-,/,\,+ или какие либо другие 2. удалять строку если в АРТИКУЛЕ имеется буквы русского алфавита (введённые в РУССКОМ РЕГИСТРЕ) 3. удалять строку если АРТИКУЛ меньше или равно 5 знакам 4.искать строки с повторяющимися АРТИКУЛАМИ 5. если АРТИКУЛ 7 знаков то в этой строке OPEL origin поменять на OPEL если АРТИКУЛ 8 знаков то в этой строке OPEL origin поменять на GENERAL MOTORS OPEL origin 1247001 OPEL origin 1845114 OPEL origin 1605223 OPEL origin 15729517 OPEL origin 15988221 OPEL origin 12522101
Уважаемые пользователи... возможно это обсуждалось... меня интересует вот такой вопрос Есть 6 таблиц-прайслистов, необходимо создать один, уникальным является столбец АРТИКУЛ (каталожный номер) 1.удалять строку если в АРТИКУЛЕ имеется символ *,-,/,\,+ или какие либо другие 2. удалять строку если в АРТИКУЛЕ имеется буквы русского алфавита (введённые в РУССКОМ РЕГИСТРЕ) 3. удалять строку если АРТИКУЛ меньше или равно 5 знакам 4.искать строки с повторяющимися АРТИКУЛАМИ 5. если АРТИКУЛ 7 знаков то в этой строке OPEL origin поменять на OPEL если АРТИКУЛ 8 знаков то в этой строке OPEL origin поменять на GENERAL MOTORS OPEL origin 1247001 OPEL origin 1845114 OPEL origin 1605223 OPEL origin 15729517 OPEL origin 15988221 OPEL origin 12522101lani
Udik, номера могут включать и буквы латинские и цифры... у нас много поставщиков и производителей... Самое главное, чтобы в прайсах в АРТИКУЛЕ - НОМЕРЕ символы *,-,/,\,+ или какие либо другие, а также русские буквы НЕ НУЖНЫ...
Udik, номера могут включать и буквы латинские и цифры... у нас много поставщиков и производителей... Самое главное, чтобы в прайсах в АРТИКУЛЕ - НОМЕРЕ символы *,-,/,\,+ или какие либо другие, а также русские буквы НЕ НУЖНЫ...lani
Function rep$(S$, Optional p$ = "\w") Set r = CreateObject("vbscript.regexp") r.Pattern = p: r.Global = True Set m = r.Execute(S) For Each E In m: rep = rep & E.Value: Next End Function
[/vba]
Так?: [vba]
Код
Function rep$(S$, Optional p$ = "\w") Set r = CreateObject("vbscript.regexp") r.Pattern = p: r.Global = True Set m = r.Execute(S) For Each E In m: rep = rep & E.Value: Next End Function
SLAVICK, Добрый день... спасибо огромное за ответ... так... но не совсем... нам надо задать формулу или функцию, чтобы там, где есть эти знаки, строка удалялась... нам дается несколько прайсов... нам надо сделать из 6 прайсов один, свой... и вот образовались пять вопросов, которые при редактировании в один файл занимают много времени
SLAVICK, Добрый день... спасибо огромное за ответ... так... но не совсем... нам надо задать формулу или функцию, чтобы там, где есть эти знаки, строка удалялась... нам дается несколько прайсов... нам надо сделать из 6 прайсов один, свой... и вот образовались пять вопросов, которые при редактировании в один файл занимают много времениlani
1.удалять строку если в АРТИКУЛЕ имеется символ *,-,/,\,+ или какие либо другие 2. удалять строку если в АРТИКУЛЕ имеется буквы русского алфавита (введённые в РУССКОМ РЕГИСТРЕ)
т.е. разрешены цифры и латиница. == похоже тут проще всё на ВБА написать
1.удалять строку если в АРТИКУЛЕ имеется символ *,-,/,\,+ или какие либо другие 2. удалять строку если в АРТИКУЛЕ имеется буквы русского алфавита (введённые в РУССКОМ РЕГИСТРЕ)
т.е. разрешены цифры и латиница. == похоже тут проще всё на ВБА написатьUdik
вот вам барабан яд 41001231307558 wm R419131876897 udik1968@gmail.com
Сообщение отредактировал Udik - Среда, 13.01.2016, 13:09
SLAVICK, формулы к первому вопросу и второму ... просто отлично... то что надо... а вот по третьему ... если артикул меньше 5, тоже в формулу включить надо...
SLAVICK, формулы к первому вопросу и второму ... просто отлично... то что надо... а вот по третьему ... если артикул меньше 5, тоже в формулу включить надо...lani
Public Function chArt(str1 As String) As Boolean Dim regObj, mObj
chArt = True str1 = StrConv(str1, vbUpperCase)
If Len(str1) < 6 Then Exit Function Set regObj = CreateObject("vbscript.regexp") regObj.Global = True regObj.Pattern = "[0-9A-Z]" Set mObj = regObj.Execute(str1) If Len(str1) <> mObj.Count Then Exit Function chArt = False
Public Function chArt(str1 As String) As Boolean Dim regObj, mObj
chArt = True str1 = StrConv(str1, vbUpperCase)
If Len(str1) < 6 Then Exit Function Set regObj = CreateObject("vbscript.regexp") regObj.Global = True regObj.Pattern = "[0-9A-Z]" Set mObj = regObj.Execute(str1) If Len(str1) <> mObj.Count Then Exit Function chArt = False