[{"isEmailConfirmed":true,"tel":"","ip":"0.0.0.0","ipLocation":{"ip":"","sDate":3,"postalCode":"","country":"","countryIsoCode":"","federalDistrict":"","region":"","regionType":"","city":"","cityType":"","geoLat":"","geoLon":"","locationString":""},"birthDate":"0001-01-01T00:00:00","age":0,"isBirthdayToday":false,"ban":{"id":0,"userId":0,"isBanned":false,"startDate":"0001-01-01T00:00:00","endDate":"0001-01-01T00:00:00","moder":{"id":0,"name":"Неизвестный","email":"нет адреса","role":0,"roleString":"Неподтвержден","roleIcon":"fa-user-clock","registDate":"0001-01-01T00:00:00","lastDate":"0001-01-01T00:00:00","photo":"images/unophoto.png?v=9.4.12","lastDateIndicatorClass":"gray","lastDateIndicatorText":"давно","photoPreview200":"images/unophoto.png?v=9.4.12","photoPreview120":"images/unophoto.png?v=9.4.12","photoPreview100":"images/unophoto.png?v=9.4.12","photoPreview80":"images/unophoto.png?v=9.4.12","photoPreview40":"images/unophoto.png?v=9.4.12","isPhotoExists":false,"isValid":false,"isLoggedIn":false,"isUnconfirmed":true,"isConfirmed":false,"isNewUser":false,"isExisted":false,"isExpert":false,"isRfproUserClass":false},"reasonHTML":"","timeToUnbanString":"-33 мин."},"isBanned":false,"roleString":"Мастер-Эксперт","roleIcon":"fa-user-ninja","socialMedia":[],"aboutText":"","aboutHTML":"","signatureText":"Facta loquuntur.","signatureHTML":"Facta loquuntur.","country":{"id":0,"name":"","isFlagExists":false,"flagImage":"","isValid":false},"city":{"id":0,"name":"","countryId":0,"yandexCityId":0,"isValid":false},"averageEvaluation":4.979,"absoluteRating":109927,"dynamicRating":1676.348,"dynamicRatingStars":10,"timezone":{"id":0,"baseUtcOffset":"00:00:00","displayName":"[не установлен]","linuxid":"notset/clean"},"currentDateTime":"2024-05-01T07:33:39.9943904+03:00","isValid":true,"isUnconfirmed":false,"isConfirmed":true,"settings":{"fixedHeader":true,"fixedFooter":true,"leftColumnMode":2,"darkTheme":false,"topPanelBtns":[{"id":103,"text":"Главная","title":"Главная (начальная) страница Портала","icon":"fa-solid fa-house-chimney","colorClass":"text-info-emphasis","controller":"Home","action":"Index","accessLevel":0,"isDropdown":false},{"id":100,"text":"Вход в систему","title":"Войти в систему с использованием своих регистрационных данных (адрес электронной почты и пароль)","icon":"fa-solid fa-arrow-right-to-bracket","colorClass":"text-info-emphasis","controller":"Login","action":"Index","accessLevel":0,"isDropdown":false},{"id":101,"text":"Регистрация","title":"Зарегистрироваться в системе и стать полноценным участником сообщества","icon":"fa-solid fa-user-plus","colorClass":"text-info-emphasis","controller":"Regist","action":"Index","accessLevel":0,"isDropdown":false},{"id":102,"text":"Сброс пароля","title":"Сбросить пароль свой учетной записи, если Вы его забыли","icon":"fa-solid fa-key","colorClass":"text-danger-emphasis","controller":"Login","action":"ResetPassword","accessLevel":0,"isDropdown":false}],"topPanelBtnsHideText":false},"isLevelUpAllowed":false,"nextRole":11,"counters":{"daysAtPortal":6557,"questions":12,"questionsPosts":18345,"questionsAnswers":6663,"questionsPostsEvaluations":2831,"forumPosts":5698},"isRfproUserClass":true,"id":17387,"name":"Гордиенко Андрей Владимирович","email":"","role":10,"registDate":"1000-01-01T00:00:00","lastDate":"2024-04-29T08:02:54","photo":"users/17387/f4979bc95a484b9f43f75cfe66538acd.jpg","lastDateIndicatorClass":"red","lastDateIndicatorText":"давно","photoPreview200":"users/17387/200_f4979bc95a484b9f43f75cfe66538acd.jpg","photoPreview120":"users/17387/120_f4979bc95a484b9f43f75cfe66538acd.jpg","photoPreview100":"users/17387/100_f4979bc95a484b9f43f75cfe66538acd.jpg","photoPreview80":"users/17387/80_f4979bc95a484b9f43f75cfe66538acd.jpg","photoPreview40":"users/17387/40_f4979bc95a484b9f43f75cfe66538acd.jpg","isPhotoExists":true,"isLoggedIn":true,"isNewUser":false,"isExisted":true,"isExpert":true},{"isEmailConfirmed":true,"tel":"","ip":"0.0.0.0","ipLocation":{"ip":"","sDate":3,"postalCode":"","country":"","countryIsoCode":"","federalDistrict":"","region":"","regionType":"","city":"","cityType":"","geoLat":"","geoLon":"","locationString":""},"birthDate":"0001-01-01T00:00:00","age":0,"isBirthdayToday":false,"ban":{"id":0,"userId":0,"isBanned":false,"startDate":"0001-01-01T00:00:00","endDate":"0001-01-01T00:00:00","moder":{"id":0,"name":"Неизвестный","email":"нет адреса","role":0,"roleString":"Неподтвержден","roleIcon":"fa-user-clock","registDate":"0001-01-01T00:00:00","lastDate":"0001-01-01T00:00:00","photo":"images/unophoto.png?v=9.4.12","lastDateIndicatorClass":"gray","lastDateIndicatorText":"давно","photoPreview200":"images/unophoto.png?v=9.4.12","photoPreview120":"images/unophoto.png?v=9.4.12","photoPreview100":"images/unophoto.png?v=9.4.12","photoPreview80":"images/unophoto.png?v=9.4.12","photoPreview40":"images/unophoto.png?v=9.4.12","isPhotoExists":false,"isValid":false,"isLoggedIn":false,"isUnconfirmed":true,"isConfirmed":false,"isNewUser":false,"isExisted":false,"isExpert":false,"isRfproUserClass":false},"reasonHTML":"","timeToUnbanString":"-33 мин."},"isBanned":false,"roleString":"Мастер-Эксперт","roleIcon":"fa-user-ninja","socialMedia":[],"aboutText":"Я пенсионер. Образование высш, радио-инж. Работал инж-электроником, ведущим средств телевидения, связи, слесарем и инженером КИП, грузчиком, программистом. На моём счету десятки рац-предложений, в тч с большим экономич эффектом.\nЯ люблю компьютеры, ремонтирую их друзьям и соседям. Пишу полезные программки в vbs-файлах, автоматизирующие настройку Win-систем, приложений и работу с ними.","aboutHTML":"Я пенсионер. Образование высш, радио-инж. Работал инж-электроником, ведущим средств телевидения, связи, слесарем и инженером КИП, грузчиком, программистом. На моём счету десятки рац-предложений, в тч с большим экономич эффектом.\u003Cbr\u003EЯ люблю компьютеры, ремонтирую их друзьям и соседям. Пишу полезные программки в vbs-файлах, автоматизирующие настройку Win-систем, приложений и работу с ними.","signatureText":"","signatureHTML":"","country":{"id":0,"name":"","isFlagExists":false,"flagImage":"","isValid":false},"city":{"id":0,"name":"","countryId":0,"yandexCityId":0,"isValid":false},"averageEvaluation":4.935,"absoluteRating":25753,"dynamicRating":460.703,"dynamicRatingStars":8,"timezone":{"id":0,"baseUtcOffset":"00:00:00","displayName":"[не установлен]","linuxid":"notset/clean"},"currentDateTime":"2024-05-01T07:33:39.9946023+03:00","isValid":true,"isUnconfirmed":false,"isConfirmed":true,"settings":{"fixedHeader":true,"fixedFooter":true,"leftColumnMode":2,"darkTheme":false,"topPanelBtns":[{"id":103,"text":"Главная","title":"Главная (начальная) страница Портала","icon":"fa-solid fa-house-chimney","colorClass":"text-info-emphasis","controller":"Home","action":"Index","accessLevel":0,"isDropdown":false},{"id":100,"text":"Вход в систему","title":"Войти в систему с использованием своих регистрационных данных (адрес электронной почты и пароль)","icon":"fa-solid fa-arrow-right-to-bracket","colorClass":"text-info-emphasis","controller":"Login","action":"Index","accessLevel":0,"isDropdown":false},{"id":101,"text":"Регистрация","title":"Зарегистрироваться в системе и стать полноценным участником сообщества","icon":"fa-solid fa-user-plus","colorClass":"text-info-emphasis","controller":"Regist","action":"Index","accessLevel":0,"isDropdown":false},{"id":102,"text":"Сброс пароля","title":"Сбросить пароль свой учетной записи, если Вы его забыли","icon":"fa-solid fa-key","colorClass":"text-danger-emphasis","controller":"Login","action":"ResetPassword","accessLevel":0,"isDropdown":false}],"topPanelBtnsHideText":false},"isLevelUpAllowed":false,"nextRole":11,"counters":{"daysAtPortal":5590,"questions":25,"questionsPosts":7459,"questionsAnswers":1225,"questionsPostsEvaluations":788,"forumPosts":399},"isRfproUserClass":true,"id":259041,"name":"Алексеев Владимир Николаевич","email":"","role":10,"registDate":"1000-01-01T00:00:00","lastDate":"2024-01-30T15:24:45","photo":"images/unophoto.png?v=9.4.12","lastDateIndicatorClass":"gray","lastDateIndicatorText":"давно","photoPreview200":"images/unophoto.png?v=9.4.12","photoPreview120":"images/unophoto.png?v=9.4.12","photoPreview100":"images/unophoto.png?v=9.4.12","photoPreview80":"images/unophoto.png?v=9.4.12","photoPreview40":"images/unophoto.png?v=9.4.12","isPhotoExists":false,"isLoggedIn":true,"isNewUser":false,"isExisted":true,"isExpert":true},{"isEmailConfirmed":true,"tel":"","ip":"0.0.0.0","ipLocation":{"ip":"","sDate":3,"postalCode":"","country":"","countryIsoCode":"","federalDistrict":"","region":"","regionType":"","city":"","cityType":"","geoLat":"","geoLon":"","locationString":""},"birthDate":"0001-01-01T00:00:00","age":0,"isBirthdayToday":false,"ban":{"id":0,"userId":0,"isBanned":false,"startDate":"0001-01-01T00:00:00","endDate":"0001-01-01T00:00:00","moder":{"id":0,"name":"Неизвестный","email":"нет адреса","role":0,"roleString":"Неподтвержден","roleIcon":"fa-user-clock","registDate":"0001-01-01T00:00:00","lastDate":"0001-01-01T00:00:00","photo":"images/unophoto.png?v=9.4.12","lastDateIndicatorClass":"gray","lastDateIndicatorText":"давно","photoPreview200":"images/unophoto.png?v=9.4.12","photoPreview120":"images/unophoto.png?v=9.4.12","photoPreview100":"images/unophoto.png?v=9.4.12","photoPreview80":"images/unophoto.png?v=9.4.12","photoPreview40":"images/unophoto.png?v=9.4.12","isPhotoExists":false,"isValid":false,"isLoggedIn":false,"isUnconfirmed":true,"isConfirmed":false,"isNewUser":false,"isExisted":false,"isExpert":false,"isRfproUserClass":false},"reasonHTML":"","timeToUnbanString":"-33 мин."},"isBanned":false,"roleString":"Старший Модератор","roleIcon":"fa-user-tie","socialMedia":[],"aboutText":"634034, г.Томск, ул.Красноармейская 122, кв.173","aboutHTML":"634034, г.Томск, ул.Красноармейская 122, кв.173","signatureText":"","signatureHTML":"","country":{"id":0,"name":"","isFlagExists":false,"flagImage":"","isValid":false},"city":{"id":0,"name":"","countryId":0,"yandexCityId":0,"isValid":false},"averageEvaluation":4.985,"absoluteRating":21746,"dynamicRating":412.29,"dynamicRatingStars":8,"timezone":{"id":0,"baseUtcOffset":"00:00:00","displayName":"[не установлен]","linuxid":"notset/clean"},"currentDateTime":"2024-05-01T07:33:39.994683+03:00","isValid":true,"isUnconfirmed":false,"isConfirmed":true,"settings":{"fixedHeader":true,"fixedFooter":true,"leftColumnMode":2,"darkTheme":false,"topPanelBtns":[{"id":103,"text":"Главная","title":"Главная (начальная) страница Портала","icon":"fa-solid fa-house-chimney","colorClass":"text-info-emphasis","controller":"Home","action":"Index","accessLevel":0,"isDropdown":false},{"id":100,"text":"Вход в систему","title":"Войти в систему с использованием своих регистрационных данных (адрес электронной почты и пароль)","icon":"fa-solid fa-arrow-right-to-bracket","colorClass":"text-info-emphasis","controller":"Login","action":"Index","accessLevel":0,"isDropdown":false},{"id":101,"text":"Регистрация","title":"Зарегистрироваться в системе и стать полноценным участником сообщества","icon":"fa-solid fa-user-plus","colorClass":"text-info-emphasis","controller":"Regist","action":"Index","accessLevel":0,"isDropdown":false},{"id":102,"text":"Сброс пароля","title":"Сбросить пароль свой учетной записи, если Вы его забыли","icon":"fa-solid fa-key","colorClass":"text-danger-emphasis","controller":"Login","action":"ResetPassword","accessLevel":0,"isDropdown":false}],"topPanelBtnsHideText":false},"isLevelUpAllowed":false,"nextRole":13,"counters":{"daysAtPortal":5274,"questions":1,"questionsPosts":1973,"questionsAnswers":1283,"questionsPostsEvaluations":588,"forumPosts":91},"isRfproUserClass":true,"id":312929,"name":"Коцюрбенко Алексей Владимирович","email":"","role":12,"registDate":"1000-01-01T00:00:00","lastDate":"2023-11-05T17:20:40","photo":"images/unophoto.png?v=9.4.12","lastDateIndicatorClass":"gray","lastDateIndicatorText":"давно","photoPreview200":"images/unophoto.png?v=9.4.12","photoPreview120":"images/unophoto.png?v=9.4.12","photoPreview100":"images/unophoto.png?v=9.4.12","photoPreview80":"images/unophoto.png?v=9.4.12","photoPreview40":"images/unophoto.png?v=9.4.12","isPhotoExists":false,"isLoggedIn":true,"isNewUser":false,"isExisted":true,"isExpert":true},{"isEmailConfirmed":true,"tel":"","ip":"0.0.0.0","ipLocation":{"ip":"","sDate":3,"postalCode":"","country":"","countryIsoCode":"","federalDistrict":"","region":"","regionType":"","city":"","cityType":"","geoLat":"","geoLon":"","locationString":""},"birthDate":"0001-01-01T00:00:00","age":0,"isBirthdayToday":false,"ban":{"id":0,"userId":0,"isBanned":false,"startDate":"0001-01-01T00:00:00","endDate":"0001-01-01T00:00:00","moder":{"id":0,"name":"Неизвестный","email":"нет адреса","role":0,"roleString":"Неподтвержден","roleIcon":"fa-user-clock","registDate":"0001-01-01T00:00:00","lastDate":"0001-01-01T00:00:00","photo":"images/unophoto.png?v=9.4.12","lastDateIndicatorClass":"gray","lastDateIndicatorText":"давно","photoPreview200":"images/unophoto.png?v=9.4.12","photoPreview120":"images/unophoto.png?v=9.4.12","photoPreview100":"images/unophoto.png?v=9.4.12","photoPreview80":"images/unophoto.png?v=9.4.12","photoPreview40":"images/unophoto.png?v=9.4.12","isPhotoExists":false,"isValid":false,"isLoggedIn":false,"isUnconfirmed":true,"isConfirmed":false,"isNewUser":false,"isExisted":false,"isExpert":false,"isRfproUserClass":false},"reasonHTML":"","timeToUnbanString":"-33 мин."},"isBanned":false,"roleString":"Советник","roleIcon":"fa-user-ninja","socialMedia":[],"aboutText":"","aboutHTML":"","signatureText":"","signatureHTML":"","country":{"id":0,"name":"","isFlagExists":false,"flagImage":"","isValid":false},"city":{"id":0,"name":"","countryId":0,"yandexCityId":0,"isValid":false},"averageEvaluation":5,"absoluteRating":9460,"dynamicRating":386.514,"dynamicRatingStars":8,"timezone":{"id":0,"baseUtcOffset":"00:00:00","displayName":"[не установлен]","linuxid":"notset/clean"},"currentDateTime":"2024-05-01T07:33:39.9947449+03:00","isValid":true,"isUnconfirmed":false,"isConfirmed":true,"settings":{"fixedHeader":true,"fixedFooter":true,"leftColumnMode":2,"darkTheme":false,"topPanelBtns":[{"id":103,"text":"Главная","title":"Главная (начальная) страница Портала","icon":"fa-solid fa-house-chimney","colorClass":"text-info-emphasis","controller":"Home","action":"Index","accessLevel":0,"isDropdown":false},{"id":100,"text":"Вход в систему","title":"Войти в систему с использованием своих регистрационных данных (адрес электронной почты и пароль)","icon":"fa-solid fa-arrow-right-to-bracket","colorClass":"text-info-emphasis","controller":"Login","action":"Index","accessLevel":0,"isDropdown":false},{"id":101,"text":"Регистрация","title":"Зарегистрироваться в системе и стать полноценным участником сообщества","icon":"fa-solid fa-user-plus","colorClass":"text-info-emphasis","controller":"Regist","action":"Index","accessLevel":0,"isDropdown":false},{"id":102,"text":"Сброс пароля","title":"Сбросить пароль свой учетной записи, если Вы его забыли","icon":"fa-solid fa-key","colorClass":"text-danger-emphasis","controller":"Login","action":"ResetPassword","accessLevel":0,"isDropdown":false}],"topPanelBtnsHideText":false},"isLevelUpAllowed":false,"nextRole":10,"counters":{"daysAtPortal":2447,"questions":0,"questionsPosts":472,"questionsAnswers":398,"questionsPostsEvaluations":298,"forumPosts":1},"isRfproUserClass":true,"id":401284,"name":"Михаил Александров","email":"","role":9,"registDate":"1000-01-01T00:00:00","lastDate":"2024-04-21T19:50:04","photo":"users/401284/48171011af39b6bb3a74df8c0fcf97d0.jpg","lastDateIndicatorClass":"gray","lastDateIndicatorText":"давно","photoPreview200":"users/401284/200_48171011af39b6bb3a74df8c0fcf97d0.jpg","photoPreview120":"users/401284/120_48171011af39b6bb3a74df8c0fcf97d0.jpg","photoPreview100":"users/401284/100_48171011af39b6bb3a74df8c0fcf97d0.jpg","photoPreview80":"users/401284/80_48171011af39b6bb3a74df8c0fcf97d0.jpg","photoPreview40":"users/401284/40_48171011af39b6bb3a74df8c0fcf97d0.jpg","isPhotoExists":true,"isLoggedIn":true,"isNewUser":false,"isExisted":true,"isExpert":true},{"isEmailConfirmed":true,"tel":"","ip":"0.0.0.0","ipLocation":{"ip":"","sDate":3,"postalCode":"","country":"","countryIsoCode":"","federalDistrict":"","region":"","regionType":"","city":"","cityType":"","geoLat":"","geoLon":"","locationString":""},"birthDate":"0001-01-01T00:00:00","age":0,"isBirthdayToday":false,"ban":{"id":0,"userId":0,"isBanned":false,"startDate":"0001-01-01T00:00:00","endDate":"0001-01-01T00:00:00","moder":{"id":0,"name":"Неизвестный","email":"нет адреса","role":0,"roleString":"Неподтвержден","roleIcon":"fa-user-clock","registDate":"0001-01-01T00:00:00","lastDate":"0001-01-01T00:00:00","photo":"images/unophoto.png?v=9.4.12","lastDateIndicatorClass":"gray","lastDateIndicatorText":"давно","photoPreview200":"images/unophoto.png?v=9.4.12","photoPreview120":"images/unophoto.png?v=9.4.12","photoPreview100":"images/unophoto.png?v=9.4.12","photoPreview80":"images/unophoto.png?v=9.4.12","photoPreview40":"images/unophoto.png?v=9.4.12","isPhotoExists":false,"isValid":false,"isLoggedIn":false,"isUnconfirmed":true,"isConfirmed":false,"isNewUser":false,"isExisted":false,"isExpert":false,"isRfproUserClass":false},"reasonHTML":"","timeToUnbanString":"-33 мин."},"isBanned":false,"roleString":"Посетитель","roleIcon":"fa-user","socialMedia":[],"aboutText":"","aboutHTML":"","signatureText":"","signatureHTML":"","country":{"id":0,"name":"","isFlagExists":false,"flagImage":"","isValid":false},"city":{"id":0,"name":"","countryId":0,"yandexCityId":0,"isValid":false},"averageEvaluation":4.987,"absoluteRating":6052,"dynamicRating":222.012,"dynamicRatingStars":7,"timezone":{"id":0,"baseUtcOffset":"00:00:00","displayName":"[не установлен]","linuxid":"notset/clean"},"currentDateTime":"2024-05-01T07:33:39.9948176+03:00","isValid":true,"isUnconfirmed":false,"isConfirmed":true,"settings":{"fixedHeader":true,"fixedFooter":true,"leftColumnMode":2,"darkTheme":false,"topPanelBtns":[{"id":103,"text":"Главная","title":"Главная (начальная) страница Портала","icon":"fa-solid fa-house-chimney","colorClass":"text-info-emphasis","controller":"Home","action":"Index","accessLevel":0,"isDropdown":false},{"id":100,"text":"Вход в систему","title":"Войти в систему с использованием своих регистрационных данных (адрес электронной почты и пароль)","icon":"fa-solid fa-arrow-right-to-bracket","colorClass":"text-info-emphasis","controller":"Login","action":"Index","accessLevel":0,"isDropdown":false},{"id":101,"text":"Регистрация","title":"Зарегистрироваться в системе и стать полноценным участником сообщества","icon":"fa-solid fa-user-plus","colorClass":"text-info-emphasis","controller":"Regist","action":"Index","accessLevel":0,"isDropdown":false},{"id":102,"text":"Сброс пароля","title":"Сбросить пароль свой учетной записи, если Вы его забыли","icon":"fa-solid fa-key","colorClass":"text-danger-emphasis","controller":"Login","action":"ResetPassword","accessLevel":0,"isDropdown":false}],"topPanelBtnsHideText":false},"isLevelUpAllowed":false,"nextRole":2,"counters":{"daysAtPortal":2726,"questions":0,"questionsPosts":527,"questionsAnswers":250,"questionsPostsEvaluations":155,"forumPosts":0},"isRfproUserClass":true,"id":400669,"name":"epimkin","email":"","role":1,"registDate":"1000-01-01T00:00:00","lastDate":"2024-02-19T23:46:05","photo":"images/unophoto.png?v=9.4.12","lastDateIndicatorClass":"gray","lastDateIndicatorText":"давно","photoPreview200":"images/unophoto.png?v=9.4.12","photoPreview120":"images/unophoto.png?v=9.4.12","photoPreview100":"images/unophoto.png?v=9.4.12","photoPreview80":"images/unophoto.png?v=9.4.12","photoPreview40":"images/unophoto.png?v=9.4.12","isPhotoExists":false,"isLoggedIn":true,"isNewUser":false,"isExisted":true,"isExpert":false},{"isEmailConfirmed":true,"tel":"","ip":"0.0.0.0","ipLocation":{"ip":"","sDate":3,"postalCode":"","country":"","countryIsoCode":"","federalDistrict":"","region":"","regionType":"","city":"","cityType":"","geoLat":"","geoLon":"","locationString":""},"birthDate":"0001-01-01T00:00:00","age":0,"isBirthdayToday":false,"ban":{"id":0,"userId":0,"isBanned":false,"startDate":"0001-01-01T00:00:00","endDate":"0001-01-01T00:00:00","moder":{"id":0,"name":"Неизвестный","email":"нет адреса","role":0,"roleString":"Неподтвержден","roleIcon":"fa-user-clock","registDate":"0001-01-01T00:00:00","lastDate":"0001-01-01T00:00:00","photo":"images/unophoto.png?v=9.4.12","lastDateIndicatorClass":"gray","lastDateIndicatorText":"давно","photoPreview200":"images/unophoto.png?v=9.4.12","photoPreview120":"images/unophoto.png?v=9.4.12","photoPreview100":"images/unophoto.png?v=9.4.12","photoPreview80":"images/unophoto.png?v=9.4.12","photoPreview40":"images/unophoto.png?v=9.4.12","isPhotoExists":false,"isValid":false,"isLoggedIn":false,"isUnconfirmed":true,"isConfirmed":false,"isNewUser":false,"isExisted":false,"isExpert":false,"isRfproUserClass":false},"reasonHTML":"","timeToUnbanString":"-33 мин."},"isBanned":false,"roleString":"Посетитель","roleIcon":"fa-user","socialMedia":[],"aboutText":"","aboutHTML":"","signatureText":"[i]С уважением[/i]\n[i]shvetski[/i]","signatureHTML":"\u003Ci\u003EС уважением\u003C/i\u003E\u003Cbr\u003E\u003Ci\u003Eshvetski\u003C/i\u003E","country":{"id":0,"name":"","isFlagExists":false,"flagImage":"","isValid":false},"city":{"id":0,"name":"","countryId":0,"yandexCityId":0,"isValid":false},"averageEvaluation":4.963,"absoluteRating":11493,"dynamicRating":201.055,"dynamicRatingStars":7,"timezone":{"id":0,"baseUtcOffset":"00:00:00","displayName":"[не установлен]","linuxid":"notset/clean"},"currentDateTime":"2024-05-01T07:33:39.994903+03:00","isValid":true,"isUnconfirmed":false,"isConfirmed":true,"settings":{"fixedHeader":true,"fixedFooter":true,"leftColumnMode":2,"darkTheme":false,"topPanelBtns":[{"id":103,"text":"Главная","title":"Главная (начальная) страница Портала","icon":"fa-solid fa-house-chimney","colorClass":"text-info-emphasis","controller":"Home","action":"Index","accessLevel":0,"isDropdown":false},{"id":100,"text":"Вход в систему","title":"Войти в систему с использованием своих регистрационных данных (адрес электронной почты и пароль)","icon":"fa-solid fa-arrow-right-to-bracket","colorClass":"text-info-emphasis","controller":"Login","action":"Index","accessLevel":0,"isDropdown":false},{"id":101,"text":"Регистрация","title":"Зарегистрироваться в системе и стать полноценным участником сообщества","icon":"fa-solid fa-user-plus","colorClass":"text-info-emphasis","controller":"Regist","action":"Index","accessLevel":0,"isDropdown":false},{"id":102,"text":"Сброс пароля","title":"Сбросить пароль свой учетной записи, если Вы его забыли","icon":"fa-solid fa-key","colorClass":"text-danger-emphasis","controller":"Login","action":"ResetPassword","accessLevel":0,"isDropdown":false}],"topPanelBtnsHideText":false},"isLevelUpAllowed":false,"nextRole":2,"counters":{"daysAtPortal":5716,"questions":35,"questionsPosts":1567,"questionsAnswers":588,"questionsPostsEvaluations":324,"forumPosts":44},"isRfproUserClass":true,"id":226425,"name":"Konstantin","email":"","role":1,"registDate":"1000-01-01T00:00:00","lastDate":"2024-04-29T10:52:11","photo":"images/unophoto.png?v=9.4.12","lastDateIndicatorClass":"red","lastDateIndicatorText":"давно","photoPreview200":"images/unophoto.png?v=9.4.12","photoPreview120":"images/unophoto.png?v=9.4.12","photoPreview100":"images/unophoto.png?v=9.4.12","photoPreview80":"images/unophoto.png?v=9.4.12","photoPreview40":"images/unophoto.png?v=9.4.12","isPhotoExists":false,"isLoggedIn":true,"isNewUser":false,"isExisted":true,"isExpert":false}]
Здравствуйте. Помогите исправить ошибку EOleSysError with message неверный тип переменной и сделать программу работоспособной. Пишу программу на delphi cjdegear 2009 Ошибка возникает при нажатии на кнопки
Код:
procedure TForm1.Button3Click(Sender: TObject);//пишем текст в textbox begin BoxName_:=SetNewNameShape(BoxName_,'Новое имя'); TextToTextBox(BoxName_,'Доб'); end;
procedure TForm1.Button5Click(Sender: TObject); begin DeleteShape(LineName_);//удаляем textbox DeleteShape(BoxName_);//удаляем line end;
var Form1: TForm1; BoxName_,LineName_:string; W:variant; implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject); begin CreateWord(); VisibleWord(true); AddDoc; end;
procedure TForm1.Button2Click(Sender: TObject); begin CreateTextBox(1,1,100,50,BoxName_); end;
procedure TForm1.Button3Click(Sender: TObject); begin BoxName_:=SetNewNameShape(BoxName_,'Новое имя'); TextToTextBox(BoxName_,'Доб'); end;
procedure TForm1.Button4Click(Sender: TObject); begin CreateLine(1,1,100,50,LineName_); end;
procedure TForm1.Button5Click(Sender: TObject); begin DeleteShape(LineName_); DeleteShape(BoxName_); end;
procedure TForm1.Button6Click(Sender: TObject); begin SaveDocAs('F:\doc.doc'); end;
procedure TForm1.Button7Click(Sender: TObject); begin CloseDoc; end;
procedure TForm1.Button8Click(Sender: TObject); begin CloseWord; end;
procedure TForm1.Button9Click(Sender: TObject);
var BoxName_,LineName_:string; begin CreateTextBox(1,1,100,50,BoxName_); messagebox(0,pchar(GetNameIndexShape(1)),'Считали имя формы',0); BoxName_:=SetNewNameShape(BoxName_,'Новое имя'); messagebox(0,pchar(GetNameIndexShape(1)),'Изменили имя формы и считываем его снова',0); TextToTextBox(BoxName_,'Добавляем текст в TextBox');
Function CreateWord:boolean; Function VisibleWord(visible:boolean):boolean; Function AddDoc:boolean; Function SetTextToDoc(text_:string ;InsertAfter_:boolean):boolean; Function SaveDocAs(file_:string):boolean; Function SaveDocAsUnicod(file_:string):boolean; Function SaveDocAsText(file_:string):boolean; Function SaveDocAsDosText(file_:string):boolean; Function CloseDoc:boolean; Function CloseWord:boolean; Function OpenDoc(file_:string):boolean; Function StartOfDoc:boolean; Function FindTextDoc(text_:string):boolean; Function PasteTextDoc(text_:string):boolean; Function TypeTextDoc(text_:string):boolean; Function FindAndPasteTextDoc(findtext_,pastetext_:string):boolean; Function PrintDialogWord:boolean; Function CreateTable(NumRows, NumColumns:integer;var index:integer):boolean; Function SetSizeTable(Table:integer;RowsHeight, ColumnsWidth:real):boolean; Function GetSizeTable(Table:integer;var RowsHeight,ColumnsWidth:real):boolean; Function SetHeightRowTable(Table,Row:integer;RowHeight:real):boolean; Function SetWidthColumnTable(Table,Column:integer;ColumnWidth:real):boolean; Function SetTextToTable(Table:integer;Row,Column:integer;text:string):boolean; Function SetLineStyleBorderTable(Table:integer;Row,Column,wdBorderType,wdBorderStyle:integer):boolean; Function SetMergeCellsTable(Table:integer;Row1,Column1,Row2,Column2:integer):boolean;
Function GetSelectionTable:boolean; Function GoToNextTable (table_:integer):boolean; Function GoToPreviousTable (table_:integer):boolean; Function GetColumnsRowsTable(table_:integer; var Columns,Rows:integer):boolean; Function GetColumnRowTable(table_:integer; var Column,Row:integer):boolean; Function AddRowTableDoc (table_:integer):boolean; Function InsertRowsTableDoc(table_,position_,count_:integer):boolean; Function InsertRowTableDoc(table_,position_:integer):boolean;
//------------------------------- TextBox --------------------------------- Function CreateTextBox(Left,Top,Width,Height:real;var name:string):boolean; Function TextToTextBox(TextBox:variant;text:string):boolean;
//------------------------------- Линии ----------------------------------- Function CreateLine(BeginX,BeginY,EndX,EndY:real;var name:string):boolean;
//------------------------------- Внешний рисунок ------------------------- Function CreatePicture(FileName:string;Left,Top:real;var name:string):boolean;
//------------------------------- Общие для формы функции ----------------- Function DeleteShape (NameShape:variant): variant; Function SetNewNameShape(NameShape:variant;NewNameShape:string):string; Function GetNameIndexShape(NameIndex:variant):string;
implementation
uses ComObj; var W:variant;
Function CreateWord:boolean; begin CreateWord:=true; try W:=CreateOleObject('Word.Application'); except CreateWord:=false; end; End;
Function VisibleWord(visible:boolean):boolean; begin VisibleWord:=true; try W.visible:= visible; except VisibleWord:=false; end; End;
Function AddDoc:boolean; Var Doc_:variant; begin AddDoc:=true; try Doc_:=W.Documents; Doc_.Add; except AddDoc:=false; end; End;
Function SetTextToDoc(text_:string ;InsertAfter_:boolean):boolean; var Rng_:variant; begin SetTextToDoc:=true; try Rng_:=W.ActiveDocument.Range; if InsertAfter_ then Rng_.InsertAfter(text_) else Rng_.InsertBefore(text_); except SetTextToDoc:=false; end; End;
Function SaveDocAs(file_:string):boolean; begin SaveDocAs:=true; try W.ActiveDocument.SaveAs(file_); except SaveDocAs:=false; end; End;
Function SaveDocAsUnicod(file_:string):boolean; const wdFormatUnicodeText=7; begin SaveDocAsUnicod:=true; try W.ActiveDocument.SaveAs(file_,FileFormat:=wdFormatUnicodeText); except SaveDocAsUnicod:=false; end; End;
Function SaveDocAsText(file_:string):boolean; const wdFormatText=2; begin SaveDocAsText:=true; try W.ActiveDocument.SaveAs(file_,FileFormat:= wdFormatText); except SaveDocAsText:=false; end; End;
Function SaveDocAsDosText(file_:string):boolean; const wdFormatDOSText=4; begin SaveDocAsDosText:=true; try W.ActiveDocument.SaveAs(file_,FileFormat:= wdFormatDOSText); except SaveDocAsDosText:=false; end; End;
Function CloseDoc:boolean; begin CloseDoc:=true; try W.ActiveDocument.Close; except CloseDoc:=false; end; End;
Function CloseWord:boolean; begin CloseWord:=true; try W.Quit; except CloseWord:=false; end; End;
Function OpenDoc(file_:string):boolean; Var Doc_:variant; begin OpenDoc:=true; try Doc_:=W.Documents; Doc_.Open(file_); except OpenDoc:=false; end; End;
Function StartOfDoc:boolean; begin StartOfDoc:=true; try W.Selection.End:=0; W.Selection.Start:=0; except StartOfDoc:=false; end; End;
Function FindTextDoc(text_:string):boolean; begin FindTextDoc:=true; Try W.Selection.Find.Forward:=true; W.Selection.Find.Text:=text_; FindTextDoc := W.Selection.Find.Execute; except FindTextDoc:=false; end; End;
Function PasteTextDoc(text_:string):boolean; begin PasteTextDoc:=true; Try W.Selection.Delete; W.Selection.InsertAfter (text_); except PasteTextDoc:=false; end; End;
Function TypeTextDoc(text_:string):boolean; begin TypeTextDoc:=true; Try W.Selection.Delete; W.Selection.TypeText(text_); except TypeTextDoc:=false; end; End;
Function FindAndPasteTextDoc(findtext_,pastetext_:string):boolean; begin FindAndPasteTextDoc:=true; try W.Selection.Find.Forward:=true; W.Selection.Find.Text:= findtext_; if W.Selection.Find.Execute then begin W.Selection.Delete; W.Selection.InsertAfter (pastetext_); end else FindAndPasteTextDoc:=false; except FindAndPasteTextDoc:=false; end; End;
Function PrintDialogWord:boolean; Const wdDialogFilePrint=88; begin PrintDialogWord:=true; try W.Dialogs.Item(wdDialogFilePrint).Show; except PrintDialogWord:=false; end; End;
//----------- Таблицы -------------------------------------------------- Function CreateTable(NumRows, NumColumns:integer;var index:integer):boolean; var sel_:variant; begin CreateTable:=true; try sel_:=W.selection; W.ActiveDocument.Tables.Add(Range:=sel_.Range, NumRows:=NumRows, NumColumns:=NumColumns); index:=W.ActiveDocument.Tables.Count; except CreateTable:=false; end; End;
Function SetSizeTable(Table:integer;RowsHeight, ColumnsWidth:real):boolean; begin SetSizeTable:=true; try W.ActiveDocument.Tables.Item(Table).Columns.Width:=ColumnsWidth; W.ActiveDocument.Tables.Item(Table).Rows.Height:=RowsHeight; except SetSizeTable:=false; end; End;
Function GetSizeTable(Table:integer;var RowsHeight,ColumnsWidth:real):boolean; begin GetSizeTable:=true; try ColumnsWidth:=W.ActiveDocument.Tables.Item(Table).Columns.Width; RowsHeight:=W.ActiveDocument.Tables.Item(Table).Rows.Height; except GetSizeTable:=false; end; End;
Function SetHeightRowTable(Table,Row:integer;RowHeight:real):boolean; begin SetHeightRowTable:=true; try W.ActiveDocument.Tables.Item(Table).Rows.item(Row).Height:=RowHeight; except SetHeightRowTable:=false; end; End;
Function SetWidthColumnTable(Table,Column:integer;ColumnWidth:real):boolean; begin SetWidthColumnTable:=true; try W.ActiveDocument.Tables.Item(Table).Columns.Item(Column).Width:=ColumnWidth; except SetWidthColumnTable:=false; end; End;
Function SetTextToTable(Table:integer;Row,Column:integer;text:string):boolean; begin SetTextToTable:=true; try W.ActiveDocument.Tables.Item(Table).Columns.Item(Column).Cells.Item(Row).Range.Text:=text; except SetTextToTable:=false; end; End;
Function SetLineStyleBorderTable(Table:integer;Row,Column,wdBorderType,wdBorderStyle:integer):boolean; begin SetLineStyleBorderTable:=true; try W.ActiveDocument.Tables.Item(Table).Columns.Item(Column).Cells.Item(Row).Borders.Item(wdBorderType).LineStyle:=wdBorderStyle; except SetLineStyleBorderTable:=false; end; End;
Function SetMergeCellsTable(Table:integer;Row1,Column1,Row2,Column2:integer):boolean; var cel_:variant; begin SetMergeCellsTable:=true; try cel_:=W.ActiveDocument.Tables.Item(Table).Cell(Row2,Column2); W.ActiveDocument.Tables.Item(Table).Cell(Row1,Column1).Merge(cel_); except SetMergeCellsTable:=false; end; End;
Function GetSelectionTable:boolean; const wdWithInTable=12; begin try GetSelectionTable :=W.Selection.Information[wdWithInTable]; except GetSelectionTable :=false; end; End;
Function GoToNextTable (table_:integer):boolean; const wdGoToTable=2; begin GoToNextTable:=true; try W.Selection.GoToNext (wdGoToTable); except GoToNextTable:=false; end; End;
Function GoToPreviousTable (table_:integer):boolean; const wdGoToTable=2; begin GoToPreviousTable:=true; try W.Selection.GoToPrevious(wdGoToTable); except GoToPreviousTable:=false; end; End;
Function GetColumnsRowsTable(table_:integer; var Columns,Rows:integer):boolean; const wdMaximumNumberOfColumns=18; wdMaximumNumberOfRows=15; begin GetColumnsRowsTable:=true; try Columns:=W.Selection.Information[wdMaximumNumberOfColumns]; Rows:=W.Selection.Information[wdMaximumNumberOfRows]; except GetColumnsRowsTable:=false; end; End;
Function GetColumnRowTable(table_:integer; var Column,Row:integer):boolean; const wdStartOfRangeColumnNumber=16; wdStartOfRangeRowNumber=13; begin GetColumnRowTable:=true; try Column:=W.Selection.Information[wdStartOfRangeColumnNumber]; Row:=W.Selection.Information[wdStartOfRangeRowNumber]; except GetColumnRowTable:=false; end; End;
Function AddRowTableDoc (table_:integer):boolean; begin AddRowTableDoc:=true; try W.ActiveDocument.Tables.Item(table_).Rows.Add; except AddRowTableDoc:=false; end; End;
Function InsertRowsTableDoc(table_,position_,count_:integer):boolean; begin InsertRowsTableDoc:=true; try W.ActiveDocument.Tables.Item(table_).Rows.Item(position_).Select; W.Selection.InsertRows (count_); except InsertRowsTableDoc:=false; end; End;
Function InsertRowTableDoc(table_,position_:integer):boolean; var row_:variant; begin InsertRowTableDoc:=true; try row_:=W.ActiveDocument.Tables.Item(table_).Rows.Item(position_); W.ActiveDocument.Tables.Item(table_).Rows.Add(row_); except InsertRowTableDoc:=false; end; End;
//------------------------------ TextBox ---------------------------------- Function CreateTextBox(Left,Top,Width,Height:real;var name:string):boolean; const msoTextOrientationHorizontal=1; begin CreateTextBox:=true; try name:=W.ActiveDocument.Shapes.AddTextbox(msoTextOrientationHorizontal,Left,Top,Width,Height).Name; except CreateTextBox:=false; end; End;
Function TextToTextBox(TextBox:variant;text:string):boolean; const msoTextBox=17; begin TextToTextBox:=true; try if w.ActiveDocument.Shapes.Item(TextBox).Type = msoTextBox then W.ActiveDocument.Shapes.Item(TextBox).TextFrame.TextRange.Text:=Text else TextToTextBox:=false; except TextToTextBox:=false; end; End;
Function CreateLine(BeginX,BeginY,EndX,EndY:real;var name:string):boolean; begin CreateLine:=true; try name:=W.ActiveDocument.Shapes.AddLine(BeginX,BeginY,EndX,EndY).Name; except CreateLine:=false; end; End;
Function CreatePicture(FileName:string;Left,Top:real;var name:string):boolean; begin CreatePicture:=true; try name:=W.ActiveDocument.Shapes.AddPicture(FileName).Name; W.ActiveDocument.Shapes.Item(name).Left:=Left; W.ActiveDocument.Shapes.Item(name).Top:=Top; except CreatePicture:=false; end; End;
Function GetNameIndexShape(NameIndex:variant):string; begin try GetNameIndexShape:=W.ActiveDocument.Shapes.Item(NameIndex).Name; except GetNameIndexShape:=''; end; End;
Function SetNewNameShape(NameShape:variant;NewNameShape:string):string; begin try W.ActiveDocument.Shapes.Item(NameShape).Name:=NewNameShape; SetNewNameShape:=NewNameShape; except SetNewNameShape:=''; end; End;
Function DeleteShape (NameShape:variant): variant; Begin DeleteShape:=true; try W.ActiveDocument.Shapes.Item(NameShape).Delete; except DeleteShape:=false; end; End; end.
Обсуждение
Неизвестный
25.10.2010, 16:24
общий
А выше? Строка 74:
Код:
//------------------------------- TextBox --------------------------------- Function CreateTextBox(Left,Top,Width,Height:real;var name:string):boolean; Function TextToTextBox(TextBox:variant;text:string):boolean;
И ещё чуть ниже (для функции DeleteShape):
Код:
//------------------------------- Общие для формы функции ----------------- Function DeleteShape (NameShape:variant): variant;
tatyana: Оформите как ответ - получите денюжку. Только по-умному, чтобы у человека сразу заработало.
Об авторе:
Я только в одном глубоко убеждён - не надо иметь убеждений! :)
Неизвестный
25.10.2010, 17:02
общий
это ответ
Здравствуйте, novij2011!
Вам нужно немного доработать свой код в файле MyWord.pas.
1. Прежде всего, измените объявление переменной W на OleVariant. У Вас сейчас: var W:variant;
Должно быть: var W: OleVariant;
2. Выполните аналогичную замену в объявлении и реализации функции TextToTextBox. Строки 74 и 535 должны выглядеть так: Function TextToTextBox(TextBox: OleVariant;text:string):boolean;
3. То же самое нужно сделать с функцией DeleteShape Внесите аналогичные замены типа в строки 83 и 598. Должно быть так: Function DeleteShape (NameShape: OleVariant): OleVariant;
Перекомпилируйте проект.
5
спасибо
Неизвестный
25.10.2010, 17:31
общий
tatjana: a можешь еще пояснить в чем ощибка в этой функции
Код:
Function FontLegendEntries(Name,LegendEntries:OLEvariant;Font:TFont):boolean; begin FontLegendEntries:=true; try FontLegendEntries:=FontToEFont(Font,E.Charts.Item[name].Legend.LegendEntries.Item[LegendEntries].Font); except FontLegendEntries:=false; end; End;
Поможет. Это нужно сделать везде, т.е. всюду заменяете слово string на слово ansistring и назвается это портированием кода в новую версию. А проблема портирования заключается в том, что тип String теперь обозначает другой тип, чем тот, который был в прежних версиях Delphi. А старый тип теперь в новом Delphi называется AnsiString.
Неизвестный
25.10.2010, 17:53
общий
В Ole-приложениях лучше все-таки использовать WideString
Неизвестный
25.10.2010, 18:00
общий
OLE_Font пишет что это незвестный идентификатор.
а E - это переменная, типа OLEvariant для Excel E:=CreateOleObject('Excel.Application');
Неизвестный
25.10.2010, 18:14
общий
Мне, к сожалению, сейчас бежать нужно. Буду в онлайне поздно вечером. Ищи объявление функции FontToEFont и проверяй соответствие типов. Если не поможет, ищи здесь E.Charts.Item[name].Legend.LegendEntries.Item[LegendEntries].Font Как искать? Вводи переменные внутри функции, соответствующие свойствам до точки, например: var ch: OleVariant; ... ch := E.Charts;
... ... ch.Item[name].... Понятно? и тогда получишь точно, какой именно член и какой группы не найден...
Неизвестный
25.10.2010, 18:16
общий
пасиба
Неизвестный
25.10.2010, 19:52
общий
при присвоении ch:=E.Charts.Item[name].Legend.legendEntries.Item[LegendEntries]; cтало выдавать эту ошибку Exception class EOleSysError with message 'Член группы не найден'.
Но совсем не обязательно, так как число элементов легенды может отличаться от числа элементов диаграммы.
Заморочка вот в этом LegendEntries. С одной стороны Этот идентификатор используется как коллекция (что правильно), а с другой стороны - как индекс элемента той же самой коллекции (что неправильно). Ваша задача выяснить, что должно быть на месте этого индекса.
Легенда включает в себя дополнительные объекты, объединенные в коллекцию LegendEntries. Это элементы легенды, их количество совпадает с количеством рядов диаграммы. Доступ к элементам легенды осуществляется посредством коллекции LegendEntries с помощью индекса элемента (целого числа из диапазона от 1 до LegendEntries.Count, где Count — количество элементов легенды).
выдал Exception class EOleError with message 'Method 'Chart' not supported by automation object'
эта строка тоже из методички
Неизвестный
26.10.2010, 17:24
общий
Ну тогда остается одно. Сh, l, le, leI: OleVariant;
Ch := E.Charts.Item[name] ; l := E.Charts.Item[name].Legend; le := E.Charts.Item[name].Legend.LegendEntries; leI := E.Charts.Item[name].Legend.LegendEntries.Item[1];
Пожалуй, больше ничего полезного без кода я не смогу присоветовать. Если в вашем Excel'e установлена справка по VBA, найдите раздел (в справке) Microsoft Excel Objects Model и дальше Collections и Objects.
Неизвестный
26.10.2010, 17:56
общий
ошибку выдал на пследнем этапе leI := E.Charts.Item[name].Legend.LegendEntries.Item[1];
Неизвестный
26.10.2010, 17:58
общий
вот код
Код:
procedure TForm1.Button12Click(Sender: TObject); begin if not FontDialog1.Execute then exit; FontLegendEntries(ChartName,1,FontDialog1.Font); end;
Код:
unit MyExcel;
interface uses Classes,Graphics,ComCtrls, ComObj, variants, SysUtils, Controls, Forms, Dialogs, StdCtrls, Windows; var E:OLEvariant; ChartName:OLEvariant; Function FontToEFont (font:Tfont;EFont:OLEvariant):boolean; Begin FontToEFont:=true; try EFont.Name:=font.Name; if fsBold in font.Style then EFont.Bold:=True // Жирный else EFont.Bold:=False; // Тонкий if fsItalic in font.Style then EFont.Italic:=True // Наклонный else EFont.Italic:=False; // Наклонный EFont.Size:=font.Size; // Размер if fsStrikeOut in font.Style then EFont.Strikethrough:=True // Перечеркнутый else EFont.Strikethrough:=False; // Перечеркнутый if fsUnderline in font.Style then EFont.Underline:=xlUnderlineStyleSingle // Подчеркивание else EFont.Underline:=xlUnderlineStyleNone; // Подчеркивание EFont.Color:=font.Color; // Цвет except FontToEFont:=false; end; End;
Function FontLegendEntries(Name,LegendEntries:OLEvariant; Font:TFont):boolean; var l, le, leI: OleVariant; ch:OleVariant;
begin FontLegendEntries:=true; try ch := E.Charts.Item[name] ; l := E.Charts.Item[name].Legend; le := E.Charts.Item[name].Legend.LegendEntries; leI := E.Charts.Item[name].Legend.LegendEntries.Item[1];
Function FontLegendEntries(Name, Le:variant; Font:TFont):boolean; begin FontLegendEntries:=true; try FontLegendEntries:=FontToEFont(Font,E.Charts.Item[name].Legend.LegendEntries.Item[le].Font); except FontLegendEntries:=false; end; End;
Надеюсь, это не весь код? Обратите внимание: я заменила наименование параметра в объявлении функции. Ну и возвращаемся к началу разговора... Пробуйте...
Неизвестный
27.10.2010, 11:48
общий
опять выдал ошибку член группы не найден в строке FontLegendEntries:=FontToEFont(Font,E.Charts.Item[name].Legend.LegendEntries.Item[le].Font);
Неизвестный
27.10.2010, 12:30
общий
В приведенном Вами куске кода не видна предыдущая последовательность действий. А она должна быть следующая: 1. Открываем Excel (CreateOleObject) 2. Делаем его видимым 3. Создаем WorkSheet (E.Workbooks.Add;) 4. Выбираем этот лист для работы (E.ActiveWorkbook.Sheets.Item[sheet].Select) 5. Создаем диаграмму (заодно выполняется инициализация переменной name)
if not FontDialog1.Execute then exit; FontLegendEntries(ChartName,1,FontDialog1.Font);
В такой последовательности ошибок нет. Если у вас все именно так, то: - Ваша версия MS Office? У меня = MS Office 2003
Неизвестный
27.10.2010, 17:19
общий
у меня офис 2007. всю последовательность выполняю правильно. еще покажу код заполнения данными, может должно быть там подругому
Код:
rocedure TForm1.Button25Click(Sender: TObject); var a_:integer; rng_:string; begin randomize; SetRange(2,'A1','AAAA'); SetRange(2,'B1','BBBB'); SetRange(2,'C1','CCCC'); SetRange(2,'D1','AAAA'); SetRange(2,'E1','BBBB'); SetRange(2,'F1','CCCC'); for a_:=2 to 5 do begin SetRange(2,'A'+inttostr(a_),a_-1); SetRange(2,'B'+inttostr(a_),random(1000)); SetRange(2,'C'+inttostr(a_),random(1000)); SetRange(2,'D'+inttostr(a_),random(1000)); SetRange(2,'E'+inttostr(a_),random(1000)); SetRange(2,'F'+inttostr(a_),random(1000)); end; end;
и
Код:
Function SetSourceData(Name,Sheet:OLEvariant;Range:string;XlRowCol:integer):boolean; begin SetSourceData:=true; try E.ActiveWorkbook.Charts.Item[name].SetSourceData(Source:=E.ActiveWorkbook.Sheets.Item [Sheet].Range[Range],PlotBy:=XlRowCol); except SetSourceData:=false; end; End;
Неизвестный
27.10.2010, 17:29
общий
Ладно, видимо, все дело в версии офиса. Я попробую поискать информацию о различиях программирования в офисе 2007 Может, вы сможете запустить свою программу где-то, где есть офис 2003?
Неизвестный
27.10.2010, 18:00
общий
у нас везде уже 2007 стоит. Если запускается на 2003 тогда я тоже псмотрю как запустить на 2007 версии. спасибо вам за помощь.
novij2011: Первым делом нужно заглядывать в справку по VBA, которая идёт в комплекте с конкретной версией Офиса. К сожалению у Микрософт изменяются передаваемые параметры в одних и тех же функцуиях разных версий Офиса. Поэтому нужно обязательно заглядывать в справку по VBA.
Об авторе:
Я только в одном глубоко убеждён - не надо иметь убеждений! :)
Форма ответа
Отправка постов/ответов доступна только зарегистрированным и подтвержденным пользователям.
{"canUserNotesAccess":false,"canUserAdminsNotesAccess":false,"canAskQuestion":false,"canEditQuestions":false,"canSeeQuestionsComplains":false,"isSuperAdmin":false,"isAdmin":false,"isModer":false,"canCreateNewUser":false,"canConfirmUser":false,"canEditUserName":false,"canEditUserRole":false,"canEditUserEmail":false,"canEditUserPhone":false,"canEditUserBirthdate":false,"canEditUserCountry":false,"canEditSocialMedia":false,"canDeleteUserPhoto":false,"canDeleteUser":false,"canEditUserAbout":false,"canBanUser":false,"canResetUserPassword":false,"canEditRegistDate":false,"canChangeUserRating":false,"canAccessToAdmin":false,"canAnnouncements":false,"canManageQuestionPosts":false,"canManageForumSections":false,"canManageForumThreads":false,"canManageForumPosts":false,"canCreateForumThreads":false,"canSeeUserEmail":false,"canSeeUserPhone":false,"canSeeIPAddress":false,"canSeeUserRegistDate":false,"canSeeUserSocialMedia":false,"canSeeBirthDate":false,"canSeeUserCountry":false,"canSeeUserSettings":false,"canSeeDeletedPosts":false,"isEmailConfirmed":false,"tel":"","ip":"0.0.0.0","ipLocation":{"ip":"","sDate":0,"postalCode":"","country":"","countryIsoCode":"","federalDistrict":"","region":"","regionType":"","city":"","cityType":"","geoLat":"","geoLon":"","locationString":""},"birthDate":"0001-01-01T00:00:00","age":0,"isBirthdayToday":false,"ban":{"id":0,"userId":0,"isBanned":false,"startDate":"0001-01-01T00:00:00","endDate":"0001-01-01T00:00:00","moder":{"id":0,"name":"Неизвестный","email":"","role":0,"roleString":"Неподтвержден","roleIcon":"fa-user-clock","registDate":"0001-01-01T00:00:00","lastDate":"0001-01-01T00:00:00","photo":"images/unophoto.png?v=9.4.12","lastDateIndicatorClass":"gray","lastDateIndicatorText":"давно","photoPreview200":"images/unophoto.png?v=9.4.12","photoPreview120":"images/unophoto.png?v=9.4.12","photoPreview100":"images/unophoto.png?v=9.4.12","photoPreview80":"images/unophoto.png?v=9.4.12","photoPreview40":"images/unophoto.png?v=9.4.12","isPhotoExists":false,"isValid":false,"isLoggedIn":false,"isUnconfirmed":true,"isConfirmed":false,"isNewUser":false,"isExisted":false,"isExpert":false,"isRfproUserClass":false},"reasonHTML":"","timeToUnbanString":"-33 мин."},"isBanned":false,"roleString":"Неподтвержден","roleIcon":"fa-user-clock","socialMedia":[],"aboutText":"","aboutHTML":"","signatureText":"","signatureHTML":"","country":{"id":0,"name":"","isFlagExists":false,"flagImage":"","isValid":false},"city":{"id":0,"name":"","countryId":0,"yandexCityId":0,"isValid":false},"averageEvaluation":0,"absoluteRating":0,"dynamicRating":0,"dynamicRatingStars":0,"timezone":{"id":283,"baseUtcOffset":"03:00:00","displayName":"(UTC\u002B03:00) Москва","linuxid":"Europe/Moscow"},"currentDateTime":"2024-05-01T10:33:39.9953873+03:00","isValid":false,"isUnconfirmed":true,"isConfirmed":false,"settings":{"fixedHeader":true,"fixedFooter":true,"leftColumnMode":2,"darkTheme":false,"topPanelBtns":[{"id":103,"text":"Главная","title":"Главная (начальная) страница Портала","icon":"fa-solid fa-house-chimney","colorClass":"text-info-emphasis","controller":"Home","action":"Index","accessLevel":0,"isDropdown":false},{"id":100,"text":"Вход в систему","title":"Войти в систему с использованием своих регистрационных данных (адрес электронной почты и пароль)","icon":"fa-solid fa-arrow-right-to-bracket","colorClass":"text-info-emphasis","controller":"Login","action":"Index","accessLevel":0,"isDropdown":false},{"id":101,"text":"Регистрация","title":"Зарегистрироваться в системе и стать полноценным участником сообщества","icon":"fa-solid fa-user-plus","colorClass":"text-info-emphasis","controller":"Regist","action":"Index","accessLevel":0,"isDropdown":false},{"id":102,"text":"Сброс пароля","title":"Сбросить пароль свой учетной записи, если Вы его забыли","icon":"fa-solid fa-key","colorClass":"text-danger-emphasis","controller":"Login","action":"ResetPassword","accessLevel":0,"isDropdown":false}],"topPanelBtnsHideText":false},"isLevelUpAllowed":false,"nextRole":1,"counters":{"daysAtPortal":0,"questions":0,"questionsPosts":0,"questionsAnswers":0,"questionsPostsEvaluations":0,"forumPosts":0},"isRfproUserClass":true,"id":0,"name":"Неизвестный","email":"","role":0,"registDate":"0001-01-01T00:00:00","lastDate":"0001-01-01T00:00:00","photo":"images/unophoto.png?v=9.4.12","lastDateIndicatorClass":"gray","lastDateIndicatorText":"давно","photoPreview200":"images/unophoto.png?v=9.4.12","photoPreview120":"images/unophoto.png?v=9.4.12","photoPreview100":"images/unophoto.png?v=9.4.12","photoPreview80":"images/unophoto.png?v=9.4.12","photoPreview40":"images/unophoto.png?v=9.4.12","isPhotoExists":false,"isLoggedIn":false,"isNewUser":false,"isExisted":false,"isExpert":false}