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

Страницы: 1
Нужен фомат числа 0001, а прописывается в ячейке 1. Как этого избежать?
 
Мало ли кому пригодиться, отвечаю на свой вопрос...    
Range("D2").FormulaLocal = "=ТЕКСТ(A2+B2;ПОВТОР(0;ДЛСТР(A2)))"  
 
P.S. Ну как у самого фантазия хватила на это... В макросах еще не силен))
Нужен фомат числа 0001, а прописывается в ячейке 1. Как этого избежать?
 
Всем добрый вечер!  
Подскажите пож-та, а туже самую процедуру можно сделать не при помощи ФОРМУЛУ, а через МАКРОС??
Автоподбор высоты строк в объединенных ячейках
 
Прошу прощение за размер :)  
 
Выкладываю файл уже с меньшим размером.
Автоподбор высоты строк в объединенных ячейках
 
nerv,  
пример прикладываю.  
 
Если конкретно брать ячейку CY46,  
1. В ячейке прописываем текст - привет1 привет2 привет3 привет4 привет5 привет6  
2. Запускаем Автоподбор на ячейку CY46  
3. Меняется высота и ведем только - привет1 привет2 привет3 привет4    
 
Оставшейся текст - привет5 привет6    
остается в зоне невидимости :(    
 
Благодарю за проявленную клиентоориентированность и инициативу оказать помощь!)))  
 
<EM><STRONG>Файл удален</STRONG> - велик размер - [<STRONG>МОДЕРАТОРЫ</STRONG>]</EM>
Автоподбор высоты строк в объединенных ячейках
 
nerv,  
 
Спасибо большое!!!  
   
Все равно появляются небольшие косяки. Высоту иногда выстраивает меньше, чем надо. И не всегда все содержимое ячейки. Буду думать и импровизировать, как можно уйти от таких ситуаций)
Автоподбор высоты строк в объединенных ячейках
 
nerv,  
мне на самом деле хотелось уточнить один момент. Как можно сделать, что бы автоподбор работал к конкретной ячейке, а не ко всему использованному диапозону (не через надскройку)?  
 
немного дописал,  
UserAutoFit ActiveSheet.UsedRange.Range("CY46")  
 
но автоподбор работает не совсем корректно :((    
 
Подскажи плииз :)
Автоподбор высоты строк в объединенных ячейках
 
nerv,  
а нельзя увидеть данный файл в открытом виде? Желательно выложить :)  
а то при открытии надстройки уверенно пишет "project is unviewable" Так понимаю, постарался защитить свой файл, и получилось неплохо :))
Как задать переход на нужную ячейку при нажатии ENTER
 
Удалось самостоятельно догадаться    
Если кому пригодиться, проблема решается следующим образом  
 
If Target.Address(0, 0) = "N8" Then Range("P9").Select
Как задать переход на нужную ячейку при нажатии ENTER
 
Уважаемые, Форумчани!  
Столкнулся с проблемой при переходе с объеденными ячейками. т.е. если  
If Target = Range("N8") Then Target.Offset(1, 1).Select  
 
должен опускать на 1 вниз и на 1 права и попадать в ячейку P9, вместо этого, курсор попадает в AX9  
 
прикладываю файл для примера (см. вложение)
Автоподбор высоты строк в объединенных ячейках
 
я предложил решение для разработчиков, а не для пользователей. Т.е. разрабатываю некую форму Шаблона, что бы потом передать пользователям. Для меня так же имеется приоритет, что бы пользователи могли заполнять только определенные ячейки, а не все.    
 
так же хочу поделиться...  
вот добавил на Лист1  
 
Private Sub Worksheet_Change(ByVal Target As Range)  
UserAutoFit ActiveSheet.UsedRange 'название функции из версии nerv_Function_UserAutoFit_3.9.xls  
End Sub  
 
автоматически позволит срабатывание функции Автоподбора высоты строк, только в тех ячейка, в которые внесли изменения.
Автоподбор высоты строк в объединенных ячейках
 
nerv,  
 
получилось уйти от одного минуса (по крайне мере у меня заработало), а именно  
Наши недостатки:  
- "халтурим" при любой защите листа, книги, общей книги  
 
после    
With Application  
дописываем  
Worksheets("Лист1").Unprotect Password:="1111" 'Разпароливаем Лист1    
 
так же в конце функции, после    
.ActiveWindow.View = v  
дописываем  
Worksheets("Лист1").Protect Password:="1111" 'Запароливаем Лист1  
 
мало ли кому пригодиться!
Макрос к выпадающему списку
 
{quote}{login=nerv}{date=01.07.2011 08:36}{thema=Re: }{post}{quote}{login=maG}{date=01.07.2011 08:27}{thema=}{post}БОЛЬШОЕ ВСЕМ ВАМ СПАСИБО!!!  
 
помогли и выручили... :){/post}{/quote}пожалуйста. Если Вы решили воспользоваться моим последним примером, то я прямо сейчас могу Вам сказать, после какого дейстия комп зависает... ^_^{/post}{/quote}  
 
Воспользовался примером, предложенный от RAN. Но все же любопытно услышать где же комп зависает по Вашему примеру :)
Макрос к выпадающему списку
 
БОЛЬШОЕ ВСЕМ ВАМ СПАСИБО!!!  
 
помогли и выручили... :)
Макрос к выпадающему списку
 
{quote}{login=nerv}{date=30.06.2011 10:12}{thema=}{post}Вы лучше объясните внятно, что должен содержать второй (правый) список?{/post}{/quote}  
 
Как скажите, все поясню :)  
 
при выборе в первом (левом) списке ---> Адыгея  
второй (правый) список выводит список удовлетворяющее условия    
If vR(q, 4) <> "000" Then (т.е. в колонке D не стояло 000)  
If vR(q, 5) = "000" Then (т.е. в колонке E стояло 000)  
If vR(q, 6) = "000" Then (т.е. в колонке F стояло 000)  
If vR(q, 7) = "00" Then (т.е. в колонке G стояло 00)  
И самое главное   If vR(q, 3) '(ComboBox2) = vR(q, 3) '(ComboBox1) Then (т.е. что бы колонка С равнялась колонке С первому списку, т.е. 01)  
    A                   B      C        D       E       F       G  
  Адыгея       Респ 01 000 000 000 00  
 
Данные условия удовлетворяют следующие строки:  
 
    A                   B      C        D       E       F       G  
Кошехабльский        р-н 01 002 000 000 00  
Красногвардейский р-н 01 003 000 000 00  
Майкопский        р-н 01 004 000 000 00  
Тахтамукайский        р-н 01 005 000 000 00  
Теучежский        р-н 01 006 000 000 00  
Шовгеновский        р-н 01 007 000 000 00  
Гиагинский        р-н 01 008 000 000 00  
 
Но перед выводом список (названия из колонки A) макрос должен упорядочить  
 
Итог - второй список (правый) выводит следующий список --->    
Гиагинский  
Кошехабльский  
Красногвардейский  
Майкопский  
Тахтамукайский  
Теучежский  
Шовгеновский  
   
 
При выборе в первом (левом) списке ---> Москва  
второй (правый) опять проверяет на условия  
If vR(q, 4) <> "000" Then (т.е. в колонке D не стояло 000)  
If vR(q, 5) = "000" Then (т.е. в колонке E стояло 000)  
If vR(q, 6) = "000" Then (т.е. в колонке F стояло 000)  
If vR(q, 7) = "00" Then (т.е. в колонке G стояло 00)  
И самое главное   If vR(q, 3) '(ComboBox2) = vR(q, 3) '(ComboBox1) Then (т.е. что бы колонка С равнялась колонке С первому списку, т.е. 77)  
 
Но данные условия ничего не удовлетворяют, следовательно выводит пустую ячейку...  
 
P.S. Надеюсь внятно объяснил :)
Макрос к выпадающему списку
 
{quote}{login=nilem}{date=30.06.2011 07:59}{thema=}{post}Упс, цитирование. Можно удалить предыдущий пост?  
 
Попробуйте все же изменить имя, как советовал RAN, здесь  
Private Sub SortN(ByRef vArr As Variant)  
и здесь  
SortN vArrName   ' Упорядочить его{/post}{/quote}  
 
Так и сделал... Excel наглухо зависает...(((  
 
Уже голову сломал, у самого цикл в голове... без понимания истиной причины проблемы...
Макрос к выпадающему списку
 
{quote}{login=nerv}{date=29.06.2011 04:12}{thema=}{post}я не совсем понял, что вы хотели (в коде), посмотрите в эту сторону{/post}{/quote}  
 
Что-то при открытии ошибка одна за другой вылетает... :(  
"Compile error: ...object module derives"  
 
В коде хотел, что бы второй выпадающий список выдавал только те значения из столбца A, которые удовлетворяют условия    
одно из условий  
If vR(q, 3) = idn - Этим я хотел сказать что бы 3й столбец ComboBox2 был равен 3му столбцу ComboBox1  для этого и назначил idn  
Ибо моя глупость If ComboBox1.vR(q, 3) =  ComboBox1.vR(q, 3) не прокатывает :)  
Думаю другие условия не надо пояснять :)  
If vR(q, 4) = "000" Then  
If vR(q, 5) = "000" Then  
If vR(q, 6) = "000" Then  
If vR(q, 7) = "00" Then  
Но если лучше объяснить, готов так же дать комментарии
Макрос к выпадающему списку
 
{quote}{login=nerv}{date=29.06.2011 12:57}{thema=Re: }{post}{quote}{login=maG}{date=29.06.2011 12:29}{thema=}{post}Уважаемые Гуру Excel'я, разрешите снова Вас побеспокоить...  
 
Пошел по пути предложенному nerv. Немного доработал файл, добавил ComboBox2 связанный с ComboBox1. Все бы ничего и работает, но возникает ошибка при следующем условии...  
 
Если в ComboBox1 выбираешь Москва, то ComboBox2 ничего не находит (и это правильно), но когда пытается после этого сделать сортировку, выдает ошибку. А надо что бы выдавал пустой список.  
Если в ComboBox1 выбираешь Адыгея, ComboBox2 прекрасно работает,сортирует и выдает список.  
 
Пытался вчера обойти данную ошибку, пробовал подкорректировать    
On Error GoTo L1  
и L1: выводил в конец макроса перед End Sub  
так же дописывал L1: Sheets(2).ComboBox2.ListIndex = -1  
но все тщетно... ((  
Понимаю, что не хватает знаний vba... Помогите пож-та! :)  
 
Так же не исключаю при выведением списка ComboBox2 идет по длинному пути, наверно можно и проще и быстрее сделать :)    
 
Файл прилагаю.  
<EM><STRONG>Файл удален</STRONG> - велик размер - [<STRONG>МОДЕРАТОРЫ</STRONG>]</EM>{/post}{/quote}  
 
возможно, в процедуру сортировки вы передаете не массив, а одно значение. В данном случае, попробуйте дописать это  
 
If UBound(Ваш массив) > 1 Then  
процедура сортировки массива  
End if{/post}{/quote}  
 
 
Так вроде и сделал ранее, только немного с другой формулировкой, а суть одна и та же...  
 
On Error GoTo L1  
L1:  
j = 0  
For q = 1 To UBound(vArr)  
  If vArr(j) > vArr(q) Then  
       vTemp = vArr(j)  
       vArr(j) = vArr(q)  
       vArr(q) = vTemp  
       q = q - 2: j = j - 2  
   End If  
 
Может я понимаю логику, но вот не правильно доношу это для макроса? :)  
 
на этот раз прикладываю файл с учетом правил форума :)
Макрос к выпадающему списку
 
{quote}{login=Юрий М}{date=29.06.2011 12:38}{thema=}{post}maG, настоятельно рекомендую Вам ознакомиться с Правилами нашего Форума.{/post}{/quote}  
 
Юрий М,  
прошу искреннее прощение, читал правила и игнорировать не собирался, ибо забыл, что при пересохранении в 2003 формат, размер файла увеличивается. Прошу сильно не карать за лишние 76КБ :)
Макрос к выпадающему списку
 
Уважаемые Гуру Excel'я, разрешите снова Вас побеспокоить...  
 
Пошел по пути предложенному nerv. Немного доработал файл, добавил ComboBox2 связанный с ComboBox1. Все бы ничего и работает, но возникает ошибка при следующем условии...  
 
Если в ComboBox1 выбираешь Москва, то ComboBox2 ничего не находит (и это правильно), но когда пытается после этого сделать сортировку, выдает ошибку. А надо что бы выдавал пустой список.  
Если в ComboBox1 выбираешь Адыгея, ComboBox2 прекрасно работает,сортирует и выдает список.  
 
Пытался вчера обойти данную ошибку, пробовал подкорректировать    
On Error GoTo L1  
и L1: выводил в конец макроса перед End Sub  
так же дописывал L1: Sheets(2).ComboBox2.ListIndex = -1  
но все тщетно... ((  
Понимаю, что не хватает знаний vba... Помогите пож-та! :)  
 
Так же не исключаю при выведением списка ComboBox2 идет по длинному пути, наверно можно и проще и быстрее сделать :)    
 
Файл прилагаю.  
<EM><STRONG>Файл удален</STRONG> - велик размер - [<STRONG>МОДЕРАТОРЫ</STRONG>]</EM>
Макрос к выпадающему списку
 
Всем СПАСИБО еще раз!!!  
 
Но думаю, еще не буду уходить с этой темы... ибо есть пару креативных идей, ну и наверно могут появиться вопросы :))
Макрос к выпадающему списку
 
Боги Excel'я,  
 
подскажите плииз, а как сделать, что бы выпадающий список уже сортирован А до Я, притом, что лист File_KT оставить без изменений?? Т.е. что бы сам макрос сортировал.
Макрос к выпадающему списку
 
Реальное и большое спасибо!!!  
 
Реально... облегчили мою учесть, буду ща изучать и дальше дорабатывать :)
Макрос к выпадающему списку
 
Хм... вроде сделал как написали, что-то без изменений... (((  
Если не сложно, можно выложить ранее прикрепленный файл с Вашей рекомендацией???
Макрос к выпадающему списку
 
Боги Excel'я, добрый вечер!  
Обычно обходился форумами... или примерами planetaexcel. Но тут ситуация другая, уже несколько дней застопорился (((  
 
Суть в следующем:  
Есть файл (прилагаю),    
- имеется лист "file_KT" грубо говоря это БД с информацией.  
- имеется еще лист "ВЫБОР", в нем выпадающий списки (пока один, потом будет больше).  
Выпадающий список (ComboBox1) должен выгрузить информацию с условиями, все республики и области РФ в листе "file_KT" где столбцы D = 000 E = 000 F = 000 и G = 00, для этого прописал макрос считает кол-во строк и выгружает список удовл. данным условиям.    
 
Private Sub ComboBox1_Click()  
'ComboBox1.Clear  
Dim obl As Object  
Dim Ar() As String  
 
Set obl = Sheets("file_KT").Range("A1").CurrentRegion  
kol_str = obl.Rows.Count    
j = 0  
k = 0  
ReDim Ar(1 To kol_str)  
 
For i = 1 To kol_str  
If Sheets("file_KT").Cells(i, 4) = "000" And Sheets("file_KT").Cells(i, 5) = "000" And Sheets("file_KT").Cells(i, 6) = "000" And Sheets("file_KT").Cells(i, 7) = "00" Then    
ComboBox1.AddItem Sheets("file_KT").Cells(i, 1)  
  j = j + 1  
End If  
Next i  
End Sub  
 
Все бы ничего, но это все начинает работать когда меняешь в коде 'ComboBox1.Clear, а именно убираешь ' и запускаешь Run Sub (f5).    
По другому отказывается работать, если убрать ' сохранить и перезапустить эффекта нет, так же пробовал через Workbook_Open(), так же постигла неудача.  
 
Помогите плиииз......!!! :)  Очень надо)        
 
P.S. Не исключаю, макрос мог написать через заднее место. Только учусь, прошу не судить строго, а помочь советом.
Страницы: 1
Наверх