даны три слова. первое и третье слово записать прописными
VBA. Работа со строками
Дата: Суббота, 19.10.2013, 11:04 |
Сообщение № 1
я набрала код, но он все слова в строке выводит прописными. помогите пожалуйста, как именно определить позицию 1 и 3 слова в строке [vba]Код
Private Sub CommandButton1_Click() a = Text1.Text n = Len(a) ReDim c(n) Text2.Text = Strings.LCase(a) End Sub
[/vba]
я набрала код, но он все слова в строке выводит прописными. помогите пожалуйста, как именно определить позицию 1 и 3 слова в строке [vba]Код
Private Sub CommandButton1_Click() a = Text1.Text n = Len(a) ReDim c(n) Text2.Text = Strings.LCase(a) End Sub
[/vba] VBA. Работа со строками
Ответить
Сообщение я набрала код, но он все слова в строке выводит прописными. помогите пожалуйста, как именно определить позицию 1 и 3 слова в строке [vba]Код
Private Sub CommandButton1_Click() a = Text1.Text n = Len(a) ReDim c(n) Text2.Text = Strings.LCase(a) End Sub
[/vba] Автор - VBA. Работа со строками Дата добавления - 19.10.2013 в 11:04
Poltava
Дата: Суббота, 19.10.2013, 13:05 |
Сообщение № 2
Группа: Друзья
Ранг: Форумчанин
Сообщений: 232
Репутация:
50
±
Замечаний:
0% ±
Невижу файла с кодом Цитата
все слова в строке выводит прописными
читаем справку по LCase Цитата
как именно определить позицию 1 и 3
Вот неплохая ссылка должна помочь ТЫЦ
Невижу файла с кодом Цитата
все слова в строке выводит прописными
читаем справку по LCase Цитата
как именно определить позицию 1 и 3
Вот неплохая ссылка должна помочь ТЫЦ Poltava
Сообщение отредактировал Poltava - Суббота, 19.10.2013, 13:56
Ответить
Сообщение Невижу файла с кодом Цитата
все слова в строке выводит прописными
читаем справку по LCase Цитата
как именно определить позицию 1 и 3
Вот неплохая ссылка должна помочь ТЫЦ Автор - Poltava Дата добавления - 19.10.2013 в 13:05
Alex_ST
Дата: Воскресенье, 20.10.2013, 19:09 |
Сообщение № 3
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3214
Репутация:
615
±
Замечаний:
0% ±
2003
Вот неплохая ссылка должна помочь
Вот неплохая ссылка должна помочь
Alex_ST
С уважением, Алексей MS Excel 2003 - the best!!!
Ответить
Сообщение Вот неплохая ссылка должна помочь
Автор - Alex_ST Дата добавления - 20.10.2013 в 19:09
SkyPro
Дата: Воскресенье, 20.10.2013, 19:32 |
Сообщение № 4
Группа: Друзья
Ранг: Старожил
Сообщений: 1206
Репутация:
255
±
Замечаний:
0% ±
2010
Попробуйте так:[vba]Код
Private Sub CommandButton1_Click() Dim a$ a = Text1.Text n = Len(a) ReDim c(n) fst = Application.WorksheetFunction.Find(" ", a, 1) 'тут можно использовать InStr, но у меня чет не получилось =\ thd = Application.WorksheetFunction.Find(" ", a, fst) a = UCase(Left(a, fst - 1)) & LCase(Mid(a, fst, thd)) & UCase(Right(a, Len(a) - thd - fst + 1)) Text2.Text = a End Sub
[/vba] [offtop] Poltava, отличная ссылка!
Попробуйте так:[vba]Код
Private Sub CommandButton1_Click() Dim a$ a = Text1.Text n = Len(a) ReDim c(n) fst = Application.WorksheetFunction.Find(" ", a, 1) 'тут можно использовать InStr, но у меня чет не получилось =\ thd = Application.WorksheetFunction.Find(" ", a, fst) a = UCase(Left(a, fst - 1)) & LCase(Mid(a, fst, thd)) & UCase(Right(a, Len(a) - thd - fst + 1)) Text2.Text = a End Sub
[/vba] [offtop] Poltava, отличная ссылка! SkyPro
skypro1111@gmail.com
Сообщение отредактировал SkyPro - Воскресенье, 20.10.2013, 19:50
Ответить
Сообщение Попробуйте так:[vba]Код
Private Sub CommandButton1_Click() Dim a$ a = Text1.Text n = Len(a) ReDim c(n) fst = Application.WorksheetFunction.Find(" ", a, 1) 'тут можно использовать InStr, но у меня чет не получилось =\ thd = Application.WorksheetFunction.Find(" ", a, fst) a = UCase(Left(a, fst - 1)) & LCase(Mid(a, fst, thd)) & UCase(Right(a, Len(a) - thd - fst + 1)) Text2.Text = a End Sub
[/vba] [offtop] Poltava, отличная ссылка! Автор - SkyPro Дата добавления - 20.10.2013 в 19:32
AndreTM
Дата: Воскресенье, 20.10.2013, 20:45 |
Сообщение № 5
Группа: Друзья
Ранг: Старожил
Сообщений: 1762
Репутация:
501
±
Замечаний:
0% ±
2003 & 2010
Если количество пробелов между словами сохранять непринципиально, можно так: [vba]Код
Dim ar ar = Split(Text1.Text) ar(0) = UCase(ar(0)) ar(2) = UCase(ar(2)) Text2.Text = Join(ar)
[/vba]
Если количество пробелов между словами сохранять непринципиально, можно так: [vba]Код
Dim ar ar = Split(Text1.Text) ar(0) = UCase(ar(0)) ar(2) = UCase(ar(2)) Text2.Text = Join(ar)
[/vba] AndreTM
Skype: andre.tm.007 Donate: Q iwi: 9517375010
Сообщение отредактировал AndreTM - Понедельник, 21.10.2013, 12:58
Ответить
Сообщение Если количество пробелов между словами сохранять непринципиально, можно так: [vba]Код
Dim ar ar = Split(Text1.Text) ar(0) = UCase(ar(0)) ar(2) = UCase(ar(2)) Text2.Text = Join(ar)
[/vba] Автор - AndreTM Дата добавления - 20.10.2013 в 20:45
Скрипт
Дата: Понедельник, 21.10.2013, 10:38 |
Сообщение № 6
Группа: Проверенные
Ранг: Участник
Сообщений: 61
Репутация:
25
±
Замечаний:
0% ±
Excel 2013
AndreTM, а пробелы никуда не исчезнут. Или приведите пример, что пробелы исчезнут.
AndreTM, а пробелы никуда не исчезнут. Или приведите пример, что пробелы исчезнут. Скрипт
Ответить
Сообщение AndreTM, а пробелы никуда не исчезнут. Или приведите пример, что пробелы исчезнут. Автор - Скрипт Дата добавления - 21.10.2013 в 10:38
AndreTM
Дата: Понедельник, 21.10.2013, 12:48 |
Сообщение № 7
Группа: Друзья
Ранг: Старожил
Сообщений: 1762
Репутация:
501
±
Замечаний:
0% ±
2003 & 2010
Скрипт, а, да, Split() же только первый разделитель вырежет, а остальные - воспримет как "слова". Ну, тогда уточним - "если между словами - по одному пробелу, то ..."
Скрипт, а, да, Split() же только первый разделитель вырежет, а остальные - воспримет как "слова". Ну, тогда уточним - "если между словами - по одному пробелу, то ..."AndreTM
Skype: andre.tm.007 Donate: Q iwi: 9517375010
Сообщение отредактировал AndreTM - Понедельник, 21.10.2013, 12:58
Ответить
Сообщение Скрипт, а, да, Split() же только первый разделитель вырежет, а остальные - воспримет как "слова". Ну, тогда уточним - "если между словами - по одному пробелу, то ..."Автор - AndreTM Дата добавления - 21.10.2013 в 12:48
Скрипт
Дата: Понедельник, 21.10.2013, 13:25 |
Сообщение № 8
Группа: Проверенные
Ранг: Участник
Сообщений: 61
Репутация:
25
±
Замечаний:
0% ±
Excel 2013
AndreTM, нет, пробелы не будут восприняты как слова. В массиве будут создаваться пустые элементы между двумя подрядидущими пробелами.
AndreTM, нет, пробелы не будут восприняты как слова. В массиве будут создаваться пустые элементы между двумя подрядидущими пробелами. Скрипт
Ответить
Сообщение AndreTM, нет, пробелы не будут восприняты как слова. В массиве будут создаваться пустые элементы между двумя подрядидущими пробелами. Автор - Скрипт Дата добавления - 21.10.2013 в 13:25
AndreTM
Дата: Понедельник, 21.10.2013, 13:42 |
Сообщение № 9
Группа: Друзья
Ранг: Старожил
Сообщений: 1762
Репутация:
501
±
Замечаний:
0% ±
2003 & 2010
В массиве будут создаваться пустые элементы между двумя подряд идущими пробелами
Я, вообще-то, брекпойнтами и LocalsWindow умею пользоваться Для ТС суть будет в том, что после Join() мы соберём фразу с тем же количеством пробелов - вот только "третьим словом" в массиве будет пустой элемент... Поэтому и уточняю, что перед применением такого алгоритма надо будет удалить лишние пробелы (или быть уверенным, что лишних там нет). Ну, например, ТС ведь уверена, что в строке три слова имеются
В массиве будут создаваться пустые элементы между двумя подряд идущими пробелами
Я, вообще-то, брекпойнтами и LocalsWindow умею пользоваться Для ТС суть будет в том, что после Join() мы соберём фразу с тем же количеством пробелов - вот только "третьим словом" в массиве будет пустой элемент... Поэтому и уточняю, что перед применением такого алгоритма надо будет удалить лишние пробелы (или быть уверенным, что лишних там нет). Ну, например, ТС ведь уверена, что в строке три слова имеются AndreTM
Skype: andre.tm.007 Donate: Q iwi: 9517375010
Ответить
Сообщение В массиве будут создаваться пустые элементы между двумя подряд идущими пробелами
Я, вообще-то, брекпойнтами и LocalsWindow умею пользоваться Для ТС суть будет в том, что после Join() мы соберём фразу с тем же количеством пробелов - вот только "третьим словом" в массиве будет пустой элемент... Поэтому и уточняю, что перед применением такого алгоритма надо будет удалить лишние пробелы (или быть уверенным, что лишних там нет). Ну, например, ТС ведь уверена, что в строке три слова имеются Автор - AndreTM Дата добавления - 21.10.2013 в 13:42